src/hbcore/gui/hbtoolbutton.cpp
changeset 2 06ff229162e9
parent 1 f7ac710697a9
child 6 c3690ec91ef8
equal deleted inserted replaced
1:f7ac710697a9 2:06ff229162e9
    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