亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? addplaceholderpopup.cpp

?? LINUX 下, 以 QT/KDE 寫(xiě)的檔案管理員
?? CPP
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
//// C++ Implementation: addplaceholderpopup//// Description: ////// Author: Shie Erlich and Rafi Yanai <>, (C) 2004//// Copyright: See COPYING file that comes with this distribution////#include "addplaceholderpopup.h"#include "../UserAction/expander.h"#include <klocale.h>#include <kfiledialog.h>#include <kmessagebox.h>// for ParameterDialog#include "../krusader.h" // for konfig-access#include "../BookMan/krbookmarkbutton.h"#include "../GUI/profilemanager.h"#include <qlayout.h>#include <qhbox.h>#include <qlabel.h>#include <qtoolbutton.h>#include <klineedit.h>#include <qcheckbox.h>#include <kiconloader.h>#include <kcombobox.h>#include <kurlcompletion.h> #include <knuminput.h>#include <kdebug.h>#define ACTIVE_MASK		0x0100#define OTHER_MASK		0x0200#define LEFT_MASK			0x0400#define RIGHT_MASK			0x0800#define INDEPENDENT_MASK	0x1000#define EXECUTABLE_ID		0xFFFFAddPlaceholderPopup::AddPlaceholderPopup( QWidget *parent ) : KPopupMenu( parent ) {   _activeSub = new KPopupMenu( this );   _otherSub = new KPopupMenu( this );   _leftSub = new KPopupMenu( this );   _rightSub = new KPopupMenu( this );   _independentSub = new KPopupMenu( this );   insertItem( i18n( "Active panel" ), _activeSub );   insertItem( i18n( "Other panel" ), _otherSub );   insertItem( i18n( "Left panel" ), _leftSub );   insertItem( i18n( "Right panel" ), _rightSub );   insertItem( i18n( "Panel independent" ), _independentSub );   _independentSub->insertItem( i18n( "Choose executable..." ), EXECUTABLE_ID );   _independentSub->insertSeparator();   // read the expressions array from the user menu and populate menus   Expander expander;   for ( int i = 0; i < expander.placeholderCount(); ++i ) {      if (  expander.placeholder( i )->expression().isEmpty() ) {         if ( expander.placeholder( i )->needPanel() ) {            _activeSub->insertSeparator();            _otherSub->insertSeparator();            _leftSub->insertSeparator();            _rightSub->insertSeparator();         }         else            _independentSub->insertSeparator();      }      else {         if ( expander.placeholder( i )->needPanel() ) {            _activeSub->insertItem( i18n( expander.placeholder( i )->description().utf8() ), ( i | ACTIVE_MASK ) );            _otherSub->insertItem( i18n( expander.placeholder( i )->description().utf8() ), ( i | OTHER_MASK ) );            _leftSub->insertItem( i18n( expander.placeholder( i )->description().utf8() ), ( i | LEFT_MASK ) );            _rightSub->insertItem( i18n( expander.placeholder( i )->description().utf8() ), ( i | RIGHT_MASK ) );         }         else            _independentSub->insertItem( i18n( expander.placeholder( i )->description().utf8() ), ( i | INDEPENDENT_MASK ) );      }   }}QString AddPlaceholderPopup::getPlaceholder( const QPoint& pos ) {   int res = exec( pos );   if ( res == -1 )      return QString::null;   // add the selected flag to the command line   if ( res == EXECUTABLE_ID ) { // did the user need an executable ?      // select an executable      QString filename = KFileDialog::getOpenFileName(QString::null, QString::null, this);      if (filename != QString::null)         return filename + " "; // with extra space         //return filename; // without extra space   } else { // user selected something from the menus      Expander expander;      const exp_placeholder* currentPlaceholder = expander.placeholder( res & ~( ACTIVE_MASK | OTHER_MASK | LEFT_MASK | RIGHT_MASK | INDEPENDENT_MASK ) );//       if ( &currentPlaceholder->expFunc == 0 ) {//          KMessageBox::sorry( this, "BOFH Excuse #93:\nFeature not yet implemented" );//          return QString::null;//       }       ParameterDialog* parameterDialog = new ParameterDialog( currentPlaceholder, this );      QString panel, parameter = parameterDialog->getParameter();      delete parameterDialog;      // indicate the panel with 'a' 'o', 'l', 'r' or '_'.      if ( res & ACTIVE_MASK )         panel = "a";      else if ( res & OTHER_MASK )         panel = "o";      else if ( res & LEFT_MASK )         panel = "l";      else if ( res & RIGHT_MASK )         panel = "r";      else if ( res & INDEPENDENT_MASK )         panel = "_";      //return "%" + panel + currentPlaceholder->expression() + parameter + "% "; // with extra space      return "%" + panel + currentPlaceholder->expression() + parameter + "%"; // without extra space   }	return QString::null;}/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ParameterDialog ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ParameterDialog::ParameterDialog( const exp_placeholder* currentPlaceholder, QWidget *parent ) : KDialogBase( Plain, i18n("User Action Parameter Dialog"), Default | Ok, Ok, parent ) {   _parameter.clear();   _parameterCount = currentPlaceholder->parameterCount();      QVBoxLayout* layout = new QVBoxLayout( plainPage() );   layout->setAutoAdd( true );   layout->setSpacing( 11 );      new QLabel( i18n("This placeholder allows some parameter:"), plainPage(), "intro" );      for (int i = 0; i < _parameterCount; ++i ) {      if ( currentPlaceholder->parameter( i ).preset() == "__placeholder" )         _parameter.append( new ParameterPlaceholder( currentPlaceholder->parameter( i ), plainPage() ) );      else if ( currentPlaceholder->parameter( i ).preset() == "__yes" )         _parameter.append( new ParameterYes( currentPlaceholder->parameter( i ), plainPage() ) );      else if ( currentPlaceholder->parameter( i ).preset() == "__no" )         _parameter.append( new ParameterNo( currentPlaceholder->parameter( i ), plainPage() ) );      else if ( currentPlaceholder->parameter( i ).preset() == "__file" )         _parameter.append( new ParameterFile( currentPlaceholder->parameter( i ), plainPage() ) );      else if ( currentPlaceholder->parameter( i ).preset().find( "__choose" ) != -1 )         _parameter.append( new ParameterChoose( currentPlaceholder->parameter( i ), plainPage() ) );      else if ( currentPlaceholder->parameter( i ).preset() == "__select" )         _parameter.append( new ParameterSelect( currentPlaceholder->parameter( i ), plainPage() ) );      else if ( currentPlaceholder->parameter( i ).preset() == "__goto" )         _parameter.append( new ParameterGoto( currentPlaceholder->parameter( i ), plainPage() ) );      else if ( currentPlaceholder->parameter( i ).preset() == "__syncprofile" )         _parameter.append( new ParameterSyncprofile( currentPlaceholder->parameter( i ), plainPage() ) );      else if ( currentPlaceholder->parameter( i ).preset() == "__searchprofile" )         _parameter.append( new ParameterSearch( currentPlaceholder->parameter( i ), plainPage() ) );      else if ( currentPlaceholder->parameter( i ).preset() == "__panelprofile" )         _parameter.append( new ParameterPanelprofile( currentPlaceholder->parameter( i ), plainPage() ) );      else if ( currentPlaceholder->parameter( i ).preset().find( "__int" ) != -1 )         _parameter.append( new ParameterInt( currentPlaceholder->parameter( i ), plainPage() ) );      else         _parameter.append( new ParameterText( currentPlaceholder->parameter( i ), plainPage() ) );   }      QFrame * line = new QFrame( plainPage() );   line->setFrameShape( QFrame::HLine );   line->setFrameShadow( QFrame::Sunken );   connect( this, SIGNAL(defaultClicked()), this, SLOT(reset()) );}QString ParameterDialog::getParameter() {   if ( _parameterCount == 0 ) // meaning no parameters      return QString::null;  if ( exec() == -1 )     return QString::null;  int lastParameter = _parameterCount;  while ( --lastParameter > -1 ) {     if ( _parameter[ lastParameter ]->text() != _parameter[ lastParameter ]->preset()  ||  _parameter[ lastParameter ]->nessesary() )        break;  }  if ( lastParameter < 0) // all parameters have default-values     return QString::null;  QString parameter = "(";  for ( int i = 0; i <= lastParameter; ++i ) {     if ( i > 0 )        parameter += ", ";     parameter += "\"" + _parameter[ i ]->text().replace( "\"", "\\\"" ) + "\"";  }  parameter += ")";  return parameter;}void ParameterDialog::reset() {   for ( int i = 0; i < _parameterCount; ++i )      _parameter[ i ]->reset();}void ParameterDialog::slotOk() {   bool valid = true;   for (int i = 0; i < _parameterCount; ++i ) {      if ( _parameter[ i ]->nessesary() && ! _parameter[ i ]->valid() )         valid = false;   }      if ( valid )      accept();}///////////// ParameterTextParameterText::ParameterText( const exp_parameter& parameter, QWidget* parent ) : ParameterBase( parameter, parent ) {   QVBoxLayout* layout = new QVBoxLayout( this );   layout->setAutoAdd( true );   layout->setSpacing( 6 );      new QLabel( i18n( parameter.description().utf8() ), this );   _lineEdit = new KLineEdit( parameter.preset(), this );   _preset = parameter.preset();}QString ParameterText::text() {   return _lineEdit->text();} QString ParameterText::preset() {   return _preset;} void ParameterText::reset() {   _lineEdit->setText( _preset );} bool ParameterText::valid() {   if ( _lineEdit->text().isEmpty() )      return false;   else      return true;} ///////////// ParameterPlaceholderParameterPlaceholder::ParameterPlaceholder( const exp_parameter& parameter, QWidget* parent ) : ParameterBase( parameter, parent ) {   QVBoxLayout* layout = new QVBoxLayout( this );   layout->setAutoAdd( true );   layout->setSpacing( 6 );      new QLabel( i18n( parameter.description().utf8() ), this );   QHBox * hbox = new QHBox( this );   hbox->setSpacing( 6 );   _lineEdit = new KLineEdit( hbox );   _button = new QToolButton( hbox);   _button->setText( i18n("add") );   connect( _button, SIGNAL(clicked()), this, SLOT(addPlaceholder()) );}QString ParameterPlaceholder::text() {   return _lineEdit->text();}QString ParameterPlaceholder::preset() {   return QString::null;} void ParameterPlaceholder::reset() {   _lineEdit->setText( QString::null );} bool ParameterPlaceholder::valid() {   if ( _lineEdit->text().isEmpty() )      return false;   else      return true;} void ParameterPlaceholder::addPlaceholder() {   AddPlaceholderPopup* popup = new AddPlaceholderPopup( this );   QString exp = popup->getPlaceholder( mapToGlobal( QPoint( _button->pos().x() + _button->width() + 6, _button->pos().y() + _button->height() / 2 ) ) );   _lineEdit->insert( exp );   delete popup;}///////////// ParameterYesParameterYes::ParameterYes( const exp_parameter& parameter, QWidget* parent ) : ParameterBase( parameter, parent ) {   QVBoxLayout* layout = new QVBoxLayout( this );   layout->setAutoAdd( true );   layout->setSpacing( 6 );      _checkBox = new QCheckBox( i18n( parameter.description().utf8() ), this );   _checkBox->setChecked( true );

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
三级不卡在线观看| 精品国产sm最大网站| 亚洲gay无套男同| 久久综合九色欧美综合狠狠| 色综合天天综合给合国产| 日本午夜一区二区| 亚洲激情一二三区| 中文字幕精品一区| 欧美不卡视频一区| 欧美色视频在线| av电影在线观看一区| 理论片日本一区| 亚洲一区二区三区四区不卡| 国产精品天美传媒| 精品国产髙清在线看国产毛片| 欧美亚洲综合另类| 成人动漫av在线| 国产一区二区剧情av在线| 日韩成人精品在线观看| 亚洲一区免费在线观看| 亚洲欧洲一区二区三区| 国产日韩欧美麻豆| 精品第一国产综合精品aⅴ| 欧美精品乱码久久久久久按摩| 91亚洲永久精品| 成人免费毛片app| 国产在线精品免费| 国产真实精品久久二三区| 日本欧美一区二区| 国产成人99久久亚洲综合精品| 奇米色一区二区三区四区| 亚洲国产综合91精品麻豆| 亚洲精品水蜜桃| 亚洲日本在线视频观看| 国产精品美女久久久久久久| 国产日韩欧美一区二区三区综合| 日韩精品一区在线观看| 欧美一区二区性放荡片| 制服丝袜一区二区三区| 欧美乱妇23p| 911精品国产一区二区在线| 欧美蜜桃一区二区三区| 欧美大黄免费观看| 97久久精品人人做人人爽50路| 高清成人在线观看| 成人激情文学综合网| 国产成人超碰人人澡人人澡| 国产精品一线二线三线精华| 国产一区日韩二区欧美三区| 国产乱码精品1区2区3区| 国产盗摄一区二区| youjizz久久| 色综合天天天天做夜夜夜夜做| 91麻豆国产在线观看| 色噜噜狠狠色综合欧洲selulu| 一本到高清视频免费精品| 91久久精品日日躁夜夜躁欧美| 日本精品一区二区三区四区的功能| 在线观看av一区二区| 欧美日韩国产电影| 精品久久久久久久久久久院品网 | 日韩欧美久久久| 久久婷婷成人综合色| 国产精品乱码一区二三区小蝌蚪| 综合在线观看色| 久久不见久久见中文字幕免费| 日韩精品一区二区三区在线观看| 欧美一区二区免费观在线| 精品少妇一区二区三区视频免付费| 久久亚洲欧美国产精品乐播| 国产精品日产欧美久久久久| 亚洲乱码精品一二三四区日韩在线| 亚洲午夜三级在线| 激情五月激情综合网| 99麻豆久久久国产精品免费| 欧美视频在线观看一区二区| 日韩欧美一区在线观看| 国产三级精品三级| 亚洲国产精品天堂| 国产曰批免费观看久久久| 99麻豆久久久国产精品免费| 欧美日本一区二区| 国产日韩欧美麻豆| 午夜精品一区在线观看| 国产毛片精品一区| 欧美性大战久久久久久久蜜臀| 精品久久一区二区| 一区二区三区成人| 久久电影网电视剧免费观看| 不卡高清视频专区| 日韩欧美一卡二卡| 亚洲欧美一区二区三区极速播放| 婷婷久久综合九色综合绿巨人| 国产成人精品一区二区三区四区| 欧洲生活片亚洲生活在线观看| 精品国产伦一区二区三区观看方式 | 26uuu久久综合| 一区二区三区在线免费视频| 韩国成人福利片在线播放| 日本韩国精品在线| 国产欧美视频一区二区| 日本欧美一区二区三区乱码| 91在线免费看| 久久久综合网站| 婷婷成人综合网| 97久久人人超碰| 国产亚洲人成网站| 青青草精品视频| 欧美主播一区二区三区| 中文字幕一区二区三区在线观看 | 国产一区二区三区四区五区美女| 欧美性色aⅴ视频一区日韩精品| 国产欧美日韩在线视频| 极品尤物av久久免费看| 717成人午夜免费福利电影| 亚洲欧美aⅴ...| 成人国产精品免费观看视频| 久久综合九色综合欧美98| 日本在线播放一区二区三区| 91国偷自产一区二区开放时间 | 国产黄色精品网站| 日韩欧美一级二级三级| 视频一区视频二区中文| 欧美亚洲一区三区| 亚洲精品成人在线| 色综合久久久网| 中文字幕在线不卡一区| 成人app下载| 日本一区二区三级电影在线观看| 蜜臀av一区二区三区| 91精品国产综合久久婷婷香蕉| 亚洲一区二区五区| 欧美三区在线观看| 亚洲成人激情社区| 欧美二区乱c少妇| 日日夜夜精品视频免费| 555www色欧美视频| 青草av.久久免费一区| 欧美一区二区在线免费观看| 丝袜亚洲精品中文字幕一区| 欧美精品久久99| 蜜臀av性久久久久蜜臀aⅴ| 欧美一区二区三区白人| 蜜臀国产一区二区三区在线播放| 欧美一卡在线观看| 九色|91porny| 国产欧美一区二区三区在线看蜜臀 | 日韩丝袜情趣美女图片| 久久精品国产99久久6| 欧美精品一区男女天堂| 国产aⅴ综合色| 亚洲日本在线视频观看| 欧美日韩一区二区三区四区| 日日骚欧美日韩| 日韩欧美一区二区不卡| 国产精品66部| 亚洲视频一区二区在线观看| 91国偷自产一区二区使用方法| 亚洲r级在线视频| 日韩网站在线看片你懂的| 国产精品白丝jk黑袜喷水| 中文字幕中文字幕在线一区| 在线视频欧美精品| 免费成人美女在线观看.| 久久精品无码一区二区三区| 99国产精品国产精品久久| 亚洲精品中文在线观看| 欧美一区二区日韩| 成人小视频在线| 亚洲国产日韩av| 精品国产123| 99久久777色| 日本不卡视频在线观看| 欧美激情艳妇裸体舞| 色婷婷国产精品| 久久99久久久欧美国产| 中文字幕亚洲一区二区va在线| 欧美日韩日日夜夜| 国产jizzjizz一区二区| 亚洲亚洲人成综合网络| 久久久精品中文字幕麻豆发布| 一本色道久久综合亚洲aⅴ蜜桃| 日本aⅴ免费视频一区二区三区| 久久久久国产精品厨房| 欧美写真视频网站| 国产精品一二一区| 亚洲va韩国va欧美va| 国产精品视频一二三区 | 91蜜桃网址入口| 另类小说视频一区二区| 亚洲黄色片在线观看| 久久一留热品黄| 欧美色精品天天在线观看视频| 国产福利一区二区三区视频| 亚洲国产欧美日韩另类综合| 国产亚洲一二三区| 91精品国产色综合久久不卡蜜臀| 成年人网站91| 精品一区二区成人精品| 亚洲国产成人tv|