Avoid potential negative array index access to cached text.
[LibreOffice.git] / toolkit / inc / helper / accessibilityclient.hxx
blobf90414671d278d211f74d5cbcfa3044eadda86fc
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_TOOLKIT_INC_HELPER_ACCESSIBILITYCLIENT_HXX
21 #define INCLUDED_TOOLKIT_INC_HELPER_ACCESSIBILITYCLIENT_HXX
23 #include <toolkit/helper/accessiblefactory.hxx>
25 namespace toolkit
27 /** a client for the accessibility implementations which have been
28 outsourced from the main toolkit library
30 All instances of this class share a reference to a common IAccessibleFactory
31 instance, which is used for creating all kind of Accessibility related
32 components.
34 When the AccessibilityClient goes away, also this factory goes away, and the respective
35 library is unloaded.
37 This class is not thread-safe.
39 class AccessibilityClient
41 private:
42 bool m_bInitialized;
44 public:
45 AccessibilityClient();
47 IAccessibleFactory& getFactory();
49 private:
50 void ensureInitialized();
53 } // namespace toolkit
55 #endif // INCLUDED_TOOLKIT_INC_HELPER_ACCESSIBILITYCLIENT_HXX
57 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */