⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 konfiguratoritems.h

📁 LINUX 下, 以 QT/KDE 写的档案管理员
💻 H
字号:
/***************************************************************************                      konfiguratoritems.h  -  description                             -------------------    copyright            : (C) 2003 by Csaba Karai    e-mail               : krusader@users.sourceforge.net    web site             : http://krusader.sourceforge.net ---------------------------------------------------------------------------  Description ***************************************************************************  A     db   dD d8888b. db    db .d8888.  .d8b.  d8888b. d88888b d8888b.     88 ,8P' 88  `8D 88    88 88'  YP d8' `8b 88  `8D 88'     88  `8D     88,8P   88oobY' 88    88 `8bo.   88ooo88 88   88 88ooooo 88oobY'     88`8b   88`8b   88    88   `Y8b. 88~~~88 88   88 88~~~~~ 88`8b     88 `88. 88 `88. 88b  d88 db   8D 88   88 88  .8D 88.     88 `88.     YP   YD 88   YD ~Y8888P' `8888Y' YP   YP Y8888D' Y88888P 88   YD                                                     S o u r c e    F i l e *************************************************************************** *                                                                         * *   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.                                   * *                                                                         * ***************************************************************************/#ifndef __KONFIGURATOR_ITEMS_H__#define __KONFIGURATOR_ITEMS_H__#include <qobject.h>#include <qstring.h>#include <qcheckbox.h>#include <qspinbox.h>#include <qpushbutton.h>#include <qradiobutton.h>#include <qptrlist.h>#include <qvaluelist.h>#include <qvaluevector.h>#include <qbuttongroup.h>#include <qlineedit.h>#include <kurlrequester.h>#include <qhbox.h>#include <kfontdialog.h>#include <qlabel.h>#include <qfont.h>#include <qtoolbutton.h>#include <qcombobox.h>#define FIRST_PAGE        0class KonfiguratorExtension : public QObject{  Q_OBJECTpublic:  KonfiguratorExtension(QObject *obj, QString cfgClass, QString cfgName, bool rst = false, int pg=FIRST_PAGE );  virtual void    loadInitialValue();  virtual bool    apply();  virtual void    setDefaults();  virtual bool    isChanged();  virtual void    setSubPage(int pg) {subpage = pg;}  virtual int     subPage()          {return subpage;}  inline QObject *object()           {return objectPtr;}  inline QString  getCfgClass()      {return configClass;}  inline QString  getCfgName()       {return configName;}public slots:  void    setChanged()               {emit sigChanged( changed = true);}  void    setChanged( bool chg )     {emit sigChanged( changed = chg);}signals:  void    applyManually(QObject *,QString, QString);  void    applyAuto(QObject *,QString, QString);  void    setDefaultsManually(QObject *);  void    setDefaultsAuto(QObject *);  void    setInitialValue(QObject *);  void    sigChanged( bool );protected:  QObject *objectPtr;  bool    applyConnected;  bool    setDefaultsConnected;  bool    changed;  bool    restartNeeded;  int     subpage;  QString configClass;  QString configName;  virtual void connectNotify( const char *signal );};// KonfiguratorCheckBox class///////////////////////////////class KonfiguratorCheckBox : public QCheckBox{  Q_OBJECTpublic:  KonfiguratorCheckBox( QString cls, QString name, bool dflt, QString text,                        QWidget *parent=0, const char *widgetName=0, bool rst=false, int pg=FIRST_PAGE );  ~KonfiguratorCheckBox();  inline KonfiguratorExtension *extension()   {return ext;}public slots:  virtual void loadInitialValue();  void slotApply(QObject *,QString, QString);  void slotSetDefaults(QObject *);protected:  bool  defaultValue;  KonfiguratorExtension *ext;};// KonfiguratorSpinBox class///////////////////////////////class KonfiguratorSpinBox : public QSpinBox{  Q_OBJECTpublic:  KonfiguratorSpinBox( QString cls, QString name, int dflt, int min, int max,                       QWidget *parent=0, const char *widgetName=0, bool rst=false, int pg=FIRST_PAGE );  ~KonfiguratorSpinBox();  inline KonfiguratorExtension *extension()   {return ext;}public slots:  virtual void loadInitialValue();  void slotApply(QObject *,QString, QString);  void slotSetDefaults(QObject *);protected:  int  defaultValue;  KonfiguratorExtension *ext;};// KonfiguratorCheckBoxGroup class///////////////////////////////class KonfiguratorCheckBoxGroup : public QWidget{public:  KonfiguratorCheckBoxGroup( QWidget * parent = 0, const char * name = 0 ) :    QWidget( parent, name ) {};  void                    add( KonfiguratorCheckBox * );  KonfiguratorCheckBox *  find( int index );  KonfiguratorCheckBox *  find( QString name );private:  QPtrList<KonfiguratorCheckBox>  checkBoxList;};// KonfiguratorRadioButtons class///////////////////////////////class KonfiguratorRadioButtons : public QButtonGroup{  Q_OBJECTpublic:  KonfiguratorRadioButtons( QString cls, QString name, QString dflt, QWidget *parent=0,                            const char *widgetName=0, bool rst=false, int pg=FIRST_PAGE );  ~KonfiguratorRadioButtons();  inline KonfiguratorExtension *extension()   {return ext;}  void  addRadioButton( QRadioButton *radioWidget, QString name, QString value );  void            selectButton( QString value );  QRadioButton*   find( int index );  QRadioButton*   find( QString name );public slots:  virtual void loadInitialValue();  void slotApply(QObject *,QString, QString);  void slotSetDefaults(QObject *);protected:  QPtrList<QRadioButton>  radioButtons;  QValueList<QString>   radioValues;  QValueList<QString>   radioNames;  QString         defaultValue;  QButtonGroup    *buttonGroup;  KonfiguratorExtension *ext;};// KonfiguratorEditBox class///////////////////////////////class KonfiguratorEditBox : public QLineEdit{  Q_OBJECTpublic:  KonfiguratorEditBox( QString cls, QString name, QString dflt, QWidget *parent=0,                       const char *widgetName=0, bool rst=false, int pg=FIRST_PAGE );  ~KonfiguratorEditBox();  inline KonfiguratorExtension *extension()   {return ext;}public slots:  virtual void loadInitialValue();  void slotApply(QObject *,QString, QString);  void slotSetDefaults(QObject *);protected:  QString  defaultValue;  KonfiguratorExtension *ext;};// KonfiguratorURLRequester class///////////////////////////////class KonfiguratorURLRequester : public KURLRequester{  Q_OBJECTpublic:  KonfiguratorURLRequester( QString cls, QString name, QString dflt, QWidget *parent=0,                       const char *widgetName=0, bool rst=false, int pg=FIRST_PAGE );  ~KonfiguratorURLRequester();  inline KonfiguratorExtension *extension()   {return ext;}public slots:  virtual void loadInitialValue();  void slotApply(QObject *,QString, QString);  void slotSetDefaults(QObject *);protected:  QString  defaultValue;  KonfiguratorExtension *ext;};// KonfiguratorFontChooser class///////////////////////////////class KonfiguratorFontChooser : public QHBox{  Q_OBJECTpublic:  KonfiguratorFontChooser( QString cls, QString name, QFont *dflt, QWidget *parent=0,                            const char *widgetName=0, bool rst=false, int pg=FIRST_PAGE );  ~KonfiguratorFontChooser();  inline KonfiguratorExtension *extension()   {return ext;}public slots:  virtual void    loadInitialValue();  void            slotApply(QObject *,QString, QString);  void            slotSetDefaults(QObject *);  void            slotBrowseFont();protected:  QFont         * defaultValue;  QFont           font;  KonfiguratorExtension *ext;  QLabel        * pLabel;  QToolButton   * pToolButton;  void            setFont();};// KONFIGURATOR_NAME_VALUE_PAIR structure///////////////////////////////struct KONFIGURATOR_NAME_VALUE_PAIR{  QString text;  QString value;};// KONFIGURATOR_NAME_VALUE_TIP structure///////////////////////////////struct KONFIGURATOR_NAME_VALUE_TIP{  QString text;  QString value;  QString tooltip;};// KonfiguratorComboBox class///////////////////////////////class KonfiguratorComboBox : public QComboBox{  Q_OBJECTpublic:  KonfiguratorComboBox( QString cls, QString name, QString dflt,                        KONFIGURATOR_NAME_VALUE_PAIR *listIn, int listInLen,                        QWidget *parent=0, const char *widgetName=0,                        bool rst=false,  bool editable=false, int pg=FIRST_PAGE );  ~KonfiguratorComboBox();  inline KonfiguratorExtension *extension()   {return ext;}public slots:  virtual void loadInitialValue();  void slotApply(QObject *,QString, QString);  void slotSetDefaults(QObject *);protected:  QString                       defaultValue;  KONFIGURATOR_NAME_VALUE_PAIR *list;  int                           listLen;  KonfiguratorExtension        *ext;  void                          selectEntry( QString entry );};// KonfiguratorColorChooser class///////////////////////////////typedef struct{  QString name;  QColor  color;  QString value;} ADDITIONAL_COLOR;class KonfiguratorColorChooser : public QComboBox{  Q_OBJECTpublic:  KonfiguratorColorChooser( QString cls, QString name, QColor dflt,                            QWidget *parent=0, const char *widgetName=0, bool rst=false,                            ADDITIONAL_COLOR *addColPtr = 0, int addColNum = 0, int pg=FIRST_PAGE );  ~KonfiguratorColorChooser();  inline KonfiguratorExtension *extension()   {return ext;}  void          setDefaultColor( QColor dflt );  void          setDefaultText( QString text );  QColor        getColor();  void          changeAdditionalColor( unsigned int num, QColor color );  QString       getValue();  bool          isValueRGB();  void          setValue( QString value );public slots:  virtual void  loadInitialValue();  void          slotApply(QObject *,QString, QString);  void          slotSetDefaults(QObject *);  void          slotCurrentChanged( int number );signals:  void          colorChanged();private:  void          addColor( QString text, QColor color );  QPixmap       createPixmap( QColor color );protected:  QColor                          defaultValue;  QColor                          customValue;  QValueVector<QColor>            palette;  QValueVector<ADDITIONAL_COLOR>  additionalColors;  KonfiguratorExtension          *ext;  bool                            disableColorChooser;};// KonfiguratorListBox class///////////////////////////////class KonfiguratorListBox : public QListBox{  Q_OBJECTpublic:  KonfiguratorListBox( QString cls, QString name, QStringList dflt,                        QWidget *parent=0, const char *widgetName=0,                        bool rst=false,  int pg=FIRST_PAGE );  ~KonfiguratorListBox();  inline KonfiguratorExtension *extension()   {return ext;}  void addItem( const QString & );  void removeItem( const QString & );public slots:  virtual void loadInitialValue();  void slotApply(QObject *,QString, QString);  void slotSetDefaults(QObject *);protected:  QStringList                   list();  void                          setList( QStringList );  QStringList                   defaultValue;  KonfiguratorExtension        *ext;};#endif /* __KONFIGURATOR_ITEMS_H__ */

⌨️ 快捷键说明

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