12 #ifndef ROOT_TEveGedEditor
13 #define ROOT_TEveGedEditor
26 class TEveGedEditor :
public TGedEditor
28 TEveGedEditor(
const TEveGedEditor&);
29 TEveGedEditor& operator=(
const TEveGedEditor&);
32 typedef TGedFrame* (*NameFrameCreator_t)(TEveGedEditor*,
const TGWindow* parent,
const char* tab_name);
35 TEveElement *fElement;
38 virtual TGedFrame* CreateNameFrame(
const TGWindow* parent,
const char* tab_name);
40 static Int_t fgMaxExtraEditors;
41 static TList *fgExtraEditors;
43 static TContextMenu *fgContextMenu;
46 TEveGedEditor(TCanvas* canvas=0, UInt_t width=250, UInt_t height=400);
47 virtual ~TEveGedEditor();
49 virtual void CloseWindow();
51 TEveElement* GetEveElement()
const;
53 void DisplayElement(TEveElement* re);
54 void DisplayObject(TObject* obj);
56 virtual void SetModel(TVirtualPad* pad, TObject* obj, Int_t event, Bool_t force=kFALSE);
57 virtual void Update(TGedFrame* gframe=0);
61 static void SpawnNewEditor(TObject* obj);
62 static void ElementChanged(TEveElement* el);
63 static void ElementDeleted(TEveElement* el);
65 static void DestroyEditors();
67 static TContextMenu* GetContextMenu();
69 ClassDef(TEveGedEditor, 0);
77 class TEveGedNameFrame :
public TGedFrame
80 TEveGedNameFrame(
const TEveGedNameFrame&);
81 TEveGedNameFrame& operator=(
const TEveGedNameFrame&);
84 TGTextButton *fNCButton;
87 TEveGedNameFrame(
const TGWindow *p=0, Int_t width=140, Int_t height=30,
88 UInt_t options=kChildFrame | kHorizontalFrame);
89 virtual ~TEveGedNameFrame();
91 virtual void SetModel(TObject* obj);
93 void SpawnEditorClone();
95 ClassDef(TEveGedNameFrame, 0);
103 class TEveGedNameTextButton :
public TGTextButton
106 TEveGedNameTextButton(
const TEveGedNameTextButton&);
107 TEveGedNameTextButton& operator=(
const TEveGedNameTextButton&);
109 TEveGedNameFrame *fFrame;
112 TEveGedNameTextButton(TEveGedNameFrame* p);
113 virtual ~TEveGedNameTextButton();
115 virtual Bool_t HandleButton(Event_t* event);
117 ClassDef(TEveGedNameTextButton, 0);