KGet_plug_in::KGet_plug_in( QObject* parent, const char* name ) : Plugin( parent, name ) { QPixmap pix = KGlobal::iconLoader()->loadIcon("kget", KIcon::MainToolbar); KActionMenu *menu = new KActionMenu( i18n("Download Manager"), pix, actionCollection(), "kget_menu" ); menu->setDelayed( false ); connect( menu->popupMenu(), SIGNAL( aboutToShow() ), SLOT( showPopup() )); m_paToggleDropTarget=new KToggleAction(i18n("Show Drop Target"), KShortcut(), this, SLOT(slotShowDrop()), actionCollection(), "show_drop" ); menu->insert( m_paToggleDropTarget ); KAction *action = new KAction(i18n("List All Links"), KShortcut(), this, SLOT( slotShowLinks() ), actionCollection(), "show_links"); menu->insert( action ); p_dcopServer= new DCOPClient(); p_dcopServer->attach (); }
KActionMenu* WPAccount::actionMenu() { kdDebug(14170) << "WPAccount::actionMenu()" << endl; /// How to remove an action from Kopete::Account::actionMenu()? GF KActionMenu *theActionMenu = new KActionMenu(accountId() , myself()->onlineStatus().iconFor(this), this); theActionMenu->popupMenu()->insertTitle(myself()->onlineStatus().iconFor(this), i18n("WinPopup (%1)").arg(accountId())); if (mProtocol) { KAction *goOnline = new KAction("Online", QIconSet(mProtocol->WPOnline.iconFor(this)), 0, this, SLOT(connect()), theActionMenu, "actionGoAvailable"); goOnline->setEnabled(isConnected() && isAway()); theActionMenu->insert(goOnline); KAction *goAway = new KAction("Away", QIconSet(mProtocol->WPAway.iconFor(this)), 0, this, SLOT(goAway()), theActionMenu, "actionGoAway"); goAway->setEnabled(isConnected() && !isAway()); theActionMenu->insert(goAway); /// One can not really go offline manually - appears online as long as samba server is running. GF theActionMenu->popupMenu()->insertSeparator(); theActionMenu->insert(new KAction(i18n("Properties"), 0, this, SLOT(editAccount()), theActionMenu, "actionAccountProperties")); } return theActionMenu; }
KActionMenu * Account::actionMenu() { //default implementation KActionMenu *menu = new KActionMenu( accountId(), myself()->onlineStatus().iconFor( this ), this ); QString nick = myself()->property( Kopete::Global::Properties::self()->nickName()).value().toString(); menu->popupMenu()->insertTitle( myself()->onlineStatus().iconFor( myself() ), nick.isNull() ? accountLabel() : i18n( "%2 <%1>" ).arg( accountLabel(), nick ) ); OnlineStatusManager::self()->createAccountStatusActions(this, menu); menu->popupMenu()->insertSeparator(); menu->insert( new KAction ( i18n( "Properties" ), 0, this, SLOT( editAccount() ), menu, "actionAccountProperties" ) ); return menu; }
TemplatesInsertCommand::TemplatesInsertCommand( QWidget *parent, const char *name ) : QPushButton( parent, name ) { setText( i18n( "&Insert Command..." ) ); connect( this, SIGNAL( clicked() ), this, SLOT( slotClicked() ) ); KAction *action; KActionMenu *menu; QSignalMapper *mapper = new QSignalMapper( this ); connect( mapper, SIGNAL( mapped(int) ), this, SLOT( slotMapped(int) ) ); mMenu = new KActionMenu( i18n( "Insert Command..." ), this ); // ****************************************************** menu = new KActionMenu( i18n( "Original Message" ), mMenu ); mMenu->insert( menu ); action = new KAction( i18n("Quoted Message"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CQuote ); menu->insert( action ); action = new KAction( i18n("Message Text as Is"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CText ); menu->insert( action ); action = new KAction( i18n("Message Id"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COMsgId ); menu->insert( action ); action = new KAction( i18n("Date"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CODate ); menu->insert( action ); action = new KAction( i18n("Date in Short Format"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CODateShort ); menu->insert( action ); action = new KAction( i18n("Date in C Locale"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CODateEn ); menu->insert( action ); action = new KAction( i18n("Day of Week"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CODow ); menu->insert( action ); action = new KAction( i18n("Time"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COTime ); menu->insert( action ); action = new KAction( i18n("Time in Long Format"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COTimeLong ); menu->insert( action ); action = new KAction( i18n("Time in C Locale"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COTimeLongEn ); menu->insert( action ); action = new KAction( i18n("To Field Address"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COToAddr ); menu->insert( action ); action = new KAction( i18n("To Field Name"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COToName ); menu->insert( action ); action = new KAction( i18n("To Field First Name"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COToFName ); menu->insert( action ); action = new KAction( i18n("To Field Last Name"), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COToLName ); menu->insert( action ); action = new KAction( i18n( "CC Field Address" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COCCAddr ); menu->insert( action ); action = new KAction( i18n( "CC Field Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COCCName ); menu->insert( action ); action = new KAction( i18n( "CC Field First Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COCCFName ); menu->insert( action ); action = new KAction( i18n( "CC Field Last Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COCCLName ); menu->insert( action ); action = new KAction( i18n( "From Field Address" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COFromAddr ); menu->insert( action ); action = new KAction( i18n( "From Field Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COFromName ); menu->insert( action ); action = new KAction( i18n( "From Field First Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COFromFName ); menu->insert( action ); action = new KAction( i18n( "From Field Last Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COFromLName ); menu->insert( action ); action = new KAction( i18n( "Subject" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COFullSubject ); menu->insert( action ); action = new KAction( i18n( "Quoted Headers" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CQHeaders ); menu->insert( action ); action = new KAction( i18n( "Headers as Is" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CHeaders ); menu->insert( action ); action = new KAction( i18n( "Header Content" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, COHeader ); menu->insert( action ); // ****************************************************** menu = new KActionMenu( i18n( "Current Message" ), mMenu ); mMenu->insert( menu ); action = new KAction( i18n( "Message Id" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CMsgId ); menu->insert( action ); action = new KAction( i18n( "Date" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CDate ); menu->insert( action ); action = new KAction( i18n( "Date in Short Format" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CDateShort ); menu->insert( action ); action = new KAction( i18n( "Date in C Locale" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CDateEn ); menu->insert( action ); action = new KAction( i18n( "Day of Week" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CDow ); menu->insert( action ); action = new KAction( i18n( "Time" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CTime ); menu->insert( action ); action = new KAction( i18n( "Time in Long Format" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CTimeLong ); menu->insert( action ); action = new KAction( i18n( "Time in C Locale" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CTimeLongEn ); menu->insert( action ); action = new KAction( i18n( "To Field Address" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CToAddr ); menu->insert( action ); action = new KAction( i18n( "To Field Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CToName ); menu->insert( action ); action = new KAction( i18n( "To Field First Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CToFName ); menu->insert( action ); action = new KAction( i18n( "To Field Last Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CToLName ); menu->insert( action ); action = new KAction( i18n( "CC Field Address" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CCCAddr ); menu->insert( action ); action = new KAction( i18n( "CC Field Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CCCName ); menu->insert( action ); action = new KAction( i18n( "CC Field First Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CCCFName ); menu->insert( action ); action = new KAction( i18n( "CC Field Last Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CCCLName ); menu->insert( action ); action = new KAction( i18n( "From Field Address" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CFromAddr ); menu->insert( action ); action = new KAction( i18n( "From Field Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CFromName ); menu->insert( action ); action = new KAction( i18n( "From Field First Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CFromFName ); menu->insert( action ); action = new KAction( i18n( "From Field Last Name" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CFromLName ); menu->insert( action ); action = new KAction( i18n( "Subject" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CFullSubject ); menu->insert( action ); action = new KAction( i18n( "Header Content" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CHeader ); menu->insert( action ); // ****************************************************** menu = new KActionMenu( i18n( "Process With External Programs" ), mMenu ); mMenu->insert( menu ); action = new KAction( i18n( "Insert Result of Command" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CSystem ); menu->insert( action ); action = new KAction( i18n( "Pipe Original Message Body and Insert Result as Quoted Text" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CQuotePipe ); menu->insert( action ); action = new KAction( i18n( "Pipe Original Message Body and Insert Result as Is" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CTextPipe ); menu->insert( action ); action = new KAction( i18n( "Pipe Original Message with Headers and Insert Result as Is" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CMsgPipe ); menu->insert( action ); action = new KAction( i18n( "Pipe Current Message Body and Insert Result as Is" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CBodyPipe ); menu->insert( action ); action = new KAction( i18n( "Pipe Current Message Body and Replace with Result" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CClearPipe ); menu->insert( action ); // ****************************************************** menu = new KActionMenu( i18n( "Miscellaneous" ), mMenu ); mMenu->insert( menu ); action = new KAction( i18n( "Set Cursor Position" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CCursor ); menu->insert( action ); action = new KAction( i18n( "Insert File Content" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CInsert ); menu->insert( action ); action = new KAction( i18n( "DNL" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CDnl ); menu->insert( action ); action = new KAction( i18n( "Template Comment" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CRem ); menu->insert( action ); action = new KAction( i18n( "No Operation" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CNop ); menu->insert( action ); action = new KAction( i18n( "Clear Generated Message" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CClear ); menu->insert( action ); action = new KAction( i18n( "Turn Debug On" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CDebug ); menu->insert( action ); action = new KAction( i18n( "Turn Debug Off" ), 0, mapper, SLOT( map() ), menu ); mapper->setMapping( action, CDebugOff ); menu->insert( action ); }
void KMMainView::initActions() { KIconSelectAction *vact = new KIconSelectAction(i18n("&View"), 0, m_actions, "view_change"); QStringList iconlst; iconlst << "view_icon" << "view_detailed" << "view_tree"; vact->setItems(QStringList::split(',', i18n("&Icons,&List,&Tree"), false), iconlst); vact->setCurrentItem(0); connect(vact, SIGNAL(activated(int)), SLOT(slotChangeView(int))); KActionMenu *stateAct = new KActionMenu(i18n("Start/Stop Printer"), "kdeprint_printstate", m_actions, "printer_state_change"); stateAct->setDelayed(false); stateAct->insert( new KAction(i18n("&Start Printer"), "kdeprint_enableprinter", 0, this, SLOT(slotChangePrinterState()), m_actions, "printer_start")); stateAct->insert(new KAction(i18n("Sto&p Printer"), "kdeprint_stopprinter", 0, this, SLOT(slotChangePrinterState()), m_actions, "printer_stop")); stateAct = new KActionMenu(i18n("Enable/Disable Job Spooling"), "kdeprint_queuestate", m_actions, "printer_spool_change"); stateAct->setDelayed(false); stateAct->insert( new KAction(i18n("&Enable Job Spooling"), "kdeprint_enableprinter", 0, this, SLOT(slotChangePrinterState()), m_actions, "printer_enable")); stateAct->insert( new KAction(i18n("&Disable Job Spooling"), "kdeprint_stopprinter", 0, this, SLOT(slotChangePrinterState()), m_actions, "printer_disable")); new KAction(i18n("&Remove"), "edittrash", 0, this, SLOT(slotRemove()), m_actions, "printer_remove"); new KAction(i18n("&Configure..."), "configure", 0, this, SLOT(slotConfigure()), m_actions, "printer_configure"); new KAction(i18n("Add &Printer/Class..."), "kdeprint_addprinter", 0, this, SLOT(slotAdd()), m_actions, "printer_add"); new KAction(i18n("Add &Special (pseudo) Printer..."), "kdeprint_addpseudo", 0, this, SLOT(slotAddSpecial()), m_actions, "printer_add_special"); new KAction(i18n("Set as &Local Default"), "kdeprint_defaulthard", 0, this, SLOT(slotHardDefault()), m_actions, "printer_hard_default"); new KAction(i18n("Set as &User Default"), "kdeprint_defaultsoft", 0, this, SLOT(slotSoftDefault()), m_actions, "printer_soft_default"); new KAction(i18n("&Test Printer..."), "kdeprint_testprinter", 0, this, SLOT(slotTest()), m_actions, "printer_test"); new KAction(i18n("Configure &Manager..."), "kdeprint_configmgr", 0, this, SLOT(slotManagerConfigure()), m_actions, "manager_configure"); new KAction(i18n("Initialize Manager/&View"), "reload", 0, this, SLOT(slotInit()), m_actions, "view_refresh"); KIconSelectAction *dact = new KIconSelectAction(i18n("&Orientation"), 0, m_actions, "orientation_change"); iconlst.clear(); iconlst << "view_top_bottom" << "view_left_right"; dact->setItems(QStringList::split(',', i18n("&Vertical,&Horizontal"), false), iconlst); dact->setCurrentItem(0); connect(dact, SIGNAL(activated(int)), SLOT(slotChangeDirection(int))); new KAction(i18n("R&estart Server"), "kdeprint_restartsrv", 0, this, SLOT(slotServerRestart()), m_actions, "server_restart"); new KAction(i18n("Configure &Server..."), "kdeprint_configsrv", 0, this, SLOT(slotServerConfigure()), m_actions, "server_configure"); KToggleAction *tact = new KToggleAction(i18n("Show &Toolbar"), 0, m_actions, "view_toolbar"); tact->setCheckedState(i18n("Hide &Toolbar")); connect(tact, SIGNAL(toggled(bool)), SLOT(slotToggleToolBar(bool))); tact = new KToggleAction(i18n("Show Me&nu Toolbar"), 0, m_actions, "view_menubar"); tact->setCheckedState(i18n("Hide Me&nu Toolbar")); connect(tact, SIGNAL(toggled(bool)), SLOT(slotToggleMenuBar(bool))); tact = new KToggleAction(i18n("Show Pr&inter Details"), "kdeprint_printer_infos", 0, m_actions, "view_printerinfos"); tact->setCheckedState(KGuiItem(i18n("Hide Pr&inter Details"), "kdeprint_printer_infos")); tact->setChecked(true); connect(tact, SIGNAL(toggled(bool)), SLOT(slotShowPrinterInfos(bool))); tact = new KToggleAction(i18n("Toggle Printer &Filtering"), "filter", 0, m_actions, "view_pfilter"); tact->setChecked(KMManager::self()->isFilterEnabled()); connect(tact, SIGNAL(toggled(bool)), SLOT(slotToggleFilter(bool))); new KAction(i18n("%1 &Handbook").arg("KDEPrint"), "contents", 0, this, SLOT(slotHelp()), m_actions, "invoke_help"); new KAction(i18n("%1 &Web Site").arg("KDEPrint"), "network", 0, this, SLOT(slotHelp()), m_actions, "invoke_web"); KActionMenu *mact = new KActionMenu(i18n("Pri&nter Tools"), "package_utilities", m_actions, "printer_tool"); mact->setDelayed(false); connect(mact->popupMenu(), SIGNAL(activated(int)), SLOT(slotToolSelected(int))); QStringList files = KGlobal::dirs()->findAllResources("data", "kdeprint/tools/*.desktop"); for(QStringList::ConstIterator it = files.begin(); it != files.end(); ++it) { KSimpleConfig conf(*it); conf.setGroup("Desktop Entry"); mact->popupMenu()->insertItem(conf.readEntry("Name", "Unnamed"), mact->popupMenu()->count()); m_toollist << conf.readEntry("X-KDE-Library"); } // add actions to the toolbar m_actions->action("printer_add")->plug(m_toolbar); m_actions->action("printer_add_special")->plug(m_toolbar); m_toolbar->insertLineSeparator(); m_actions->action("printer_state_change")->plug(m_toolbar); m_actions->action("printer_spool_change")->plug(m_toolbar); m_toolbar->insertSeparator(); m_actions->action("printer_hard_default")->plug(m_toolbar); m_actions->action("printer_soft_default")->plug(m_toolbar); m_actions->action("printer_remove")->plug(m_toolbar); m_toolbar->insertSeparator(); m_actions->action("printer_configure")->plug(m_toolbar); m_actions->action("printer_test")->plug(m_toolbar); m_actions->action("printer_tool")->plug(m_toolbar); m_pactionsindex = m_toolbar->insertSeparator(); m_toolbar->insertLineSeparator(); m_actions->action("server_restart")->plug(m_toolbar); m_actions->action("server_configure")->plug(m_toolbar); m_toolbar->insertLineSeparator(); m_actions->action("manager_configure")->plug(m_toolbar); m_actions->action("view_refresh")->plug(m_toolbar); m_toolbar->insertLineSeparator(); m_actions->action("view_printerinfos")->plug(m_toolbar); m_actions->action("view_change")->plug(m_toolbar); m_actions->action("orientation_change")->plug(m_toolbar); m_actions->action("view_pfilter")->plug(m_toolbar); // add actions to the menu bar QPopupMenu *menu = new QPopupMenu(this); m_actions->action("printer_add")->plug(menu); m_actions->action("printer_add_special")->plug(menu); // m_menubar->insertItem( i18n( "Add" ), menu ); m_menubar->insertButton("wizard", 0, true, i18n("Add")); m_menubar->getButton(0)->setPopup(menu, true); menu = new QPopupMenu(this); m_actions->action("printer_state_change")->plug(menu); m_actions->action("printer_spool_change")->plug(menu); menu->insertSeparator(); m_actions->action("printer_hard_default")->plug(menu); m_actions->action("printer_soft_default")->plug(menu); m_actions->action("printer_remove")->plug(menu); menu->insertSeparator(); m_actions->action("printer_configure")->plug(menu); m_actions->action("printer_test")->plug(menu); m_actions->action("printer_tool")->plug(menu); menu->insertSeparator(); // m_menubar->insertItem( i18n( "Printer" ), menu ); m_menubar->insertButton("printer1", 1, true, i18n("Printer")); m_menubar->getButton(1)->setPopup(menu, true); menu = new QPopupMenu(this); m_actions->action("server_restart")->plug(menu); m_actions->action("server_configure")->plug(menu); // m_menubar->insertItem( i18n( "Server" ), menu ); m_menubar->insertButton("misc", 2, true, i18n("Print Server")); m_menubar->getButton(2)->setPopup(menu, true); menu = new QPopupMenu(this); m_actions->action("manager_configure")->plug(menu); m_actions->action("view_refresh")->plug(menu); // m_menubar->insertItem( i18n( "Manager" ), menu ); m_menubar->insertButton("kdeprint_configmgr", 3, true, i18n("Print Manager")); m_menubar->getButton(3)->setPopup(menu, true); menu = new QPopupMenu(this); m_actions->action("view_printerinfos")->plug(menu); m_actions->action("view_change")->plug(menu); m_actions->action("orientation_change")->plug(menu); m_actions->action("view_toolbar")->plug(menu); m_actions->action("view_menubar")->plug(menu); menu->insertSeparator(); m_actions->action("view_pfilter")->plug(menu); // m_menubar->insertItem( i18n( "View" ), menu ); m_menubar->insertButton("view_remove", 4, true, i18n("View")); m_menubar->getButton(4)->setPopup(menu, true); // m_menubar->setMinimumHeight( m_menubar->heightForWidth( 1000 ) ); menu = new QPopupMenu(this); m_actions->action("invoke_help")->plug(menu); m_actions->action("invoke_web")->plug(menu); m_menubar->insertButton("help", 5, true, i18n("Documentation")); m_menubar->getButton(5)->setPopup(menu, true); loadPluginActions(); slotPrinterSelected(QString::null); }
void JuK::setupActions() { ActionCollection::actions()->setWidget(this); KStdAction::quit(this, SLOT(slotQuit()), actions()); KStdAction::undo(this, SLOT(slotUndo()), actions()); KStdAction::cut(kapp, SLOT(cut()), actions()); KStdAction::copy(kapp, SLOT(copy()), actions()); KStdAction::paste(kapp, SLOT(paste()), actions()); KStdAction::clear(kapp, SLOT(clear()), actions()); KStdAction::selectAll(kapp, SLOT(selectAll()), actions()); new KAction(i18n("Remove From Playlist"), "edit_remove", 0, kapp, SLOT(clear()), actions(), "removeFromPlaylist"); KActionMenu *actionMenu = new KActionMenu(i18n("&Random Play"), "roll", actions(), "actionMenu"); actionMenu->setDelayed(false); KRadioAction *ka = new KRadioAction(i18n("&Disable Random Play"), "player_playlist", 0, actions(), "disableRandomPlay"); ka->setExclusiveGroup("randomPlayGroup"); actionMenu->insert(ka); m_randomPlayAction = new KRadioAction(i18n("Use &Random Play"), "roll", 0, actions(), "randomPlay"); m_randomPlayAction->setExclusiveGroup("randomPlayGroup"); actionMenu->insert(m_randomPlayAction); ka = new KRadioAction(i18n("Use &Album Random Play"), "roll", 0, actions(), "albumRandomPlay"); ka->setExclusiveGroup("randomPlayGroup"); connect(ka, SIGNAL(toggled(bool)), SLOT(slotCheckAlbumNextAction(bool))); actionMenu->insert(ka); new KAction(i18n("&Play"), "player_play", 0, m_player, SLOT(play()), actions(), "play"); new KAction(i18n("P&ause"), "player_pause", 0, m_player, SLOT(pause()), actions(), "pause"); new KAction(i18n("&Stop"), "player_stop", 0, m_player, SLOT(stop()), actions(), "stop"); new KToolBarPopupAction(i18n("previous track", "Previous"), "player_start", KShortcut(), m_player, SLOT(back()), actions(), "back"); new KAction(i18n("next track", "&Next"), "player_end", KShortcut(), m_player, SLOT(forward()), actions(), "forward"); new KToggleAction(i18n("&Loop Playlist"), 0, KShortcut(), actions(), "loopPlaylist"); KToggleAction *resizeColumnAction = new KToggleAction(i18n("&Resize Playlist Columns Manually"), KShortcut(), actions(), "resizeColumnsManually"); resizeColumnAction->setCheckedState(i18n("&Resize Column Headers Automatically")); // the following are not visible by default new KAction(i18n("Mute"), "mute", 0, m_player, SLOT(mute()), actions(), "mute"); new KAction(i18n("Volume Up"), "volumeUp", 0, m_player, SLOT(volumeUp()), actions(), "volumeUp"); new KAction(i18n("Volume Down"), "volumeDown", 0, m_player, SLOT(volumeDown()), actions(), "volumeDown"); new KAction(i18n("Play / Pause"), "playPause", 0, m_player, SLOT(playPause()), actions(), "playPause"); new KAction(i18n("Seek Forward"), "seekForward", 0, m_player, SLOT(seekForward()), actions(), "seekForward"); new KAction(i18n("Seek Back"), "seekBack", 0, m_player, SLOT(seekBack()), actions(), "seekBack"); ////////////////////////////////////////////////// // settings menu ////////////////////////////////////////////////// m_toggleSplashAction = new KToggleAction(i18n("Show Splash Screen on Startup"), KShortcut(), actions(), "showSplashScreen"); m_toggleSplashAction->setCheckedState(i18n("Hide Splash Screen on Startup")); m_toggleSystemTrayAction = new KToggleAction(i18n("&Dock in System Tray"), KShortcut(), actions(), "toggleSystemTray"); m_toggleDockOnCloseAction = new KToggleAction(i18n("&Stay in System Tray on Close"), KShortcut(), actions(), "dockOnClose"); m_togglePopupsAction = new KToggleAction(i18n("Popup &Track Announcement"), KShortcut(), this, 0, actions(), "togglePopups"); new KToggleAction(i18n("Save &Play Queue on Exit"), KShortcut(), this, 0, actions(), "saveUpcomingTracks"); connect(m_toggleSystemTrayAction, SIGNAL(toggled(bool)), this, SLOT(slotToggleSystemTray(bool))); m_outputSelectAction = PlayerManager::playerSelectAction(actions()); if(m_outputSelectAction) m_outputSelectAction->setCurrentItem(0); new KAction(i18n("&Tag Guesser..."), 0, 0, this, SLOT(slotConfigureTagGuesser()), actions(), "tagGuesserConfig"); new KAction(i18n("&File Renamer..."), 0, 0, this, SLOT(slotConfigureFileRenamer()), actions(), "fileRenamerConfig"); KStdAction::keyBindings(this, SLOT(slotEditKeys()), actions()); ////////////////////////////////////////////////// // just in the toolbar ////////////////////////////////////////////////// m_sliderAction = new SliderAction(i18n("Track Position"), actions(), "trackPositionAction"); }
KAction *XMLActionHandler::createAction( KActionCollection *parent ) { // kdDebug(80001) << "Creating Action, type is " << type << endl; // kdDebug(80001) << "text=" << text << ", icons=" << icons << endl; // kdDebug(80001) << "keys=" << keys << ", name=" << name << endl; if ( !parent ) { kdWarning() << "Create action called but no parent set" << endl; return 0; } KAction *act=0; if ( ad.type.isEmpty() || (ad.type == "KAction") ) { act = new KAction( ad.text, ad.icons, ad.keys, 0, 0, parent, ad.name.latin1() ); } else if ( ad.type == "KToggleAction" ) { act = new KToggleAction( ad.text, ad.icons, ad.keys, 0, 0, parent, ad.name.latin1() ); } else if ( ad.type == "KRadioAction" ) { KRadioAction *ra = new KRadioAction( ad.text, ad.icons, ad.keys, 0, 0, parent, ad.name.latin1() ); if ( ad.exclusive ) ra->setExclusiveGroup( ad.group ); act = ra; } else if ( ad.type == "KStdAction" ) { for ( int i = KStdAction::ActionNone ; i < KStdAction::ConfigureNotifications ; i++ ) { if ( KStdAction::stdName(static_cast<KStdAction::StdAction>(i)) == ad.name ) act = KStdAction::create( (KStdAction::StdAction)i, 0, 0, parent ); } } else if ( ad.type == "KListAction" ) { KListAction *la = new KListAction( ad.text, ad.icons, ad.keys, 0, 0, parent, ad.name.latin1() ); la->setItems( ad.items ); ad.items.clear(); act = la; } else if ( ad.type == "KActionMenu" ) { KActionMenu *am = new KActionMenu( ad.text, ad.icons, parent, ad.name.latin1() ); for ( QStringList::Iterator it = ad.items.begin() ; it != ad.items.end() ; ++it ) { KAction *a = parent->action( (*it).latin1() ); if ( a ) am->insert( a ); } ad.items.clear(); act = am; } else { kdWarning() << "Unknown ActionType " << ad.type << endl; return 0; } if ( !act ) { kdWarning() << "Unable to create action" << endl; return act; } if ( !ad.group.isEmpty() ) act->setGroup( ad.group ); act->setStatusText( ad.status ); act->setWhatsThis( ad.whatsthis ); QObject::connect( actclient, SIGNAL( destroyed() ), act, SLOT( deleteLater() ) ); return act; }