32 ClassImp(TRootGuiFactory);
37 TRootGuiFactory::TRootGuiFactory(
const char *name,
const char *title)
38 : TGuiFactory(name, title)
45 TApplicationImp *TRootGuiFactory::CreateApplicationImp(
const char *classname,
46 Int_t *argc,
char **argv)
48 TRootApplication *app =
new TRootApplication(classname, argc, argv);
59 TCanvasImp *TRootGuiFactory::CreateCanvasImp(TCanvas *c,
const char *title,
60 UInt_t width, UInt_t height)
62 return new TRootCanvas(c, title, width, height);
68 TCanvasImp *TRootGuiFactory::CreateCanvasImp(TCanvas *c,
const char *title,
69 Int_t x, Int_t y, UInt_t width, UInt_t height)
71 return new TRootCanvas(c, title, x, y, width, height);
77 TBrowserImp *TRootGuiFactory::CreateBrowserImp(TBrowser *b,
const char *title,
78 UInt_t width, UInt_t height,
81 TString browserVersion(gEnv->GetValue(
"Browser.Name",
"TRootBrowserLite"));
82 TPluginHandler *ph = gROOT->GetPluginManager()->FindHandler(
"TBrowserImp",
84 TString browserOptions(gEnv->GetValue(
"Browser.Options",
"FECI"));
85 if (opt && strlen(opt))
87 browserOptions.ToUpper();
88 if (browserOptions.Contains(
"LITE"))
89 return new TRootBrowserLite(b, title, width, height);
90 if (ph && ph->LoadPlugin() != -1) {
91 TBrowserImp *imp = (TBrowserImp *)ph->ExecPlugin(5, b, title, width,
92 height, browserOptions.Data());
95 if (browserVersion.Contains(
"Lite", TString::kIgnoreCase))
96 return new TRootBrowserLite(b, title, width, height);
98 return new TRootBrowser(b, title, width, height, browserOptions.Data());
104 TBrowserImp *TRootGuiFactory::CreateBrowserImp(TBrowser *b,
const char *title,
105 Int_t x, Int_t y, UInt_t width,
106 UInt_t height, Option_t *opt)
108 TString browserVersion(gEnv->GetValue(
"Browser.Name",
"TRootBrowserLite"));
109 TPluginHandler *ph = gROOT->GetPluginManager()->FindHandler(
"TBrowserImp",
111 TString browserOptions(gEnv->GetValue(
"Browser.Options",
"FECI"));
112 if (opt && strlen(opt))
113 browserOptions = opt;
114 browserOptions.ToUpper();
115 if (browserOptions.Contains(
"LITE"))
116 return new TRootBrowserLite(b, title, width, height);
117 if (ph && ph->LoadPlugin() != -1) {
118 TBrowserImp *imp = (TBrowserImp *)ph->ExecPlugin(7, b, title, x, y, width,
119 height, browserOptions.Data());
122 if (browserVersion.Contains(
"Lite", TString::kIgnoreCase))
123 return new TRootBrowserLite(b, title, x, y, width, height);
125 return new TRootBrowser(b, title, x, y, width, height, browserOptions.Data());
131 TContextMenuImp *TRootGuiFactory::CreateContextMenuImp(TContextMenu *c,
132 const char *name,
const char *)
134 return new TRootContextMenu(c, name);
140 TControlBarImp *TRootGuiFactory::CreateControlBarImp(TControlBar *c,
const char *title)
142 return new TRootControlBar(c, title);
148 TControlBarImp *TRootGuiFactory::CreateControlBarImp(TControlBar *c,
const char *title,
151 return new TRootControlBar(c, title, x, y);