27 class TStyle :
public TNamed,
public TAttLine,
public TAttFill,
public TAttMarker,
public TAttText {
45 Int_t fShowEventStatus;
49 Int_t fNumberContours;
53 Float_t fEndErrorSize;
61 Width_t fLegendBorderSize;
62 Color_t fLegendFillColor;
64 Double_t fLegendTextSize;
65 Int_t fHatchesLineWidth;
66 Double_t fHatchesSpacing;
67 Color_t fFrameFillColor;
68 Color_t fFrameLineColor;
69 Style_t fFrameFillStyle;
70 Style_t fFrameLineStyle;
71 Width_t fFrameLineWidth;
72 Width_t fFrameBorderSize;
73 Int_t fFrameBorderMode;
74 Color_t fHistFillColor;
75 Color_t fHistLineColor;
76 Style_t fHistFillStyle;
77 Style_t fHistLineStyle;
78 Width_t fHistLineWidth;
79 Bool_t fHistMinimumZero;
80 Double_t fHistTopMargin;
81 Bool_t fCanvasPreferGL;
83 Width_t fCanvasBorderSize;
84 Int_t fCanvasBorderMode;
90 Width_t fPadBorderSize;
92 Float_t fPadBottomMargin;
93 Float_t fPadTopMargin;
94 Float_t fPadLeftMargin;
95 Float_t fPadRightMargin;
102 Float_t fScreenFactor;
104 Color_t fStatTextColor;
105 Width_t fStatBorderSize;
107 Float_t fStatFontSize;
114 Bool_t fStripDecimals;
117 Color_t fTitleTextColor;
118 Width_t fTitleBorderSize;
120 Float_t fTitleFontSize;
127 TString fLineStyle[30];
131 TString fPaintTextFormat;
132 Float_t fLineScalePS;
134 Double_t fTimeOffset;
136 Float_t fImageScaling;
139 enum EPaperSize { kA4, kUSLetter };
142 TStyle(
const char *name,
const char *title);
143 TStyle(
const TStyle &style);
144 TStyle& operator=(
const TStyle& style);
146 inline Int_t AxisChoice(Option_t *axis)
const {
149 a -= (a >=
'x') ?
'x' :
'X';
150 return (a > 2) ? 0 : (Int_t)(a+1);
152 virtual void Browse(TBrowser *b);
153 static void BuildStyles();
154 virtual void Copy(TObject &style)
const;
157 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
158 Int_t GetNdivisions(Option_t *axis=
"X")
const;
159 TAttText *GetAttDate() {
return &fAttDate;}
160 Color_t GetAxisColor(Option_t *axis=
"X")
const;
161 Color_t GetLabelColor(Option_t *axis=
"X")
const;
162 Style_t GetLabelFont(Option_t *axis=
"X")
const;
163 Float_t GetLabelOffset(Option_t *axis=
"X")
const;
164 Float_t GetLabelSize(Option_t *axis=
"X")
const;
165 Color_t GetTitleColor(Option_t *axis=
"X")
const;
166 Style_t GetTitleFont(Option_t *axis=
"X")
const;
167 Float_t GetTitleOffset(Option_t *axis=
"X")
const;
168 Float_t GetTitleSize(Option_t *axis=
"X")
const;
169 Float_t GetTickLength(Option_t *axis=
"X")
const;
171 Float_t GetBarOffset()
const {
return fBarOffset;}
172 Float_t GetBarWidth()
const {
return fBarWidth;}
173 Int_t GetDrawBorder()
const {
return fDrawBorder;}
174 Float_t GetEndErrorSize()
const {
return fEndErrorSize;}
175 Float_t GetErrorX()
const {
return fErrorX;}
176 Bool_t GetCanvasPreferGL()
const {
return fCanvasPreferGL;}
177 Color_t GetCanvasColor()
const {
return fCanvasColor;}
178 Width_t GetCanvasBorderSize()
const {
return fCanvasBorderSize;}
179 Int_t GetCanvasBorderMode()
const {
return fCanvasBorderMode;}
180 Int_t GetCanvasDefH()
const {
return fCanvasDefH;}
181 Int_t GetCanvasDefW()
const {
return fCanvasDefW;}
182 Int_t GetCanvasDefX()
const {
return fCanvasDefX;}
183 Int_t GetCanvasDefY()
const {
return fCanvasDefY;}
184 Int_t GetColorPalette(Int_t i)
const;
185 Int_t GetColorModelPS()
const {
return fColorModelPS;}
186 Float_t GetDateX()
const {
return fDateX;}
187 Float_t GetDateY()
const {
return fDateY;}
188 const char *GetFitFormat()
const {
return fFitFormat.Data();}
189 Int_t GetHatchesLineWidth()
const {
return fHatchesLineWidth;}
190 Double_t GetHatchesSpacing()
const {
return fHatchesSpacing;}
191 Width_t GetLegendBorderSize()
const {
return fLegendBorderSize;}
192 Color_t GetLegendFillColor()
const {
return fLegendFillColor;}
193 Style_t GetLegendFont()
const {
return fLegendFont;}
194 Double_t GetLegendTextSize()
const {
return fLegendTextSize;}
195 Int_t GetNumberOfColors()
const;
196 Color_t GetPadColor()
const {
return fPadColor;}
197 Width_t GetPadBorderSize()
const {
return fPadBorderSize;}
198 Int_t GetPadBorderMode()
const {
return fPadBorderMode;}
199 Float_t GetPadBottomMargin()
const {
return fPadBottomMargin;}
200 Float_t GetPadTopMargin()
const {
return fPadTopMargin;}
201 Float_t GetPadLeftMargin()
const {
return fPadLeftMargin;}
202 Float_t GetPadRightMargin()
const {
return fPadRightMargin;}
203 Bool_t GetPadGridX()
const {
return fPadGridX;}
204 Bool_t GetPadGridY()
const {
return fPadGridY;}
205 Int_t GetPadTickX()
const {
return fPadTickX;}
206 Int_t GetPadTickY()
const {
return fPadTickY;}
207 Color_t GetFuncColor()
const {
return fFuncColor;}
208 Style_t GetFuncStyle()
const {
return fFuncStyle;}
209 Width_t GetFuncWidth()
const {
return fFuncWidth;}
210 Color_t GetGridColor()
const {
return fGridColor;}
211 Style_t GetGridStyle()
const {
return fGridStyle;}
212 Width_t GetGridWidth()
const {
return fGridWidth;}
213 Color_t GetFrameFillColor()
const {
return fFrameFillColor;}
214 Color_t GetFrameLineColor()
const {
return fFrameLineColor;}
215 Style_t GetFrameFillStyle()
const {
return fFrameFillStyle;}
216 Style_t GetFrameLineStyle()
const {
return fFrameLineStyle;}
217 Width_t GetFrameLineWidth()
const {
return fFrameLineWidth;}
218 Width_t GetFrameBorderSize()
const {
return fFrameBorderSize;}
219 Int_t GetFrameBorderMode()
const {
return fFrameBorderMode;}
220 Color_t GetHistFillColor()
const {
return fHistFillColor;}
221 Color_t GetHistLineColor()
const {
return fHistLineColor;}
222 Style_t GetHistFillStyle()
const {
return fHistFillStyle;}
223 Style_t GetHistLineStyle()
const {
return fHistLineStyle;}
224 Width_t GetHistLineWidth()
const {
return fHistLineWidth;}
225 Bool_t GetHistMinimumZero()
const {
return fHistMinimumZero;}
226 Double_t GetHistTopMargin()
const {
return fHistTopMargin;}
227 Float_t GetImageScaling()
const {
return fImageScaling;}
228 Float_t GetLegoInnerR()
const {
return fLegoInnerR;}
229 Int_t GetNumberContours()
const {
return fNumberContours;}
230 Int_t GetOptDate()
const {
return fOptDate;}
231 Int_t GetOptFile()
const {
return fOptFile;}
232 Int_t GetOptFit()
const {
return fOptFit;}
233 Int_t GetOptStat()
const {
return fOptStat;}
234 Int_t GetOptTitle()
const {
return fOptTitle;}
235 Int_t GetOptLogx()
const {
return fOptLogx;}
236 Int_t GetOptLogy()
const {
return fOptLogy;}
237 Int_t GetOptLogz()
const {
return fOptLogz;}
238 const char *GetPaintTextFormat()
const {
return fPaintTextFormat.Data();}
239 void GetPaperSize(Float_t &xsize, Float_t &ysize)
const;
240 Int_t GetShowEventStatus()
const {
return fShowEventStatus;}
241 Int_t GetShowEditor()
const {
return fShowEditor;}
242 Int_t GetShowToolBar()
const {
return fShowToolBar;}
244 Float_t GetScreenFactor()
const {
return fScreenFactor;}
245 Color_t GetStatColor()
const {
return fStatColor;}
246 Color_t GetStatTextColor()
const {
return fStatTextColor;}
247 Width_t GetStatBorderSize()
const {
return fStatBorderSize;}
248 Style_t GetStatFont()
const {
return fStatFont;}
249 Float_t GetStatFontSize()
const {
return fStatFontSize;}
250 Style_t GetStatStyle()
const {
return fStatStyle;}
251 const char *GetStatFormat()
const {
return fStatFormat.Data();}
252 Float_t GetStatX()
const {
return fStatX;}
253 Float_t GetStatY()
const {
return fStatY;}
254 Float_t GetStatW()
const {
return fStatW;}
255 Float_t GetStatH()
const {
return fStatH;}
256 Int_t GetStripDecimals()
const {
return fStripDecimals;}
257 Double_t GetTimeOffset()
const {
return fTimeOffset;}
258 Int_t GetTitleAlign() {
return fTitleAlign;}
259 Color_t GetTitleFillColor()
const {
return fTitleColor;}
260 Color_t GetTitleTextColor()
const {
return fTitleTextColor;}
261 Style_t GetTitleStyle()
const {
return fTitleStyle;}
262 Float_t GetTitleFontSize()
const {
return fTitleFontSize;}
263 Width_t GetTitleBorderSize()
const {
return fTitleBorderSize;}
264 Float_t GetTitleXOffset()
const {
return GetTitleOffset(
"X");}
265 Float_t GetTitleXSize()
const {
return GetTitleSize(
"X");}
266 Float_t GetTitleYOffset()
const {
return GetTitleOffset(
"Y");}
267 Float_t GetTitleYSize()
const {
return GetTitleSize(
"Y");}
268 Float_t GetTitleX()
const {
return fTitleX;}
269 Float_t GetTitleY()
const {
return fTitleY;}
270 Float_t GetTitleW()
const {
return fTitleW;}
271 Float_t GetTitleH()
const {
return fTitleH;}
272 const char *GetHeaderPS()
const {
return fHeaderPS.Data();}
273 const char *GetTitlePS()
const {
return fTitlePS.Data();}
274 const char *GetLineStyleString(Int_t i=1)
const;
275 Int_t GetJoinLinePS()
const {
return fJoinLinePS;}
276 Float_t GetLineScalePS()
const {
return fLineScalePS;}
278 Bool_t IsReading()
const {
return fIsReading;}
279 virtual void Paint(Option_t *option=
"");
280 virtual void Reset(Option_t *option=
"");
282 void SetColorModelPS(Int_t c=0);
283 void SetFitFormat(
const char *format=
"5.4g") {fFitFormat = format;}
284 void SetHeaderPS(
const char *header);
285 void SetHatchesLineWidth(Int_t l) {fHatchesLineWidth = l;}
286 void SetHatchesSpacing(Double_t h) {fHatchesSpacing = TMath::Max(0.1,h);}
287 void SetTitlePS(
const char *pstitle);
288 void SetJoinLinePS(Int_t joinline=0) {fJoinLinePS=joinline;}
289 void SetLineScalePS(Float_t scale=3) {fLineScalePS=scale;}
290 void SetLineStyleString(Int_t i,
const char *text);
291 void SetNdivisions(Int_t n=510, Option_t *axis=
"X");
292 void SetAxisColor(Color_t color=1, Option_t *axis=
"X");
293 void SetLabelColor(Color_t color=1, Option_t *axis=
"X");
294 void SetLabelFont(Style_t font=62, Option_t *axis=
"X");
295 void SetLabelOffset(Float_t offset=0.005, Option_t *axis=
"X");
296 void SetLabelSize(Float_t size=0.04, Option_t *axis=
"X");
297 void SetLegoInnerR(Float_t rad=0.5) {fLegoInnerR = rad;}
298 void SetScreenFactor(Float_t factor=1) {fScreenFactor = factor;}
299 void SetTickLength(Float_t length=0.03, Option_t *axis=
"X");
300 void SetTitleColor(Color_t color=1, Option_t *axis=
"X");
301 void SetTitleFont(Style_t font=62, Option_t *axis=
"X");
302 void SetTitleOffset(Float_t offset=1, Option_t *axis=
"X");
303 void SetTitleSize(Float_t size=0.02, Option_t *axis=
"X");
304 void SetNumberContours(Int_t number=20);
305 void SetOptDate(Int_t datefl=1);
306 void SetOptFile(Int_t file=1) {fOptFile = file;}
307 void SetOptFit(Int_t fit=1);
308 void SetOptLogx(Int_t logx=1) {fOptLogx = logx;}
309 void SetOptLogy(Int_t logy=1) {fOptLogy = logy;}
310 void SetOptLogz(Int_t logz=1) {fOptLogz = logz;}
311 void SetOptStat(Int_t stat=1);
312 void SetOptStat(Option_t *stat);
313 void SetOptTitle(Int_t tit=1) {fOptTitle = tit;}
314 void SetBarOffset(Float_t baroff=0.5) {fBarOffset = baroff;}
315 void SetBarWidth(Float_t barwidth=0.5) {fBarWidth = barwidth;}
316 void SetDateX(Float_t x=0.01) {fDateX = x;}
317 void SetDateY(Float_t y=0.01) {fDateY = y;}
318 void SetEndErrorSize(Float_t np=2);
319 void SetErrorX(Float_t errorx=0.5) {fErrorX = errorx;}
320 void SetCanvasPreferGL(Bool_t prefer = kTRUE) {fCanvasPreferGL=prefer;}
321 void SetDrawBorder(Int_t drawborder=1) {fDrawBorder = drawborder;}
322 void SetCanvasColor(Color_t color=19) {fCanvasColor = color;}
323 void SetCanvasBorderSize(Width_t size=1) {fCanvasBorderSize = size;}
324 void SetCanvasBorderMode(Int_t mode=1) {fCanvasBorderMode = mode;}
325 void SetCanvasDefH(Int_t h=500) {fCanvasDefH = h;}
326 void SetCanvasDefW(Int_t w=700) {fCanvasDefW = w;}
327 void SetCanvasDefX(Int_t topx=10) {fCanvasDefX = topx;}
328 void SetCanvasDefY(Int_t topy=10) {fCanvasDefY = topy;}
329 void SetLegendBorderSize(Width_t size=4) {fLegendBorderSize = size;}
330 void SetLegendFillColor(Color_t color=0) {fLegendFillColor = color;}
331 void SetLegendFont(Style_t font=62) {fLegendFont = font;}
332 void SetLegendTextSize(Double_t size=0.) {fLegendTextSize = size;}
333 void SetPadColor(Color_t color=19) {fPadColor = color;}
334 void SetPadBorderSize(Width_t size=1) {fPadBorderSize = size;}
335 void SetPadBorderMode(Int_t mode=1) {fPadBorderMode = mode;}
336 void SetPadBottomMargin(Float_t margin=0.1) {fPadBottomMargin=margin;}
337 void SetPadTopMargin(Float_t margin=0.1) {fPadTopMargin=margin;}
338 void SetPadLeftMargin(Float_t margin=0.1) {fPadLeftMargin=margin;}
339 void SetPadRightMargin(Float_t margin=0.1) {fPadRightMargin=margin;}
340 void SetPadGridX(Bool_t gridx) {fPadGridX = gridx;}
341 void SetPadGridY(Bool_t gridy) {fPadGridY = gridy;}
342 void SetPadTickX(Int_t tickx) {fPadTickX = tickx;}
343 void SetPadTickY(Int_t ticky) {fPadTickY = ticky;}
344 void SetFuncStyle(Style_t style=1) {fFuncStyle = style;}
345 void SetFuncColor(Color_t color=1) {fFuncColor = color;}
346 void SetFuncWidth(Width_t width=4) {fFuncWidth = width;}
347 void SetGridStyle(Style_t style=3) {fGridStyle = style;}
348 void SetGridColor(Color_t color=0) {fGridColor = color;}
349 void SetGridWidth(Width_t width=1) {fGridWidth = width;}
350 void SetFrameFillColor(Color_t color=1) {fFrameFillColor = color;}
351 void SetFrameLineColor(Color_t color=1) {fFrameLineColor = color;}
352 void SetFrameFillStyle(Style_t styl=0) {fFrameFillStyle = styl;}
353 void SetFrameLineStyle(Style_t styl=0) {fFrameLineStyle = styl;}
354 void SetFrameLineWidth(Width_t width=1) {fFrameLineWidth = width;}
355 void SetFrameBorderSize(Width_t size=1) {fFrameBorderSize = size;}
356 void SetFrameBorderMode(Int_t mode=1) {fFrameBorderMode = mode;}
357 void SetHistFillColor(Color_t color=1) {fHistFillColor = color;}
358 void SetHistLineColor(Color_t color=1) {fHistLineColor = color;}
359 void SetHistFillStyle(Style_t styl=0) {fHistFillStyle = styl;}
360 void SetHistLineStyle(Style_t styl=0) {fHistLineStyle = styl;}
361 void SetHistLineWidth(Width_t width=1) {fHistLineWidth = width;}
362 void SetHistMinimumZero(Bool_t zero=kTRUE);
363 void SetHistTopMargin(Double_t hmax=0.05) {fHistTopMargin = hmax;}
364 void SetPaintTextFormat(
const char *format=
"g") {fPaintTextFormat = format;}
365 void SetImageScaling(Float_t s){fImageScaling = s;}
366 void SetPaperSize(EPaperSize size);
367 void SetPaperSize(Float_t xsize=20, Float_t ysize=26);
368 void SetStatColor(Color_t color=19) {fStatColor=color;}
369 void SetStatTextColor(Color_t color=1) {fStatTextColor=color;}
370 void SetStatStyle(Style_t style=1001) {fStatStyle=style;}
371 void SetStatBorderSize(Width_t size=2) {fStatBorderSize=size;}
372 void SetStatFont(Style_t font=62) {fStatFont=font;}
373 void SetStatFontSize(Float_t size=0) {fStatFontSize=size;}
374 void SetStatFormat(
const char *format=
"6.4g") {fStatFormat = format;}
375 void SetStatX(Float_t x=0) {fStatX=x;}
376 void SetStatY(Float_t y=0) {fStatY=y;}
377 void SetStatW(Float_t w=0.19) {fStatW=w;}
378 void SetStatH(Float_t h=0.1) {fStatH=h;}
379 void SetStripDecimals(Bool_t strip=kTRUE);
380 void SetTimeOffset(Double_t toffset);
381 void SetTitleAlign(Int_t a=13) {fTitleAlign=a;}
382 void SetTitleFillColor(Color_t color=1) {fTitleColor=color;}
383 void SetTitleTextColor(Color_t color=1) {fTitleTextColor=color;}
384 void SetTitleStyle(Style_t style=1001) {fTitleStyle=style;}
385 void SetTitleFontSize(Float_t size=0) {fTitleFontSize=size;}
386 void SetTitleBorderSize(Width_t size=2) {fTitleBorderSize=size;}
387 void SetTitleXOffset(Float_t offset=1) {SetTitleOffset(offset,
"X");}
388 void SetTitleXSize(Float_t size=0.02) {SetTitleSize(size,
"X");}
389 void SetTitleYOffset(Float_t offset=1) {SetTitleOffset(offset,
"Y");}
390 void SetTitleYSize(Float_t size=0.02) {SetTitleSize(size,
"Y");}
391 void SetTitleX(Float_t x=0) {fTitleX=x;}
392 void SetTitleY(Float_t y=0.985) {fTitleY=y;}
393 void SetTitleW(Float_t w=0) {fTitleW=w;}
394 void SetTitleH(Float_t h=0) {fTitleH=h;}
395 void ToggleEventStatus() { fShowEventStatus = fShowEventStatus ? 0 : 1; }
396 void ToggleEditor() { fShowEditor = fShowEditor ? 0 : 1; }
397 void ToggleToolBar() { fShowToolBar = fShowToolBar ? 0 : 1; }
398 void SetIsReading(Bool_t reading=kTRUE);
399 void SetPalette(Int_t ncolors=kBird, Int_t *colors=0, Float_t alpha=1.);
400 void SavePrimitive(std::ostream &out, Option_t * =
"");
401 void SaveSource(
const char *filename, Option_t *option=0);
403 ClassDef(TStyle, 18);
407 R__EXTERN TStyle *gStyle;