Krita Source Code Documentation
Loading...
Searching...
No Matches
PageTagChooser Class Reference

#include <page_tag_chooser.h>

+ Inheritance diagram for PageTagChooser:

Signals

void tagsUpdated ()
 

Public Member Functions

 PageTagChooser (KoResourceBundleSP bundle=nullptr, QWidget *parent=nullptr)
 
QList< int > selectedTagIds ()
 
void updateTags (bool flag, QString tag)
 
 ~PageTagChooser ()
 

Private Slots

void addSelected (KisTagSP tagSP)
 
void removeSelected (KisTagSP tagSP)
 

Private Attributes

KoResourceBundleSP m_bundle
 
KisBundleStoragem_bundleStorage
 
QList< int > m_selectedTagIds
 
Ui::PageTagChooser * m_ui
 

Detailed Description

Definition at line 21 of file page_tag_chooser.h.

Constructor & Destructor Documentation

◆ PageTagChooser()

PageTagChooser::PageTagChooser ( KoResourceBundleSP bundle = nullptr,
QWidget * parent = nullptr )
explicit

Definition at line 38 of file page_tag_chooser.cpp.

38 :
39 QWizardPage(parent),
40 m_ui(new Ui::PageTagChooser)
41 , m_bundle(bundle)
42{
43 m_ui->setupUi(this);
44
45 KoDocumentInfo info;
46 info.updateParameters();
47
55
56 m_ui->tabWidget->addTab(tabBrushes, i18n("Brushes"));
57 m_ui->tabWidget->addTab(tabBrushPresets, i18n("Brush Presets"));
58 m_ui->tabWidget->addTab(tabGradients, i18n("Gradients"));
59 m_ui->tabWidget->addTab(tabGamutMasks, i18n("Gamut Masks"));
60 m_ui->tabWidget->addTab(tabPatterns, i18n("Patterns"));
61 m_ui->tabWidget->addTab(tabPalettes, i18n("Palettes"));
62 m_ui->tabWidget->addTab(tabWorkspaces, i18n("Workspaces"));
63
64 connect(tabBrushes, SIGNAL(tagsAdded(KisTagSP)), this, SLOT(addSelected(KisTagSP)));
65 connect(tabBrushPresets, SIGNAL(tagsAdded(KisTagSP)), this, SLOT(addSelected(KisTagSP)));
66 connect(tabGradients, SIGNAL(tagsAdded(KisTagSP)), this, SLOT(addSelected(KisTagSP)));
67 connect(tabGamutMasks, SIGNAL(tagsAdded(KisTagSP)), this, SLOT(addSelected(KisTagSP)));
68 connect(tabPatterns, SIGNAL(tagsAdded(KisTagSP)), this, SLOT(addSelected(KisTagSP)));
69 connect(tabPalettes, SIGNAL(tagsAdded(KisTagSP)), this, SLOT(addSelected(KisTagSP)));
70 connect(tabWorkspaces, SIGNAL(tagsAdded(KisTagSP)), this, SLOT(addSelected(KisTagSP)));
71
72 connect(tabBrushes, SIGNAL(tagsRemoved(KisTagSP)), this, SLOT(removeSelected(KisTagSP)));
73 connect(tabBrushPresets, SIGNAL(tagsRemoved(KisTagSP)), this, SLOT(removeSelected(KisTagSP)));
74 connect(tabGradients, SIGNAL(tagsRemoved(KisTagSP)), this, SLOT(removeSelected(KisTagSP)));
75 connect(tabGamutMasks, SIGNAL(tagsRemoved(KisTagSP)), this, SLOT(removeSelected(KisTagSP)));
76 connect(tabPatterns, SIGNAL(tagsRemoved(KisTagSP)), this, SLOT(removeSelected(KisTagSP)));
77 connect(tabPalettes, SIGNAL(tagsRemoved(KisTagSP)), this, SLOT(removeSelected(KisTagSP)));
78 connect(tabWorkspaces, SIGNAL(tagsRemoved(KisTagSP)), this, SLOT(removeSelected(KisTagSP)));
79
80 if (m_bundle) {
81 m_bundleStorage = new KisBundleStorage(m_bundle->filename());
82
84 #if defined HAVE_SEEXPR
85 resourceTypes << ResourceType::SeExprScripts;
86 #endif
88
89 for (int i = 0; i < resourceTypes.size(); i++) {
91 KisTagModel *tagModel = new KisTagModel(resourceTypes[i]);
92
93 while (tagIter->hasNext()) {
94 tagIter->next();
95 KisTagSP tag = tagModel->tagForUrl(tagIter->tag()->url());
96 m_selectedTagIds.append(tag->id());
97 }
98 }
99 }
100}
QList< QString > QStringList
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
QSharedPointer< KisResourceStorage::TagIterator > tags(const QString &resourceType) override
KisTagSP tagForUrl(const QString &url) const override
Retrieve a tag by url.
The class containing all meta information about a document.
KoResourceBundleSP m_bundle
void removeSelected(KisTagSP tagSP)
QList< int > m_selectedTagIds
KisBundleStorage * m_bundleStorage
void addSelected(KisTagSP tagSP)
Ui::PageTagChooser * m_ui
const QString Palettes
const QString Brushes
const QString GamutMasks
const QString Patterns
const QString SeExprScripts
const QString Gradients
const QString Workspaces
const QString PaintOpPresets

References addSelected(), ResourceType::Brushes, connect(), ResourceType::GamutMasks, ResourceType::Gradients, m_bundle, m_bundleStorage, m_selectedTagIds, m_ui, ResourceType::PaintOpPresets, ResourceType::Palettes, ResourceType::Patterns, removeSelected(), ResourceType::SeExprScripts, KisTagModel::tagForUrl(), KisBundleStorage::tags(), KoDocumentInfo::updateParameters(), and ResourceType::Workspaces.

◆ ~PageTagChooser()

PageTagChooser::~PageTagChooser ( )

Definition at line 102 of file page_tag_chooser.cpp.

103{
104 delete m_ui;
105}

References m_ui.

Member Function Documentation

◆ addSelected

void PageTagChooser::addSelected ( KisTagSP tagSP)
privateslot

Definition at line 112 of file page_tag_chooser.cpp.

113{
114 m_selectedTagIds.append(tagSP->id());
115 updateTags(true, tagSP->name());
116}
void updateTags(bool flag, QString tag)

References m_selectedTagIds, and updateTags().

◆ removeSelected

void PageTagChooser::removeSelected ( KisTagSP tagSP)
privateslot

Definition at line 118 of file page_tag_chooser.cpp.

119{
120 m_selectedTagIds.removeAll(tagSP->id());
121 updateTags(false, tagSP->name());
122}

References m_selectedTagIds, and updateTags().

◆ selectedTagIds()

QList< int > PageTagChooser::selectedTagIds ( )

Definition at line 107 of file page_tag_chooser.cpp.

108{
109 return m_selectedTagIds;
110}

References m_selectedTagIds.

◆ tagsUpdated

void PageTagChooser::tagsUpdated ( )
signal

◆ updateTags()

void PageTagChooser::updateTags ( bool flag,
QString tag )

Definition at line 124 of file page_tag_chooser.cpp.

125{
126 DlgCreateBundle *wizard = qobject_cast<DlgCreateBundle*>(this->wizard());
127 if (wizard) {
128 if (flag) {
129 wizard->m_tags.insert(tag);
130 } else {
131 wizard->m_tags.remove(tag);
132 }
133 }
134
135 Q_EMIT tagsUpdated();
136}
QSet< QString > m_tags
void tagsUpdated()

References DlgCreateBundle::m_tags, and tagsUpdated().

Member Data Documentation

◆ m_bundle

KoResourceBundleSP PageTagChooser::m_bundle
private

Definition at line 42 of file page_tag_chooser.h.

◆ m_bundleStorage

KisBundleStorage* PageTagChooser::m_bundleStorage
private

Definition at line 45 of file page_tag_chooser.h.

◆ m_selectedTagIds

QList<int> PageTagChooser::m_selectedTagIds
private

Definition at line 44 of file page_tag_chooser.h.

◆ m_ui

Ui::PageTagChooser* PageTagChooser::m_ui
private

Definition at line 41 of file page_tag_chooser.h.


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