Bump version to 21.06.18.1
[LibreOffice.git] / include / sfx2 / AccessibilityIssue.hxx
blob32522ff63f47ef46c34ea6dde6089ffc48d9dfdc
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 */
11 #ifndef INCLUDED_SFX2_ACCESSIBILITYISSUE_HXX
12 #define INCLUDED_SFX2_ACCESSIBILITYISSUE_HXX
14 #include <sfx2/dllapi.h>
15 #include <rtl/ustring.hxx>
16 #include <vector>
17 #include <memory>
19 namespace sfx
21 enum class AccessibilityIssueID
23 UNSPECIFIED, // TODO: remove - temporary
24 DOCUMENT_TITLE,
25 DOCUMENT_LANGUAGE,
26 STYLE_LANGUAGE,
27 NO_ALT_OLE,
28 NO_ALT_GRAPHIC,
29 NO_ALT_SHAPE,
30 TABLE_MERGE_SPLIT,
31 TEXT_FORMATTING,
34 class SFX2_DLLPUBLIC AccessibilityIssue
36 public:
37 AccessibilityIssue(AccessibilityIssueID eIssueID = AccessibilityIssueID::UNSPECIFIED);
38 virtual ~AccessibilityIssue();
40 virtual bool canGotoIssue() const = 0;
41 virtual void gotoIssue() const = 0;
43 AccessibilityIssueID m_eIssueID;
44 OUString m_aIssueText;
47 class SFX2_DLLPUBLIC AccessibilityIssueCollection
49 private:
50 std::vector<std::shared_ptr<AccessibilityIssue>> m_aIssues;
52 public:
53 AccessibilityIssueCollection() = default;
55 std::vector<std::shared_ptr<AccessibilityIssue>>& getIssues();
58 } // end sfx namespace
60 #endif // INCLUDED_SFX2_ACCESSIBILITYISSUE_HXX
62 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */