usermenu.cpp

来自「LINUX 下, 以 QT/KDE 写的档案管理员」· C++ 代码 · 共 86 行

CPP
86
字号
/***************************************************************************                      _expressionsu.cpp  -  description                         -------------------begin                : Sat Dec 6 2003copyright            : (C) 2003 by Shie Erlich & Rafi Yanaiemail                :***************************************************************************//*************************************************************************** *                                                                         * *   This program is free software; you can redistribute it and/or modify  * *   it under the terms of the GNU General Public License as published by  * *   the Free Software Foundation; either version 2 of the License, or     * *   (at your option) any later version.                                   * *                                                                         * ***************************************************************************/#include <kdebug.h>#include <klocale.h>#include "../krusader.h"#include "../Konfigurator/konfigurator.h"#include "../UserAction/kraction.h"#include "../UserAction/useraction.h"#include "usermenu.h"void UserMenu::exec() {   _popup->run();}UserMenu::UserMenu( QWidget * parent, const char * name ) : QWidget( parent, name ) {   _popup = new UserMenuGui(this);}void UserMenu::update() {   _popup->createMenu();}//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////UserMenuGui::UserMenuGui( UserMenu *, QWidget * parent ) : KPopupMenu( parent ) {   createMenu();}void UserMenuGui::createMenu() {//    kdDebug() << "UserMenuGui::createMenu called" << endl;   clear();   insertTitle( i18n("User Menu") );   // read entries from config file.   readEntries();   // add the "add new entry" command   insertSeparator();   insertItem( i18n("Manage user actions"), 0 );}void UserMenuGui::readEntries() {   // Note: entries are marked 1..n, so that entry 0 is always   // available. It is used by the "add new entry" command.   int idx = 1;   //FIXME: don't plug ALL useractions into the usermenu. TODO: read the usermenu-strukture from an other file (krusaderrc ?)   UserAction::KrActionList list = krUserAction->actionList();   for ( KrAction* action = list.first(); action; action = list.next() )      action->plug( this, idx++ );}void UserMenuGui::run() {   //disable unwanted actions:   // disabled due to conflicts with the toolbar (a check on each file-cursor-movement would be nessesary; hit the performance)//    krApp->userAction->setAvailability();   int idx = exec();   if ( idx == -1 ) // nothing was selected     return;   if ( idx == 0 ) {      Konfigurator konfigurator( false, 7 ); // page 7 are the UserActions      return;   }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?