![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtSessionStartupDialog.h,v $ $Revision: 1.2 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00011 00013 00014 #pragma once 00015 00016 #include <vrvUtil/signalslib.h> 00017 #include <vrvUtil/DtVirtualBaseClass.h> 00018 #include <vrfGuiCoreQt/vrfGuiCoreQt.h> 00019 #include <vrfGuiCoreQt/DtSessionStartupDialogInterface.h> 00020 00021 #include <QtGui/QDialog> 00022 #include <QtGui/QPixmap> 00023 00024 class QRadioButton; 00025 class QVBoxLayout; 00026 class QHBoxLayout; 00027 class QButton; 00028 class QCheckBox; 00029 class QComboBox; 00030 class QLabel; 00031 class QGridLayout; 00032 00033 namespace makVrv 00034 { 00035 class DtDe; 00036 } 00037 00038 namespace makVrf 00039 { 00040 class DtSessionStartupDialogLogic; 00041 class DtSessionStartupTitleBar; 00042 00043 class DT_DLL_VRFGUICOREQT DtSessionStartupDialog 00044 : public QDialog 00045 , public DtSessionStartupDialogInterface 00046 { 00047 Q_OBJECT 00048 00049 public: 00050 //CTOR 00051 DtSessionStartupDialog(makVrv::DtDe& de, QWidget* parent = 0, const Qt::WindowFlags& flags = 0); 00052 00053 //DTOR 00054 virtual ~DtSessionStartupDialog(); 00055 00056 public: 00058 virtual void activate(); 00059 00061 virtual void deactivate(); 00062 00064 virtual void setServerAvailability(const std::string&, ServerStatus, const std::string& reason); 00065 00067 virtual void setCurrentServer(const std::string&); 00068 00070 virtual void addServer(const std::string& desc); 00071 00073 virtual void removeServer(const std::string& desc); 00074 00076 virtual void setStartupPreference(StartupPreference); 00077 00079 virtual void setAllowNewScenarioOnLocal(bool); 00080 00082 virtual void setAllowNewScenarioOnVR(bool); 00083 00085 virtual void setAllowLoadScenario(bool); 00086 00087 protected slots: 00088 virtual void currentServerChanged(); 00089 00090 protected: 00092 void setupGui(); 00093 00095 virtual void accept(); 00096 00099 virtual void reject(); 00100 00101 virtual void paintEvent(QPaintEvent*); 00102 00103 public: 00104 QVBoxLayout* myMainLayout; 00105 00106 QLabel* myNewScenarioVRIcon; 00107 QRadioButton* myNewScenarioVR; 00108 00109 QLabel* myNewScenarioIcon; 00110 QRadioButton* myNewScenario; 00111 00112 QLabel* myLoadScenarioIcon; 00113 QRadioButton* myLoadScenario; 00114 00115 QLabel* myServerStatus; 00116 QLabel* myServersLabel; 00117 QComboBox* myServers; 00118 QGridLayout* myServerLayout; 00119 00120 QCheckBox* myNeverShowAgain; 00121 QPushButton* myOk; 00122 QPushButton* myCancel; 00123 QHBoxLayout* myButtonLayout; 00124 00125 DtSessionStartupTitleBar* myTitleBar; 00126 00127 QImage myStartupImage; 00128 00129 QLabel* myWebLink; 00130 00131 protected: 00132 makVrv::DtDe& myDe; 00133 DtSessionStartupDialogLogic* myLogic; 00134 }; 00135 00136 class DT_DLL_VRFGUICOREQT DtSessionStartupDialogCreator : public makVrv::DtVirtualBaseClass 00137 { 00138 public: 00139 DtSessionStartupDialogCreator(); 00140 00141 virtual ~DtSessionStartupDialogCreator(); 00142 00143 static DtSessionStartupDialogCreator& instance(makVrv::DtDe&); 00144 static void registerInstance(makVrv::DtDe&, DtSessionStartupDialogCreator*); 00145 00146 virtual DtSessionStartupDialog* create(makVrv::DtDe&, QWidget* window = 0); 00147 }; 00148 }