#ifndef ROOT_TVirtualPadEditor
#define ROOT_TVirtualPadEditor
#ifndef ROOT_TString
#include "TString.h"
#endif
class TCanvas;
class TVirtualPadEditor {
protected:
static TVirtualPadEditor *fgPadEditor;
static TString fgEditorName;
public:
TVirtualPadEditor();
virtual ~TVirtualPadEditor();
virtual Bool_t IsGlobal() const = 0;
virtual void DrawLine(Double_t, Double_t , Double_t , Double_t ) { }
virtual void DrawLineNDC(Double_t , Double_t , Double_t , Double_t ) { }
virtual void DrawText(Double_t , Double_t , const char *) { }
virtual void DrawTextNDC(Double_t , Double_t , const char *) { }
virtual void FillAttributes(Int_t , Int_t ) { }
virtual void LineAttributes(Int_t , Int_t , Int_t ) { }
virtual void MarkerAttributes(Int_t , Int_t , Float_t ) { }
virtual void TextAttributes(Int_t ,Float_t ,Int_t ,Int_t ,Float_t ) { }
virtual void Build() { }
virtual void Show() { }
virtual void Hide() { }
virtual void DeleteEditors() { }
virtual void SetGlobal(Bool_t) { }
virtual TCanvas* GetCanvas() const = 0;
static const char *GetEditorName();
static TVirtualPadEditor *GetPadEditor(Bool_t load = kTRUE);
static TVirtualPadEditor *LoadEditor();
static void HideEditor();
static void ShowEditor();
static void SetPadEditorName(const char *name);
static void Terminate();
static void UpdateFillAttributes(Int_t col, Int_t sty);
static void UpdateLineAttributes(Int_t col, Int_t sty, Int_t width);
static void UpdateMarkerAttributes(Int_t col, Int_t sty, Float_t msiz);
static void UpdateTextAttributes(Int_t align,Float_t angle,Int_t col,Int_t font,Float_t tsize);
ClassDef(TVirtualPadEditor,0)
};
#endif