BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
pluginDialog.h
Go to the documentation of this file.
1 #ifndef BALL_VIEW_PLUGINDIALOG_H
2 #define BALL_VIEW_PLUGINDIALOG_H
3 
4 #ifndef BALL_VIEW_KERNEL_PREFERENCESENTRY
6 #endif
7 
8 #ifndef BALL_VIEW_KERNEL_MODULARWIDGET_H
10 #endif
11 
12 #include <BALL/VIEW/UIC/ui_pluginDialog.h>
13 
14 #include <QtCore/QModelIndex>
15 #include <QtGui/QItemDelegate>
16 #include <QtGui/QDialog>
17 
18 namespace BALL
19 {
20  namespace VIEW
21  {
22  class VIEWPlugin;
23 
24 /* class PluginItemDelegate : public QItemDelegate
25  {
26  Q_OBJECT
27 
28  public:
29  QSize sizeHint(const QStyleOptionViewItem& option, const QModelIndex& index) const;
30  void paint ( QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index ) const;
31  };
32 */
34  public QAbstractListModel
35  {
36  Q_OBJECT
37 
38  public:
39  PluginModel();
40 
41  int rowCount(const QModelIndex& parent = QModelIndex()) const;
42  QVariant data(const QModelIndex& i, int role) const;
43  void pluginsLoaded();
44  private:
45  int num_rows_;
46  };
47 
48 
49 
53  : public QDialog,
54  private Ui_PluginDialogData,
55  public ModularWidget,
56  public PreferencesEntry
57  {
58  Q_OBJECT
59 
60  public:
61 
63 
64  PluginDialog(QWidget* parent, const char *name = "PluginDialog");
65  virtual ~PluginDialog() {}
66 
72  virtual void initializeWidget(MainControl& main_control);
73 
78  virtual void finalizeWidget(MainControl& main_control);
79 
80  virtual void writePreferenceEntries(INIFile& inifile);
81  virtual void readPreferenceEntries(const INIFile& inifile);
82 
83  virtual void registerChildEntry(PreferencesEntry* child);
84  virtual void unregisterChildEntry(PreferencesEntry* child);
85 
86  protected slots:
87  virtual void addPluginDirectory();
88  virtual void removePluginDirectory();
89  virtual void directorySelectionChanged();
90  //virtual void close();
91  //virtual void reject();
92  virtual void pluginChanged(QModelIndex i);
93  virtual void togglePluginState();
94 
95  private:
96  QModelIndex active_index_;
98 
99  std::list<PreferencesEntry*> child_entries_;
100  };
101 
102  }
103 }
104 
105 #endif
106