00001
00014 #ifndef DISPLAYOPTIONS_H
00015 #define DISPLAYOPTIONS_H
00016 #include <Conventions/Munits.h>
00017 #include <Midad/Base/CanvasPage.h>
00018 #include <Midad/Base/PageDisplay.h>
00019 #include <Midad/Gui/GuiMainWindow.h>
00020 #include <Conventions/CalStripType.h>
00021 #include <Conventions/CalDigitType.h>
00022 #include <Midad/Gui/GuiMenu.h>
00023 #include <RQ_OBJECT.h>
00024 #include "TGNumberEntry.h"
00025 #include "UserHistType.h"
00026
00027 class PageDisplay;
00028 class GuiMenu;
00029 class GuiMenuList;
00030 class EVD;
00031 class DisplayOptions
00032
00033 {
00034 RQ_OBJECT("DisplayOptions")
00035
00036 private:
00037
00038 Float_t fChargeMax;
00039 Float_t fChargeMin;
00040 Float_t fZMax;
00041 Float_t fZMin;
00042 Bool_t fAutoScaleCharge;
00043 Bool_t fAutoScaleExtents;
00044 CalDigitType::CalDigitType_t fChargeType;
00045 UserHistType::UserHist_t fUserHistType;
00046
00047 PageDisplay * fPageDisplay;
00048 EVD * fEVD;
00049 TGTransientFrame * fMain;
00050 TGNumberEntry * fChargeMaxEntry;
00051 TGNumberEntry * fChargeMinEntry;
00052 TGNumberEntry * fZMaxEntry;
00053 TGNumberEntry * fZMinEntry;
00054
00055 TGRadioButton * fRad1;
00056 TGRadioButton * fRad2;
00057 TGRadioButton * fRad3;
00058 TGRadioButton * fRad4;
00059
00060 TGRadioButton * fUserHistRad1;
00061 TGRadioButton * fUserHistRad2;
00062 TGRadioButton * fUserHistRad3;
00063 TGRadioButton * fUserHistRad4;
00064
00065 Float_t fOldChargeMax;
00066 Float_t fOldChargeMin;
00067 Float_t fOldZMax;
00068 Float_t fOldZMin;
00069 Bool_t fOldAutoScaleCharge;
00070 Bool_t fOldAutoScaleExtents;
00071 Bool_t fDrawVS;
00072 Bool_t fOldDrawVS;
00073
00074 CalDigitType::CalDigitType_t fOldChargeType;
00075 UserHistType::UserHist_t fOldUserHistType;
00076
00077 public:
00078 DisplayOptions(){};
00079 DisplayOptions(PageDisplay& pd, EVD& evd );
00080 virtual ~DisplayOptions();
00081
00082 void OpenDialog(GuiMenu* , GuiMenu::GuiMenuList::iterator );
00083
00084 Float_t ChargeMax(){return fChargeMax;}
00085 Float_t ChargeMin(){return fChargeMin;}
00086 Float_t ZMax(){return fZMax;}
00087 Float_t ZMin(){return fZMin;}
00088 Bool_t AutoScaleCharge(){return fAutoScaleCharge;}
00089 Bool_t AutoScaleExtents(){return fAutoScaleExtents;}
00090 Bool_t DrawVS(){return fDrawVS;}
00091 CalDigitType::CalDigitType_t ChargeType(){return fChargeType;}
00092 UserHistType::UserHist_t UserHist(){return fUserHistType;}
00093
00094 void SetChargeMax(Float_t c){fChargeMax=c;}
00095 void SetChargeMin(Float_t c){fChargeMin=c;}
00096 void SetZMax(Float_t c){fZMax=c;}
00097 void SetZMin(Float_t c){fZMin=c;}
00098 void SetAutoScale(Bool_t t){fAutoScaleCharge=t;}
00099 void SetAutoScaleExtents(Bool_t t){fAutoScaleExtents=t;}
00100 void SetDrawVS(Bool_t t){fDrawVS=t;}
00101 void SetUserHist(UserHistType::UserHist_t type){fUserHistType=type;}
00102 void SetChargeType(CalDigitType::CalDigitType_t type){fChargeType=type;}
00103
00104
00105 void OK();
00106 void Cancel();
00107 void SetAutoScale();
00108 void SetAutoScaleExtents();
00109 void SetDrawVS();
00110 void ChangeChargeType(Int_t id=-1);
00111 void ChangeUserHist(Int_t id=-1);
00112 void RestoreValues();
00113 void StoreValues();
00114 void CloseWindow();
00115
00116 ClassDef(DisplayOptions,0)
00117 };
00118
00119 #endif // DISPLAYOPTIONS_H