- if (!aKeys.isEmpty())
- aToolTip = aToolTip + " (" + aKeys.toString() + ")";
- if (!aToolTip.isEmpty())
- aBtn->setToolTip(aToolTip);
-
- aBtn->addAction(this);
- connect(aBtn, SIGNAL(clicked()), this, SLOT(trigger()));
- aBtn->setFlat(true);
- aBtn->setMinimumSize(MIN_BUTTON_WIDTH, MIN_BUTTON_HEIGHT);
- return aBtn;
+ if (!aKeys.isEmpty()) {
+ aToolTip = QString("%1 (%2)").arg(aToolTip).arg(aKeys.toString());
+ }
+ if (!aToolTip.isEmpty()) {
+ aButton->setToolTip(aToolTip);
+ }
+ aButton->setCheckable(myCheckable);
+ aButton->setAutoRaise(true);
+ aButton->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
+ aButton->setMinimumSize(MIN_BUTTON_WIDTH, MIN_BUTTON_HEIGHT);
+ aButton->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
+
+ connect(aButton, SIGNAL(clicked()), this, SLOT(trigger()));
+ connect(this, SIGNAL(toggled(bool)), aButton, SLOT(setChecked(bool)));
+ this->setCheckable(myCheckable);
+
+ return aButton;