Version 7.6.3.2-android, tag libreoffice-7.6.3.2-android
[LibreOffice.git] / include / vcl / svtaccessiblefactory.hxx
blob14bcc653265a6761a471f9b8d466006856c349f4
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 .
20 #ifndef INCLUDED_INCLUDE_VCL_SVTACCESSIBLEFACTORY_HXX
21 #define INCLUDED_INCLUDE_VCL_SVTACCESSIBLEFACTORY_HXX
23 #include <config_options.h>
24 #include <vcl/dllapi.h>
26 namespace vcl { class IAccessibleFactory; }
28 namespace vcl
30 /** a client for the accessibility implementations which have been outsourced
31 from the main vcl/svtools libraries
33 All instances of this class share a reference to a common IAccessibleFactory
34 instance, which is used for creating all kind of Accessibility related
35 components.
37 When the AccessibleFactoryAccess goes away, also this factory goes away, and the respective
38 library is unloaded.
40 This class is not thread-safe.
42 class UNLESS_MERGELIBS(VCL_DLLPUBLIC) AccessibleFactoryAccess
44 private:
45 bool m_bInitialized;
47 public:
48 AccessibleFactoryAccess();
50 IAccessibleFactory& getFactory();
52 private:
53 void ensureInitialized();
55 } // namespace svt
57 #endif // INCLUDED_INCLUDE_VCL_SVTACCESSIBLEFACTORY_HXX
59 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */