Drake Designer
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Pages
ddViewManager.h
Go to the documentation of this file.
1 #ifndef __ddViewManager_h
2 #define __ddViewManager_h
3 
4 #include <QWidget>
5 #include "ddAppConfigure.h"
6 
7 class QTabWidget;
8 class ddViewBase;
9 
10 class DD_APP_EXPORT ddViewManager : public QWidget
11 {
12  Q_OBJECT
13 
14 public:
15 
16  ddViewManager(QWidget* parent=0);
17  virtual ~ddViewManager();
18 
19  QTabWidget* tabWidget() const;
20 
21  ddViewBase* findView(const QString& viewName) const;
22 
23  ddViewBase* createView(const QString& viewName, const QString& viewType, int pageIndex=-1);
24 
25  void switchToView(const QString& viewName);
26 
27  ddViewBase* currentView() const;
28 
29  QString viewName(ddViewBase* view);
30 
31  void popOut(ddViewBase* view);
32 
33 signals:
34 
35  void currentViewChanged(ddViewBase* previousView, ddViewBase* currentView);
36 
37 protected slots:
38 
39  void onCurrentTabChanged(int currentIndex);
40 
41 protected:
42 
43  bool eventFilter(QObject* obj, QEvent* event);
44 
45  void addDefaultPage();
46 
47  void addView(ddViewBase* view, const QString& viewName, int pageIndex=-1);
48 
49  class ddInternal;
50  ddInternal* Internal;
51 
52  Q_DISABLE_COPY(ddViewManager);
53 
54 };
55 
56 #endif
ddInternal * Internal
Definition: ddViewManager.h:49
#define DD_APP_EXPORT