kedittoolbar.h
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 #ifndef _KEDITTOOLBAR_H
00019 #define _KEDITTOOLBAR_H
00020 
00021 #include <qwidget.h>
00022 #include <kxmlguiclient.h>
00023 #include <kdialogbase.h>
00024 
00025 class KActionCollection;
00026 class QComboBox;
00027 class QToolButton;
00028 class KListView;
00029 class QListViewItem;
00030 
00031 class KEditToolbarWidget;
00032 class KEditToolbarPrivate;
00033 class KEditToolbarWidgetPrivate;
00034 
00105 class KEditToolbar : public KDialogBase
00106 {
00107     Q_OBJECT
00108 public:
00139   KEditToolbar(KActionCollection *collection,
00140                const QString& xmlfile = QString::null, bool global = true,
00141                QWidget* parent = 0, const char* name = 0);
00142 
00143   
00144   
00145 
00146 
00147 
00148 
00149 
00150 
00151 
00152 
00153 
00154 
00155   KEditToolbar(const QString& defaultToolbar, KActionCollection *collection,
00156                const QString& xmlfile = QString::null, bool global = true,
00157                QWidget* parent = 0, const char* name = 0);
00181   KEditToolbar(KXMLGUIFactory* factory, QWidget* parent = 0, const char* name = 0);
00182 
00183   
00184   
00185 
00186 
00187 
00188 
00189 
00190 
00191 
00192 
00193   KEditToolbar(const QString& defaultToolbar, KXMLGUIFactory* factory,
00194                QWidget* parent = 0, const char* name = 0);
00195 
00197   ~KEditToolbar();
00198 
00199 protected slots:
00203   virtual void slotOk();
00207   virtual void slotApply();
00208 
00212   void acceptOK(bool b);
00213 
00214 signals:
00220   void newToolbarConfig();
00221 
00222 private:
00223   void init();
00224   KEditToolbarWidget *m_widget;
00225 protected:
00226   virtual void virtual_hook( int id, void* data );
00227 private:
00228   KEditToolbarPrivate *d;
00229 };
00230 
00251 class KEditToolbarWidget : public QWidget, virtual public KXMLGUIClient
00252 {
00253   Q_OBJECT
00254 public:
00284   KEditToolbarWidget(KActionCollection *collection,
00285                      const QString& xmlfile = QString::null,
00286                      bool global = true, QWidget *parent = 0L);
00287 
00288    
00289    
00290 
00291 
00292 
00293 
00294 
00295 
00296 
00297 
00298 
00299   KEditToolbarWidget(const QString& defaultToolbar,
00300                      KActionCollection *collection,
00301                      const QString& file = QString::null,
00302                      bool global = true,
00303                      QWidget *parent = 0L);
00304 
00325   KEditToolbarWidget(KXMLGUIFactory* factory, QWidget *parent = 0L);
00326 
00327    
00328    
00329 
00330 
00331 
00332 
00333 
00334 
00335 
00336   KEditToolbarWidget(const QString& defaultToolbar,
00337                      KXMLGUIFactory* factory,
00338                      QWidget *parent = 0L);
00339 
00345   virtual ~KEditToolbarWidget();
00346 
00350   virtual KActionCollection *actionCollection() const;
00351 
00360   bool save();
00361 
00362 signals:
00366   void enableOk(bool);
00367 
00368 protected slots:
00369   void slotToolbarSelected(const QString& text);
00370 
00371   void slotInactiveSelected(QListViewItem *item);
00372   void slotActiveSelected(QListViewItem *item);
00373 
00374   void slotInsertButton();
00375   void slotRemoveButton();
00376   void slotUpButton();
00377   void slotDownButton();
00378 
00379 protected:
00380   void setupLayout();
00381 
00382   void initNonKPart(KActionCollection *collection, const QString& file, bool global);
00383   void initKPart(KXMLGUIFactory* factory);
00384   void loadToolbarCombo(const QString& defaultToolbar = QString::null);
00385   void loadActionList(QDomElement& elem);
00386   void updateLocal(QDomElement& elem);
00387 
00388 private:
00389   KListView *m_inactiveList;
00390   KListView *m_activeList;
00391   QComboBox *m_toolbarCombo;
00392 
00393   QToolButton *m_upAction;
00394   QToolButton *m_removeAction;
00395   QToolButton *m_insertAction;
00396   QToolButton *m_downAction;
00397 
00398 protected:
00399   virtual void virtual_hook( int id, void* data );
00400 private:
00401   KEditToolbarWidgetPrivate *d;
00402 };
00403 
00404 #endif // _KEDITTOOLBAR_H
 
This file is part of the documentation for kdeui Library Version 3.2.0.