37#include <QColorDialog>
38#include <QDoubleSpinBox>
82 c->Connect(
"Selected(TVirtualPad*,TObject*,Int_t)",
"ROOT::Experimental::TQt6GedEditor",
this,
83 "SetModel(TVirtualPad*,TObject*,Int_t)");
92 Disconnect(
fCanvas,
"Selected(TVirtualPad*,TObject*,Int_t)",
this,
"SetModel(TVirtualPad*,TObject*,Int_t)");
120 if (!
gROOT->GetListOfCleanups()->FindObject(
this))
121 gROOT->GetListOfCleanups()->Add(
this);
125 fDialog->setWindowTitle(
"Edit Attributes");
151 QObject::connect(
okButton, &QPushButton::clicked,
fDialog, &QDialog::accept);
154 fDialog->setAttribute(Qt::WA_DeleteOnClose);
171 layout->setContentsMargins(0, 5, 0, 5);
174 leftLine->setFrameShape(QFrame::HLine);
182 layout->addWidget(label, 0);
211 QString
qss = QString(
"background-color: rgba(%1, %2, %3, %4); border: 1px solid gray;")
253 pad->ModifiedUpdate();
261 attline->SetLineColor(colindx);
272 styleCombo->addItem(
"Dash-Dot-Dot-Dot (6)", 6);
276 styleCombo->addItem(
"Dash-Dot long (10)", 10);
310 attfill->SetFillColor(colindx);
317 for (
int s = 3001; s <= 3025; ++s)
318 styleCombo->addItem(QString(
"Style %1").arg(s), s);
319 for (
int s = 3144; s <= 3944; s += 100)
320 styleCombo->addItem(QString(
"Style %1").arg(s), s);
321 for (
int s = 3305; s <= 3395; s += 10)
322 styleCombo->addItem(QString(
"Style %1").arg(s), s);
323 for (
int s = 3350; s <= 3359; s += 1)
324 styleCombo->addItem(QString(
"Style %1").arg(s), s);
325 for (
int s = 3409; s <= 3490; s += 9)
326 styleCombo->addItem(QString(
"Style %1").arg(s), s);
327 for (
int s = 3609; s <= 3690; s += 9)
328 styleCombo->addItem(QString(
"Style %1").arg(s), s);
350 if (
value == 0)
return "Default";
351 return QDoubleSpinBox::textFromValue(
value);
355 if (
text ==
"Default")
return 0.;
356 return QDoubleSpinBox::valueFromText(
text);
363 if (
value == 0)
return "Default";
364 return QSpinBox::textFromValue(
value);
368 if (
text ==
"Default")
return 0;
369 return QSpinBox::valueFromText(
text);
379 atttext->SetTextColor(colindx);
384 fontCombo->addItem(
"1. Times italic", 1);
386 fontCombo->addItem(
"3. Times bold italic", 3);
388 fontCombo->addItem(
"5. Helvetica italic", 5);
389 fontCombo->addItem(
"6. Helvetica bold", 6);
390 fontCombo->addItem(
"7. Helvetica bold italic", 7);
392 fontCombo->addItem(
"9. Courier italic", 9);
393 fontCombo->addItem(
"10. Courier bold", 10);
394 fontCombo->addItem(
"11. Courier bold italic", 11);
398 fontCombo->addItem(
"15. Symbol italic", 15);
477 attmarker->SetMarkerColor(colindx);
482 for (
int s = 1; s <= 49; ++s)
483 styleCombo->addItem(QString(
"Style %1").arg(s), s);
530 FillGed(base->GetClassPointer());
559 gROOT->GetListOfCleanups()->Remove(
this);
571 }
else if (obj ==
fPad) {
short Color_t
Color number (short)
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t result
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
Option_t Option_t TPoint TPoint const char text
QString textFromValue(double value) const override
double valueFromText(const QString &text) const override
QString textFromValue(int value) const override
int valueFromText(const QString &text) const override
QFormLayout * fFormLayout
void AddTAttLine(TAttLine *)
void AddTAttFill(TAttFill *)
void ConnectToCanvas(TCanvas *c)
Connect this editor to the Selected signal of canvas 'c'.
void FillDialogsElements()
void DisconnectFromCanvas()
Disconnect this editor from the Selected signal of fCanvas.
TClass * IsA() const override
void AddHLine(QFormLayout *f, const char *lbl)
void AddColorElements(int colindx, QFormLayout *layout, std::function< void(int)> callback)
void AddTAttMarker(TAttMarker *)
void AddTAttText(TAttText *)
void RecursiveRemove(TObject *obj) override
Recursively remove this object from a list.
void SetCanvas(TCanvas *c)
virtual void SetModel(TVirtualPad *pad, TObject *obj, Int_t event)
Activate object editors according to the selected object.
Fill Area Attributes class.
Each class (see TClass) has a linked list of its base class(es).
TObject * GetClickSelected() const
TVirtualPad * GetClickSelectedPad() const
TCanvasImp * GetCanvasImp() const override
TVirtualPad * GetSelectedPad() const override
TClass instances represent classes, structs and namespaces in the ROOT type system.
TList * GetListOfBases()
Return list containing the TBaseClass(es) of a class.
TMethod * GetMethodAny(const char *method)
Return pointer to method without looking at parameters.
The color creation and management class.
static Int_t GetColor(const char *hexcolor)
Static method returning color number for color specified by hex color string of form: "#rrggbb",...
Method or function calling interface.
void Execute(const char *, const char *, int *=nullptr) override
Execute method on this object with the given parameter string, e.g.
const char * GetName() const override
Returns name of object.
Mother of all ROOT objects.
virtual TClass * IsA() const
Bool_t Disconnect(const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
Disconnects signal of this object from slot of receiver.
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
TVirtualPad is an abstract base class for the Pad and Canvas classes.
Namespace for ROOT features in testing.