Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:11:50

0001 // @(#):$Id$
0002 // Author: M.Gheata
0003 /*************************************************************************
0004  * Copyright (C) 1995-2002, Rene Brun and Fons Rademakers.               *
0005  * All rights reserved.                                                  *
0006  *                                                                       *
0007  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0008  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0009  *************************************************************************/
0010 
0011 #ifndef ROOT_TGeoBBoxEditor
0012 #define ROOT_TGeoBBoxEditor
0013 
0014 #include "TGWidget.h"
0015 #include "TGeoGedFrame.h"
0016 
0017 class TGeoBBox;
0018 class TGeoTabManager;
0019 class TGTextEntry;
0020 class TGNumberEntry;
0021 class TGTab;
0022 class TGComboBox;
0023 class TGTextButton;
0024 class TGCheckButton;
0025 class TString;
0026 
0027 class TGeoBBoxEditor : public TGeoGedFrame {
0028 
0029 protected:
0030    Double_t fDxi;           // Initial box dx
0031    Double_t fDyi;           // Initial box dy
0032    Double_t fDzi;           // Initial box dz
0033    Double_t fOrigi[3];      // Initial origin
0034    TString fNamei;          // Initial name
0035    TGeoBBox *fShape;        // Shape object
0036    Bool_t fIsModified;      // Flag that volume was modified
0037    Bool_t fIsShapeEditable; // Flag that the shape can be changed
0038    TGTextEntry *fShapeName; // Shape name text entry
0039    TGNumberEntry *fBoxDx;   // Number entry for box DX
0040    TGNumberEntry *fBoxDy;   // Number entry for box DY
0041    TGNumberEntry *fBoxDz;   // Number entry for box DZ
0042    TGNumberEntry *fBoxOx;   // Number entry for box OX
0043    TGNumberEntry *fBoxOy;   // Number entry for box OY
0044    TGNumberEntry *fBoxOz;   // Number entry for box OZ
0045    TGTextButton *fApply;    // Apply-Button to accept changes
0046    TGTextButton *fUndo;     // Undo-Button
0047    TGCheckButton *fDelayed; // Check button for delayed draw
0048 
0049    virtual void ConnectSignals2Slots(); // Connect the signals to the slots
0050    Bool_t IsDelayed() const;
0051 
0052 public:
0053    TGeoBBoxEditor(const TGWindow *p = nullptr, Int_t width = 140, Int_t height = 30, UInt_t options = kChildFrame,
0054                   Pixel_t back = GetDefaultFrameBackground());
0055    ~TGeoBBoxEditor() override;
0056    void SetModel(TObject *obj) override;
0057 
0058    void DoDx();
0059    void DoDy();
0060    void DoDz();
0061    void DoOx();
0062    void DoOy();
0063    void DoOz();
0064    void DoModified();
0065    void DoName();
0066    void DoApply();
0067    void DoUndo();
0068 
0069    ClassDefOverride(TGeoBBoxEditor, 0) // TGeoBBox editor
0070 };
0071 
0072 #endif