Bump version to 6.4-15
[LibreOffice.git] / include / unotools / eventcfg.hxx
blob660ec91b02f0900cd7c4becd0de95dc25ac6af9e
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef INCLUDED_UNOTOOLS_EVENTCFG_HXX
20 #define INCLUDED_UNOTOOLS_EVENTCFG_HXX
22 #include <unotools/unotoolsdllapi.h>
23 #include <com/sun/star/document/XEventsSupplier.hpp>
24 #include <com/sun/star/container/XNameReplace.hpp>
25 #include <cppuhelper/implbase.hxx>
27 enum class GlobalEventId
29 STARTAPP,
30 CLOSEAPP,
31 DOCCREATED,
32 CREATEDOC,
33 LOADFINISHED,
34 OPENDOC,
35 PREPARECLOSEDOC,
36 CLOSEDOC,
37 SAVEDOC,
38 SAVEDOCDONE,
39 SAVEDOCFAILED,
40 SAVEASDOC,
41 SAVEASDOCDONE,
42 SAVEASDOCFAILED,
43 SAVETODOC,
44 SAVETODOCDONE,
45 SAVETODOCFAILED,
46 ACTIVATEDOC,
47 DEACTIVATEDOC,
48 PRINTDOC,
49 VIEWCREATED,
50 PREPARECLOSEVIEW,
51 CLOSEVIEW,
52 MODIFYCHANGED,
53 TITLECHANGED,
54 VISAREACHANGED,
55 MODECHANGED,
56 STORAGECHANGED,
57 LAST = STORAGECHANGED
60 class GlobalEventConfig_Impl;
62 class UNOTOOLS_DLLPUBLIC GlobalEventConfig final :
63 public cppu::WeakImplHelper< css::document::XEventsSupplier, css::container::XNameReplace >
65 public:
66 GlobalEventConfig( );
67 virtual ~GlobalEventConfig( ) override;
68 static ::osl::Mutex& GetOwnStaticMutex();
70 css::uno::Reference< css::container::XNameReplace > SAL_CALL getEvents( ) override;
71 void SAL_CALL replaceByName( const OUString& aName, const css::uno::Any& aElement ) override;
72 css::uno::Any SAL_CALL getByName( const OUString& aName ) override;
73 css::uno::Sequence< OUString > SAL_CALL getElementNames( ) override;
74 sal_Bool SAL_CALL hasByName( const OUString& aName ) override;
75 css::uno::Type SAL_CALL getElementType( ) override;
76 sal_Bool SAL_CALL hasElements( ) override;
77 static OUString GetEventName( GlobalEventId nID );
79 private:
80 static GlobalEventConfig_Impl* m_pImpl;
81 static sal_Int32 m_nRefCount;
84 #endif // INCLUDED_UNOTOOLS_EVENTCFG_HXX
86 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */