// @(#):$Id$
// Author: M.Gheata 
/*************************************************************************
 * Copyright (C) 1995-2002, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/

#ifndef ROOT_TGeoBBoxEditor
#define ROOT_TGeoBBoxEditor

//////////////////////////////////////////////////////////////////////////
//                                                                      //
//  TGeoBBoxEditor                                                      //
//                                                                      //
//  Editor for a TGeoBBox.                                              //
//                                                                      //
//////////////////////////////////////////////////////////////////////////

#ifndef ROOT_TGButton
#include "TGWidget.h"
#endif
#ifndef ROOT_TGeoGedFrame
#include "TGeoGedFrame.h"
#endif

class TGeoBBox;
class TGeoTabManager;
class TGTextEntry;
class TGNumberEntry;
class TGTab;
class TGComboBox;
class TGTextButton;
class TGCheckButton;
class TString;

class TGeoBBoxEditor : public TGeoGedFrame {

protected:

   Double_t             fDxi;               // Initial box dx
   Double_t             fDyi;               // Initial box dy
   Double_t             fDzi;               // Initial box dz
   Double_t             fOrigi[3];          // Initial origin
   TString              fNamei;             // Initial name
   TGeoBBox            *fShape;             // Shape object
   Bool_t               fIsModified;        // Flag that volume was modified
   Bool_t               fIsShapeEditable;   // Flag that the shape can be changed
   TGTextEntry         *fShapeName;         // Shape name text entry
   TGNumberEntry       *fBoxDx;             // Number entry for box DX
   TGNumberEntry       *fBoxDy;             // Number entry for box DY
   TGNumberEntry       *fBoxDz;             // Number entry for box DZ
   TGNumberEntry       *fBoxOx;             // Number entry for box OX
   TGNumberEntry       *fBoxOy;             // Number entry for box OY
   TGNumberEntry       *fBoxOz;             // Number entry for box OZ
   TGTextButton        *fApply;             // Apply-Button to accept changes
   TGTextButton        *fUndo;              // Undo-Button
   TGCheckButton       *fDelayed;           // Check button for delayed draw

   virtual void ConnectSignals2Slots();     // Connect the signals to the slots
   Bool_t       IsDelayed() const;   

public:
   TGeoBBoxEditor(const TGWindow *p = 0,
                   Int_t width = 140, Int_t height = 30,
                   UInt_t options = kChildFrame,
                   Pixel_t back = GetDefaultFrameBackground());
   virtual ~TGeoBBoxEditor();
   virtual void   SetModel(TObject *obj);

   void           DoDx();
   void           DoDy();
   void           DoDz();
   void           DoOx();
   void           DoOy();
   void           DoOz();
   void           DoModified();
   void           DoName();
   void           DoApply();
   void           DoUndo();
   
   ClassDef(TGeoBBoxEditor,0)   // TGeoBBox editor
};   
  
#endif                    
 TGeoBBoxEditor.h:1
 TGeoBBoxEditor.h:2
 TGeoBBoxEditor.h:3
 TGeoBBoxEditor.h:4
 TGeoBBoxEditor.h:5
 TGeoBBoxEditor.h:6
 TGeoBBoxEditor.h:7
 TGeoBBoxEditor.h:8
 TGeoBBoxEditor.h:9
 TGeoBBoxEditor.h:10
 TGeoBBoxEditor.h:11
 TGeoBBoxEditor.h:12
 TGeoBBoxEditor.h:13
 TGeoBBoxEditor.h:14
 TGeoBBoxEditor.h:15
 TGeoBBoxEditor.h:16
 TGeoBBoxEditor.h:17
 TGeoBBoxEditor.h:18
 TGeoBBoxEditor.h:19
 TGeoBBoxEditor.h:20
 TGeoBBoxEditor.h:21
 TGeoBBoxEditor.h:22
 TGeoBBoxEditor.h:23
 TGeoBBoxEditor.h:24
 TGeoBBoxEditor.h:25
 TGeoBBoxEditor.h:26
 TGeoBBoxEditor.h:27
 TGeoBBoxEditor.h:28
 TGeoBBoxEditor.h:29
 TGeoBBoxEditor.h:30
 TGeoBBoxEditor.h:31
 TGeoBBoxEditor.h:32
 TGeoBBoxEditor.h:33
 TGeoBBoxEditor.h:34
 TGeoBBoxEditor.h:35
 TGeoBBoxEditor.h:36
 TGeoBBoxEditor.h:37
 TGeoBBoxEditor.h:38
 TGeoBBoxEditor.h:39
 TGeoBBoxEditor.h:40
 TGeoBBoxEditor.h:41
 TGeoBBoxEditor.h:42
 TGeoBBoxEditor.h:43
 TGeoBBoxEditor.h:44
 TGeoBBoxEditor.h:45
 TGeoBBoxEditor.h:46
 TGeoBBoxEditor.h:47
 TGeoBBoxEditor.h:48
 TGeoBBoxEditor.h:49
 TGeoBBoxEditor.h:50
 TGeoBBoxEditor.h:51
 TGeoBBoxEditor.h:52
 TGeoBBoxEditor.h:53
 TGeoBBoxEditor.h:54
 TGeoBBoxEditor.h:55
 TGeoBBoxEditor.h:56
 TGeoBBoxEditor.h:57
 TGeoBBoxEditor.h:58
 TGeoBBoxEditor.h:59
 TGeoBBoxEditor.h:60
 TGeoBBoxEditor.h:61
 TGeoBBoxEditor.h:62
 TGeoBBoxEditor.h:63
 TGeoBBoxEditor.h:64
 TGeoBBoxEditor.h:65
 TGeoBBoxEditor.h:66
 TGeoBBoxEditor.h:67
 TGeoBBoxEditor.h:68
 TGeoBBoxEditor.h:69
 TGeoBBoxEditor.h:70
 TGeoBBoxEditor.h:71
 TGeoBBoxEditor.h:72
 TGeoBBoxEditor.h:73
 TGeoBBoxEditor.h:74
 TGeoBBoxEditor.h:75
 TGeoBBoxEditor.h:76
 TGeoBBoxEditor.h:77
 TGeoBBoxEditor.h:78
 TGeoBBoxEditor.h:79
 TGeoBBoxEditor.h:80
 TGeoBBoxEditor.h:81
 TGeoBBoxEditor.h:82
 TGeoBBoxEditor.h:83
 TGeoBBoxEditor.h:84
 TGeoBBoxEditor.h:85
 TGeoBBoxEditor.h:86
 TGeoBBoxEditor.h:87