VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtPage.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: $ $Revision: $ $State: $
7 ******************************************************************************/
8 
12 
13 #pragma once
14 #include <vrvCoreQt/vrvCoreQt.h>
15  #include <QtGui/QWidget>
16 #include <QtGui/QIcon>
17 
18 namespace makVrv
19 {
20  class DtDe;
21 
31  {
32  public:
36  DtPage(DtDe& de,QWidget* parent = 0, Qt::WindowFlags f = 0);
37 
39  virtual ~DtPage();
40 
42  virtual QIcon icon() = 0;
43 
45  virtual QString title() = 0;
46 
48  virtual const std::string& pageClassName() const = 0;
49 
50  protected:
51 
52  friend class DtQtPageCollection;
53 
55  virtual void activate() = 0;
56 
58  virtual void deactivate() = 0;
59 
60  protected:
62  };
63 
70  {
71  public:
73  DtPageCreator(DtDe& de);
74 
76  virtual ~DtPageCreator();
77 
81  virtual std::string pageClassName() const = 0;
82 
84  virtual DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0) = 0;
85 
86  protected:
88  };
89 
90 
97  template <typename PageClass>
99  {
100  public:
101 
104  : DtPageCreator(de)
105  {
106  }
107 
110  {
111  }
112 
115  virtual std::string pageClassName() const
116  {
117  return PageClass::thePageClassName();
118  }
119 
121  virtual DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0)
122  {
123  return new PageClass(myDe, parent, f);
124  }
125  };
126 }
127 

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)