24 ****************************************************************************/ |
24 ****************************************************************************/ |
25 |
25 |
26 #include "hbtoolbutton.h" |
26 #include "hbtoolbutton.h" |
27 #include "hbtoolbutton_p.h" |
27 #include "hbtoolbutton_p.h" |
28 #include "hbtooltip.h" |
28 #include "hbtooltip.h" |
29 #include "hbstyleoptiontoolbutton.h" |
29 #include "hbstyleoptiontoolbutton_p.h" |
30 #include "hbtoolbarextension.h" |
30 #include "hbtoolbarextension.h" |
31 #include "hbtoolbarextension_p.h" |
31 #include "hbtoolbarextension_p.h" |
32 #include "hbaction.h" |
32 #include "hbaction.h" |
33 #include "hbaction_p.h" |
33 #include "hbaction_p.h" |
34 #include <hbglobal.h> |
34 #include <hbglobal.h> |
452 if (d->action) { |
452 if (d->action) { |
453 setCheckable(d->action->isCheckable()); |
453 setCheckable(d->action->isCheckable()); |
454 setChecked(d->action->isChecked()); |
454 setChecked(d->action->isChecked()); |
455 setEnabled(d->action->isEnabled()); |
455 setEnabled(d->action->isEnabled()); |
456 HbAction *hbAction = qobject_cast<HbAction *>(d->action); |
456 HbAction *hbAction = qobject_cast<HbAction *>(d->action); |
457 if (hbAction && (!hbAction->toolTip().isEmpty()) && (hbAction->toolTip() != toolTip())) { |
457 if (hbAction && hbAction->toolTip() != toolTip()) { |
|
458 // by default, HbAction does not have tooltip. If QAction |
|
459 // does not have tooltip, it returns button text. This is |
|
460 // here to enable empty tooltip text by using HbAction. |
458 setToolTip(hbAction->toolTip()); |
461 setToolTip(hbAction->toolTip()); |
459 } else if(!hbAction && d->action->toolTip() != toolTip()) { |
462 } else if(!hbAction && d->action->toolTip() != toolTip()) { |
460 setToolTip(d->action->toolTip()); |
463 setToolTip(d->action->toolTip()); |
461 } |
464 } |
462 setVisible(d->action->isVisible()); |
465 setVisible(d->action->isVisible()); |
|
466 } else { |
|
467 setCheckable(false); |
|
468 setChecked(false); |
|
469 setEnabled(false); |
|
470 setToolTip(QString()); |
463 } |
471 } |
464 |
472 |
465 initStyleOption(&option); |
473 initStyleOption(&option); |
466 setProperty("dialogtoolbar", d->mDialogToolBar); |
474 setProperty("dialogtoolbar", d->mDialogToolBar); |
467 if (d->frameItem) { |
475 if (d->frameItem) { |
471 style()->updatePrimitive(d->textItem, HbStyle::P_ToolButton_text, &option); |
479 style()->updatePrimitive(d->textItem, HbStyle::P_ToolButton_text, &option); |
472 } |
480 } |
473 if (d->iconItem) { |
481 if (d->iconItem) { |
474 style()->updatePrimitive(d->iconItem, HbStyle::P_ToolButton_icon, &option); |
482 style()->updatePrimitive(d->iconItem, HbStyle::P_ToolButton_icon, &option); |
475 if (d->action && d->action->icon().flags() & HbIcon::Colorized) { |
483 if (d->action && d->action->icon().flags() & HbIcon::Colorized) { |
476 static_cast<HbIconItem *>(d->iconItem)->setFlags(HbIcon::Colorized); |
484 static_cast<HbIconItem *>(d->iconItem)->setFlags(HbIcon::Colorized); |
477 } |
485 } |
|
486 if (d->action && d->action->icon().mirroringMode() != HbIcon::Default) { |
|
487 HbIconItem *iconItem = static_cast<HbIconItem *>(d->iconItem); |
|
488 iconItem->setMirroringMode( d->action->icon().mirroringMode() ); |
|
489 } |
|
490 |
|
491 |
478 } |
492 } |
479 } |
493 } |
480 |
494 |
481 /*! |
495 /*! |
482 Initializes \a option with the values from this HbToolButton. This method is useful for |
496 Initializes \a option with the values from this HbToolButton. This method is useful for |