void TAction::insertActions( mudlet * pMainWindow, TToolBar * pT, QMenu * menu ) { mpToolBar = pT; QIcon icon( mIcon ); EAction * action = new EAction( icon, mName, pMainWindow ); action->setCheckable( mIsPushDownButton ); action->mID = mID; action->mpHost = mpHost; action->setStatusTip( mName ); menu->addAction( action ); //mudlet::self()->bindMenu( menu, action ); if( mIsFolder ) { QMenu * newMenu = new QMenu( pMainWindow ); newMenu->setStyleSheet( css ); action->setMenu( newMenu ); typedef list<TAction *>::const_iterator I; for( I it = mpMyChildrenList->begin(); it != mpMyChildrenList->end(); it++) { TAction * pChild = *it; pChild->insertActions( pMainWindow, pT, newMenu ); } } }
void TAction::expandToolbar( mudlet * pMainWindow, TToolBar * pT, QMenu * menu ) { typedef list<TAction *>::const_iterator I; for( I it = mpMyChildrenList->begin(); it != mpMyChildrenList->end(); it++) { TAction * pChild = *it; QIcon icon( pChild->mIcon ); QString name = pChild->getName(); TFlipButton * button = new TFlipButton( pT,pChild, pChild->mID, mpHost ); button->setIcon( icon ); button->setText( name ); button->setCheckable( pChild->mIsPushDownButton ); button->setChecked( (pChild->mButtonState==2) ); qDebug()<<"button="<<pChild->mName<<" checked="<<(pChild->mButtonState==2); button->setFlat( mButtonFlat ); button->setStyleSheet( css ); pT->addButton( button ); if( pChild->mIsFolder ) { QMenu * newMenu = new QMenu( pT ); button->setMenu( newMenu ); newMenu->setStyleSheet( css ); pChild->insertActions( pMainWindow, pT, newMenu ); } } }