// @(#)root/ged:$Name: $:$Id: TGedFrame.h,v 1.4 2004/09/15 14:56:35 brun Exp $ // Author: Ilka Antcheva 10/05/04 /************************************************************************* * 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_TGedFrame #define ROOT_TGedFrame ////////////////////////////////////////////////////////////////////////// // // // TGedFrame // // // // Base editor's attribute frame - a service class. // // // ////////////////////////////////////////////////////////////////////////// #ifndef ROOT_TGButton #include "TGWidget.h" #endif #ifndef ROOT_TGFrame #include "TGFrame.h" #endif class TVirtualPad; class TCanvas; class TGLabel; class TList; class TGTab; class TGedFrame : public TGCompositeFrame, public TGWidget { protected: TObject *fModel; // selected object, if exists TVirtualPad *fPad; // selected pad, if exists Bool_t fInit; // init flag for setting signals/slots TGTab *fTab; // Pointer to the parent tab virtual void MakeTitle(const char *title); public: TGedFrame(const TGWindow *p, Int_t id, Int_t width = 140, Int_t height = 30, UInt_t options = kChildFrame, Pixel_t back = GetDefaultFrameBackground()); virtual ~TGedFrame(); TObject *GetModel() const { return fModel;} TVirtualPad *GetPad() const { return fPad;} virtual Option_t *GetDrawOption() const; virtual void RecursiveRemove(TObject *obj); virtual void Refresh(); virtual void SetActive(Bool_t active = kTRUE); virtual void SetDrawOption(Option_t *option=""); virtual void SetModel(TVirtualPad *pad, TObject *obj, Int_t event) = 0; virtual void Update(); ClassDef(TGedFrame, 0); //base editor's frame }; // The GUI editors and corresponding canvases will be registered // in the list TClass::fClassEditors via the class TGedElement class TGedElement : public TObject { public: TGedFrame *fGedFrame; TObject *fCanvas; ClassDef(TGedElement, 0); //editor element }; class TGedNameFrame : public TGedFrame { protected: TGLabel *fLabel; //label of attribute frame TGCompositeFrame *f1, *f2; public: TGedNameFrame(const TGWindow *p, Int_t id, Int_t width = 140, Int_t height = 30, UInt_t options = kChildFrame, Pixel_t back = GetDefaultFrameBackground()); virtual ~TGedNameFrame(); virtual void SetModel(TVirtualPad *pad, TObject *obj, Int_t event); ClassDef(TGedNameFrame,0) //frame showing the selected object name }; #endif