16 #include "Riostream.h"
21 #include "TAttMarker.h"
27 #include <QColorDialog>
30 : QWidget( parent, fl )
32 setObjectName( name ? name :
"Go4HisDrawOptions");
41 AutoScaleBox->setVisible(
false);
43 LineColor->setEnabled(
false);
44 FillColor->setEnabled(
false);
45 MarkerColor->setEnabled(
false);
62 if (ndim<=0) ndim = 1;
64 const char* drawopt = 0;
72 if ((obj!=0) && obj->InheritsFrom(
"TGraphPolar"))
75 if ((obj!=0) && (obj->InheritsFrom(
"TGraph") || obj->InheritsFrom(
"TMultiGraph")))
81 if (buf.Contains(
"lego") || buf.Contains(
"surf"))
90 int ErrorStyle = 0, CoordStyle = 0, DrawStyle = 0;
93 DrawOption->setCurrentIndex(DrawStyle);
94 ErrorBars->setCurrentIndex(ErrorStyle);
95 Coordinates->setCurrentIndex(CoordStyle);
99 ZStyle->setEnabled(ndim>1);
102 LineColor->setEnabled(dynamic_cast<TAttLine*>(obj)!=0);
103 FillColor->setEnabled(dynamic_cast<TAttFill*>(obj)!=0);
104 MarkerColor->setEnabled(dynamic_cast<TAttMarker*>(obj)!=0);
119 Coordinates->clear();
123 DrawOption->addItem( QIcon(
":/icons/h1_t.png"),
" scatter");
124 DrawOption->addItem( QIcon(
""),
"AH no axis");
125 DrawOption->addItem( QIcon(
""),
"*H stars");
126 DrawOption->addItem( QIcon(
""),
"L lines");
127 DrawOption->addItem( QIcon(
""),
"LF2 lines+fill");
128 DrawOption->addItem( QIcon(
""),
"C curve");
129 DrawOption->addItem( QIcon(
""),
"B barchart");
130 DrawOption->addItem( QIcon(
""),
"P polymarkers");
131 DrawOption->addItem( QIcon(
""),
"P0 polymarkers");
132 DrawOption->addItem( QIcon(
""),
"9H high resol");
133 DrawOption->addItem( QIcon(
""),
"][ no right");
134 DrawOption->addItem( QIcon(
""),
"TEXT digits b/w");
135 DrawOption->addItem( QIcon(
""),
"BAR barchart");
136 DrawOption->addItem( QIcon(
":/icons/lego.png"),
" lego b/w");
137 DrawOption->addItem( QIcon(
":/icons/lego1.png"),
" lego1 shadow");
138 DrawOption->addItem( QIcon(
":/icons/lego2.png"),
" lego2 color");
139 DrawOption->addItem( QIcon(
":/icons/surf.png"),
" mesh b/w");
140 DrawOption->addItem( QIcon(
":/icons/surf1.png"),
" mesh color");
141 DrawOption->addItem( QIcon(
":/icons/surf2.png"),
" surf c");
142 DrawOption->addItem( QIcon(
":/icons/surf3.png"),
" mesh+contour");
143 DrawOption->addItem( QIcon(
":/icons/surf4.png"),
" gourand");
144 DrawOption->addItem( QIcon(
":/icons/surf5.png"),
" col contour");
145 DrawOption->addItem( QIcon(
""),
"");
150 DrawOption->addItem( QIcon(
":/icons/h1_t.png"),
" scatter");
151 DrawOption->addItem( QIcon(
":/icons/col.png"),
" pixel c");
152 DrawOption->addItem( QIcon(
":/icons/cont0.png"),
" cont0 c");
153 DrawOption->addItem( QIcon(
":/icons/lego2.png"),
" lego2 color");
154 DrawOption->addItem( QIcon(
":/icons/surf2.png"),
" surf c");
155 DrawOption->addItem( QIcon(
":/icons/surf1.png"),
" mesh color");
156 DrawOption->addItem( QIcon(
":/icons/cont1.png"),
" cont1 c");
157 DrawOption->addItem( QIcon(
":/icons/cont1.png"),
" cont4");
158 DrawOption->addItem( QIcon(
":/icons/lego1.png"),
" lego1 shadow");
159 DrawOption->addItem( QIcon(
":/icons/lego.png"),
" lego b/w");
160 DrawOption->addItem( QIcon(
":/icons/cont2.png"),
" cont2 dot b/w");
161 DrawOption->addItem( QIcon(
":/icons/cont3.png"),
" cont3 b/w");
162 DrawOption->addItem( QIcon(
":/icons/surf.png"),
" mesh b/w");
163 DrawOption->addItem( QIcon(
":/icons/surf3.png"),
" mesh+contour");
164 DrawOption->addItem( QIcon(
":/icons/surf4.png"),
" gourand");
165 DrawOption->addItem( QIcon(
":/icons/surf5.png"),
" col contour");
166 DrawOption->addItem( QIcon(
""),
"ARR arrow mode");
167 DrawOption->addItem( QIcon(
""),
"BOX boxes");
168 DrawOption->addItem( QIcon(
""),
"TEXT content");
171 DrawOption->addItem( QIcon(
":/icons/asimage.png"),
" ASImage");
172 DrawOption->addItem( QIcon(
""),
"");
174 DrawOption->addItem( QIcon(
""),
"");
178 DrawOption->addItem(
"P: default");
179 DrawOption->addItem(
"*: stars");
180 DrawOption->addItem(
"L: line");
181 DrawOption->addItem(
"F: fill");
182 DrawOption->addItem(
"F1: fill 1");
183 DrawOption->addItem(
"F2: fill 2");
184 DrawOption->addItem(
"C: smooth");
185 DrawOption->addItem(
"B: bar");
186 DrawOption->addItem(
"LP: line + mark");
187 DrawOption->addItem(
"L*: line + *");
188 DrawOption->addItem(
"FP: fill + mark");
189 DrawOption->addItem(
"F*: fill + *");
190 DrawOption->addItem(
"CP: smooth + mark");
191 DrawOption->addItem(
"C*: smooth + *");
192 DrawOption->addItem(
"BP: smooth + mark");
193 DrawOption->addItem(
"B*: smooth + *");
197 DrawOption->addItem(
": opt as is");
198 DrawOption->addItem(
"P: polym");
199 DrawOption->addItem(
"F: fill");
200 DrawOption->addItem(
"PF: P+F");
205 DrawOption->setMaxVisibleItems(lines);
209 ErrorBars->addItem(
"No Errors");
210 ErrorBars->addItem(
"E: simple");
211 ErrorBars->addItem(
"E1: edges");
212 ErrorBars->addItem(
"E2: rectangles");
213 ErrorBars->addItem(
"E3: fill");
214 ErrorBars->addItem(
"E4: contour");
217 ErrorBars->addItem(
"No palette");
218 ErrorBars->addItem(QIcon(
":/icons/colz.png"),
" +scale");
221 ErrorBars->addItem(
"No palette");
222 ErrorBars->addItem(QIcon(
":/icons/colz.png"),
" +scale");
223 ErrorBars->addItem(
" - front");
224 ErrorBars->addItem(
" - back");
225 ErrorBars->addItem(
" - fr & bk");
226 ErrorBars->addItem(QIcon(
":/icons/colz.png"),
" scale - fr");
227 ErrorBars->addItem(QIcon(
":/icons/colz.png"),
" scale - bk");
228 ErrorBars->addItem(QIcon(
":/icons/colz.png"),
" scale - fr & bk");
231 ErrorBars->addItem(
"errors as is");
232 ErrorBars->addItem(
"X: no errors");
233 ErrorBars->addItem(
">: arrow");
234 ErrorBars->addItem(
"|>: full arrow");
235 ErrorBars->addItem(
"2: err opt 2");
236 ErrorBars->addItem(
"3: err opt 3");
237 ErrorBars->addItem(
"4: err opt 4");
238 ErrorBars->addItem(
"[]: asym err");
241 ErrorBars->addItem(
": err as is");
242 ErrorBars->addItem(
"E: error bars");
243 ErrorBars->addItem(
"N: no labels");
244 ErrorBars->addItem(
"EN: E+N");
252 Coordinates->addItem(
"Cartesian");
253 Coordinates->addItem(
"Polar");
254 Coordinates->addItem(
"Spheric");
255 Coordinates->addItem(
"Rapidity");
256 Coordinates->addItem(
"Cylindric");
259 Coordinates->addItem(
"A: norm axis");
260 Coordinates->addItem(
"supp. axis");
261 Coordinates->addItem(
"AX+: top");
262 Coordinates->addItem(
"AY+: right");
263 Coordinates->addItem(
"AX+Y+: x & y");
264 Coordinates->addItem(
"A1: ylow = ymin");
267 Coordinates->addItem(
": axis as is");
268 Coordinates->addItem(
"A: force axis");
269 Coordinates->addItem(
"O: orthogonal");
270 Coordinates->addItem(
"AO: A+O");
282 if (panel==0)
return;
287 const char* drawopt = 0;
289 if ((kind>=0) && (kind<=2)) {
291 Coordinates->currentIndex(),
292 DrawOption->currentIndex(), buf);
293 if (buf.Length()>0) drawopt = buf.Data();
344 if ((drawopt==0) || (*drawopt==0))
return;
346 TString buf(drawopt);
352 if (buf.Contains(
"p") && buf.Contains(
"f")) HisDrawStyle = 3;
else
353 if (buf.Contains(
"f")) HisDrawStyle = 2;
else
354 if (buf.Contains(
"p")) HisDrawStyle = 1;
else HisDrawStyle = 0;
356 if (buf.Contains(
"a") && buf.Contains(
"o")) HisCoordStyle = 3;
else
357 if (buf.Contains(
"o")) HisCoordStyle = 2;
else
358 if (buf.Contains(
"a")) HisCoordStyle = 1;
else HisCoordStyle = 0;
360 if (buf.Contains(
"e") && buf.Contains(
"n")) HisErrorStyle = 3;
else
361 if (buf.Contains(
"n")) HisErrorStyle = 2;
else
362 if (buf.Contains(
"e")) HisErrorStyle = 1;
else HisErrorStyle = 0;
369 if (buf.Contains(
"b") && buf.Contains(
"*")) HisDrawStyle = 15;
else
370 if (buf.Contains(
"b") && buf.Contains(
"p")) HisDrawStyle = 14;
else
371 if (buf.Contains(
"c") && buf.Contains(
"*")) HisDrawStyle = 13;
else
372 if (buf.Contains(
"c") && buf.Contains(
"p")) HisDrawStyle = 12;
else
373 if (buf.Contains(
"f") && buf.Contains(
"*")) HisDrawStyle = 11;
else
374 if (buf.Contains(
"f") && buf.Contains(
"p")) HisDrawStyle = 10;
else
375 if (buf.Contains(
"l") && buf.Contains(
"*")) HisDrawStyle = 9;
else
376 if (buf.Contains(
"l") && buf.Contains(
"p")) HisDrawStyle = 8;
else
377 if (buf.Contains(
"b")) HisDrawStyle = 7;
else
378 if (buf.Contains(
"c")) HisDrawStyle = 6;
else
379 if (buf.Contains(
"f2")) HisDrawStyle = 5;
else
380 if (buf.Contains(
"f1")) HisDrawStyle = 4;
else
381 if (buf.Contains(
"f")) HisDrawStyle = 3;
else
382 if (buf.Contains(
"l")) HisDrawStyle = 2;
else
383 if (buf.Contains(
"*")) HisDrawStyle = 1;
385 if (buf.Contains(
"x+") && buf.Contains(
"y+")) HisCoordStyle = 4;
else
386 if (buf.Contains(
"y+")) HisCoordStyle = 3;
else
387 if (buf.Contains(
"x+")) HisCoordStyle = 2;
else
388 if (buf.Contains(
"a1")) HisCoordStyle = 5;
else
389 if (buf.Contains(
"a")) HisCoordStyle = 0;
else HisCoordStyle = 1;
391 if (buf.Contains(
"x") && (HisCoordStyle!=4) && (HisCoordStyle!=2)) HisErrorStyle = 1;
else
392 if (buf.Contains(
"|>")) HisErrorStyle = 3;
else
393 if (buf.Contains(
">")) HisErrorStyle = 2;
else
394 if (buf.Contains(
"2") && (HisDrawStyle != 5)) HisErrorStyle = 4;
else
395 if (buf.Contains(
"3")) HisErrorStyle = 5;
else
396 if (buf.Contains(
"4")) HisErrorStyle = 6;
else
397 if (buf.Contains(
"[]")) HisErrorStyle = 7;
403 if(buf.Contains(
"e1")) HisErrorStyle = 2;
else
404 if(buf.Contains(
"e2")) HisErrorStyle = 3;
else
405 if(buf.Contains(
"e3")) HisErrorStyle = 4;
else
406 if(buf.Contains(
"e4")) HisErrorStyle = 5;
else
407 if(buf.Contains(
"e") && !buf.Contains(
"text") && !buf.Contains(
"lego") && !buf.Contains(
"image")) HisErrorStyle = 1;
409 if (buf.Contains(
"lego") || buf.Contains(
"surf")) {
410 if (buf.Contains(
"fb") && buf.Contains(
"bb") && buf.Contains(
"z")) HisErrorStyle = 7;
else
411 if (buf.Contains(
"bb") && buf.Contains(
"z")) HisErrorStyle = 6;
else
412 if (buf.Contains(
"fb") && buf.Contains(
"z")) HisErrorStyle = 5;
else
413 if (buf.Contains(
"fb") && buf.Contains(
"bb")) HisErrorStyle = 4;
else
414 if (buf.Contains(
"bb")) HisErrorStyle = 3;
else
415 if (buf.Contains(
"fb")) HisErrorStyle = 2;
else
416 if (buf.Contains(
"z")) HisErrorStyle = 1;
418 if (buf.Contains(
"z")) HisErrorStyle = 1;
422 if(buf.Contains(
",pol")) HisCoordStyle = 1;
else
423 if(buf.Contains(
",sph")) HisCoordStyle = 2;
else
424 if(buf.Contains(
",psr")) HisCoordStyle = 3;
else
425 if(buf.Contains(
",cyl")) HisCoordStyle = 4;
430 if(buf.Contains(
"surf5")) HisDrawStyle = 21;
else
431 if(buf.Contains(
"surf4")) HisDrawStyle = 20;
else
432 if(buf.Contains(
"surf3")) HisDrawStyle = 19;
else
433 if(buf.Contains(
"surf2")) HisDrawStyle = 18;
else
434 if(buf.Contains(
"surf1")) HisDrawStyle = 17;
else
435 if(buf.Contains(
"surf")) HisDrawStyle = 16;
else
436 if(buf.Contains(
"lego2")) HisDrawStyle = 15;
else
437 if(buf.Contains(
"lego1")) HisDrawStyle = 14;
else
438 if(buf.Contains(
"lego")) HisDrawStyle = 13;
else
439 if(buf.Contains(
"lego3")) HisDrawStyle = 13;
else
440 if(buf.Contains(
"bar")) HisDrawStyle = 12;
else
441 if(buf.Contains(
"text")) HisDrawStyle = 11;
else
442 if(buf.Contains(
"][")) HisDrawStyle = 10;
else
443 if(buf.Contains(
"9h")) HisDrawStyle = 9;
else
444 if(buf.Contains(
"p0")) HisDrawStyle = 8;
else
445 if(*drawopt ==
'p') HisDrawStyle = 7;
else
446 if(*drawopt ==
'P') HisDrawStyle = 7;
else
447 if(*drawopt ==
'b') HisDrawStyle = 6;
else
448 if(*drawopt ==
'B') HisDrawStyle = 6;
else
449 if((*drawopt ==
'c') && !buf.Contains(
"nostack")) HisDrawStyle = 5;
else
450 if((*drawopt ==
'C') && !buf.Contains(
"nostack")) HisDrawStyle = 5;
else
451 if(buf.Contains(
"lf2")) HisDrawStyle = 4;
else
452 if(*drawopt ==
'l') HisDrawStyle = 3;
else
453 if(*drawopt ==
'L') HisDrawStyle = 3;
else
454 if(buf.Contains(
"*h")) HisDrawStyle = 2;
else
455 if(buf.Contains(
"ah")) HisDrawStyle = 1;
457 if ((HisDrawStyle>=16) && ((HisCoordStyle==0) || (HisCoordStyle==2)))
460 if(buf.Contains(
"hist")) HisDrawStyle = 0;
else
461 if(buf.Contains(
"col")) HisDrawStyle = 1;
else
462 if(buf.Contains(
"lego3")) HisDrawStyle = 9;
else
463 if(buf.Contains(
"lego1")) HisDrawStyle = 8;
else
464 if(buf.Contains(
"lego2")) HisDrawStyle = 3;
else
465 if(buf.Contains(
"lego")) HisDrawStyle = 9;
else
466 if(buf.Contains(
"cont0")) HisDrawStyle = 2;
else
467 if(buf.Contains(
"cont1")) HisDrawStyle = 6;
else
468 if(buf.Contains(
"cont2")) HisDrawStyle = 10;
else
469 if(buf.Contains(
"cont3")) HisDrawStyle = 11;
else
470 if(buf.Contains(
"cont4")) HisDrawStyle = 7;
else
471 if(buf.Contains(
"cont")) HisDrawStyle = 2;
else
472 if(buf.Contains(
"surf1")) HisDrawStyle = 5;
else
473 if(buf.Contains(
"surf2")) HisDrawStyle = 4;
else
474 if(buf.Contains(
"surf3")) HisDrawStyle = 13;
else
475 if(buf.Contains(
"surf4")) HisDrawStyle = 14;
else
476 if(buf.Contains(
"surf5")) HisDrawStyle = 15;
else
477 if(buf.Contains(
"surf")) HisDrawStyle = 12;
else
478 if(buf.Contains(
"arr")) HisDrawStyle = 16;
else
479 if(buf.Contains(
"box")) HisDrawStyle = 17;
else
480 if(buf.Contains(
"text")) HisDrawStyle = 18;
else
481 if(buf.Contains(
"asimage")) HisDrawStyle = 19;
495 switch (HisDrawStyle) {
496 case 0: buf =
"";
break;
497 case 1: buf =
"P";
break;
498 case 2: buf =
"F";
break;
499 case 3: buf =
"PF";
break;
502 switch (HisErrorStyle) {
504 case 1: buf.Append(
"E");
break;
505 case 2: buf.Append(
"N");
break;
506 case 3: buf.Append(
"EN");
break;
509 switch (HisCoordStyle) {
511 case 1: buf.Append(
"A");
break;
512 case 2: buf.Append(
"O");
break;
513 case 3: buf.Append(
"AO");
break;
521 switch (HisDrawStyle) {
522 case 0: buf =
"P";
break;
523 case 1: buf =
"*";
break;
524 case 2: buf =
"L";
break;
525 case 3: buf =
"F";
break;
526 case 4: buf =
"F1";
break;
527 case 5: buf =
"F2";
break;
528 case 6: buf =
"C";
break;
529 case 7: buf =
"B";
break;
530 case 8: buf =
"LP";
break;
531 case 9: buf =
"L*";
break;
532 case 10: buf =
"FP";
break;
533 case 11: buf =
"F*";
break;
534 case 12: buf =
"CP";
break;
535 case 13: buf =
"C*";
break;
536 case 14: buf =
"BP";
break;
537 case 15: buf =
"B*";
break;
541 switch (HisErrorStyle) {
543 case 1: buf.Append(
"X");
break;
544 case 2: buf.Append(
">");
break;
545 case 3: buf.Append(
"|>");
break;
546 case 4: buf.Append(
"2");
break;
547 case 5: buf.Append(
"3");
break;
548 case 6: buf.Append(
"4");
break;
549 case 7: buf.Append(
"[]");
break;
552 switch (HisCoordStyle) {
553 case 0: buf.Append(
"A");
break;
555 case 2: buf.Append(
"AX+");
break;
556 case 3: buf.Append(
"AY+");
break;
557 case 4: buf.Append(
"AX+Y+");
break;
558 case 5: buf.Append(
"A1");
break;
566 switch (HisDrawStyle) {
567 case 0: buf=
"";
break;
568 case 1: buf=
"ah";
break;
569 case 2: buf=
"*h";
break;
570 case 3: buf=
"l";
break;
571 case 4: buf=
"lf2";
break;
572 case 5: buf=
"c";
break;
573 case 6: buf=
"b";
break;
574 case 7: buf=
"p";
break;
575 case 8: buf=
"p0";
break;
576 case 9: buf=
"9h";
break;
577 case 10: buf=
"][";
break;
578 case 11: buf=
"text";
break;
579 case 12: buf=
"bar";
break;
580 case 13: buf=
"lego3";
break;
581 case 14: buf=
"lego1";
break;
582 case 15: buf=
"lego2";
break;
583 case 16: buf=
"surf";
break;
584 case 17: buf=
"surf1";
break;
585 case 18: buf=
"surf2";
break;
586 case 19: buf=
"surf3";
break;
587 case 20: buf=
"surf4";
break;
588 case 21: buf=
"surf5";
break;
590 if ((HisDrawStyle>=16) && ((HisCoordStyle==0) || (HisCoordStyle==2)))
594 switch (HisDrawStyle) {
595 case 0: buf=
"hist";
break;
596 case 1: buf=
"col";
break;
597 case 9: buf=
"lego3";
break;
598 case 8: buf=
"lego1";
break;
599 case 3: buf=
"lego2";
break;
600 case 2: buf=
"cont0";
break;
601 case 6: buf=
"cont1";
break;
602 case 10: buf=
"cont2";
break;
603 case 11: buf=
"cont3";
break;
604 case 7: buf=
"cont4";
break;
605 case 12: buf=
"surf";
break;
606 case 5: buf=
"surf1";
break;
607 case 4: buf=
"surf2";
break;
608 case 13: buf=
"surf3";
break;
609 case 14: buf=
"surf4";
break;
610 case 15: buf=
"surf5";
break;
611 case 16: buf=
"arr";
break;
612 case 17: buf=
"box";
break;
613 case 18: buf=
"text";
break;
615 case 19: buf=
"asimage";
break;
617 case 19: buf=
"";
break;
621 switch (HisCoordStyle) {
623 case 1: buf.Append(
",pol");
break;
624 case 2: buf.Append(
",sph");
break;
625 case 3: buf.Append(
",psr");
break;
626 case 4: buf.Append(
",cyl");
break;
630 switch (HisErrorStyle) {
632 case 1: buf.Append(
"E");
break;
633 case 2: buf.Append(
"E1");
break;
634 case 3: buf.Append(
"E2");
break;
635 case 4: buf.Append(
"E3");
break;
636 case 5: buf.Append(
"E4");
break;
639 switch (HisErrorStyle) {
641 case 1: buf.Append(
"Z");
break;
642 case 2: buf.Append(
"FB");
break;
643 case 3: buf.Append(
"BB");
break;
644 case 4: buf.Append(
"BBFB");
break;
645 case 5: buf.Append(
"ZFB");
break;
646 case 6: buf.Append(
"ZBB");
break;
647 case 7: buf.Append(
"ZBBFB");
break;
670 if (panel==0)
return;
679 TAttLine* att =
dynamic_cast<TAttLine*
> (obj);
681 icol = att->GetLineColor();
685 TAttFill* att =
dynamic_cast<TAttFill*
> (obj);
687 icol = att->GetFillColor();
691 TAttMarker* att =
dynamic_cast<TAttMarker*
> (obj);
693 icol = att->GetMarkerColor();
698 TColor* rcol = gROOT->GetColor(icol);
703 qcol.setRgb(rcol->GetRed(), rcol->GetGreen(), rcol->GetBlue());
705 QColor c = QColorDialog::getColor(qcol);
706 if (!c.isValid())
return;
708 icol = TColor::GetColor(c.red(), c.green(), c.blue());
712 TAttLine* att =
dynamic_cast<TAttLine*
> (obj);
713 if (att!=0) att->SetLineColor(icol);
717 TAttFill* att =
dynamic_cast<TAttFill*
> (obj);
718 if (att!=0) att->SetFillColor(icol);
722 TAttMarker* att =
dynamic_cast<TAttMarker*
> (obj);
723 if (att!=0) att->SetMarkerColor(icol);
virtual void ShootRepaintTimer()
virtual void SetMarkerColor()
virtual void ZaxisStyle(int t)
virtual void SetCoordinates(int t)
virtual void XaxisStyle(int t)
virtual void ActivateInGedEditor(TObject *obj)
virtual void panelSlot(TGo4ViewPanel *panel, TPad *pad, int signalid)
virtual void SetDrawOptions(int t)
Int_t GetLogScale(Int_t nscale=0)
static TGo4MdiArea * Instance()
virtual void ChangeColor(int kind)
virtual void SetFillColor()
virtual void CodeDrawOptions(int HisErrorStyle, int HisCoordStyle, int HisDrawStyle, TString &buf)
virtual void UpdateView(int viewtype)
virtual void MarkPadModified(TPad *pad)
TGo4ViewPanel * GetActivePanel()
virtual void SetAutoScale(bool on)
virtual TGo4Picture * GetPadOptions(TPad *pad)
virtual void DecodeDrawOption(const char *drawopt, int &HisErrorStyle, int &HisCoordStyle, int &HisDrawStyle)
virtual void ChangeDrawOptionForCurrentPanel(int kind, int value)
virtual void SetLineColor()
virtual void ChangeDrawOption(int kind, int value, const char *drawopt)
Int_t GetFullRangeDim() const
virtual TPad * GetActivePad()
TGo4HisDrawOptions(QWidget *parent=0, const char *name=0, Qt::WindowFlags fl=0)
virtual TObject * GetSelectedObject(TPad *pad, const char **drawopt)
virtual void YaxisStyle(int t)
virtual void SetErrorBars(int t)