Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

/Go4FitGUI/TGo4FitPanelStatus.h

Go to the documentation of this file.
00001 //---------------------------------------------------------------
00002 //        Go4 Release Package v2.10-5 (build 21005) 
00003 //                      03-Nov-2005
00004 //---------------------------------------------------------------
00005 //       The GSI Online Offline Object Oriented (Go4) Project
00006 //       Experiment Data Processing at DVEE department, GSI
00007 //---------------------------------------------------------------
00008 //
00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI
00010 //                    Planckstr. 1, 64291 Darmstadt, Germany
00011 //Contact:            http://go4.gsi.de
00012 //----------------------------------------------------------------
00013 //This software can be used under the license agreements as stated
00014 //in Go4License.txt file which is part of the distribution.
00015 //----------------------------------------------------------------
00016 #ifndef TGO4FITPANELSTATUS_H
00017 #define TGO4FITPANELSTATUS_H
00018 
00019 #include "Go4StatusBase/TGo4Status.h"
00020 #include "TObjArray.h"
00021 #include "TGo4FitGUIOptions.h"
00022 #include "TString.h"
00023 
00024 class TGo4FitSlot;
00025 class TGo4PreviewPanel;
00026 class TPad;
00027 
00028 
00029 class TGo4FitSlotStatus : public TObject {
00030   public:
00031     enum {fss_none = -1, fss_owned, fss_reference, fss_pad };
00032 
00033     TGo4FitSlotStatus(TGo4FitSlot*);
00034     virtual ~TGo4FitSlotStatus();
00035 
00036     Int_t Source() { return fiSource; }
00037     TGo4FitSlot* Slot() { return fxSlot; }
00038 
00039     void SetSourceNone();
00040 
00041     void SetSourceOwned(const char* info = 0);
00042 
00043     void SetSourceReference(const char* info = 0);
00044 
00045     const char* InfoStr();
00046 
00047     void SetSourcePad(TGo4PreviewPanel*, TPad*);
00048     TGo4PreviewPanel* SourcePanel() { return fxPanel; }
00049     TPad* SourcePad() { return fxPad; }
00050     void UpdatePad();
00051 
00052     void AddPrimitive(TObject* obj);
00053     bool ClearPrimitives();
00054     bool RemovePrimitivesFor(TObject* obj);
00055     bool UpdateRestPrimitives(TObject* obj);
00056 
00057     void AddDrawObj(TObject* obj);
00058     void ClearDrawObjs();
00059 
00060   private:
00061     Int_t fiSource;              
00062     TGo4FitSlot* fxSlot;         
00063     TGo4PreviewPanel* fxPanel;   
00064     TPad* fxPad;                 
00065     TObjArray fxDrawObjs;        
00066     TObjArray fxPrimitives;      
00067     TString fxInfo;              
00068 };
00069 
00070 
00071 
00072 // *************************************************************************************
00073 
00074 
00075 
00076 class TGo4FitPanelStatus : public TGo4Status {
00077    public:
00078       TGo4FitPanelStatus();
00079       TGo4FitPanelStatus(Text_t *Name, Text_t * Title);
00080 
00081       ~TGo4FitPanelStatus();
00082 
00083       Bool_t& NeedConfirmation() { return fbNeedConfirmation; }
00084       Bool_t& ShowPrimitives() { return fbShowPrimitives; }
00085       Bool_t& FreezeMode() { return fbFreezeMode; }
00086 
00087       Int_t& SelectedWidgetID() { return fiSelectedWidgetID; }
00088       Bool_t SimpleWidgetSelected() { return SelectedWidgetID()==1; }
00089       Bool_t WizWidgetSelected() { return SelectedWidgetID()==2; }
00090       Bool_t ExtendedWidgetSelected() { return SelectedWidgetID()==3; }
00091       Bool_t& ParsWidgetShown() { return fbParsWidgetShown; }
00092 
00093       TGo4FitGUIOptions& CommonOptions() { return fxCommonOptions; }
00094 
00095       Bool_t& DrawModels() { return fbDrawModels; }
00096       Bool_t& DrawComponents() { return fbDrawComponents; }
00097       Bool_t& DrawBackground() { return fbDrawBackground; }
00098       Bool_t& UseSamePanelForDraw() { return fbUseSamePanelForDraw; }
00099       Bool_t& DrawInfoOnPad() { return fbDrawInfoOnPad; }
00100       Int_t&  IntegralMode() { return fiIntegralMode; }
00101       Bool_t& RecalculateGaussWidth() { return fbRecalculateGaussWidth; }
00102 
00103       Int_t& BuffersUsage() { return fiBuffersUsage; }
00104 
00105       Bool_t& SaveWithReferences() { return fbSaveWithReferences; }
00106       
00107       Bool_t& UseCurrentRange() { return fbUseCurrentRange; }
00108       
00109    private:
00110       Bool_t fbNeedConfirmation;
00111       Bool_t fbShowPrimitives;
00112       Bool_t fbFreezeMode;
00113 
00114       TGo4FitGUIOptions fxCommonOptions;
00115 
00116       Int_t fiSelectedWidgetID;
00117       Bool_t fbParsWidgetShown;
00118 
00119       Bool_t fbDrawModels;
00120       Bool_t fbDrawComponents;
00121       Bool_t fbDrawBackground;
00122       Bool_t fbUseSamePanelForDraw;
00123       Bool_t fbDrawInfoOnPad;
00124       Int_t  fiIntegralMode;
00125       Bool_t fbRecalculateGaussWidth;
00126 
00127       Int_t fiBuffersUsage;
00128 
00129       Bool_t fbSaveWithReferences;
00130       
00131       Bool_t fbUseCurrentRange;
00132 };
00133 
00134 #endif //TGO4FITPANELSTATUS_H
00135 
00136 //----------------------------END OF GO4 SOURCE FILE ---------------------

Generated on Tue Nov 8 10:55:59 2005 for Go4-v2.10-5 by doxygen1.2.15