00001 #ifndef SceneStatusBarH
00002 #define SceneStatusBarH
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00039
00040
00041 #include "CoreMainHeader.h"
00042 #include "Selection.h"
00043 #include "SmallString.h"
00044 #include <comctrls.hpp>
00045
00046
00047
00048
00049
00050
00052
00055 class NEMESIS_CORE_PACKAGE CSceneStatusBar{
00056
00057 public:
00058 __fastcall CSceneStatusBar(void);
00059 __fastcall ~CSceneStatusBar(void);
00060
00061
00062 void __fastcall SetStatusBar(TStatusBar* statusbar);
00063
00064 void __fastcall ActivateScene(void);
00065 void __fastcall ChangeWorkPanel(const CSmallString& name);
00066 void __fastcall SetCtrlMode(const CSmallString& text);
00067 void __fastcall UnsetCtrlMode(void);
00068
00069 void __fastcall SetClaim(EObject claim);
00070 void __fastcall SetChangedStatus(bool changed);
00071 void __fastcall SetMasterLockMode(bool lock);
00072 void __fastcall DeactivateScene(void);
00073
00074 void __fastcall SetCalculationMode(bool online);
00075 void __fastcall SetCalculationText(const CSmallString& f1,const CSmallString& f2,const CSmallString& f3);
00076 void __fastcall ResetCalculationMode(void);
00077
00078 void __fastcall SetError(const CSmallString& errortext,int time=5000);
00079
00080
00081 private:
00082 enum EMode{NORMAL,CALCULATION,DEACTIVATE,};
00083 EMode Mode;
00084 TStatusBar* StatusBar;
00085 CSmallString WorkPanelName;
00086 bool IsInControlMode;
00087 CSmallString ControlText;
00088 EObject Claim;
00089 bool Change;
00090 bool MasterLockMode;
00091 bool OnLineCalculation;
00092 bool SceneIsActive;
00093 bool ErrorIsActive;
00094 bool ReadOnly;
00095 TTimer* Timer;
00096
00097 void __fastcall Update(void);
00098 void __fastcall SetNewMode(EMode newmode);
00099 void __fastcall ErrorModeOnEndTime(TObject* sender);
00100 void __fastcall UpdateNormalMode(void);
00101 void __fastcall UpdateCalculationMode(void);
00102 void __fastcall UpdateDeactivateMode(void);
00103 void __fastcall MakeNewModePanels(EMode newmode);
00104 };
00105
00106
00107
00108
00109 #endif