1
0
Fork 0
libreoffice/sw/source/core/inc/AccessibilityIssue.hxx
Daniel Baumann 8e63e14cf6
Adding upstream version 4:25.2.3.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-22 16:20:04 +02:00

91 lines
2.4 KiB
C++

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
*/
#ifndef INCLUDED_SW_SOURCE_CORE_ACCESSIBILITYISSUE_HXX
#define INCLUDED_SW_SOURCE_CORE_ACCESSIBILITYISSUE_HXX
#include <sfx2/AccessibilityIssue.hxx>
#include <doc.hxx>
#include <txtftn.hxx>
namespace sw
{
enum class IssueObject
{
UNKNOWN,
GRAPHIC,
OLE,
SHAPE,
FORM,
TABLE,
TEXT,
HYPERLINKTEXT,
HYPERLINKFLY,
DOCUMENT_TITLE,
DOCUMENT_BACKGROUND,
LANGUAGE_NOT_SET,
FOOTENDNOTE,
TEXTFRAME,
LINKED,
};
class SW_DLLPUBLIC AccessibilityIssue final : public sfx::AccessibilityIssue
{
private:
IssueObject m_eIssueObject;
SwDoc* m_pDoc;
OUString m_sObjectID;
std::vector<OUString> m_aIssueAdditionalInfo;
SwNode* m_pNode;
SwTextFootnote* m_pTextFootnote;
sal_Int32 m_nStart;
sal_Int32 m_nEnd;
public:
AccessibilityIssue(sfx::AccessibilityIssueID eIssueID, sfx::AccessibilityIssueLevel eIssueLvl);
AccessibilityIssue(AccessibilityIssue const&) = default;
void setIssueObject(IssueObject eIssueObject);
void setDoc(SwDoc& rDoc);
void setObjectID(OUString const& rID);
void setNode(SwNode* pNode) { m_pNode = pNode; }
void setTextFootnote(SwTextFootnote* pTextFootnote) { m_pTextFootnote = pTextFootnote; }
void setStart(sal_Int32 nStart) { m_nStart = nStart; }
void setEnd(sal_Int32 nEnd) { m_nEnd = nEnd; }
std::vector<OUString> const& getAdditionalInfo() const { return m_aIssueAdditionalInfo; }
void setAdditionalInfo(std::vector<OUString>&& rIssueAdditionalInfo)
{
m_aIssueAdditionalInfo = std::move(rIssueAdditionalInfo);
}
bool canGotoIssue() const override;
void gotoIssue() const override;
bool canQuickFixIssue() const override;
void quickFixIssue() const override;
sal_Int32 getStart() { return m_nStart; }
sal_Int32 getEnd() { return m_nEnd; }
SwNode* getNode() { return m_pNode; }
SwTextFootnote* getTextFootnote() { return m_pTextFootnote; }
AccessibilityIssue& operator=(const AccessibilityIssue&) = default;
};
} // end sw namespace
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */