30 : QWidget( parent, fl )
32 setObjectName( name ? name :
"Go4HisDrawOptions");
53 AutoScaleBox->setVisible(
false);
55 LineColor->setEnabled(
false);
56 FillColor->setEnabled(
false);
57 MarkerColor->setEnabled(
false);
74 if (ndim <= 0) ndim = 1;
76 const char *drawopt =
nullptr;
84 if (obj && obj->InheritsFrom(
"TGraphPolar"))
86 else if (obj && (obj->InheritsFrom(
"TGraph") || obj->InheritsFrom(
"TMultiGraph")))
90 else if (buf.Contains(
"lego") || buf.Contains(
"surf"))
99 int ErrorStyle = 0, CoordStyle = 0, DrawStyle = 0;
105 DrawOption->setCurrentIndex(DrawStyle);
106 ErrorBars->setCurrentIndex(ErrorStyle);
107 Coordinates->setCurrentIndex(CoordStyle);
111 ZStyle->setEnabled(ndim>1);
114 LineColor->setEnabled(
dynamic_cast<TAttLine*
>(obj) !=
nullptr);
115 FillColor->setEnabled(
dynamic_cast<TAttFill*
>(obj) !=
nullptr);
116 MarkerColor->setEnabled(
dynamic_cast<TAttMarker*
>(obj) !=
nullptr);
131 Coordinates->clear();
135 DrawOption->addItem( QIcon(
":/icons/h1_t.png"),
" scatter");
136 DrawOption->addItem( QIcon(
""),
"AH no axis");
137 DrawOption->addItem( QIcon(
""),
"*H stars");
138 DrawOption->addItem( QIcon(
""),
"L lines");
139 DrawOption->addItem( QIcon(
""),
"LF2 lines+fill");
140 DrawOption->addItem( QIcon(
""),
"C curve");
141 DrawOption->addItem( QIcon(
""),
"B barchart");
142 DrawOption->addItem( QIcon(
""),
"P polymarkers");
143 DrawOption->addItem( QIcon(
""),
"P0 polymarkers");
144 DrawOption->addItem( QIcon(
""),
"9H high resol");
145 DrawOption->addItem( QIcon(
""),
"][ no right");
146 DrawOption->addItem( QIcon(
""),
"TEXT digits b/w");
147 DrawOption->addItem( QIcon(
""),
"BAR barchart");
148 DrawOption->addItem( QIcon(
":/icons/lego.png"),
" lego b/w");
149 DrawOption->addItem( QIcon(
":/icons/lego1.png"),
" lego1 shadow");
150 DrawOption->addItem( QIcon(
":/icons/lego2.png"),
" lego2 color");
151 DrawOption->addItem( QIcon(
":/icons/surf.png"),
" mesh b/w");
152 DrawOption->addItem( QIcon(
":/icons/surf1.png"),
" mesh color");
153 DrawOption->addItem( QIcon(
":/icons/surf2.png"),
" surf c");
154 DrawOption->addItem( QIcon(
":/icons/surf3.png"),
" mesh+contour");
155 DrawOption->addItem( QIcon(
":/icons/surf4.png"),
" gourand");
156 DrawOption->addItem( QIcon(
":/icons/surf5.png"),
" col contour");
157 DrawOption->addItem( QIcon(
""),
"");
162 DrawOption->addItem( QIcon(
":/icons/h1_t.png"),
" scatter");
163 DrawOption->addItem( QIcon(
":/icons/col.png"),
" pixel c");
164 DrawOption->addItem( QIcon(
":/icons/cont0.png"),
" cont0 c");
165 DrawOption->addItem( QIcon(
":/icons/lego2.png"),
" lego2 color");
166 DrawOption->addItem( QIcon(
":/icons/surf2.png"),
" surf c");
167 DrawOption->addItem( QIcon(
":/icons/surf1.png"),
" mesh color");
168 DrawOption->addItem( QIcon(
":/icons/cont1.png"),
" cont1 c");
169 DrawOption->addItem( QIcon(
":/icons/cont1.png"),
" cont4");
170 DrawOption->addItem( QIcon(
":/icons/lego1.png"),
" lego1 shadow");
171 DrawOption->addItem( QIcon(
":/icons/lego.png"),
" lego b/w");
172 DrawOption->addItem( QIcon(
":/icons/cont2.png"),
" cont2 dot b/w");
173 DrawOption->addItem( QIcon(
":/icons/cont3.png"),
" cont3 b/w");
174 DrawOption->addItem( QIcon(
":/icons/surf.png"),
" mesh b/w");
175 DrawOption->addItem( QIcon(
":/icons/surf3.png"),
" mesh+contour");
176 DrawOption->addItem( QIcon(
":/icons/surf4.png"),
" gourand");
177 DrawOption->addItem( QIcon(
":/icons/surf5.png"),
" col contour");
178 DrawOption->addItem( QIcon(
""),
"ARR arrow mode");
179 DrawOption->addItem( QIcon(
""),
"BOX boxes");
180 DrawOption->addItem( QIcon(
""),
"TEXT content");
183 if (!webcanvas) DrawOption->addItem( QIcon(
":/icons/asimage.png"),
" ASImage");
184 DrawOption->addItem( QIcon(
""),
"");
186 DrawOption->addItem( QIcon(
""),
"");
190 DrawOption->addItem(
"P: default");
191 DrawOption->addItem(
"*: stars");
192 DrawOption->addItem(
"L: line");
193 DrawOption->addItem(
"F: fill");
194 DrawOption->addItem(
"F1: fill 1");
195 DrawOption->addItem(
"F2: fill 2");
196 DrawOption->addItem(
"C: smooth");
197 DrawOption->addItem(
"B: bar");
198 DrawOption->addItem(
"LP: line + mark");
199 DrawOption->addItem(
"L*: line + *");
200 DrawOption->addItem(
"FP: fill + mark");
201 DrawOption->addItem(
"F*: fill + *");
202 DrawOption->addItem(
"CP: smooth + mark");
203 DrawOption->addItem(
"C*: smooth + *");
204 DrawOption->addItem(
"BP: smooth + mark");
205 DrawOption->addItem(
"B*: smooth + *");
209 DrawOption->addItem(
": opt as is");
210 DrawOption->addItem(
"P: polym");
211 DrawOption->addItem(
"F: fill");
212 DrawOption->addItem(
"PF: P+F");
217 DrawOption->setMaxVisibleItems(lines);
221 ErrorBars->addItem(
"No Errors");
222 ErrorBars->addItem(
"E: simple");
223 ErrorBars->addItem(
"E1: edges");
224 ErrorBars->addItem(
"E2: rectangles");
225 ErrorBars->addItem(
"E3: fill");
226 ErrorBars->addItem(
"E4: contour");
229 ErrorBars->addItem(
"No palette");
230 ErrorBars->addItem(QIcon(
":/icons/colz.png"),
" +scale");
233 ErrorBars->addItem(
"No palette");
234 ErrorBars->addItem(QIcon(
":/icons/colz.png"),
" +scale");
235 ErrorBars->addItem(
" - front");
236 ErrorBars->addItem(
" - back");
237 ErrorBars->addItem(
" - fr & bk");
238 ErrorBars->addItem(QIcon(
":/icons/colz.png"),
" scale - fr");
239 ErrorBars->addItem(QIcon(
":/icons/colz.png"),
" scale - bk");
240 ErrorBars->addItem(QIcon(
":/icons/colz.png"),
" scale - fr & bk");
243 ErrorBars->addItem(
"errors as is");
244 ErrorBars->addItem(
"X: no errors");
245 ErrorBars->addItem(
">: arrow");
246 ErrorBars->addItem(
"|>: full arrow");
247 ErrorBars->addItem(
"2: err opt 2");
248 ErrorBars->addItem(
"3: err opt 3");
249 ErrorBars->addItem(
"4: err opt 4");
250 ErrorBars->addItem(
"[]: asym err");
253 ErrorBars->addItem(
": err as is");
254 ErrorBars->addItem(
"E: error bars");
255 ErrorBars->addItem(
"N: no labels");
256 ErrorBars->addItem(
"EN: E+N");
264 Coordinates->addItem(
"Cartesian");
265 Coordinates->addItem(
"Polar");
266 Coordinates->addItem(
"Spheric");
267 Coordinates->addItem(
"Rapidity");
268 Coordinates->addItem(
"Cylindric");
271 Coordinates->addItem(
"A: norm axis");
272 Coordinates->addItem(
"AI: supp. axis");
273 Coordinates->addItem(
"AX+: top");
274 Coordinates->addItem(
"AY+: right");
275 Coordinates->addItem(
"AX+Y+: x & y");
276 Coordinates->addItem(
"A1: ylow = ymin");
279 Coordinates->addItem(
": axis as is");
280 Coordinates->addItem(
"A: force axis");
281 Coordinates->addItem(
"O: orthogonal");
282 Coordinates->addItem(
"AO: A+O");
686 TAttLine* att =
dynamic_cast<TAttLine*
> (obj);
688 icol = att->GetLineColor();
692 TAttFill* att =
dynamic_cast<TAttFill*
> (obj);
694 icol = att->GetFillColor();
698 TAttMarker* att =
dynamic_cast<TAttMarker*
> (obj);
700 icol = att->GetMarkerColor();
705 TColor* rcol = gROOT->GetColor(icol);
710 qcol.setRgb(rcol->GetRed(), rcol->GetGreen(), rcol->GetBlue());
712 QColor c = QColorDialog::getColor(qcol);
713 if (!c.isValid())
return;
715 icol = TColor::GetColor(c.red(), c.green(), c.blue());
719 TAttLine* att =
dynamic_cast<TAttLine*
> (obj);
720 if (att) att->SetLineColor(icol);
724 TAttFill* att =
dynamic_cast<TAttFill*
> (obj);
725 if (att) att->SetFillColor(icol);
729 TAttMarker* att =
dynamic_cast<TAttMarker*
> (obj);
730 if (att) att->SetMarkerColor(icol);