00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef ROOT_TGuiFactory
00014 #define ROOT_TGuiFactory
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef ROOT_TNamed
00029 #include "TNamed.h"
00030 #endif
00031
00032 class TApplicationImp;
00033 class TCanvasImp;
00034 class TCanvas;
00035 class TBrowserImp;
00036 class TBrowser;
00037 class TContextMenuImp;
00038 class TContextMenu;
00039 class TControlBarImp;
00040 class TControlBar;
00041 class TInspectorImp;
00042
00043
00044 class TGuiFactory : public TNamed {
00045
00046 public:
00047 TGuiFactory(const char *name = "Batch", const char *title = "Batch GUI Factory");
00048 virtual ~TGuiFactory() { }
00049
00050 virtual TApplicationImp *CreateApplicationImp(const char *classname, int *argc, char **argv);
00051
00052 virtual TCanvasImp *CreateCanvasImp(TCanvas *c, const char *title, UInt_t width, UInt_t height);
00053 virtual TCanvasImp *CreateCanvasImp(TCanvas *c, const char *title, Int_t x, Int_t y, UInt_t width, UInt_t height);
00054
00055 virtual TBrowserImp *CreateBrowserImp(TBrowser *b, const char *title, UInt_t width, UInt_t height, Option_t *opt="");
00056 virtual TBrowserImp *CreateBrowserImp(TBrowser *b, const char *title, Int_t x, Int_t y, UInt_t width, UInt_t height, Option_t *opt="");
00057
00058 virtual TContextMenuImp *CreateContextMenuImp(TContextMenu *c, const char *name, const char *title);
00059
00060 virtual TControlBarImp *CreateControlBarImp(TControlBar *c, const char *title);
00061 virtual TControlBarImp *CreateControlBarImp(TControlBar *c, const char *title, Int_t x, Int_t y);
00062
00063 virtual TInspectorImp *CreateInspectorImp(const TObject *obj, UInt_t width, UInt_t height);
00064
00065 ClassDef(TGuiFactory,0)
00066 };
00067
00068 R__EXTERN TGuiFactory *gGuiFactory;
00069 R__EXTERN TGuiFactory *gBatchGuiFactory;
00070
00071 #endif