1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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/.
11 #ifndef INCLUDED_SW_SOURCE_CORE_ACCESSIBILITYISSUE_HXX
12 #define INCLUDED_SW_SOURCE_CORE_ACCESSIBILITYISSUE_HXX
14 #include <sfx2/AccessibilityIssue.hxx>
20 enum class IssueObject
37 class SW_DLLPUBLIC AccessibilityIssue final
: public sfx::AccessibilityIssue
40 IssueObject m_eIssueObject
;
43 std::vector
<OUString
> m_aIssueAdditionalInfo
;
45 SwTextFootnote
* m_pTextFootnote
;
51 AccessibilityIssue(sfx::AccessibilityIssueID eIssueID
= sfx::AccessibilityIssueID::UNSPECIFIED
);
52 AccessibilityIssue(AccessibilityIssue
const&) = default;
54 void setIssueObject(IssueObject eIssueObject
);
55 void setDoc(SwDoc
& rDoc
);
56 void setObjectID(OUString
const& rID
);
57 void setNode(SwNode
* pNode
) { m_pNode
= pNode
; }
58 void setTextFootnote(SwTextFootnote
* pTextFootnote
) { m_pTextFootnote
= pTextFootnote
; }
60 void setStart(sal_Int32 nStart
) { m_nStart
= nStart
; }
62 void setEnd(sal_Int32 nEnd
) { m_nEnd
= nEnd
; }
64 std::vector
<OUString
> const& getAdditionalInfo() const { return m_aIssueAdditionalInfo
; }
66 void setAdditionalInfo(std::vector
<OUString
>&& rIssueAdditionalInfo
)
68 m_aIssueAdditionalInfo
= std::move(rIssueAdditionalInfo
);
71 bool canGotoIssue() const override
;
72 void gotoIssue() const override
;
74 bool canQuickFixIssue() const override
;
75 void quickFixIssue() const override
;
77 sal_Int32
getStart() { return m_nStart
; }
78 sal_Int32
getEnd() { return m_nEnd
; }
79 SwNode
* getNode() { return m_pNode
; }
80 SwTextFootnote
* getTextFootnote() { return m_pTextFootnote
; }
82 AccessibilityIssue
& operator=(const AccessibilityIssue
&) = default;
89 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */