VR-Vantage API Documentation
DtPageCollection.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 <vrvCore/vrvCore.h>
16 #include <boost/signal.hpp>
17 #include <string>
18 #include <vector>
19 
20 namespace makVrv
21 {
22  class DtDe;
23 
28  {
29  public:
30  typedef std::vector<std::string> PageClassList;
31 
34  DtPageCollection(DtDe& de, const std::string& collectionClassName);
35 
38  virtual ~DtPageCollection();
39 
41  const std::string& collectionClassName() const;
42 
44  const PageClassList& pageClasses() const;
45 
51  void show(const std::string& page = std::string(""));
52 
54  void hide();
55 
57  bool visible() const;
58 
61  virtual int tabIndex() const;
62 
64  virtual bool isTabbed() const;
65 
68 
70  void setLocation(DtPageConfiguration::PageCollectionLocation location);
71 
74 
76  void setFloatingGeometry( DtPageConfiguration::PageCollectionGeometry geometry );
77 
79  void setFloatingGeometry(int px, int py, int width, int height);
80 
82  virtual DtPageConfiguration::PageCollectionGeometry dockedGeometry();
83 
85  void setDockedGeometry( DtPageConfiguration::PageCollectionGeometry geometry );
86 
88  void setDockedGeometry(int px, int py, int width, int height);
89 
90  boost::signal<void ()> signal_shown;
91  boost::signal<void ()> signal_hidden;
92  boost::signal<void (const std::string&)> signal_pageSelected;
93 
94  protected:
95 
97  virtual void changeVisibility(bool newVisibility) = 0;
98 
100  virtual void changeLocation(DtPageConfiguration::PageCollectionLocation) = 0;
101 
103  virtual void changeFloatingGeometry(int px, int py, int width, int height) = 0;
104 
106  virtual void changeFloatingGeometry(DtPageConfiguration::PageCollectionGeometry geometry) = 0;
107 
109  virtual void changeDockedGeometry(int px, int py, int width, int height) = 0;
110 
112  virtual void changeDockedGeometry(DtPageConfiguration::PageCollectionGeometry geometry) = 0;
113 
115  virtual void selectPage(const std::string& pageClassName) = 0;
116 
118  void addPageClass(const std::string& pageClassName);
119 
121  void removePageClass(const std::string& pageClassName);
122 
123  protected:
124 
126  std::string myClassName;
132  };
133 }
134 


Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)