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

#include <KisResourceItemViewer.h>

+ Inheritance diagram for KisResourceItemViewer:

Signals

void onViewDetails ()
 
void onViewThumbnail ()
 

Public Member Functions

 KisResourceItemViewer (Viewer type, QWidget *parent=nullptr)
 
void updateViewSettings ()
 
 ~KisResourceItemViewer ()
 
- Public Member Functions inherited from KisPopupButton
void adjustPosition ()
 adjustPosition adjusts the position of the popup widget based on the position of this button and the size of the widget
 
bool isPopupWidgetVisible ()
 
 KisPopupButton (QWidget *parent)
 
void setArrowVisible (bool v)
 
void setPopupWidget (QWidget *widget)
 
void setPopupWidgetWidth (int w)
 
 ~KisPopupButton () override
 

Private Slots

void slotViewDetails ()
 
void slotViewThumbnail ()
 

Private Attributes

ListViewMode m_mode
 
Viewer m_type
 

Additional Inherited Members

- Public Slots inherited from KisPopupButton
void hidePopupWidget ()
 
void setPopupWidgetDetached (bool detach)
 
void setPopupWidgetVisible (bool visible)
 
void showPopupWidget ()
 
- Protected Member Functions inherited from KisPopupButton
void paintEvent (QPaintEvent *event) override
 
void paintPopupArrow ()
 

Detailed Description

Definition at line 15 of file KisResourceItemViewer.h.

Constructor & Destructor Documentation

◆ KisResourceItemViewer()

KisResourceItemViewer::KisResourceItemViewer ( Viewer type,
QWidget * parent = nullptr )
explicit

Definition at line 17 of file KisResourceItemViewer.cpp.

17 :
18 KisPopupButton(parent),
20 m_type(type)
21{
22 QMenu* viewModeMenu = new QMenu(this);
23 KisConfig cfg(true);
24
25 viewModeMenu->setStyleSheet("margin: 6px");
26 setArrowVisible(false);
27 setAutoRaise(true);
28
29 // View Modes Btns
30 viewModeMenu->addSection(i18nc("@title Which elements to display (e.g., thumbnails or details)", "Display"));
31
33 m_mode = (cfg.readEntry<quint32>("ResourceItemsBCSearch.viewMode", 1) == 1)? ListViewMode::IconGrid : ListViewMode::Detail;
34 } else if (m_type == Viewer::ResourceManager) {
35 m_mode = (cfg.readEntry<quint32>("ResourceItemsRM.viewMode", 1) == 1)? ListViewMode::IconGrid : ListViewMode::Detail;
36 } else {
37 m_mode = (cfg.readEntry<quint32>("ResourceItemsBCSelected.viewMode", 1) == 1)? ListViewMode::IconGrid : ListViewMode::Detail;
38 }
39
40 QActionGroup *actionGroup = new QActionGroup(viewModeMenu);
41
42 QAction* action = viewModeMenu->addAction(KisIconUtils::loadIcon("view-preview"), i18n("Thumbnails"));
43 action->setCheckable(true);
44 action->setChecked(m_mode == ListViewMode::IconGrid);
45 action->setActionGroup(actionGroup);
46 connect(action, SIGNAL(triggered()), this, SLOT(slotViewThumbnail()));
47
48 action = viewModeMenu->addAction(KisIconUtils::loadIcon("view-list-details"), i18n("Details"));
49 action->setCheckable(true);
50 action->setChecked(m_mode == ListViewMode::Detail);
51 action->setActionGroup(actionGroup);
52 connect(action, SIGNAL(triggered()), this, SLOT(slotViewDetails()));
53
54 setPopupWidget(viewModeMenu);
55 setPopupMode(QToolButton::InstantPopup);
56 setIcon(KisIconUtils::loadIcon("view-choose"));
57
60 } else {
62 }
63
64}
@ ResourceManager
@ TableAvailable
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
void setPopupWidget(QWidget *widget)
void setArrowVisible(bool v)
KisPopupButton(QWidget *parent)
QIcon loadIcon(const QString &name)

References connect(), Detail, IconGrid, KisIconUtils::loadIcon(), m_mode, m_type, KisConfig::readEntry(), ResourceManager, KisPopupButton::setArrowVisible(), KisPopupButton::setPopupWidget(), slotViewDetails(), slotViewThumbnail(), and TableAvailable.

◆ ~KisResourceItemViewer()

KisResourceItemViewer::~KisResourceItemViewer ( )

Definition at line 66 of file KisResourceItemViewer.cpp.

67{
68}

Member Function Documentation

◆ onViewDetails

void KisResourceItemViewer::onViewDetails ( )
signal

◆ onViewThumbnail

void KisResourceItemViewer::onViewThumbnail ( )
signal

◆ slotViewDetails

void KisResourceItemViewer::slotViewDetails ( )
privateslot

Definition at line 83 of file KisResourceItemViewer.cpp.

84{
85 KisConfig cfg(false);
87 cfg.writeEntry("ResourceItemsBCSearch.viewMode", qint32(0));
88 } else if (m_type == Viewer::ResourceManager) {
89 cfg.writeEntry("ResourceItemsRM.viewMode", qint32(0));
90 } else {
91 cfg.writeEntry("ResourceItemsBCSelected.viewMode", qint32(0));
92 }
93 Q_EMIT onViewDetails();
94}

References m_type, onViewDetails(), ResourceManager, TableAvailable, and KisConfig::writeEntry().

◆ slotViewThumbnail

void KisResourceItemViewer::slotViewThumbnail ( )
privateslot

Definition at line 70 of file KisResourceItemViewer.cpp.

71{
72 KisConfig cfg(false);
74 cfg.writeEntry("ResourceItemsBCSearch.viewMode", qint32(1));
75 } else if (m_type == Viewer::ResourceManager) {
76 cfg.writeEntry("ResourceItemsRM.viewMode", qint32(1));
77 } else {
78 cfg.writeEntry("ResourceItemsBCSelected.viewMode", qint32(1));
79 }
80 Q_EMIT onViewThumbnail();
81}

References m_type, onViewThumbnail(), ResourceManager, TableAvailable, and KisConfig::writeEntry().

◆ updateViewSettings()

void KisResourceItemViewer::updateViewSettings ( )

Member Data Documentation

◆ m_mode

ListViewMode KisResourceItemViewer::m_mode
private

Definition at line 35 of file KisResourceItemViewer.h.

◆ m_type

Viewer KisResourceItemViewer::m_type
private

Definition at line 36 of file KisResourceItemViewer.h.


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