![]() |
VR-Vantage 1.4.1 API Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtWindow.h,v $ $Revision: 1.31 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #ifndef DtWindow_H_ 00014 #define DtWindow_H_ 00015 00016 #include <vrvCore/vrvCore.h> 00017 #include <vrvUtil/DtWindowConfiguration.h> 00018 #include <vrvUtil/DtVirtualBaseClass.h> 00019 00020 namespace makVrv 00021 { 00022 class DtChannel; 00023 class DtChannelManager; 00024 class DtDe; 00025 00028 class DT_DLL_VRVCORE DtWindow 00029 { 00030 00031 public: 00032 00034 DtWindow(DtDe&, DtWindowConfiguration& wc); 00035 00037 virtual void realize(); 00038 00040 virtual ~DtWindow(); 00041 00044 virtual bool isValid() const = 0; 00045 00047 virtual bool canResize() const; 00048 00050 virtual void setPosition(int x,int y) = 0; 00051 00053 virtual void resize(int width,int height) = 0; 00054 00058 virtual void sizeChanged(int width,int height) = 0; 00059 00061 virtual int width() const; 00062 00064 virtual int height() const; 00065 00067 virtual const DtWindowConfiguration& configuration() const; 00068 00070 virtual bool tick(); 00071 00073 virtual DtChannelManager& channelManager(); 00074 00076 virtual const DtChannelManager& channelManager() const; 00077 00079 virtual DtChannel* findChannel(const std::string& name); 00080 00082 inline DtDe& de() { return myDe;} 00083 00085 virtual void clearEmptyWindow(); 00086 00089 virtual void toggleFullScreen() {} 00090 00091 virtual bool isFullScreen() { return false; } 00092 00094 virtual int screenNumber() const { return 0; } 00095 00096 00097 protected: 00098 00099 DtDe& myDe; 00100 DtChannelManager* myChannelManager; 00101 DtWindowConfiguration& myWindowConfiguration; 00102 00103 }; 00104 00109 class DT_DLL_VRVCORE DtWindowCreator 00110 { 00111 public: 00112 00114 DtWindowCreator(); 00115 00117 virtual ~DtWindowCreator(); 00118 00120 virtual DtWindow* create(DtDe&, DtWindowConfiguration&) = 0; 00121 }; 00122 } 00123 00124 #endif 00125