Krita Source Code Documentation
Loading...
Searching...
No Matches
KDEPrivate::XmlData Class Reference

Public Types

enum  XmlType { Shell = 0 , Part , Local , Merged }
 

Public Member Functions

KisKActionCollectionactionCollection () const
 
ToolBarListbarList ()
 
const ToolBarListbarList () const
 
QDomDocument & domDocument ()
 
const QDomDocument & domDocument () const
 
void dump () const
 
void setDomDocument (const QDomDocument &domDoc)
 
QString toolBarText (const QDomElement &it) const
 
XmlType type () const
 
 XmlData (XmlType xmlType, const QString &xmlFile, KisKActionCollection *collection)
 
QString xmlFile () const
 
 ~XmlData ()
 

Public Attributes

bool m_isModified
 

Private Attributes

KisKActionCollectionm_actionCollection {0}
 
ToolBarList m_barList
 
QDomDocument m_document
 
XmlType m_type
 
QString m_xmlFile
 

Detailed Description

Definition at line 82 of file kedittoolbar.cpp.

Member Enumeration Documentation

◆ XmlType

Enumerator
Shell 
Part 
Local 
Merged 

Definition at line 85 of file kedittoolbar.cpp.

Constructor & Destructor Documentation

◆ XmlData()

KDEPrivate::XmlData::XmlData ( XmlType xmlType,
const QString & xmlFile,
KisKActionCollection * collection )
inlineexplicit

Definition at line 87 of file kedittoolbar.cpp.

88 : m_isModified(false)
90 , m_type(xmlType)
91 , m_actionCollection(collection)
92 {
93 }
KisKActionCollection * m_actionCollection
QString xmlFile() const

◆ ~XmlData()

KDEPrivate::XmlData::~XmlData ( )
inline

Definition at line 95 of file kedittoolbar.cpp.

96 {
97 }

Member Function Documentation

◆ actionCollection()

KisKActionCollection * KDEPrivate::XmlData::actionCollection ( ) const
inline

Definition at line 125 of file kedittoolbar.cpp.

126 {
127 return m_actionCollection;
128 }

References m_actionCollection.

◆ barList() [1/2]

ToolBarList & KDEPrivate::XmlData::barList ( )
inline

Definition at line 154 of file kedittoolbar.cpp.

155 {
156 return m_barList;
157 }

References m_barList.

◆ barList() [2/2]

const ToolBarList & KDEPrivate::XmlData::barList ( ) const
inline

Definition at line 159 of file kedittoolbar.cpp.

160 {
161 return m_barList;
162 }

References m_barList.

◆ domDocument() [1/2]

QDomDocument & KDEPrivate::XmlData::domDocument ( )
inline

Definition at line 137 of file kedittoolbar.cpp.

138 {
139 return m_document;
140 }
QDomDocument m_document

References m_document.

◆ domDocument() [2/2]

const QDomDocument & KDEPrivate::XmlData::domDocument ( ) const
inline

Definition at line 142 of file kedittoolbar.cpp.

143 {
144 return m_document;
145 }

References m_document.

◆ dump()

void KDEPrivate::XmlData::dump ( ) const
inline

Definition at line 99 of file kedittoolbar.cpp.

100 {
101#if 0
102 qDebug() << "XmlData" << this << "xmlFile:" << m_xmlFile;
103 foreach (const QDomElement &element, m_barList) {
104 qDebug() << " ToolBar:" << toolBarText(element);
105 }
106 //KisActionRegistry::instance()->
107 if (m_actionCollection) {
108 qDebug() << " " << m_actionCollection->actions().count() << "actions in the collection.";
109 } else {
110 qDebug() << " no action collection.";
111 }
112#endif
113 }
QString toolBarText(const QDomElement &it) const
QList< QAction * > actions() const

References KisKActionCollection::actions(), m_actionCollection, m_barList, m_xmlFile, and toolBarText().

◆ setDomDocument()

void KDEPrivate::XmlData::setDomDocument ( const QDomDocument & domDoc)
inline

Definition at line 130 of file kedittoolbar.cpp.

131 {
132 m_document = domDoc.cloneNode().toDocument();
133 m_barList = findToolBars(m_document.documentElement());
134 }
static ToolBarList findToolBars(const QDomElement &start)

References KDEPrivate::findToolBars(), m_barList, and m_document.

◆ toolBarText()

QString KDEPrivate::XmlData::toolBarText ( const QDomElement & it) const

Return the text (user-visible name) of a given toolbar

Definition at line 172 of file kedittoolbar.cpp.

173{
174 const QLatin1String attrName("name");
175
176 QString name;
177 QByteArray txt(it.namedItem(QStringLiteral("text")).toElement().text().toUtf8());
178 if (txt.isEmpty()) {
179 txt = it.namedItem(QStringLiteral("text")).toElement().text().toUtf8();
180 }
181 if (txt.isEmpty()) {
182 name = it.attribute(attrName);
183 } else {
184 QByteArray domain = it.namedItem(QStringLiteral("text")).toElement().attribute(QStringLiteral("translationDomain")).toUtf8();
185 if (domain.isEmpty()) {
186 domain = it.ownerDocument().documentElement().attribute(QStringLiteral("translationDomain")).toUtf8();
187 if (domain.isEmpty()) {
188 domain = KLocalizedString::applicationDomain();
189 }
190 }
191 name = i18nd(domain.constData(), txt.constData());
192 }
193
194 // the name of the toolbar might depend on whether or not
195 // it is in kparts
196 if ((m_type == XmlData::Shell) ||
197 (m_type == XmlData::Part)) {
198 QString doc_name(m_document.documentElement().attribute(attrName));
199 name += QStringLiteral(" <") + doc_name + QLatin1Char('>');
200 }
201 return name;
202}
const char * name(StandardAction id)

References m_document, m_type, Part, and Shell.

◆ type()

XmlType KDEPrivate::XmlData::type ( ) const
inline

Definition at line 120 of file kedittoolbar.cpp.

121 {
122 return m_type;
123 }

References m_type.

◆ xmlFile()

QString KDEPrivate::XmlData::xmlFile ( ) const
inline

Definition at line 115 of file kedittoolbar.cpp.

116 {
117 return m_xmlFile;
118 }

References m_xmlFile.

Member Data Documentation

◆ m_actionCollection

KisKActionCollection* KDEPrivate::XmlData::m_actionCollection {0}
private

Definition at line 169 of file kedittoolbar.cpp.

169{0};

◆ m_barList

ToolBarList KDEPrivate::XmlData::m_barList
private

Definition at line 165 of file kedittoolbar.cpp.

◆ m_document

QDomDocument KDEPrivate::XmlData::m_document
private

Definition at line 167 of file kedittoolbar.cpp.

◆ m_isModified

bool KDEPrivate::XmlData::m_isModified

Definition at line 152 of file kedittoolbar.cpp.

◆ m_type

XmlType KDEPrivate::XmlData::m_type
private

Definition at line 168 of file kedittoolbar.cpp.

◆ m_xmlFile

QString KDEPrivate::XmlData::m_xmlFile
private

Definition at line 166 of file kedittoolbar.cpp.


The documentation for this class was generated from the following file: