Version 7.6.3.2-android, tag libreoffice-7.6.3.2-android
[LibreOffice.git] / include / unotools / eventcfg.hxx
blob7ddca4a96be0c58f4eef47f4ea84545b5a5732cb
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/beans/PropertyValue.hpp>
24 #include <com/sun/star/document/XEventsSupplier.hpp>
25 #include <com/sun/star/container/XNameReplace.hpp>
26 #include <cppuhelper/implbase.hxx>
28 enum class GlobalEventId
30 STARTAPP,
31 CLOSEAPP,
32 DOCCREATED,
33 CREATEDOC,
34 LOADFINISHED,
35 OPENDOC,
36 PREPARECLOSEDOC,
37 CLOSEDOC,
38 SAVEDOC,
39 SAVEDOCDONE,
40 SAVEDOCFAILED,
41 SAVEASDOC,
42 SAVEASDOCDONE,
43 SAVEASDOCFAILED,
44 SAVETODOC,
45 SAVETODOCDONE,
46 SAVETODOCFAILED,
47 ACTIVATEDOC,
48 DEACTIVATEDOC,
49 PRINTDOC,
50 VIEWCREATED,
51 PREPARECLOSEVIEW,
52 CLOSEVIEW,
53 MODIFYCHANGED,
54 TITLECHANGED,
55 VISAREACHANGED,
56 MODECHANGED,
57 STORAGECHANGED,
58 LAST = STORAGECHANGED
61 class GlobalEventConfig_Impl;
63 class UNOTOOLS_DLLPUBLIC GlobalEventConfig final :
64 public cppu::WeakImplHelper< css::document::XEventsSupplier, css::container::XNameReplace >
66 public:
67 GlobalEventConfig( );
68 virtual ~GlobalEventConfig( ) override;
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 css::uno::Sequence < css::beans::PropertyValue > getByName2( const OUString& aName );
81 private:
82 static GlobalEventConfig_Impl* m_pImpl;
83 static sal_Int32 m_nRefCount;
86 #endif // INCLUDED_UNOTOOLS_EVENTCFG_HXX
88 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */