Fix GNU C++ version check
[LibreOffice.git] / vcl / inc / qt5 / QtAccessibleRegistry.hxx
blob00f6ba0a5762552c3613779b5531993dfafd45a7
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
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/.
8 */
10 #pragma once
12 #include <map>
14 #include <QtCore/QObject>
16 #include <com/sun/star/accessibility/XAccessible.hpp>
18 using namespace css::accessibility;
20 /**
21 * Maintains a mapping between XAccessible objects and the
22 * associated QObjects. The corresponding QObject can be
23 * passed to the QAccessible::queryAccessibleInterface method in
24 * order to retrieve the QAccessibleInterface for the
25 * XAccessible object.
27 class QtAccessibleRegistry
29 private:
30 static std::map<css::accessibility::XAccessible*, QObject*> m_aMapping;
31 QtAccessibleRegistry() = delete;
33 public:
34 /** Returns the related QObject* for the XAccessible. Creates a new one if none exists yet. */
35 static QObject* getQObject(const css::uno::Reference<XAccessible>& xAcc);
36 static void insert(const css::uno::Reference<XAccessible>& xAcc, QObject* pQObject);
37 /** Removes the entry for the given XAccessible. */
38 static void remove(const css::uno::Reference<XAccessible>& xAcc);
41 /* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */