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

#include <KoToolBoxButton_p.h>

+ Inheritance diagram for KoToolBoxButton:

Public Member Functions

void attachAction (QAction *action)
 
 KoToolBoxButton (KoToolAction *toolAction, QWidget *parent)
 
void setHighlightColor ()
 

Private Slots

void slotUpdateActionData ()
 

Private Member Functions

void setDataFromToolAction (QAction *action)
 

Private Attributes

KoToolActionm_toolAction
 

Detailed Description

Definition at line 14 of file KoToolBoxButton_p.h.

Constructor & Destructor Documentation

◆ KoToolBoxButton()

KoToolBoxButton::KoToolBoxButton ( KoToolAction * toolAction,
QWidget * parent )
explicit

Definition at line 19 of file KoToolBoxButton.cpp.

20 : QToolButton(parent)
21 , m_toolAction(toolAction)
22{
23 setObjectName(m_toolAction->id());
24 // ensure same L&F
25 setCheckable(true);
26 setAutoRaise(true);
27 setIcon(kisIcon(m_toolAction->iconName()));
28
29 // only a fallback
30 setToolTip(m_toolAction->toolTip());
31
32 connect(this, SIGNAL(clicked(bool)), m_toolAction, SLOT(trigger()));
33}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
QString iconName() const
The icon name of the tool.
QString toolTip() const
The tooltip of the tool.
QString id() const
The id of the tool.
KoToolAction * m_toolAction
#define kisIcon(name)
Definition kis_icon.h:26

References connect(), KoToolAction::iconName(), KoToolAction::id(), kisIcon, m_toolAction, and KoToolAction::toolTip().

Member Function Documentation

◆ attachAction()

void KoToolBoxButton::attachAction ( QAction * action)

Definition at line 35 of file KoToolBoxButton.cpp.

36{
37 if (!action) {
38 return;
39 }
40
41 connect(action, SIGNAL(changed()), SLOT(slotUpdateActionData()));
43}
void setDataFromToolAction(QAction *action)

References connect(), setDataFromToolAction(), and slotUpdateActionData().

◆ setDataFromToolAction()

void KoToolBoxButton::setDataFromToolAction ( QAction * action)
private

Definition at line 59 of file KoToolBoxButton.cpp.

60{
61 if (!action) {
62 warnUI << "No tool action available, using fallback!";
63 setToolTip(m_toolAction->toolTip());
64 return;
65 }
66 setToolTip(action->toolTip());
67}
#define warnUI
Definition kis_debug.h:94

References m_toolAction, KoToolAction::toolTip(), and warnUI.

◆ setHighlightColor()

void KoToolBoxButton::setHighlightColor ( )

Definition at line 45 of file KoToolBoxButton.cpp.

46{
47 QPalette p = qApp->palette();
48 if (isChecked()) {
49 QPalette palette_highlight(p);
50 QColor c = p.color(QPalette::Highlight);
51 palette_highlight.setColor(QPalette::Button, c);
52 setPalette(palette_highlight);
53 }
54 else {
55 setPalette(p);
56 }
57}
const Params2D p

References p.

◆ slotUpdateActionData

void KoToolBoxButton::slotUpdateActionData ( )
privateslot

Definition at line 69 of file KoToolBoxButton.cpp.

70{
71 QAction *action = qobject_cast<QAction*>(sender());
72 if (action) {
74 }
75}

References setDataFromToolAction().

Member Data Documentation

◆ m_toolAction

KoToolAction* KoToolBoxButton::m_toolAction
private

Definition at line 27 of file KoToolBoxButton_p.h.


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