149 TStyleManager *TStyleManager::fgStyleManager = 0;
151 ClassImp(TStyleManager);
153 enum EStyleManagerWid {
174 kToolbarImportCanvas,
197 kGeneralHatchesLineWidth,
198 kGeneralHatchesSpacing,
201 kGeneralTextSizeInPixels,
208 kGeneralLineStyleEdit,
212 kGeneralScreenFactor,
219 kCanvasBorderModeSunken,
220 kCanvasBorderModeNone,
221 kCanvasBorderModeRaised,
224 kCanvasAttDateTextColor,
225 kCanvasAttDateTextSize,
226 kCanvasAttDateTextSizeInPixels,
227 kCanvasOptDateFormat,
228 kCanvasAttDateTextFont,
229 kCanvasAttDateTextAngle,
230 kCanvasAttDateTextAlign,
238 kPadBorderModeSunken,
240 kPadBorderModeRaised,
259 kHistPaintTextFormat,
269 kFrameBorderModeSunken,
270 kFrameBorderModeNone,
271 kFrameBorderModeRaised,
287 kAxisXTitleSizeInPixels,
292 kAxisXLabelSizeInPixels,
302 kAxisXNdivisionsOptimize,
305 kAxisYTitleSizeInPixels,
310 kAxisYLabelSizeInPixels,
320 kAxisYNdivisionsOptimize,
323 kAxisZTitleSizeInPixels,
328 kAxisZLabelSizeInPixels,
338 kAxisZNdivisionsOptimize,
345 kTitleFontSizeInPixels,
353 kTitleLegendBorderSize,
359 kStatFontSizeInPixels,
368 kStatOptStatOverflow,
370 kStatOptStatUnderflow,
372 kStatOptStatSkewness,
373 kStatOptStatIntegral,
374 kStatOptStatKurtosis,
379 kStatOptFitProbability,
386 kPSPDFColorModelPSRGB,
387 kPSPDFColorModelPSCMYK,
389 kPSPDFPaperSizePredef,
394 const char *kFiletypes[] = {
"ROOT macros",
"Style_*.C",
400 TStyleManager::TStyleManager(
const TGWindow *p) : TGMainFrame(p)
402 SetWindowName(
"Style Manager");
403 SetCleanup(kNoCleanup);
412 fRealTimePreview = kFALSE;
415 fMoreAndNotLess = kTRUE;
416 fSigSlotConnected = kFALSE;
417 fStyleChanged = kFALSE;
420 fTrashListLayout =
new TList();
421 fTrashListFrame =
new TList();
424 fLayoutExpandX =
new TGLayoutHints(kLHintsExpandX);
425 fTrashListLayout->Add(fLayoutExpandX);
426 fLayoutExpandXMargin =
new TGLayoutHints(kLHintsExpandX, 5, 5, 5, 5);
427 fTrashListLayout->Add(fLayoutExpandXMargin);
428 fLayoutExpandXY =
new TGLayoutHints(kLHintsExpandX | kLHintsExpandY);
429 fTrashListLayout->Add(fLayoutExpandXY);
430 fLayoutExpandXYMargin =
new TGLayoutHints(kLHintsExpandX | kLHintsExpandY, 5, 5, 5, 5);
431 fTrashListLayout->Add(fLayoutExpandXYMargin);
432 fLayoutExpandXCenterYMargin =
new TGLayoutHints(kLHintsExpandX | kLHintsCenterY, 0, 0, 3, 3);
433 fTrashListLayout->Add(fLayoutExpandXCenterYMargin);
438 AddTopLevelInterface(
this);
442 fStatusBar =
new TGStatusBar(
this, 50, 10, kVerticalFrame);
443 Int_t parts[] = { 20, 30, 50 };
444 fStatusBar->SetParts(parts, 3);
445 fStatusBar->Draw3DCorner(kFALSE);
446 AddFrame(fStatusBar, fLayoutExpandX);
450 Resize(GetDefaultSize());
457 gVirtualX->GetWindowSize(GetId(), x, y, w, h);
460 if (fSMWidth < 467) fSMWidth = 467;
461 if (fSMHeight < 708) fSMHeight = 708;
463 gVirtualX->TranslateCoordinates(GetId(), GetParent()->GetId(), 0, 0, x, y, win);
466 MoveResize(x, TMath::Max(TMath::Min(y, (Int_t) (gClient->GetDisplayHeight() - h)), 0), w, h);
480 TStyleManager::~TStyleManager()
484 DisconnectEditor(fCurTabNum);
486 if (fPreviewWindow) {
488 delete fPreviewWindow;
493 gClient->FreePicture(fToolBarNewPic);
494 gClient->FreePicture(fToolBarDeletePic);
495 gClient->FreePicture(fToolBarImportCanvasPic);
496 gClient->FreePicture(fToolBarImportMacroPic);
497 gClient->FreePicture(fToolBarExportPic);
498 gClient->FreePicture(fToolBarHelpPic);
499 gClient->FreePicture(fMakeDefaultPic);
501 delete fImportCascade;
508 delete fToolBarDelete;
509 delete fToolBarImportCanvas;
510 delete fToolBarImportMacro;
511 delete fToolBarExport;
513 delete fHorizontal3DLine;
516 delete fListComboBox;
521 delete fCurPadTextEntry;
523 delete fCurObjTextEntry;
524 delete fPreviewButton;
525 delete fPreviewRealTime;
528 delete fApplyOnGroup;
531 delete fApplyOnButton;
536 delete fHatchesLineWidth;
537 delete fHatchesSpacing;
540 delete fTextSizeInPixels;
547 delete fLineStyleEdit;
551 delete fScreenFactor;
557 delete fCanvasBorderMode;
558 delete fCanvasBorderSize;
560 delete fAttDateTextColor;
561 delete fAttDateTextSize;
562 delete fAttDateTextSizeInPixels;
563 delete fOptDateFormat;
564 delete fAttDateTextFont;
565 delete fAttDateTextAngle;
566 delete fAttDateTextAlign;
569 delete fPadLeftMargin;
570 delete fPadRightMargin;
571 delete fPadTopMargin;
572 delete fPadBottomMargin;
573 delete fPadBorderMode;
574 delete fPadBorderSize;
583 delete fHistFillColor;
584 delete fHistFillStyle;
585 delete fHistLineColor;
586 delete fHistLineWidth;
587 delete fHistLineStyle;
590 delete fHistMinimumZero;
591 delete fPaintTextFormat;
592 delete fNumberContours;
594 delete fFrameFillColor;
595 delete fFrameFillStyle;
596 delete fFrameLineColor;
597 delete fFrameLineWidth;
598 delete fFrameLineStyle;
600 delete fFrameBorderMode;
601 delete fFrameBorderSize;
606 delete fEndErrorSize;
608 delete fTimeOffsetDate;
609 delete fTimeOffsetTime;
610 delete fStripDecimals;
613 delete fXTitleSizeInPixels;
615 delete fXTitleOffset;
618 delete fXLabelSizeInPixels;
620 delete fXLabelOffset;
628 delete fXNdivisionsOptimize;
630 delete fYTitleSizeInPixels;
632 delete fYTitleOffset;
635 delete fYLabelSizeInPixels;
637 delete fYLabelOffset;
645 delete fYNdivisionsOptimize;
647 delete fZTitleSizeInPixels;
649 delete fZTitleOffset;
652 delete fZLabelSizeInPixels;
654 delete fZLabelOffset;
662 delete fZNdivisionsOptimize;
666 delete fTitleTextColor;
667 delete fTitleFontSize;
668 delete fTitleFontSizeInPixels;
671 delete fTitleBorderSizeLabel;
672 delete fTitleBorderSize;
677 delete fLegendBorderSizeLabel;
678 delete fLegendBorderSize;
681 delete fStatTextColor;
682 delete fStatFontSize;
683 delete fStatFontSizeInPixels;
689 delete fStatBorderSizeLabel;
690 delete fStatBorderSize;
692 delete fOptStatEntries;
693 delete fOptStatOverflow;
695 delete fOptStatUnderflow;
697 delete fOptStatSkewness;
698 delete fOptStatIntegral;
699 delete fOptStatKurtosis;
700 delete fOptStatErrors;
701 delete fStatFormatLabel;
703 delete fOptFitValues;
704 delete fOptFitErrors;
705 delete fOptFitProbability;
707 delete fFitFormatLabel;
711 delete fColorModelPS;
712 delete fColorModelPSRGB;
713 delete fColorModelPSCMYK;
715 delete fPaperSizePredef;
719 delete fEditionUpdatePreview;
720 delete fEditionReset;
721 delete fEditionButtonFrame;
725 delete fEditionFrame;
733 obj1 = fTrashListFrame->First();
735 obj2 = fTrashListFrame->After(obj1);
736 fTrashListFrame->Remove(obj1);
740 delete fTrashListFrame;
742 obj1 = fTrashListLayout->First();
744 obj2 = fTrashListLayout->After(obj1);
745 fTrashListLayout->Remove(obj1);
749 delete fTrashListLayout;
757 TStyleManager *&TStyleManager::GetSM()
759 return fgStyleManager;
765 void TStyleManager::Init()
771 if ((gROOT->GetSelectedPad()) && (gROOT->GetSelectedPad()->GetCanvas())) {
772 DoSelectCanvas(gROOT->GetSelectedPad()->GetCanvas(),
773 gROOT->GetSelectedPad()->GetCanvas(), kButton2Down);
782 void TStyleManager::Hide()
784 if (fgStyleManager) {
785 fgStyleManager->UnmapWindow();
792 void TStyleManager::Show()
794 if (fgStyleManager) {
795 fgStyleManager->Init();
796 if (!fgStyleManager->IsMapped()) {
797 fgStyleManager->MapWindow();
800 TStyleManager::GetSM() =
new TStyleManager(gClient->GetRoot());
808 void TStyleManager::Terminate()
810 delete fgStyleManager;
817 void TStyleManager::AddMenus(TGCompositeFrame *p)
819 fMenuBar =
new TGMenuBar(p);
821 fMenuStyle =
new TGPopupMenu(gClient->GetRoot());
822 fMenuStyle->Associate(
this);
823 fMenuStyle->AddEntry(
"&New...", kMenuNew);
824 fMenuStyle->AddEntry(
"&Delete", kMenuDelete);
825 fMenuStyle->AddSeparator();
826 fMenuStyle->AddEntry(
"&Rename...", kMenuRename);
827 fMenuStyle->AddSeparator();
828 fImportCascade =
new TGPopupMenu(gClient->GetRoot());
829 fImportCascade->Associate(
this);
830 fImportCascade->AddEntry(
"&Macro...", kMenuImportMacro);
831 fImportCascade->AddEntry(
"&Canvas...", kMenuImportCanvas);
832 fMenuStyle->AddPopup(
"&Import From...", fImportCascade);
834 fMenuStyle->AddEntry(
"&Export...", kMenuExport);
835 fMenuStyle->AddSeparator();
836 fMenuStyle->AddEntry(
"&Close", kMenuExit);
837 TGLayoutHints *layout1 =
new TGLayoutHints(kLHintsNormal);
838 fTrashListLayout->Add(layout1);
839 fMenuBar->AddPopup(
"&Style", fMenuStyle, layout1);
841 fMenuHelp =
new TGPopupMenu(gClient->GetRoot());
842 fMenuHelp->Associate(
this);
843 fMenuHelp->AddEntry(
"Top &level", kMenuHelp);
844 fMenuHelp->AddSeparator();
845 fMenuHelp->AddEntry(
"&General", kMenuHelpGeneral);
846 fMenuHelp->AddEntry(
"&Canvas", kMenuHelpCanvas);
847 fMenuHelp->AddEntry(
"Pa&d", kMenuHelpPad);
848 fMenuHelp->AddEntry(
"&Histograms", kMenuHelpHistos);
849 fMenuHelp->AddEntry(
"&Axis", kMenuHelpAxis);
850 fMenuHelp->AddEntry(
"&Title", kMenuHelpTitle);
851 fMenuHelp->AddEntry(
"&Stats", kMenuHelpStats);
852 fMenuHelp->AddEntry(
"&PS / PDF", kMenuHelpPSPDF);
853 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsRight);
854 fTrashListLayout->Add(layout2);
855 fMenuBar->AddPopup(
"&Help", fMenuHelp, layout2);
857 p->AddFrame(fMenuBar, fLayoutExpandX);
863 void TStyleManager::DoNew()
866 new TStyleDialog(
this, fCurSelStyle, 1, 0);
871 if (fLastChoice) BuildList();
872 else BuildList(fCurSelStyle);
879 void TStyleManager::DoDelete()
883 if (fCurSelStyle == gStyle) {
884 printf(
"Can not delete gStyle.\n");
897 void TStyleManager::DoRename()
899 new TStyleDialog(
this, fCurSelStyle, 2, 0);
902 BuildList(fCurSelStyle);
909 void TStyleManager::DoExport()
914 newName.Form(
"Style_%s.C", fCurSelStyle->GetName());
919 const char* tmpBaseName;
921 fCurMacro->fFilename = StrDup(newName.Data());
924 new TGFileDialog(gClient->GetRoot(),
this, kFDSave, fCurMacro);
925 tmpFileName = fCurMacro->fFilename;
926 if (tmpFileName) tmpBaseName = gSystem->BaseName(tmpFileName);
927 else tmpBaseName = 0;
928 }
while (tmpBaseName && (strstr(tmpBaseName,
"Style_") != tmpBaseName)
929 && (strstr(tmpBaseName,
" ") != 0));
931 if (tmpBaseName != 0) {
933 fCurSelStyle->SaveSource(gSystem->UnixPathName(tmpFileName));
934 fCurMacro->fFilename = StrDup(tmpBaseName);
935 fStyleChanged = kFALSE;
944 void TStyleManager::DoExit()
953 void TStyleManager::DoHelp(Int_t i)
958 hd =
new TRootHelpDialog(
this,
"Help on General Tab", 600, 400);
959 hd->SetText(gHelpSMGeneral);
962 hd =
new TRootHelpDialog(
this,
"Help on Canvas Tab", 600, 400);
963 hd->SetText(gHelpSMCanvas);
966 hd =
new TRootHelpDialog(
this,
"Help on Pad Tab", 600, 400);
967 hd->SetText(gHelpSMPad);
970 hd =
new TRootHelpDialog(
this,
"Help on Histograms Tab", 600, 400);
971 hd->SetText(gHelpSMHistos);
974 hd =
new TRootHelpDialog(
this,
"Help on Axis Tab", 600, 400);
975 hd->SetText(gHelpSMAxis);
978 hd =
new TRootHelpDialog(
this,
"Help on Title Tab", 600, 400);
979 hd->SetText(gHelpSMTitle);
982 hd =
new TRootHelpDialog(
this,
"Help on Stats Tab", 600, 400);
983 hd->SetText(gHelpSMStats);
986 hd =
new TRootHelpDialog(
this,
"Help on PS / PDF Tab", 600, 400);
987 hd->SetText(gHelpSMPSPDF);
990 hd =
new TRootHelpDialog(
this,
"Help on Top Level", 600, 400);
991 hd->SetText(gHelpSMTopLevel);
1000 void TStyleManager::DoImportCanvas()
1002 if ((!fCurPad) || (!fCurObj))
return;
1004 new TStyleDialog(
this, gStyle, 3, fCurPad);
1015 newName.Form(
"Style_%s.C", fCurSelStyle->GetName());
1016 fCurMacro->fFilename = StrDup(newName.Data());
1017 fCurSelStyle->SaveSource(gSystem->UnixPathName(fCurMacro->fFilename));
1019 BuildList(fCurSelStyle);
1026 void TStyleManager::CreateMacro()
1028 if (fCurMacro)
delete fCurMacro;
1029 fCurMacro =
new TGFileInfo();
1031 fCurMacro->fFileTypes = kFiletypes;
1032 fCurMacro->fIniDir = StrDup(dir);
1033 fCurMacro->fFilename = 0;
1039 void TStyleManager::AddToolbar(TGCompositeFrame *p)
1041 TGLayoutHints *layout1 =
new TGLayoutHints(kLHintsNormal, 3);
1042 fTrashListLayout->Add(layout1);
1043 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsNormal, 6);
1044 fTrashListLayout->Add(layout2);
1046 fToolBar =
new TGToolBar(p);
1047 fToolBarNewPic = gClient->GetPicture(
"sm_new.xpm");
1048 fToolBarNew =
new TGPictureButton(fToolBar, fToolBarNewPic, kToolbarNew);
1049 fToolBarNew->SetStyle(gClient->GetStyle());
1050 fToolBarNew->Associate(
this);
1051 fToolBar->AddFrame(fToolBarNew);
1053 fToolBarImportCanvasPic = gClient->GetPicture(
"sm_import_canvas.xpm");
1054 fToolBarImportCanvas =
new TGPictureButton(fToolBar, fToolBarImportCanvasPic, kToolbarImportCanvas);
1055 fToolBarImportCanvas->SetStyle(gClient->GetStyle());
1056 fToolBarImportCanvas->Associate(
this);
1057 fToolBar->AddFrame(fToolBarImportCanvas, layout2);
1059 fToolBarImportMacroPic = gClient->GetPicture(
"sm_import_macro.xpm");
1060 fToolBarImportMacro =
new TGPictureButton(fToolBar, fToolBarImportMacroPic, kToolbarImportMacro);
1061 fToolBarImportMacro->SetStyle(gClient->GetStyle());
1062 fToolBarImportMacro->Associate(
this);
1063 fToolBar->AddFrame(fToolBarImportMacro);
1065 fToolBarExportPic = gClient->GetPicture(
"sm_export.xpm");
1066 fToolBarExport =
new TGPictureButton(fToolBar, fToolBarExportPic, kToolbarExport);
1067 fToolBarExport->SetStyle(gClient->GetStyle());
1068 fToolBarExport->Associate(
this);
1069 fToolBar->AddFrame(fToolBarExport, layout1);
1071 fToolBarDeletePic = gClient->GetPicture(
"sm_delete.xpm");
1072 fToolBarDelete =
new TGPictureButton(fToolBar, fToolBarDeletePic, kToolbarDelete);
1073 fToolBarDelete->SetStyle(gClient->GetStyle());
1074 fToolBarDelete->Associate(
this);
1075 fToolBar->AddFrame(fToolBarDelete, layout2);
1077 fToolBarHelpPic = gClient->GetPicture(
"sm_help.xpm");
1078 fToolBarHelp =
new TGPictureButton(fToolBar, fToolBarHelpPic, kToolbarHelp);
1079 fToolBarHelp->SetStyle(gClient->GetStyle());
1080 fToolBarHelp->Associate(
this);
1081 fToolBar->AddFrame(fToolBarHelp, layout2);
1083 p->AddFrame(fToolBar, fLayoutExpandX);
1084 fHorizontal3DLine =
new TGHorizontal3DLine(p);
1085 p->AddFrame(fHorizontal3DLine, fLayoutExpandX);
1087 fToolBarNew->SetToolTipText(
"Create a new style");
1088 fToolBarDelete->SetToolTipText(
"Delete the selected style");
1089 fToolBarImportCanvas->SetToolTipText(
"Import a style from selected canvas");
1090 fToolBarImportMacro->SetToolTipText(
"Import a style from a macro");
1091 fToolBarExport->SetToolTipText(
"Export the selected style into a macro");
1092 fToolBarHelp->SetToolTipText(
"Help about the top level interface");
1100 void TStyleManager::AddTopLevelInterface(TGCompositeFrame *cf)
1102 TGLayoutHints *layout1 =
new TGLayoutHints(kLHintsExpandX, 0, 0, 2, 2);
1103 fTrashListLayout->Add(layout1);
1104 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsExpandX | kLHintsExpandY, 10, 10, 10, 15);
1105 fTrashListLayout->Add(layout2);
1106 TGLayoutHints *layout3 =
new TGLayoutHints(kLHintsNormal, 0, 0, 18);
1107 fTrashListLayout->Add(layout3);
1108 TGLayoutHints *layout4 =
new TGLayoutHints(kLHintsNormal, 10, 10);
1109 fTrashListLayout->Add(layout4);
1110 TGLayoutHints *layout5 =
new TGLayoutHints(kLHintsExpandX, 125);
1111 fTrashListLayout->Add(layout5);
1112 TGLayoutHints *layout6 =
new TGLayoutHints(kLHintsNormal, 0, 10, 3);
1113 fTrashListLayout->Add(layout6);
1114 TGLayoutHints *layout7 =
new TGLayoutHints(kLHintsNormal, 0, 16, 3);
1115 fTrashListLayout->Add(layout7);
1116 TGLayoutHints *layout8 =
new TGLayoutHints(kLHintsExpandX, 0, 0, 10);
1117 fTrashListLayout->Add(layout8);
1118 TGLayoutHints *layout9 =
new TGLayoutHints(kLHintsNormal, -15, 0, -5, -10);
1119 fTrashListLayout->Add(layout9);
1120 TGLayoutHints *layout10 =
new TGLayoutHints(kLHintsNormal, 15, 0, -5, -10);
1121 fTrashListLayout->Add(layout10);
1122 TGLayoutHints *layout11 =
new TGLayoutHints(kLHintsExpandX, 0, 0, 15);
1123 fTrashListLayout->Add(layout11);
1124 TGLayoutHints *layout12 =
new TGLayoutHints(kLHintsExpandX, 0, 0, 10, 5);
1125 fTrashListLayout->Add(layout12);
1126 TGLayoutHints *layout13 =
new TGLayoutHints(kLHintsExpandX, 20, 0, 7);
1127 fTrashListLayout->Add(layout13);
1129 TGVerticalFrame *topLevel =
new TGVerticalFrame(cf);
1130 fTrashListFrame->AddFirst(topLevel);
1131 TGHorizontalFrame *h1 =
new TGHorizontalFrame(topLevel);
1132 fTrashListFrame->AddFirst(h1);
1133 TGVerticalFrame *v11 =
new TGVerticalFrame(h1);
1134 fTrashListFrame->AddFirst(v11);
1135 fListLabel =
new TGLabel(v11,
"Available Styles:");
1136 v11->AddFrame(fListLabel);
1137 fListComboBox =
new TGComboBox(v11, kTopStylesList);
1138 fListComboBox->Associate(
this);
1139 fListComboBox->Resize(200, 22);
1140 v11->AddFrame(fListComboBox, layout1);
1141 h1->AddFrame(v11, fLayoutExpandX);
1142 TGVerticalFrame *v12 =
new TGVerticalFrame(h1);
1143 fTrashListFrame->AddFirst(v12);
1144 fMakeDefaultPic = gClient->GetPicture(
"arrow_right2.xpm");
1145 fMakeDefault =
new TGPictureButton(v12, fMakeDefaultPic, kTopMakeDefault);
1146 fMakeDefault->SetStyle(gClient->GetStyle());
1147 fMakeDefault->Associate(
this);
1148 fMakeDefault->Resize(40, 22);
1149 v12->AddFrame(fMakeDefault, layout3);
1150 h1->AddFrame(v12, layout4);
1151 TGVerticalFrame *v13 =
new TGVerticalFrame(h1);
1152 fTrashListFrame->AddFirst(v13);
1153 fCurStylabel =
new TGLabel(v13,
"gStyle is set to:");
1154 v13->AddFrame(fCurStylabel);
1155 fCurStyle =
new TGTextEntry(v13,
"", kTopCurStyle);
1156 fCurStyle->Associate(
this);
1157 fCurStyle->SetEnabled(kFALSE);
1158 v13->AddFrame(fCurStyle, layout1);
1159 h1->AddFrame(v13, fLayoutExpandX);
1160 topLevel->AddFrame(h1, fLayoutExpandX);
1162 TGHorizontalFrame *h2 =
new TGHorizontalFrame(topLevel);
1163 fTrashListFrame->AddFirst(h2);
1164 TGGroupFrame *gf =
new TGGroupFrame(h2,
"Apply on");
1165 fTrashListFrame->AddFirst(gf);
1166 TGVerticalFrame *vf =
new TGVerticalFrame(gf);
1167 fTrashListFrame->AddFirst(vf);
1169 gClient->GetColorByName(
"#FF0000", red);
1170 TGHorizontalFrame *selCanvas =
new TGHorizontalFrame(vf);
1171 fTrashListFrame->AddFirst(selCanvas);
1172 fCurPadLabel =
new TGLabel(selCanvas,
"Canvas:");
1173 selCanvas->AddFrame(fCurPadLabel, layout6);
1174 fCurPadTextEntry =
new TGTextEntry(selCanvas,
"", kTopCurPad);
1175 fCurPadTextEntry->SetEnabled(kFALSE);
1176 fCurPadTextEntry->SetTextColor(red, kFALSE);
1177 selCanvas->AddFrame(fCurPadTextEntry, fLayoutExpandX);
1178 vf->AddFrame(selCanvas, fLayoutExpandX);
1179 TGHorizontalFrame *selObject =
new TGHorizontalFrame(vf);
1180 fTrashListFrame->AddFirst(selObject);
1181 fCurObjLabel =
new TGLabel(selObject,
"Object:");
1182 selObject->AddFrame(fCurObjLabel, layout7);
1183 fCurObjTextEntry =
new TGTextEntry(selObject,
"", kTopCurObj);
1184 fCurObjTextEntry->Associate(
this);
1185 fCurObjTextEntry->SetEnabled(kFALSE);
1186 fCurObjTextEntry->SetTextColor(red, kFALSE);
1187 selObject->AddFrame(fCurObjTextEntry, fLayoutExpandX);
1188 vf->AddFrame(selObject, layout8);
1189 TGHorizontalFrame *h4 =
new TGHorizontalFrame(vf);
1190 fTrashListFrame->AddFirst(h4);
1191 fApplyOnGroup =
new TGHButtonGroup(h4);
1192 fApplyOnAll =
new TGRadioButton(fApplyOnGroup,
"All canvases", kTopApplyOnAll);
1193 fApplyOnAll->Associate(
this);
1194 fApplyOnSel =
new TGRadioButton(fApplyOnGroup,
"Selected object", kTopApplyOnSel);
1195 fApplyOnSel->Associate(
this);
1196 fAllAndNotCurrent = kFALSE;
1197 fApplyOnGroup->SetButton(kTopApplyOnSel);
1198 fApplyOnGroup->Show();
1199 fApplyOnGroup->SetLayoutHints(layout9, fApplyOnAll);
1200 fApplyOnGroup->SetLayoutHints(layout10, fApplyOnSel);
1201 h4->AddFrame(fApplyOnGroup);
1202 fApplyOnButton =
new TGTextButton(h4,
"&Apply", kTopApplyOnBut);
1203 fApplyOnButton->Associate(
this);
1204 fApplyOnButton->Resize(100, 22);
1205 h4->AddFrame(fApplyOnButton, layout13);
1206 vf->AddFrame(h4, fLayoutExpandX);
1207 gf->AddFrame(vf, layout11);
1208 h2->AddFrame(gf, layout12);
1209 topLevel->AddFrame(h2, fLayoutExpandX);
1211 TGHorizontalFrame *h3 =
new TGHorizontalFrame(topLevel);
1212 fTrashListFrame->AddFirst(h3);
1213 fPreviewButton =
new TGCheckButton(h3,
"&Preview", kTopPreview);
1214 fPreviewButton->Associate(
this);
1215 h3->AddFrame(fPreviewButton, layout6);
1216 fPreviewRealTime =
new TGCheckButton(h3,
"Run &Time Preview", kTopPreviewRealTime);
1217 fPreviewRealTime->Associate(
this);
1218 fPreviewRealTime->SetEnabled(kFALSE);
1219 h3->AddFrame(fPreviewRealTime, layout6);
1220 fMoreLess =
new TGTextButton(h3,
"&Close <<", kTopMoreLess);
1221 fMoreLess->Associate(
this);
1222 h3->AddFrame(fMoreLess, layout5);
1223 topLevel->AddFrame(h3, fLayoutExpandX);
1225 cf->AddFrame(topLevel, layout2);
1227 fApplyOnButton->SetToolTipText(
"Apply the selected style on the selected object");
1228 fPreviewButton->SetToolTipText(
"Show / Hide the preview window");
1229 fPreviewRealTime->SetToolTipText(
"Continuous / Asynchronous update of the preview");
1237 void TStyleManager::BuildList(TStyle *style)
1240 fListComboBox->RemoveEntries(1, fListComboBox->GetNumberOfEntries());
1245 TStyle *tmpStyle = (TStyle *) (gROOT->GetListOfStyles()->First());
1247 if (tmpStyle == style) styleID = i;
1248 fListComboBox->AddEntry(tmpStyle->GetName(), i++);
1249 tmpStyle = (TStyle *) (gROOT->GetListOfStyles()->After(tmpStyle));
1253 if (styleID == 0) styleID = i - 1;
1254 fListComboBox->Select(styleID);
1256 fCurStyle->SetText(gStyle->GetName());
1263 void TStyleManager::UpdateStatusBar()
1265 fStatusBar->SetText(fCurSelStyle->GetName(), 0);
1266 fStatusBar->SetText(fCurSelStyle->GetTitle(), 2);
1268 if ((!strcmp(fCurSelStyle->GetName(),
"Default"))
1269 || (!strcmp(fCurSelStyle->GetName(),
"Plain" ))
1270 || (!strcmp(fCurSelStyle->GetName(),
"Bold" ))
1271 || (!strcmp(fCurSelStyle->GetName(),
"Video" ))
1272 || (!strcmp(fCurSelStyle->GetName(),
"Pub" ))) {
1273 fStatusBar->SetText(
"ROOT style", 1);
1274 }
else if (fStyleChanged) {
1275 fStatusBar->SetText(
"User Style _ Not Saved", 1);
1277 fStatusBar->SetText(
"User Style", 1);
1285 void TStyleManager::UpdateEditor(Int_t tabNum)
1291 Int_t oneYearInSecs;
1292 Int_t oneMonthInSecs;
1297 fFillColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetFillColor()));
1298 fFillStyle->SetPattern(fCurSelStyle->GetFillStyle());
1299 fHatchesLineWidth->Select(fCurSelStyle->GetHatchesLineWidth());
1300 fHatchesSpacing->SetNumber(fCurSelStyle->GetHatchesSpacing());
1301 fMarkerColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetMarkerColor()));
1302 fMarkerStyle->SetMarkerStyle(fCurSelStyle->GetMarkerStyle());
1303 fMarkerSize->Select((Int_t) fCurSelStyle->GetMarkerSize() * 5);
1304 fScreenFactor->SetNumber(fCurSelStyle->GetScreenFactor());
1305 fLineColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetLineColor()));
1306 fLineWidth->Select(fCurSelStyle->GetLineWidth());
1307 fLineStyle->Select(fCurSelStyle->GetLineStyle());
1309 fTextColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetTextColor()));
1310 if (fCurSelStyle->GetTextFont()%10 > 2) {
1311 fTextSizeInPixels->SetState(kButtonDown, kFALSE);
1312 ModTextSizeInPixels(kTRUE);
1314 fTextSizeInPixels->SetState(kButtonUp, kFALSE);
1315 ModTextSizeInPixels(kFALSE);
1317 fTextFont->Select(fCurSelStyle->GetTextFont()/10);
1318 fTextAlign->Select(fCurSelStyle->GetTextAlign());
1319 fTextAngle->SetNumber(fCurSelStyle->GetTextAngle());
1322 fCanvasColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetCanvasColor()));
1323 fCanvasDefX->SetIntNumber(fCurSelStyle->GetCanvasDefX());
1324 fCanvasDefY->SetIntNumber(fCurSelStyle->GetCanvasDefY());
1325 fCanvasDefW->SetIntNumber(fCurSelStyle->GetCanvasDefW());
1326 fCanvasDefH->SetIntNumber(fCurSelStyle->GetCanvasDefH());
1327 fCanvasBorderMode->SetButton(fCurSelStyle->GetCanvasBorderMode() + 1 + kCanvasBorderModeSunken);
1328 fCanvasBorderSize->Select(fCurSelStyle->GetCanvasBorderSize());
1329 fAttDateTextColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetAttDate()->GetTextColor()));
1330 if (fCurSelStyle->GetAttDate()->GetTextFont()%10 > 2) {
1331 fAttDateTextSizeInPixels->SetState(kButtonDown, kFALSE);
1332 ModAttDateTextSizeInPixels(kTRUE);
1334 fAttDateTextSizeInPixels->SetState(kButtonUp, kFALSE);
1335 ModAttDateTextSizeInPixels(kFALSE);
1337 fOptDateFormat->Select(fCurSelStyle->GetOptDate()/10 + 1);
1338 fAttDateTextFont->Select(fCurSelStyle->GetAttDate()->GetTextFont()/10);
1339 fAttDateTextAlign->Select(fCurSelStyle->GetAttDate()->GetTextAlign());
1340 fAttDateTextAngle->SetNumber(fCurSelStyle->GetAttDate()->GetTextAngle());
1341 fDateX->SetIntNumber((Int_t) (fCurSelStyle->GetDateX()*100 + 0.5));
1342 fDateY->SetIntNumber((Int_t) (fCurSelStyle->GetDateY()*100 + 0.5));
1344 if (fCurSelStyle->GetOptDate()) {
1345 fOptDateBool->SetState(kButtonDown, kFALSE);
1346 fAttDateTextColor->Enable();
1347 fAttDateTextSize->SetState(kTRUE);
1348 if (!fAttDateTextSizeInPixels->IsDown())
1349 fAttDateTextSizeInPixels->SetEnabled(kTRUE);
1354 fAttDateTextAngle->SetState(kTRUE);
1355 fDateX->SetState(kTRUE);
1356 fDateY->SetState(kTRUE);
1358 fOptDateBool->SetState(kButtonUp, kFALSE);
1359 fAttDateTextColor->Disable();
1360 fAttDateTextSize->SetState(kFALSE);
1361 fAttDateTextSizeInPixels->SetEnabled(kFALSE);
1366 fAttDateTextAngle->SetState(kFALSE);
1367 fDateX->SetState(kFALSE);
1368 fDateY->SetState(kFALSE);
1372 fPadTopMargin->SetIntNumber((Int_t) (fCurSelStyle->GetPadTopMargin() * 100 + 0.5));
1373 fPadBottomMargin->SetIntNumber((Int_t) (fCurSelStyle->GetPadBottomMargin() * 100 + 0.5));
1374 fPadLeftMargin->SetIntNumber((Int_t) (fCurSelStyle->GetPadLeftMargin() * 100 + 0.5));
1375 fPadRightMargin->SetIntNumber((Int_t) (fCurSelStyle->GetPadRightMargin() * 100 + 0.5));
1376 fPadBorderMode->SetButton(fCurSelStyle->GetPadBorderMode() + 1 + kPadBorderModeSunken);
1377 fPadBorderSize->Select(fCurSelStyle->GetPadBorderSize());
1378 fPadColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetPadColor()));
1379 if (fCurSelStyle->GetPadTickX())
1380 fPadTickX->SetState(kButtonDown, kFALSE);
1382 fPadTickX->SetState(kButtonUp, kFALSE);
1383 if (fCurSelStyle->GetPadTickY())
1384 fPadTickY->SetState(kButtonDown, kFALSE);
1386 fPadTickY->SetState(kButtonUp, kFALSE);
1387 if (fCurSelStyle->GetPadGridX())
1388 fPadGridX->SetState(kButtonDown, kFALSE);
1390 fPadGridX->SetState(kButtonUp, kFALSE);
1391 if (fCurSelStyle->GetPadGridY())
1392 fPadGridY->SetState(kButtonDown, kFALSE);
1394 fPadGridY->SetState(kButtonUp, kFALSE);
1395 fGridColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetGridColor()));
1396 fGridWidth->Select(fCurSelStyle->GetGridWidth());
1397 fGridStyle->Select(fCurSelStyle->GetGridStyle());
1400 fHistFillColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetHistFillColor()));
1401 fHistFillStyle->SetPattern(fCurSelStyle->GetHistFillStyle());
1402 fHistLineColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetHistLineColor()));
1403 fHistLineWidth->Select(fCurSelStyle->GetHistLineWidth());
1404 fHistLineStyle->Select(fCurSelStyle->GetHistLineStyle());
1405 fBarWidth->SetNumber(fCurSelStyle->GetBarWidth());
1406 fBarOffset->SetNumber(fCurSelStyle->GetBarOffset());
1407 if (fCurSelStyle->GetHistMinimumZero())
1408 fHistMinimumZero->SetState(kButtonDown, kFALSE);
1410 fHistMinimumZero->SetState(kButtonUp, kFALSE);
1411 fPaintTextFormat->SetText(fCurSelStyle->GetPaintTextFormat());
1412 fNumberContours->SetIntNumber(fCurSelStyle->GetNumberContours());
1413 fLegoInnerR->SetIntNumber((Int_t) (fCurSelStyle->GetLegoInnerR() * 100 + 0.5));
1414 fFrameFillColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetFrameFillColor()));
1415 fFrameFillStyle->SetPattern(fCurSelStyle->GetFrameFillStyle());
1416 fFrameLineColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetFrameLineColor()));
1417 fFrameLineWidth->Select(fCurSelStyle->GetFrameLineWidth());
1418 fFrameLineStyle->Select(fCurSelStyle->GetFrameLineStyle());
1420 fFrameBorderMode->SetButton(fCurSelStyle->GetFrameBorderMode() + 1 + kFrameBorderModeSunken);
1421 fFrameBorderSize->Select(fCurSelStyle->GetFrameBorderSize());
1422 fFuncColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetFuncColor()));
1423 fFuncWidth->Select(fCurSelStyle->GetFuncWidth());
1424 fFuncStyle->Select(fCurSelStyle->GetFuncStyle());
1425 if (fCurSelStyle->GetDrawBorder())
1426 fDrawBorder->SetState(kButtonDown, kFALSE);
1428 fDrawBorder->SetState(kButtonUp, kFALSE);
1429 fEndErrorSize->SetNumber(fCurSelStyle->GetEndErrorSize());
1430 fErrorX->SetIntNumber((Int_t) (fCurSelStyle->GetErrorX() * 100 + 0.5));
1433 delta = fCurSelStyle->GetTimeOffset() - 788918400;
1439 if (year % 4) oneYearInSecs = 3600 * 24 * 365;
1440 else oneYearInSecs = 3600 * 24 * 366;
1441 delta += oneYearInSecs;
1443 oneYearInSecs = 3600 * 24 * 365;
1444 while (delta >= oneYearInSecs) {
1445 if (year % 4) oneYearInSecs = 3600 * 24 * 365;
1446 else oneYearInSecs = 3600 * 24 * 366;
1447 delta -= oneYearInSecs;
1450 oneMonthInSecs = 3600 * 24 * 31;
1451 while (delta >= oneMonthInSecs) {
1453 delta -= oneMonthInSecs;
1456 if (year % 4) oneMonthInSecs = 3600 * 24 * 28;
1457 else oneMonthInSecs = 3600 * 24 * 29;
1459 case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
1460 oneMonthInSecs = 3600 * 24 * 31;
1463 oneMonthInSecs = 3600 * 24 * 30;
1466 day = (Int_t) delta / (3600 * 24) + 1;
1467 delta = ((Int_t) delta) % (3600 * 24);
1468 fTimeOffsetDate->SetNumber(year*10000 + month*100 + day);
1469 fTimeOffsetTime->SetNumber(delta);
1471 if (fCurSelStyle->GetStripDecimals())
1472 fStripDecimals->SetState(kButtonUp, kFALSE);
1474 fStripDecimals->SetState(kButtonDown, kFALSE);
1475 fXTitleSize->SetNumber(fCurSelStyle->GetTitleSize(
"X"));
1476 if (fCurSelStyle->GetTitleFont(
"X")%10 > 2) {
1477 fXTitleSizeInPixels->SetState(kButtonDown, kFALSE);
1478 ModXTitleSizeInPixels(kTRUE);
1480 fXTitleSizeInPixels->SetState(kButtonUp, kFALSE);
1481 ModXTitleSizeInPixels(kFALSE);
1483 fXTitleColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetTitleColor(
"X")));
1484 fXTitleOffset->SetNumber(fCurSelStyle->GetTitleOffset(
"X"));
1485 fXTitleFont->Select(fCurSelStyle->GetTitleFont(
"X")/10);
1486 fXLabelSize->SetNumber(fCurSelStyle->GetLabelSize(
"X"));
1487 if (fCurSelStyle->GetLabelFont(
"X")%10 > 2) {
1488 fXLabelSizeInPixels->SetState(kButtonDown, kFALSE);
1489 ModXLabelSizeInPixels(kTRUE);
1491 fXLabelSizeInPixels->SetState(kButtonUp, kFALSE);
1492 ModXLabelSizeInPixels(kFALSE);
1494 fXLabelColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetLabelColor(
"X")));
1495 fXLabelOffset->SetNumber(fCurSelStyle->GetLabelOffset(
"X"));
1496 fXLabelFont->Select(fCurSelStyle->GetLabelFont(
"X")/10);
1497 fXAxisColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetAxisColor(
"X")));
1498 fXTickLength->SetNumber(fCurSelStyle->GetTickLength(
"X"));
1499 if (fCurSelStyle->GetOptLogx())
1500 fOptLogx->SetState(kButtonDown, kFALSE);
1502 fOptLogx->SetState(kButtonUp, kFALSE);
1503 fXNdivMain->SetIntNumber(TMath::Abs(fCurSelStyle->GetNdivisions(
"X")) % 100);
1504 fXNdivSub->SetIntNumber((TMath::Abs(fCurSelStyle->GetNdivisions(
"X")) % 10000)/100);
1505 fXNdivSubSub->SetIntNumber((TMath::Abs(fCurSelStyle->GetNdivisions(
"X")) % 1000000)/10000);
1506 if (fCurSelStyle->GetNdivisions(
"X") > 0)
1507 fXNdivisionsOptimize->SetState(kButtonDown, kFALSE);
1509 fXNdivisionsOptimize->SetState(kButtonUp, kFALSE);
1510 fYTitleSize->SetNumber(fCurSelStyle->GetTitleSize(
"Y"));
1511 if (fCurSelStyle->GetTitleFont(
"Y")%10 > 2) {
1512 fYTitleSizeInPixels->SetState(kButtonDown, kFALSE);
1513 ModYTitleSizeInPixels(kTRUE);
1515 fYTitleSizeInPixels->SetState(kButtonUp, kFALSE);
1516 ModYTitleSizeInPixels(kFALSE);
1518 fYTitleColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetTitleColor(
"Y")));
1519 fYTitleOffset->SetNumber(fCurSelStyle->GetTitleOffset(
"Y"));
1520 fYTitleFont->Select(fCurSelStyle->GetTitleFont(
"Y")/10);
1521 fYLabelSize->SetNumber(fCurSelStyle->GetLabelSize(
"Y"));
1522 if (fCurSelStyle->GetLabelFont(
"Y")%10 > 2) {
1523 fYLabelSizeInPixels->SetState(kButtonDown, kFALSE);
1524 ModYLabelSizeInPixels(kTRUE);
1526 fYLabelSizeInPixels->SetState(kButtonUp, kFALSE);
1527 ModYLabelSizeInPixels(kFALSE);
1529 fYLabelColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetLabelColor(
"Y")));
1530 fYLabelOffset->SetNumber(fCurSelStyle->GetLabelOffset(
"Y"));
1531 fYLabelFont->Select(fCurSelStyle->GetLabelFont(
"Y")/10);
1532 fYAxisColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetAxisColor(
"Y")));
1533 fYTickLength->SetNumber(fCurSelStyle->GetTickLength(
"Y"));
1534 if (fCurSelStyle->GetOptLogy())
1535 fOptLogy->SetState(kButtonDown, kFALSE);
1537 fOptLogy->SetState(kButtonUp, kFALSE);
1538 fYNdivMain->SetIntNumber(TMath::Abs(fCurSelStyle->GetNdivisions(
"Y")) % 100);
1539 fYNdivSub->SetIntNumber((TMath::Abs(fCurSelStyle->GetNdivisions(
"Y")) % 10000)/100);
1540 fYNdivSubSub->SetIntNumber((TMath::Abs(fCurSelStyle->GetNdivisions(
"Y")) % 1000000)/10000);
1541 if (fCurSelStyle->GetNdivisions(
"Y") > 0)
1542 fYNdivisionsOptimize->SetState(kButtonDown, kFALSE);
1544 fYNdivisionsOptimize->SetState(kButtonUp, kFALSE);
1545 fZTitleSize->SetNumber(fCurSelStyle->GetTitleSize(
"Z"));
1546 if (fCurSelStyle->GetTitleFont(
"Z")%10 > 2) {
1547 fZTitleSizeInPixels->SetState(kButtonDown, kFALSE);
1548 ModZTitleSizeInPixels(kTRUE);
1550 fZTitleSizeInPixels->SetState(kButtonUp, kFALSE);
1551 ModZTitleSizeInPixels(kFALSE);
1553 fZTitleColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetTitleColor(
"Z")));
1554 fZTitleOffset->SetNumber(fCurSelStyle->GetTitleOffset(
"Z"));
1555 fZTitleFont->Select(fCurSelStyle->GetTitleFont(
"Z")/10);
1556 fZLabelSize->SetNumber(fCurSelStyle->GetLabelSize(
"Z"));
1557 if (fCurSelStyle->GetLabelFont(
"Z")%10 > 2) {
1558 fZLabelSizeInPixels->SetState(kButtonDown, kFALSE);
1559 ModZLabelSizeInPixels(kTRUE);
1561 fZLabelSizeInPixels->SetState(kButtonUp, kFALSE);
1562 ModZLabelSizeInPixels(kFALSE);
1564 fZLabelColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetLabelColor(
"Z")));
1565 fZLabelOffset->SetNumber(fCurSelStyle->GetLabelOffset(
"Z"));
1566 fZLabelFont->Select(fCurSelStyle->GetLabelFont(
"Z")/10);
1567 fZAxisColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetAxisColor(
"Z")));
1568 fZTickLength->SetNumber(fCurSelStyle->GetTickLength(
"Z"));
1570 if (fCurSelStyle->GetOptLogz())
1571 fOptLogz->SetState(kButtonDown, kFALSE);
1573 fOptLogz->SetState(kButtonUp, kFALSE);
1575 fZNdivMain->SetIntNumber(TMath::Abs(fCurSelStyle->GetNdivisions(
"Z")) % 100);
1576 fZNdivSub->SetIntNumber((TMath::Abs(fCurSelStyle->GetNdivisions(
"Z")) % 10000)/100);
1577 fZNdivSubSub->SetIntNumber((TMath::Abs(fCurSelStyle->GetNdivisions(
"Z")) % 1000000)/10000);
1578 if (fCurSelStyle->GetNdivisions(
"Z") > 0)
1579 fZNdivisionsOptimize->SetState(kButtonDown, kFALSE);
1581 fZNdivisionsOptimize->SetState(kButtonUp, kFALSE);
1584 fTitleColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetTitleFillColor()));
1585 fTitleStyle->SetPattern(fCurSelStyle->GetTitleStyle());
1586 fTitleTextColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetTitleTextColor()));
1587 fTitleFontSize->SetNumber(fCurSelStyle->GetTitleFontSize());
1588 if (fCurSelStyle->GetTitleFont()%10 > 2) {
1589 fTitleFontSizeInPixels->SetState(kButtonDown, kFALSE);
1590 ModTitleFontSizeInPixels(kTRUE);
1592 fTitleFontSizeInPixels->SetState(kButtonUp, kFALSE);
1593 ModTitleFontSizeInPixels(kFALSE);
1595 fTitleFont->Select(fCurSelStyle->GetTitleFont()/10);
1596 fTitleAlign->Select(fCurSelStyle->GetTitleAlign());
1597 fTitleBorderSize->Select(fCurSelStyle->GetTitleBorderSize());
1598 fLegendBorderSize->Select(fCurSelStyle->GetLegendBorderSize());
1599 fTitleX->SetIntNumber((Int_t) (fCurSelStyle->GetTitleX() * 100 + 0.5));
1600 fTitleY->SetIntNumber((Int_t) (fCurSelStyle->GetTitleY() * 100 + 0.5));
1601 fTitleW->SetIntNumber((Int_t) (fCurSelStyle->GetTitleW() * 100 + 0.5));
1602 fTitleH->SetIntNumber((Int_t) (fCurSelStyle->GetTitleH() * 100 + 0.5));
1604 if (fCurSelStyle->GetOptTitle()) {
1605 fOptTitle->SetState(kButtonDown, kFALSE);
1606 fTitleColor->Enable();
1607 fTitleStyle->Enable();
1608 fTitleTextColor->Enable();
1609 fTitleFontSize->SetState(kTRUE);
1610 if (!fTitleFontSizeInPixels->IsDown())
1611 fTitleFontSizeInPixels->SetEnabled(kTRUE);
1617 fTitleX->SetState(kTRUE);
1618 fTitleY->SetState(kTRUE);
1619 fTitleW->SetState(kTRUE);
1620 fTitleH->SetState(kTRUE);
1622 fOptTitle->SetState(kButtonUp, kFALSE);
1623 fTitleColor->Disable();
1624 fTitleStyle->Disable();
1625 fTitleTextColor->Disable();
1626 fTitleFontSize->SetState(kFALSE);
1627 fTitleFontSizeInPixels->SetEnabled(kFALSE);
1633 fTitleX->SetState(kFALSE);
1634 fTitleY->SetState(kFALSE);
1635 fTitleW->SetState(kFALSE);
1636 fTitleH->SetState(kFALSE);
1640 fStatColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetStatColor()));
1641 fStatStyle->SetPattern(fCurSelStyle->GetStatStyle());
1642 fStatTextColor->SetColor(TColor::Number2Pixel(fCurSelStyle->GetStatTextColor()));
1643 fStatFont->Select(fCurSelStyle->GetStatFont()/10);
1644 if (fCurSelStyle->GetStatFont()%10 > 2) {
1645 fStatFontSizeInPixels->SetState(kButtonDown, kFALSE);
1646 ModStatFontSizeInPixels(kTRUE);
1648 fStatFontSizeInPixels->SetState(kButtonUp, kFALSE);
1649 ModStatFontSizeInPixels(kFALSE);
1651 fStatFontSize->SetNumber(fCurSelStyle->GetStatFontSize());
1653 fStatX->SetNumber(fCurSelStyle->GetStatX());
1654 fStatY->SetNumber(fCurSelStyle->GetStatY());
1655 fStatW->SetNumber(fCurSelStyle->GetStatW());
1656 fStatH->SetNumber(fCurSelStyle->GetStatH());
1657 fStatBorderSize->Select(fCurSelStyle->GetStatBorderSize());
1658 tmp = fCurSelStyle->GetOptStat();
1660 if (tmp % 10) fOptStatName->SetState(kButtonDown, kFALSE);
1661 else fOptStatName->SetState(kButtonUp, kFALSE);
1663 if ((tmp/10) % 10) fOptStatEntries->SetState(kButtonDown, kFALSE);
1664 else fOptStatEntries->SetState(kButtonUp, kFALSE);
1666 if ((tmp/100) % 10) fOptStatMean->SetState(kButtonDown, kFALSE);
1667 else fOptStatMean->SetState(kButtonUp, kFALSE);
1669 if ((tmp/1000) % 10) fOptStatRMS->SetState(kButtonDown, kFALSE);
1670 else fOptStatRMS->SetState(kButtonUp, kFALSE);
1672 if ((tmp/10000) % 10) fOptStatUnderflow->SetState(kButtonDown, kFALSE);
1673 else fOptStatUnderflow->SetState(kButtonUp, kFALSE);
1675 if ((tmp/100000) % 10) fOptStatOverflow->SetState(kButtonDown, kFALSE);
1676 else fOptStatOverflow->SetState(kButtonUp, kFALSE);
1678 if ((tmp/1000000) % 10) fOptStatIntegral->SetState(kButtonDown, kFALSE);
1679 else fOptStatIntegral->SetState(kButtonUp, kFALSE);
1681 if ((tmp/10000000) % 10) fOptStatSkewness->SetState(kButtonDown, kFALSE);
1682 else fOptStatSkewness->SetState(kButtonUp, kFALSE);
1684 if ((tmp/100000000) % 10) fOptStatKurtosis->SetState(kButtonDown, kFALSE);
1685 else fOptStatKurtosis->SetState(kButtonUp, kFALSE);
1687 if ((((tmp/100) % 10) == 2) || (((tmp/1000) % 10) == 2) ||
1688 (((tmp/10000000) % 10) == 2) || (((tmp/100000000) % 10) == 2))
1689 fOptStatErrors->SetState(kButtonDown, kFALSE);
1690 else fOptStatErrors->SetState(kButtonUp, kFALSE);
1692 fStatFormat->SetText(fCurSelStyle->GetStatFormat());
1693 tmp2 = fCurSelStyle->GetOptFit();
1695 if (tmp2 % 10) fOptFitValues->SetState(kButtonDown, kFALSE);
1696 else fOptFitValues->SetState(kButtonUp, kFALSE);
1698 if ((tmp2/10) % 10) {
1699 fOptFitErrors->SetState(kButtonDown, kFALSE);
1700 fOptFitValues->SetState(kButtonDown, kFALSE);
1702 fOptFitErrors->SetState(kButtonUp, kFALSE);
1704 if ((tmp2/100) % 10) fOptFitChi->SetState(kButtonDown, kFALSE);
1705 else fOptFitChi->SetState(kButtonUp, kFALSE);
1707 if ((tmp2/1000) % 10) fOptFitProbability->SetState(kButtonDown, kFALSE);
1708 else fOptFitProbability->SetState(kButtonUp, kFALSE);
1710 fFitFormat->SetText(fCurSelStyle->GetFitFormat());
1714 fHeaderPS->SetText(fCurSelStyle->GetHeaderPS());
1715 fTitlePS->SetText(fCurSelStyle->GetTitlePS());
1716 fColorModelPS->SetButton(fCurSelStyle->GetColorModelPS() + kPSPDFColorModelPSRGB);
1717 fLineScalePS->SetNumber(fCurSelStyle->GetLineScalePS());
1720 fCurSelStyle->GetPaperSize(papSizeX, papSizeY);
1721 if ((papSizeX == 20) && (papSizeY == 26)) {
1722 fPaperSizePredef->Select(3);
1723 fPaperSizeEnCm = kTRUE;
1724 fPaperSizeX->SetNumber(papSizeX);
1725 fPaperSizeY->SetNumber(papSizeY);
1726 }
else if ((papSizeX == 20) && (papSizeY == 24)) {
1727 fPaperSizePredef->Select(4);
1728 fPaperSizeEnCm = kFALSE;
1729 fPaperSizeX->SetNumber(papSizeX * 0.394);
1730 fPaperSizeY->SetNumber(papSizeY * 0.394);
1732 fPaperSizePredef->Select(1);
1733 fPaperSizeEnCm = kTRUE;
1734 fPaperSizeX->SetNumber(papSizeX);
1735 fPaperSizeY->SetNumber(papSizeY);
1744 void TStyleManager::ConnectAll()
1746 Connect(
"CloseWindow()",
"TStyleManager",
this,
"CloseWindow()");
1747 fMenuStyle->Connect(
"Activated(Int_t)",
"TStyleManager",
this,
"DoMenu(Int_t)");
1748 fMenuHelp->Connect(
"Activated(Int_t)",
"TStyleManager",
this,
"DoMenu(Int_t)");
1749 fToolBarNew->Connect(
"Clicked()",
"TStyleManager",
this, TString::Format(
"DoMenu(Int_t=%d)", kMenuNew));
1750 fToolBarDelete->Connect(
"Clicked()",
"TStyleManager",
this, TString::Format(
"DoMenu(Int_t=%d)", kMenuDelete));
1751 fToolBarImportCanvas->Connect(
"Clicked()",
"TStyleManager",
this, TString::Format(
"DoMenu(Int_t=%d)", kMenuImportCanvas));
1752 fToolBarImportMacro->Connect(
"Clicked()",
"TStyleManager",
this, TString::Format(
"DoMenu(Int_t=%d)", kMenuImportMacro));
1753 fToolBarExport->Connect(
"Clicked()",
"TStyleManager",
this, TString::Format(
"DoMenu(Int_t=%d)", kMenuExport));
1754 fToolBarHelp->Connect(
"Clicked()",
"TStyleManager",
this, TString::Format(
"DoMenu(Int_t=%d)", kMenuHelp));
1755 fListComboBox->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"DoListSelect()");
1756 fPreviewButton->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"DoPreview(Bool_t)");
1757 fPreviewRealTime->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"DoRealTime(Bool_t)");
1758 fMakeDefault->Connect(
"Clicked()",
"TStyleManager",
this,
"DoMakeDefault()");
1759 fApplyOnGroup->Connect(
"Clicked(Int_t)",
"TStyleManager",
this,
"DoApplyOnSelect(Int_t)");
1760 fApplyOnButton->Connect(
"Clicked()",
"TStyleManager",
this,
"DoApplyOn()");
1761 fMoreLess->Connect(
"Clicked()",
"TStyleManager",
this,
"DoMoreLess()");
1763 fEditionHelp->Connect(
"Clicked()",
"TStyleManager",
this, TString::Format(
"DoMenu(Int_t=%d)", kMenuHelpEditor));
1764 fEditionUpdatePreview->Connect(
"Clicked()",
"TStyleManager",
this,
"DoEditionUpdatePreview()");
1765 fEditionReset->Connect(
"Clicked()",
"TStyleManager",
this,
"DoImportMacro(Int_t=kFALSE)");
1766 fEditionTab->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"DoChangeTab(Int_t)");
1767 fAxisTab->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"DoChangeAxisTab(Int_t)");
1770 TQObject::Connect(
"TCanvas",
"Selected(TVirtualPad *, TObject *, Int_t)",
"TStyleManager",
1771 this,
"DoSelectCanvas(TVirtualPad *, TObject *, Int_t)");
1772 TQObject::Connect(
"TCanvas",
"Closed()",
"TStyleManager",
this,
"DoSelectNoCanvas()");
1778 void TStyleManager::DisconnectAll()
1780 Disconnect(
"CloseWindow()");
1781 fMenuStyle->Disconnect(
"Activated(Int_t)");
1782 fMenuHelp->Disconnect(
"Activated(Int_t)");
1783 fToolBarNew->Disconnect(
"Clicked()");
1784 fToolBarDelete->Disconnect(
"Clicked()");
1785 fToolBarImportCanvas->Disconnect(
"Clicked()");
1786 fToolBarImportMacro->Disconnect(
"Clicked()");
1787 fToolBarExport->Disconnect(
"Clicked()");
1788 fToolBarHelp->Disconnect(
"Clicked()");
1789 fListComboBox->Disconnect(
"Selected(Int_t)");
1790 fPreviewButton->Disconnect(
"Toggled(Bool_t)");
1791 fMakeDefault->Disconnect(
"Clicked()");
1792 fApplyOnGroup->Disconnect(
"Clicked(Int_t)");
1793 fApplyOnButton->Disconnect(
"Clicked()");
1794 fMoreLess->Disconnect(
"Clicked()");
1796 fEditionHelp->Disconnect(
"Clicked()");
1797 fEditionUpdatePreview->Disconnect(
"Clicked()");
1798 fEditionReset->Disconnect(
"Clicked()");
1799 fEditionTab->Disconnect(
"Selected(Int_t)");
1801 TQObject::Disconnect(
"TCanvas",
"Selected(TVirtualPad *, TObject *, Int_t)");
1802 TQObject::Disconnect(
"TCanvas",
"Closed()");
1808 void TStyleManager::ConnectEditor(Int_t tabNum)
1810 if (fSigSlotConnected)
return;
1811 fSigSlotConnected = kTRUE;
1815 fFillColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModFillColor()");
1816 fFillStyle->Connect(
"PatternSelected(Style_t)",
"TStyleManager",
this,
"ModFillStyle()");
1817 fHatchesLineWidth->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModHatchesLineWidth()");
1818 fHatchesSpacing->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModHatchesSpacing()");
1819 fMarkerColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModMarkerColor()");
1820 fMarkerStyle->Connect(
"MarkerSelected(Style_t)",
"TStyleManager",
this,
"ModMarkerStyle()");
1821 fMarkerSize->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModMarkerSize()");
1822 fScreenFactor->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModScreenFactor()");
1823 fLineColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModLineColor()");
1824 fLineWidth->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModLineWidth()");
1825 fLineStyle->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModLineStyle()");
1826 fLineStyleEdit->Connect(
"Clicked()",
"TStyleManager",
this,
"ModLineStyleEdit()");
1827 fTextColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModTextColor()");
1828 fTextSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModTextSize()");
1829 fTextSizeInPixels->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModTextSizeInPixels(Bool_t)");
1830 fTextFont->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModTextFont()");
1831 fTextAlign->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModTextAlign()");
1832 fTextAngle->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModTextAngle()");
1835 fCanvasColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModCanvasColor()");
1836 fCanvasDefX->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModCanvasDefX()");
1837 fCanvasDefY->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModCanvasDefY()");
1838 fCanvasDefW->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModCanvasDefW()");
1839 fCanvasDefH->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModCanvasDefH()");
1840 fCanvasBorderMode->Connect(
"Clicked(Int_t)",
"TStyleManager",
this,
"ModCanvasBorderMode()");
1841 fCanvasBorderSize->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModCanvasBorderSize()");
1842 fOptDateBool->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptDateBool()");
1843 fAttDateTextColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModAttDateTextColor()");
1844 fAttDateTextSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModAttDateTextSize()");
1845 fAttDateTextSizeInPixels->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModAttDateTextSizeInPixels(Bool_t)");
1846 fOptDateFormat->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModOptDateFormat()");
1847 fAttDateTextFont->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModAttDateTextFont()");
1848 fAttDateTextAngle->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModAttDateTextAngle()");
1849 fAttDateTextAlign->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModAttDateTextAlign()");
1850 fDateX->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModDateX()");
1851 fDateY->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModDateY()");
1854 fPadTopMargin->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModPadTopMargin()");
1855 fPadBottomMargin->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModPadBottomMargin()");
1856 fPadLeftMargin->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModPadLeftMargin()");
1857 fPadRightMargin->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModPadRightMargin()");
1858 fPadBorderMode->Connect(
"Clicked(Int_t)",
"TStyleManager",
this,
"ModPadBorderMode()");
1859 fPadBorderSize->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModPadBorderSize()");
1860 fPadColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModPadColor()");
1861 fPadTickX->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModPadTickX()");
1862 fPadTickY->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModPadTickY()");
1863 fPadGridX->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModPadGridX()");
1864 fPadGridY->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModPadGridY()");
1865 fGridColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModGridColor()");
1866 fGridWidth->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModGridWidth()");
1867 fGridStyle->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModGridStyle()");
1870 fHistFillColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModHistFillColor()");
1871 fHistFillStyle->Connect(
"PatternSelected(Style_t)",
"TStyleManager",
this,
"ModHistFillStyle()");
1872 fHistLineColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModHistLineColor()");
1873 fHistLineWidth->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModHistLineWidth()");
1874 fHistLineStyle->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModHistLineStyle()");
1875 fBarWidth->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModBarWidth()");
1876 fBarOffset->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModBarOffset()");
1877 fHistMinimumZero->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModHistMinimumZero()");
1878 fPaintTextFormat->Connect(
"TextChanged(const char *)",
"TStyleManager",
this,
"ModPaintTextFormat()");
1879 fNumberContours->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModNumberContours()");
1880 fLegoInnerR->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModLegoInnerR()");
1881 fFrameFillColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModFrameFillColor()");
1882 fFrameFillStyle->Connect(
"PatternSelected(Style_t)",
"TStyleManager",
this,
"ModFrameFillStyle()");
1883 fFrameLineColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModFrameLineColor()");
1884 fFrameLineWidth->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModFrameLineWidth()");
1885 fFrameLineStyle->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModFrameLineStyle()");
1886 fPaletteEdit->Connect(
"Clicked()",
"TStyleManager",
this,
"ModPaletteEdit()");
1887 fFrameBorderMode->Connect(
"Clicked(Int_t)",
"TStyleManager",
this,
"ModFrameBorderMode()");
1888 fFrameBorderSize->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModFrameBorderSize()");
1889 fFuncColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModFuncColor()");
1890 fFuncWidth->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModFuncWidth()");
1891 fFuncStyle->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModFuncStyle()");
1892 fDrawBorder->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModDrawBorder()");
1893 fEndErrorSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModEndErrorSize()");
1894 fErrorX->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModErrorX()");
1897 fTimeOffsetDate->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModTimeOffset()");
1898 fTimeOffsetTime->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModTimeOffset()");
1899 fStripDecimals->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModStripDecimals()");
1900 fApplyOnXYZ->Connect(
"Clicked()",
"TStyleManager",
this,
"ModApplyOnXYZ()");
1901 fXTitleSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModXTitleSize()");
1902 fXTitleSizeInPixels->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModXTitleSizeInPixels(Bool_t)");
1903 fXTitleColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModXTitleColor()");
1904 fXTitleOffset->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModXTitleOffset()");
1905 fXTitleFont->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModXTitleFont()");
1906 fXLabelSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModXLabelSize()");
1907 fXLabelSizeInPixels->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModXLabelSizeInPixels(Bool_t)");
1908 fXLabelColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModXLabelColor()");
1909 fXLabelOffset->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModXLabelOffset()");
1910 fXLabelFont->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModXLabelFont()");
1911 fXAxisColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModXAxisColor()");
1912 fXTickLength->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModXTickLength()");
1913 fOptLogx->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptLogx()");
1914 fXNdivMain->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModXNdivisions()");
1915 fXNdivSub->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModXNdivisions()");
1916 fXNdivSubSub->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModXNdivisions()");
1917 fXNdivisionsOptimize->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModXNdivisions()");
1918 fYTitleSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModYTitleSize()");
1919 fYTitleSizeInPixels->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModYTitleSizeInPixels(Bool_t)");
1920 fYTitleColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModYTitleColor()");
1921 fYTitleOffset->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModYTitleOffset()");
1922 fYTitleFont->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModYTitleFont()");
1923 fYLabelSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModYLabelSize()");
1924 fYLabelSizeInPixels->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModYLabelSizeInPixels(Bool_t)");
1925 fYLabelColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModYLabelColor()");
1926 fYLabelOffset->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModYLabelOffset()");
1927 fYLabelFont->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModYLabelFont()");
1928 fYAxisColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModYAxisColor()");
1929 fYTickLength->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModYTickLength()");
1930 fOptLogy->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptLogy()");
1931 fYNdivMain->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModYNdivisions()");
1932 fYNdivSub->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModYNdivisions()");
1933 fYNdivSubSub->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModYNdivisions()");
1934 fYNdivisionsOptimize->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModYNdivisions()");
1935 fZTitleSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModZTitleSize()");
1936 fZTitleSizeInPixels->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModZTitleSizeInPixels(Bool_t)");
1937 fZTitleColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModZTitleColor()");
1938 fZTitleOffset->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModZTitleOffset()");
1939 fZTitleFont->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModZTitleFont()");
1940 fZLabelSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModZLabelSize()");
1941 fZLabelSizeInPixels->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModZLabelSizeInPixels(Bool_t)");
1942 fZLabelColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModZLabelColor()");
1943 fZLabelOffset->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModZLabelOffset()");
1944 fZLabelFont->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModZLabelFont()");
1945 fZAxisColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModZAxisColor()");
1946 fZTickLength->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModZTickLength()");
1947 fOptLogz->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptLogz()");
1948 fZNdivMain->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModZNdivisions()");
1949 fZNdivSub->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModZNdivisions()");
1950 fZNdivSubSub->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModZNdivisions()");
1951 fZNdivisionsOptimize->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModZNdivisions()");
1954 fOptTitle->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptTitle()");
1955 fTitleColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModTitleFillColor()");
1956 fTitleStyle->Connect(
"PatternSelected(Style_t)",
"TStyleManager",
this,
"ModTitleStyle()");
1957 fTitleTextColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModTitleTextColor()");
1958 fTitleFontSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModTitleFontSize()");
1959 fTitleFontSizeInPixels->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModTitleFontSizeInPixels(Bool_t)");
1960 fTitleFont->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModTitleFont()");
1961 fTitleAlign->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModTitleAlign()");
1962 fTitleBorderSize->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModTitleBorderSize()");
1963 fTitleX->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModTitleX()");
1964 fTitleY->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModTitleY()");
1965 fTitleW->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModTitleW()");
1966 fTitleH->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModTitleH()");
1967 fLegendBorderSize->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModLegendBorderSize()");
1970 fStatColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModStatColor(Pixel_t)");
1971 fStatStyle->Connect(
"PatternSelected(Style_t)",
"TStyleManager",
this,
"ModStatStyle(Style_t)");
1972 fStatTextColor->Connect(
"ColorSelected(Pixel_t)",
"TStyleManager",
this,
"ModStatTextColor(Pixel_t)");
1973 fStatFontSize->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModStatFontSize()");
1974 fStatFontSizeInPixels->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModStatFontSizeInPixels(Bool_t)");
1975 fStatFont->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModStatFont()");
1976 fStatX->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModStatX()");
1977 fStatY->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModStatY()");
1978 fStatW->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModStatW()");
1979 fStatH->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModStatH()");
1980 fStatBorderSize->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModStatBorderSize()");
1981 fOptStatName->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptStat()");
1982 fOptStatEntries->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptStat()");
1983 fOptStatOverflow->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptStat()");
1984 fOptStatMean->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptStat()");
1985 fOptStatUnderflow->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptStat()");
1986 fOptStatRMS->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptStat()");
1987 fOptStatSkewness->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptStat()");
1988 fOptStatIntegral->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptStat()");
1989 fOptStatKurtosis->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptStat()");
1990 fOptStatErrors->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptStat()");
1991 fStatFormat->Connect(
"TextChanged(const char *)",
"TStyleManager",
this,
"ModStatFormat(const char *)");
1992 fOptFitValues->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptFit()");
1993 fOptFitErrors->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptFit()");
1994 fOptFitProbability->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptFit()");
1995 fOptFitChi->Connect(
"Toggled(Bool_t)",
"TStyleManager",
this,
"ModOptFit()");
1996 fFitFormat->Connect(
"TextChanged(const char *)",
"TStyleManager",
this,
"ModFitFormat(const char *)");
1999 fHeaderPS->Connect(
"TextChanged(const char *)",
"TStyleManager",
this,
"ModHeaderPS()");
2000 fTitlePS->Connect(
"TextChanged(const char *)",
"TStyleManager",
this,
"ModTitlePS()");
2001 fColorModelPS->Connect(
"Clicked(Int_t)",
"TStyleManager",
this,
"ModColorModelPS()");
2002 fLineScalePS->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModLineScalePS()");
2003 fPaperSizePredef->Connect(
"Selected(Int_t)",
"TStyleManager",
this,
"ModPaperSizePredef()");
2004 fPaperSizeX->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModPaperSizeXY()");
2005 fPaperSizeY->Connect(
"ValueSet(Long_t)",
"TStyleManager",
this,
"ModPaperSizeXY()");
2014 void TStyleManager::DisconnectEditor(Int_t tabNum)
2016 if (!fSigSlotConnected)
return;
2017 fSigSlotConnected = kFALSE;
2021 fFillColor->Disconnect(
"ColorSelected(Pixel_t)");
2022 fFillStyle->Disconnect(
"PatternSelected(Style_t)");
2023 fHatchesLineWidth->Disconnect(
"Selected(Int_t)");
2024 fHatchesSpacing->Disconnect(
"ValueSet(Long_t)");
2025 fMarkerColor->Disconnect(
"ColorSelected(Pixel_t)");
2026 fMarkerStyle->Disconnect(
"MarkerSelected(Style_t)");
2027 fMarkerSize->Disconnect(
"Selected(Int_t)");
2028 fScreenFactor->Disconnect(
"ValueSet(Long_t)");
2029 fLineColor->Disconnect(
"ColorSelected(Pixel_t)");
2030 fLineWidth->Disconnect(
"Selected(Int_t)");
2031 fLineStyle->Disconnect(
"Selected(Int_t)");
2032 fLineStyleEdit->Disconnect(
"Clicked()");
2033 fTextColor->Disconnect(
"ColorSelected(Pixel_t)");
2034 fTextSize->Disconnect(
"ValueSet(Long_t)");
2035 fTextFont->Disconnect(
"Selected(Int_t)");
2036 fTextAlign->Disconnect(
"Selected(Int_t)");
2037 fTextAngle->Disconnect(
"ValueSet(Long_t)");
2040 fCanvasColor->Disconnect(
"ColorSelected(Pixel_t)");
2041 fCanvasDefX->Disconnect(
"ValueSet(Long_t)");
2042 fCanvasDefY->Disconnect(
"ValueSet(Long_t)");
2043 fCanvasDefW->Disconnect(
"ValueSet(Long_t)");
2044 fCanvasDefH->Disconnect(
"ValueSet(Long_t)");
2045 fCanvasBorderMode->Disconnect(
"Clicked(Int_t)");
2046 fCanvasBorderSize->Disconnect(
"Selected(Int_t)");
2047 fOptDateBool->Disconnect(
"Toggled(Bool_t)");
2048 fAttDateTextColor->Disconnect(
"ColorSelected(Pixel_t)");
2049 fAttDateTextSize->Disconnect(
"ValueSet(Long_t)");
2050 fOptDateFormat->Disconnect(
"Selected(Int_t)");
2051 fAttDateTextFont->Disconnect(
"Selected(Int_t)");
2052 fAttDateTextAngle->Disconnect(
"ValueSet(Long_t)");
2053 fAttDateTextAlign->Disconnect(
"Selected(Int_t)");
2054 fDateX->Disconnect(
"ValueSet(Long_t)");
2055 fDateY->Disconnect(
"ValueSet(Long_t)");
2058 fPadTopMargin->Disconnect(
"ValueSet(Long_t)");
2059 fPadBottomMargin->Disconnect(
"ValueSet(Long_t)");
2060 fPadLeftMargin->Disconnect(
"ValueSet(Long_t)");
2061 fPadRightMargin->Disconnect(
"ValueSet(Long_t)");
2062 fPadBorderMode->Disconnect(
"Clicked(Int_t)");
2063 fPadBorderSize->Disconnect(
"Selected(Int_t)");
2064 fPadColor->Disconnect(
"ColorSelected(Pixel_t)");
2065 fPadTickX->Disconnect(
"Toggled(Bool_t)");
2066 fPadTickY->Disconnect(
"Toggled(Bool_t)");
2067 fPadGridX->Disconnect(
"Toggled(Bool_t)");
2068 fPadGridY->Disconnect(
"Toggled(Bool_t)");
2069 fGridColor->Disconnect(
"ColorSelected(Pixel_t)");
2070 fGridWidth->Disconnect(
"Selected(Int_t)");
2071 fGridStyle->Disconnect(
"Selected(Int_t)");
2074 fHistFillColor->Disconnect(
"ColorSelected(Pixel_t)");
2075 fHistFillStyle->Disconnect(
"PatternSelected(Style_t)");
2076 fHistLineColor->Disconnect(
"ColorSelected(Pixel_t)");
2077 fHistLineWidth->Disconnect(
"Selected(Int_t)");
2078 fHistLineStyle->Disconnect(
"Selected(Int_t)");
2079 fBarWidth->Disconnect(
"ValueSet(Long_t)");
2080 fBarOffset->Disconnect(
"ValueSet(Long_t)");
2081 fHistMinimumZero->Disconnect(
"Toggled(Bool_t)");
2082 fPaintTextFormat->Disconnect(
"TextChanged(const char *)");
2083 fNumberContours->Disconnect(
"ValueSet(Long_t)");
2084 fLegoInnerR->Disconnect(
"ValueSet(Long_t)");
2085 fFrameFillColor->Disconnect(
"ColorSelected(Pixel_t)");
2086 fFrameFillStyle->Disconnect(
"PatternSelected(Style_t)");
2087 fFrameLineColor->Disconnect(
"ColorSelected(Pixel_t)");
2088 fFrameLineWidth->Disconnect(
"Selected(Int_t)");
2089 fFrameLineStyle->Disconnect(
"Selected(Int_t)");
2090 fPaletteEdit->Disconnect(
"Clicked()");
2091 fFrameBorderMode->Disconnect(
"Clicked(Int_t)");
2092 fFrameBorderSize->Disconnect(
"Selected(Int_t)");
2093 fFuncColor->Disconnect(
"ColorSelected(Pixel_t)");
2094 fFuncWidth->Disconnect(
"Selected(Int_t)");
2095 fFuncStyle->Disconnect(
"Selected(Int_t)");
2096 fDrawBorder->Disconnect(
"Toggled(Bool_t)");
2097 fEndErrorSize->Disconnect(
"ValueSet(Long_t)");
2098 fErrorX->Disconnect(
"ValueSet(Long_t)");
2101 fTimeOffsetDate->Disconnect(
"ValueSet(Long_t)");
2102 fTimeOffsetTime->Disconnect(
"ValueSet(Long_t)");
2103 fStripDecimals->Disconnect(
"Toggled(Bool_t)");
2104 fApplyOnXYZ->Disconnect(
"Clicked()");
2105 fXTitleSize->Disconnect(
"ValueSet(Long_t)");
2106 fXTitleColor->Disconnect(
"ColorSelected(Pixel_t)");
2107 fXTitleOffset->Disconnect(
"ValueSet(Long_t)");
2108 fXTitleFont->Disconnect(
"Selected(Int_t)");
2109 fXLabelSize->Disconnect(
"ValueSet(Long_t)");
2110 fXLabelColor->Disconnect(
"ColorSelected(Pixel_t)");
2111 fXLabelOffset->Disconnect(
"ValueSet(Long_t)");
2112 fXLabelFont->Disconnect(
"Selected(Int_t)");
2113 fXAxisColor->Disconnect(
"ColorSelected(Pixel_t)");
2114 fXTickLength->Disconnect(
"ValueSet(Long_t)");
2115 fOptLogx->Disconnect(
"Toggled(Bool_t)");
2116 fXNdivMain->Disconnect(
"ValueSet(Long_t)");
2117 fXNdivSub->Disconnect(
"ValueSet(Long_t)");
2118 fXNdivSubSub->Disconnect(
"ValueSet(Long_t)");
2119 fXNdivisionsOptimize->Disconnect(
"Toggled(Bool_t)");
2120 fYTitleSize->Disconnect(
"ValueSet(Long_t)");
2121 fYTitleColor->Disconnect(
"ColorSelected(Pixel_t)");
2122 fYTitleOffset->Disconnect(
"ValueSet(Long_t)");
2123 fYTitleFont->Disconnect(
"Selected(Int_t)");
2124 fYLabelSize->Disconnect(
"ValueSet(Long_t)");
2125 fYLabelColor->Disconnect(
"ColorSelected(Pixel_t)");
2126 fYLabelOffset->Disconnect(
"ValueSet(Long_t)");
2127 fYLabelFont->Disconnect(
"Selected(Int_t)");
2128 fYAxisColor->Disconnect(
"ColorSelected(Pixel_t)");
2129 fYTickLength->Disconnect(
"ValueSet(Long_t)");
2130 fOptLogy->Disconnect(
"Toggled(Bool_t)");
2131 fYNdivMain->Disconnect(
"ValueSet(Long_t)");
2132 fYNdivSub->Disconnect(
"ValueSet(Long_t)");
2133 fYNdivSubSub->Disconnect(
"ValueSet(Long_t)");
2134 fYNdivisionsOptimize->Disconnect(
"Toggled(Bool_t)");
2135 fZTitleSize->Disconnect(
"ValueSet(Long_t)");
2136 fZTitleColor->Disconnect(
"ColorSelected(Pixel_t)");
2137 fZTitleOffset->Disconnect(
"ValueSet(Long_t)");
2138 fZTitleFont->Disconnect(
"Selected(Int_t)");
2139 fZLabelSize->Disconnect(
"ValueSet(Long_t)");
2140 fZLabelColor->Disconnect(
"ColorSelected(Pixel_t)");
2141 fZLabelOffset->Disconnect(
"ValueSet(Long_t)");
2142 fZLabelFont->Disconnect(
"Selected(Int_t)");
2143 fZAxisColor->Disconnect(
"ColorSelected(Pixel_t)");
2144 fZTickLength->Disconnect(
"ValueSet(Long_t)");
2145 fOptLogz->Disconnect(
"Toggled(Bool_t)");
2146 fZNdivMain->Disconnect(
"ValueSet(Long_t)");
2147 fZNdivSub->Disconnect(
"ValueSet(Long_t)");
2148 fZNdivSubSub->Disconnect(
"ValueSet(Long_t)");
2149 fZNdivisionsOptimize->Disconnect(
"Toggled(Bool_t)");
2152 fOptTitle->Disconnect(
"Toggled(Bool_t)");
2153 fTitleColor->Disconnect(
"ColorSelected(Pixel_t)");
2154 fTitleStyle->Disconnect(
"PatternSelected(Style_t)");
2155 fTitleTextColor->Disconnect(
"ColorSelected(Pixel_t)");
2156 fTitleFontSize->Disconnect(
"ValueSet(Long_t)");
2157 fTitleFont->Disconnect(
"Selected(Int_t)");
2158 fTitleAlign->Disconnect(
"Selected(Int_t)");
2159 fTitleBorderSize->Disconnect(
"Selected(Int_t)");
2160 fTitleX->Disconnect(
"ValueSet(Long_t)");
2161 fTitleY->Disconnect(
"ValueSet(Long_t)");
2162 fTitleW->Disconnect(
"ValueSet(Long_t)");
2163 fTitleH->Disconnect(
"ValueSet(Long_t)");
2164 fLegendBorderSize->Disconnect(
"Selected(Int_t)");
2167 fStatColor->Disconnect(
"ColorSelected(Pixel_t)");
2168 fStatStyle->Disconnect(
"PatternSelected(Style_t)");
2169 fStatTextColor->Disconnect(
"ColorSelected(Pixel_t)");
2170 fStatFontSize->Disconnect(
"ValueSet(Long_t)");
2171 fStatFont->Disconnect(
"Selected(Int_t)");
2172 fStatX->Disconnect(
"ValueSet(Long_t)");
2173 fStatY->Disconnect(
"ValueSet(Long_t)");
2174 fStatW->Disconnect(
"ValueSet(Long_t)");
2175 fStatH->Disconnect(
"ValueSet(Long_t)");
2176 fStatBorderSize->Disconnect(
"Selected(Int_t)");
2177 fOptStatName->Disconnect(
"Toggled(Bool_t)");
2178 fOptStatEntries->Disconnect(
"Toggled(Bool_t)");
2179 fOptStatOverflow->Disconnect(
"Toggled(Bool_t)");
2180 fOptStatMean->Disconnect(
"Toggled(Bool_t)");
2181 fOptStatUnderflow->Disconnect(
"Toggled(Bool_t)");
2182 fOptStatRMS->Disconnect(
"Toggled(Bool_t)");
2183 fOptStatSkewness->Disconnect(
"Toggled(Bool_t)");
2184 fOptStatIntegral->Disconnect(
"Toggled(Bool_t)");
2185 fOptStatKurtosis->Disconnect(
"Toggled(Bool_t)");
2186 fOptStatErrors->Disconnect(
"Toggled(Bool_t)");
2187 fStatFormat->Disconnect(
"TextChanged(const char *)");
2188 fOptFitValues->Disconnect(
"Toggled(Bool_t)");
2189 fOptFitErrors->Disconnect(
"Toggled(Bool_t)");
2190 fOptFitProbability->Disconnect(
"Toggled(Bool_t)");
2191 fOptFitChi->Disconnect(
"Toggled(Bool_t)");
2192 fFitFormat->Disconnect(
"TextChanged(const char *)");
2195 fHeaderPS->Disconnect(
"TextChanged(const char *)");
2196 fTitlePS->Disconnect(
"TextChanged(const char *)");
2197 fColorModelPS->Disconnect(
"Clicked(Int_t)");
2198 fLineScalePS->Disconnect(
"ValueSet(Long_t)");
2199 fPaperSizePredef->Disconnect(
"Selected(Int_t)");
2200 fPaperSizeX->Disconnect(
"ValueSet(Long_t)");
2201 fPaperSizeY->Disconnect(
"ValueSet(Long_t)");
2210 void TStyleManager::DoEditor()
2212 fStyleChanged = kTRUE;
2218 if (fRealTimePreview)
2219 DoEditionUpdatePreview();
2226 void TStyleManager::AddEdition(TGCompositeFrame *p)
2228 TGLayoutHints *layout1 =
new TGLayoutHints(kLHintsExpandX, 8, 8, 5, 5);
2229 fTrashListLayout->Add(layout1);
2230 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsExpandX, 10, 10);
2231 fTrashListLayout->Add(layout2);
2233 fEditionFrame =
new TGVerticalFrame(p);
2234 fEditionFrame->ChangeOptions(kRaisedFrame);
2236 fEditionTab =
new TGTab(fEditionFrame, 200, 150);
2237 fEditionTab->Associate(
this);
2238 CreateTabGeneral(fEditionTab->AddTab(
"General"));
2239 CreateTabCanvas(fEditionTab->AddTab(
"Canvas"));
2240 CreateTabPad(fEditionTab->AddTab(
"Pad"));
2241 CreateTabHistos(fEditionTab->AddTab(
"Histograms"));
2242 CreateTabAxis(fEditionTab->AddTab(
"Axis"));
2243 CreateTabTitle(fEditionTab->AddTab(
"Title"));
2244 CreateTabStats(fEditionTab->AddTab(
"Stats"));
2245 CreateTabPsPdf(fEditionTab->AddTab(
"PS / PDF"));
2246 fEditionFrame->AddFrame(fEditionTab, layout1);
2248 fEditionButtonFrame =
new TGHorizontalFrame(fEditionFrame);
2249 fEditionHelp =
new TGTextButton(fEditionButtonFrame,
"He&lp", kEditButHelp);
2250 fEditionHelp->Associate(
this);
2251 fEditionButtonFrame->AddFrame(fEditionHelp, layout1);
2252 fEditionUpdatePreview =
new TGTextButton(fEditionButtonFrame,
"&Update Preview", kEditButUpPrev);
2253 fEditionUpdatePreview->Associate(
this);
2254 fEditionUpdatePreview->SetEnabled(kFALSE);
2255 fEditionButtonFrame->AddFrame(fEditionUpdatePreview, layout1);
2256 fEditionReset =
new TGTextButton(fEditionButtonFrame,
"&Reset", kEditButReset);
2257 fEditionReset->Associate(
this);
2258 fEditionButtonFrame->AddFrame(fEditionReset, layout1);
2259 fEditionFrame->AddFrame(fEditionButtonFrame, layout1);
2261 p->AddFrame(fEditionFrame, layout1);
2263 fEditionHelp->SetToolTipText(
"Help about the current tab");
2264 fEditionUpdatePreview->SetToolTipText(
"Force the refresh of the preview window");
2265 fEditionReset->SetToolTipText(
"Reset the selected style");
2271 void TStyleManager::CreateTabGeneral(TGCompositeFrame *tab)
2273 TGLayoutHints *layout =
new TGLayoutHints(kLHintsExpandX, 10, 21, 5, 5);
2274 fTrashListLayout->Add(layout);
2276 TGHorizontalFrame *h1 =
new TGHorizontalFrame(tab);
2277 fTrashListFrame->AddFirst(h1);
2280 tab->AddFrame(h1, fLayoutExpandX);
2282 TGHorizontalFrame *h2 =
new TGHorizontalFrame(tab);
2283 fTrashListFrame->AddFirst(h2);
2285 TGVerticalFrame *v =
new TGVerticalFrame(h2);
2286 fTrashListFrame->AddFirst(v);
2287 AddGeneralMarker(v);
2288 TGHorizontalFrame *h3 =
new TGHorizontalFrame(v);
2289 fTrashListFrame->AddFirst(h3);
2290 fScreenFactor = AddNumberEntry(h3, 0, 0, 0, kGeneralScreenFactor,
2291 "Screen factor:", 0, 6, TGNumberFormat::kNESRealOne,
2292 TGNumberFormat::kNEAPositive,
2293 TGNumberFormat::kNELLimitMinMax, 0.2, 5);
2294 v->AddFrame(h3, layout);
2295 h2->AddFrame(v, fLayoutExpandXY);
2296 tab->AddFrame(h2, fLayoutExpandX);
2298 fScreenFactor->GetNumberEntry()->SetToolTipText(
"Coefficient for different screen's resolutions");
2304 void TStyleManager::AddGeneralFill(TGCompositeFrame *f)
2306 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsExpandX, 5, 0, 5, 5);
2307 fTrashListLayout->Add(layout2);
2309 TGGroupFrame *gf =
new TGGroupFrame(f,
"Fill");
2310 fTrashListFrame->AddFirst(gf);
2311 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
2312 fTrashListFrame->AddFirst(h1);
2313 fFillColor = AddColorEntry(h1, kGeneralFillColor);
2314 fFillStyle = AddFillStyleEntry(h1, kGeneralFillStyle);
2315 gf->AddFrame(h1, fLayoutExpandX);
2316 AddTitle(gf,
"Hatchings");
2317 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
2318 fTrashListFrame->AddFirst(h2);
2319 fHatchesLineWidth = AddLineWidthEntry(h2, kGeneralHatchesLineWidth);
2320 fHatchesSpacing = AddNumberEntry(h2, 0, 5, 0, kGeneralHatchesSpacing,
2321 "", 0, 5, TGNumberFormat::kNESRealOne,
2322 TGNumberFormat::kNEAAnyNumber,
2323 TGNumberFormat::kNELLimitMinMax, 0.1, 5);
2324 gf->AddFrame(h2, layout2);
2325 f->AddFrame(gf, fLayoutExpandXYMargin);
2330 fHatchesSpacing->GetNumberEntry()->SetToolTipText(
"Spacing between the hatching's lines");
2336 void TStyleManager::AddGeneralLine(TGCompositeFrame *f)
2338 TGGroupFrame *gf =
new TGGroupFrame(f,
"Line");
2339 fTrashListFrame->AddFirst(gf);
2340 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
2341 fTrashListFrame->AddFirst(h);
2342 fLineColor = AddColorEntry(h, kGeneralLineColor);
2343 fLineWidth = AddLineWidthEntry(h, kGeneralLineWidth);
2344 gf->AddFrame(h, fLayoutExpandX);
2345 fLineStyle = AddLineStyleEntry(gf, kGeneralLineStyle);
2346 fLineStyleEdit = AddTextButton(gf,
"Lines' Style Editor...", kGeneralLineStyleEdit);
2347 fLineStyleEdit->SetEnabled(kFALSE);
2348 f->AddFrame(gf, fLayoutExpandXYMargin);
2357 void TStyleManager::AddGeneralText(TGCompositeFrame *f)
2359 TGGroupFrame *gf =
new TGGroupFrame(f,
"Text");
2360 fTrashListFrame->AddFirst(gf);
2361 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
2362 fTrashListFrame->AddFirst(h1);
2363 fTextColor = AddColorEntry(h1, kGeneralTextColor);
2364 fTextFont = AddFontTypeEntry(h1, kGeneralTextFont);
2365 gf->AddFrame(h1, fLayoutExpandX);
2366 fTextAlign = AddTextAlignEntry(gf, kGeneralTextAlign);
2367 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
2368 fTrashListFrame->AddFirst(h2);
2369 fTextSizeInPixels = AddCheckButton(h2,
"Pixels", kGeneralTextSizeInPixels);
2370 fTextSize = AddNumberEntry(h2, 21, 10, 0, kGeneralTextSize,
"Size:", 0, 5,
2371 TGNumberFormat::kNESRealThree,
2372 TGNumberFormat::kNEAAnyNumber,
2373 TGNumberFormat::kNELLimitMinMax, 0, 0.3);
2374 gf->AddFrame(h2, fLayoutExpandX);
2375 fTextAngle = AddNumberEntry(gf, 0, 0, 0, kGeneralTextAngle,
"Angle:",
2376 0, 5, TGNumberFormat::kNESInteger,
2377 TGNumberFormat::kNEAAnyNumber,
2378 TGNumberFormat::kNELLimitMinMax, -180, 180);
2379 f->AddFrame(gf, fLayoutExpandXYMargin);
2383 fTextSizeInPixels->SetToolTipText(
"Set the text size in pixels if selected, otherwise - in % of pad.");
2384 fTextSize->GetNumberEntry()->SetToolTipText(
"General text size (in pixels or in % of pad)");
2385 fTextAngle->GetNumberEntry()->SetToolTipText(
"General text angle");
2391 void TStyleManager::AddGeneralMarker(TGCompositeFrame *f)
2393 TGGroupFrame *gf =
new TGGroupFrame(f,
"Marker");
2394 fTrashListFrame->AddFirst(gf);
2395 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
2396 fTrashListFrame->AddFirst(h);
2397 fMarkerColor = AddColorEntry(h, kGeneralMarkerColor);
2398 fMarkerStyle = AddMarkerStyleEntry(h, kGeneralMarkerStyle);
2399 fMarkerSize = AddMarkerSizeEntry(h, kGeneralMarkerSize);
2400 gf->AddFrame(h, fLayoutExpandX);
2401 f->AddFrame(gf, fLayoutExpandXMargin);
2411 void TStyleManager::CreateTabCanvas(TGCompositeFrame *tab)
2413 TGHorizontalFrame *h =
new TGHorizontalFrame(tab);
2414 fTrashListFrame->AddFirst(h);
2415 TGVerticalFrame *v1 =
new TGVerticalFrame(h);
2416 fTrashListFrame->AddFirst(v1);
2418 AddCanvasGeometry(v1);
2419 AddCanvasBorder(v1);
2420 h->AddFrame(v1, fLayoutExpandXY);
2421 TGVerticalFrame *v2 =
new TGVerticalFrame(h);
2422 fTrashListFrame->AddFirst(v2);
2424 h->AddFrame(v2, fLayoutExpandXY);
2425 tab->AddFrame(h, fLayoutExpandX);
2431 void TStyleManager::AddCanvasFill(TGCompositeFrame *f)
2433 TGGroupFrame *gf =
new TGGroupFrame(f,
"Fill");
2434 fTrashListFrame->AddFirst(gf);
2435 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
2436 fTrashListFrame->AddFirst(h);
2437 fCanvasColor = AddColorEntry(h, kCanvasColor);
2438 gf->AddFrame(h, fLayoutExpandX);
2439 f->AddFrame(gf, fLayoutExpandXMargin);
2448 void TStyleManager::AddCanvasGeometry(TGCompositeFrame *f)
2450 TGGroupFrame *gf =
new TGGroupFrame(f,
"Geometry");
2451 fTrashListFrame->AddFirst(gf);
2452 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
2453 fTrashListFrame->AddFirst(h1);
2454 fCanvasDefX = AddNumberEntry(h1, 0, 9, 0, kCanvasDefX,
"X:",
2455 0, 5, TGNumberFormat::kNESInteger,
2456 TGNumberFormat::kNEAPositive,
2457 TGNumberFormat::kNELLimitMinMax, 0, 5000);
2458 fCanvasDefY = AddNumberEntry(h1, 7, 8, 0, kCanvasDefY,
"Y:",
2459 0, 5, TGNumberFormat::kNESInteger,
2460 TGNumberFormat::kNEAPositive,
2461 TGNumberFormat::kNELLimitMinMax, 0, 5000);
2462 gf->AddFrame(h1, fLayoutExpandX);
2464 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
2465 fTrashListFrame->AddFirst(h2);
2466 fCanvasDefW = AddNumberEntry(h2, 0, 7, 0, kCanvasDefW,
"W:",
2467 0, 5, TGNumberFormat::kNESInteger,
2468 TGNumberFormat::kNEAPositive,
2469 TGNumberFormat::kNELLimitMinMax, 0, 5000);
2470 fCanvasDefH = AddNumberEntry(h2, 7, 8, 0, kCanvasDefH,
"H:",
2471 0, 5, TGNumberFormat::kNESInteger,
2472 TGNumberFormat::kNEAPositive,
2473 TGNumberFormat::kNELLimitMinMax, 0, 5000);
2474 gf->AddFrame(h2, fLayoutExpandX);
2475 f->AddFrame(gf, fLayoutExpandXMargin);
2477 fCanvasDefX->GetNumberEntry()->SetToolTipText(
"Canvases' default abscissa");
2478 fCanvasDefY->GetNumberEntry()->SetToolTipText(
"Canvases' default ordinate");
2479 fCanvasDefW->GetNumberEntry()->SetToolTipText(
"Canvases' default width");
2480 fCanvasDefH->GetNumberEntry()->SetToolTipText(
"Canvases' default height");
2486 void TStyleManager::AddCanvasBorder(TGCompositeFrame *f)
2488 fCanvasBorderMode = AddBorderModeEntry(f, kCanvasBorderModeSunken, kCanvasBorderModeNone, kCanvasBorderModeRaised);
2489 fCanvasBorderSize = AddLineWidthEntry(fCanvasBorderMode, kCanvasBorderSize);
2495 void TStyleManager::AddCanvasDate(TGCompositeFrame *f)
2497 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsExpandX, 10);
2498 fTrashListLayout->Add(layout2);
2500 TGGroupFrame *gf =
new TGGroupFrame(f,
"Date");
2501 fTrashListFrame->AddFirst(gf);
2502 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
2503 fTrashListFrame->AddFirst(h1);
2504 fOptDateBool = AddCheckButton(h1,
"Show", kCanvasOptDateBool, 23);
2505 fAttDateTextColor = AddColorEntry(h1, kCanvasAttDateTextColor);
2506 gf->AddFrame(h1, fLayoutExpandX);
2507 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
2508 fTrashListFrame->AddFirst(h2);
2509 fAttDateTextSizeInPixels = AddCheckButton(h2,
"Pixels", kCanvasAttDateTextSizeInPixels);
2510 fAttDateTextSize = AddNumberEntry(h2, 22, 10, 0, kCanvasAttDateTextSize,
"Size:", 0, 5,
2511 TGNumberFormat::kNESRealThree,
2512 TGNumberFormat::kNEAAnyNumber,
2513 TGNumberFormat::kNELLimitMinMax, 0, 0.3);
2514 gf->AddFrame(h2, fLayoutExpandX);
2515 fOptDateFormat = AddDateFormatEntry(gf, kCanvasOptDateFormat);
2516 fAttDateTextFont = AddFontTypeEntry(gf, kCanvasAttDateTextFont);
2517 fAttDateTextAlign = AddTextAlignEntry(gf, kCanvasAttDateTextAlign);
2518 fAttDateTextAngle = AddNumberEntry(gf, 0, 0, 0, kCanvasAttDateTextAngle,
2519 "Angle:", 0, 6, TGNumberFormat::kNESInteger,
2520 TGNumberFormat::kNEAAnyNumber,
2521 TGNumberFormat::kNELLimitMinMax, -180, 180);
2522 AddTitle(gf,
"Position");
2523 TGVerticalFrame *h3 =
new TGVerticalFrame(gf);
2524 fTrashListFrame->AddFirst(h3);
2525 fDateX = AddNumberEntry(h3, 0, 0, 0, kCanvasDateX,
"X (% of Pad):",
2526 0, 6, TGNumberFormat::kNESInteger,
2527 TGNumberFormat::kNEAAnyNumber,
2528 TGNumberFormat::kNELLimitMinMax, 0, 100);
2529 fDateY = AddNumberEntry(h3, 0, 0, 0, kCanvasDateY,
"Y (% of Pad):",
2530 0, 6, TGNumberFormat::kNESInteger,
2531 TGNumberFormat::kNEAAnyNumber,
2532 TGNumberFormat::kNELLimitMinMax, 0, 100);
2533 gf->AddFrame(h3, layout2);
2534 f->AddFrame(gf, fLayoutExpandXYMargin);
2536 fOptDateBool->SetToolTipText(
"Show / Hide the date in canvases");
2539 fAttDateTextSizeInPixels->SetToolTipText(
"Set the date text size in pixels if selected, otherwise - in % of pad");
2540 fAttDateTextSize->GetNumberEntry()->SetToolTipText(
"Date text size (in pixels or in % of pad)");
2541 fAttDateTextAngle->GetNumberEntry()->SetToolTipText(
"Date text angle");
2542 fDateX->GetNumberEntry()->SetToolTipText(
"Date abscissa in percent of pad");
2543 fDateY->GetNumberEntry()->SetToolTipText(
"Date ordinate in percent of pad");
2549 void TStyleManager::CreateTabPad(TGCompositeFrame *tab)
2551 TGHorizontalFrame *h1 =
new TGHorizontalFrame(tab);
2552 fTrashListFrame->AddFirst(h1);
2554 TGVerticalFrame *v =
new TGVerticalFrame(h1);
2555 fTrashListFrame->AddFirst(v);
2558 h1->AddFrame(v, fLayoutExpandXY);
2559 tab->AddFrame(h1, fLayoutExpandX);
2560 TGHorizontalFrame *h2 =
new TGHorizontalFrame(tab);
2561 fTrashListFrame->AddFirst(h2);
2564 tab->AddFrame(h2, fLayoutExpandX);
2570 void TStyleManager::AddPadMargin(TGCompositeFrame *f)
2572 TGGroupFrame *gf =
new TGGroupFrame(f,
"Margin (% of Pad)");
2573 fTrashListFrame->AddFirst(gf);
2574 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
2575 fTrashListFrame->AddFirst(h1);
2576 fPadLeftMargin = AddNumberEntry(h1, 0, 5, 0, kPadLeftMargin,
"Left:",
2577 0, 3, TGNumberFormat::kNESInteger,
2578 TGNumberFormat::kNEAAnyNumber,
2579 TGNumberFormat::kNELLimitMinMax, 0, 99);
2580 fPadRightMargin = AddNumberEntry(h1, 0, 0, 0, kPadRightMargin,
"Right:",
2581 0, 3, TGNumberFormat::kNESInteger,
2582 TGNumberFormat::kNEAAnyNumber,
2583 TGNumberFormat::kNELLimitMinMax, 0, 99);
2584 gf->AddFrame(h1, fLayoutExpandXY);
2585 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
2586 fTrashListFrame->AddFirst(h2);
2587 fPadTopMargin = AddNumberEntry(h2, 0, 5, 0, kPadTopMargin,
"Top:",
2588 0, 3, TGNumberFormat::kNESInteger,
2589 TGNumberFormat::kNEAAnyNumber,
2590 TGNumberFormat::kNELLimitMinMax, 0, 99);
2591 fPadBottomMargin = AddNumberEntry(h2, 0, 0, 0, kPadBottomMargin,
"Bottom:",
2592 0, 3, TGNumberFormat::kNESInteger,
2593 TGNumberFormat::kNEAAnyNumber,
2594 TGNumberFormat::kNELLimitMinMax, 0, 99);
2595 gf->AddFrame(h2, fLayoutExpandXY);
2596 f->AddFrame(gf, fLayoutExpandXYMargin);
2598 fPadLeftMargin->GetNumberEntry()->SetToolTipText(
"Pads' left margin");
2599 fPadRightMargin->GetNumberEntry()->SetToolTipText(
"Pads' right margin");
2600 fPadTopMargin->GetNumberEntry()->SetToolTipText(
"Pads' top margin");
2601 fPadBottomMargin->GetNumberEntry()->SetToolTipText(
"Pads' bottom margin");
2607 void TStyleManager::AddPadBorder(TGCompositeFrame *f)
2609 fPadBorderMode = AddBorderModeEntry(f, kPadBorderModeSunken, kPadBorderModeNone, kPadBorderModeRaised);
2610 fPadBorderSize = AddLineWidthEntry(fPadBorderMode, kPadBorderSize);
2616 void TStyleManager::AddPadFill(TGCompositeFrame *f)
2618 TGGroupFrame *gf =
new TGGroupFrame(f,
"Fill");
2619 fTrashListFrame->AddFirst(gf);
2620 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
2621 fTrashListFrame->AddFirst(h);
2622 fPadColor = AddColorEntry(h, kPadColor);
2623 gf->AddFrame(h, fLayoutExpandX);
2624 f->AddFrame(gf, fLayoutExpandXYMargin);
2633 void TStyleManager::AddPadTicks(TGCompositeFrame *f)
2635 TGGroupFrame *gf =
new TGGroupFrame(f,
"Ticks");
2636 fTrashListFrame->AddFirst(gf);
2637 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
2638 fTrashListFrame->AddFirst(h);
2639 TGHorizontalFrame *h1 =
new TGHorizontalFrame(h);
2640 fTrashListFrame->AddFirst(h1);
2641 fPadTickX = AddCheckButton(h1,
"Along X", kPadTickX);
2642 h->AddFrame(h1, fLayoutExpandX);
2643 TGHorizontalFrame *h2 =
new TGHorizontalFrame(h);
2644 fTrashListFrame->AddFirst(h2);
2645 fPadTickY = AddCheckButton(h2,
"Along Y", kPadTickY);
2646 h->AddFrame(h2, fLayoutExpandX);
2647 gf->AddFrame(h, fLayoutExpandX);
2648 f->AddFrame(gf, fLayoutExpandXYMargin);
2650 fPadTickX->SetToolTipText(
"Show / Hide the ticks along X");
2651 fPadTickY->SetToolTipText(
"Show / Hide the ticks along Y");
2657 void TStyleManager::AddPadGrid(TGCompositeFrame *f)
2659 TGGroupFrame *gf =
new TGGroupFrame(f,
"Grid");
2660 fTrashListFrame->AddFirst(gf);
2661 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
2662 fTrashListFrame->AddFirst(h1);
2663 TGHorizontalFrame *h10 =
new TGHorizontalFrame(h1);
2664 fTrashListFrame->AddFirst(h10);
2665 fPadGridX = AddCheckButton(h10,
"Along X", kPadGridX);
2666 h1->AddFrame(h10, fLayoutExpandX);
2667 TGHorizontalFrame *h20 =
new TGHorizontalFrame(h1);
2668 fTrashListFrame->AddFirst(h20);
2669 fPadGridY = AddCheckButton(h20,
"Along Y", kPadGridY);
2670 h1->AddFrame(h20, fLayoutExpandX);
2671 gf->AddFrame(h1, fLayoutExpandX);
2672 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
2673 fTrashListFrame->AddFirst(h2);
2674 fGridColor = AddColorEntry(h2, kPadGridColor);
2675 fGridWidth = AddLineWidthEntry(h2, kPadGridWidth);
2676 gf->AddFrame(h2, fLayoutExpandX);
2677 fGridStyle = AddLineStyleEntry(gf, kPadGridStyle);
2678 f->AddFrame(gf, fLayoutExpandXYMargin);
2682 fPadGridX->SetToolTipText(
"Show / Hide the grid along X");
2683 fPadGridY->SetToolTipText(
"Show / Hide the grid along Y");
2689 void TStyleManager::CreateTabHistos(TGCompositeFrame *tab)
2691 fHistosTab =
new TGTab(tab, 1, 1);
2692 fHistosTab->Associate(
this);
2693 CreateTabHistosHistos(fHistosTab->AddTab(
"Histos"));
2694 CreateTabHistosFrames(fHistosTab->AddTab(
"Frames"));
2695 CreateTabHistosGraphs(fHistosTab->AddTab(
"Graphs"));
2696 tab->AddFrame(fHistosTab, fLayoutExpandXY);
2702 void TStyleManager::CreateTabHistosHistos(TGCompositeFrame *tab)
2704 TGHorizontalFrame *h1 =
new TGHorizontalFrame(tab);
2705 fTrashListFrame->AddFirst(h1);
2706 AddHistosHistosFill(h1);
2707 AddHistosHistosContours(h1);
2708 tab->AddFrame(h1, fLayoutExpandX);
2710 TGHorizontalFrame *h2 =
new TGHorizontalFrame(tab);
2711 fTrashListFrame->AddFirst(h2);
2712 AddHistosHistosLine(h2);
2713 AddHistosHistosAxis(h2);
2714 tab->AddFrame(h2, fLayoutExpandX);
2716 TGHorizontalFrame *h3 =
new TGHorizontalFrame(tab);
2717 fTrashListFrame->AddFirst(h3);
2718 AddHistosHistosBar(h3);
2719 AddHistosHistosLegoInnerR(h3);
2720 tab->AddFrame(h3, fLayoutExpandX);
2726 void TStyleManager::AddHistosHistosFill(TGCompositeFrame *f)
2728 TGGroupFrame *gf =
new TGGroupFrame(f,
"Fill");
2729 fTrashListFrame->AddFirst(gf);
2730 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
2731 fTrashListFrame->AddFirst(h1);
2732 fHistFillColor = AddColorEntry(h1, kHistFillColor);
2733 fHistFillStyle = AddFillStyleEntry(h1, kHistFillStyle);
2734 gf->AddFrame(h1, fLayoutExpandX);
2735 f->AddFrame(gf, fLayoutExpandXYMargin);
2745 void TStyleManager::AddHistosHistosLine(TGCompositeFrame *f)
2747 TGGroupFrame *gf =
new TGGroupFrame(f,
"Line");
2748 fTrashListFrame->AddFirst(gf);
2749 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
2750 fTrashListFrame->AddFirst(h);
2751 fHistLineColor = AddColorEntry(h, kHistLineColor);
2752 fHistLineWidth = AddLineWidthEntry(h, kHistLineWidth);
2753 gf->AddFrame(h, fLayoutExpandX);
2754 fHistLineStyle = AddLineStyleEntry(gf, kHistLineStyle);
2755 f->AddFrame(gf, fLayoutExpandXYMargin);
2764 void TStyleManager::AddHistosHistosBar(TGCompositeFrame *f)
2766 TGGroupFrame *gf =
new TGGroupFrame(f,
"Bar");
2767 fTrashListFrame->AddFirst(gf);
2768 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
2769 fTrashListFrame->AddFirst(h);
2770 fBarWidth = AddNumberEntry(h, 0, 5, 0, kHistBarWidth,
"W:",
2771 0, 5, TGNumberFormat::kNESRealTwo,
2772 TGNumberFormat::kNEAAnyNumber,
2773 TGNumberFormat::kNELLimitMinMax, 0, 5);
2774 fBarOffset = AddNumberEntry(h, 8, 5, 0, kHistBarOffset,
"O:",
2775 0, 5, TGNumberFormat::kNESRealTwo,
2776 TGNumberFormat::kNEAAnyNumber,
2777 TGNumberFormat::kNELLimitMinMax, 0, 5);
2778 gf->AddFrame(h, fLayoutExpandX);
2779 f->AddFrame(gf, fLayoutExpandXYMargin);
2781 fBarWidth->GetNumberEntry()->SetToolTipText(
"Width of bars");
2782 fBarOffset->GetNumberEntry()->SetToolTipText(
"Offset of bars");
2788 void TStyleManager::AddHistosHistosContours(TGCompositeFrame *f)
2790 TGGroupFrame *gf =
new TGGroupFrame(f,
"Contours");
2791 fTrashListFrame->AddFirst(gf);
2792 fNumberContours = AddNumberEntry(gf, 0, 0, 0, kHistNumberContours,
"Number:",
2793 0, 5, TGNumberFormat::kNESInteger,
2794 TGNumberFormat::kNEAAnyNumber,
2795 TGNumberFormat::kNELLimitMinMax, 0, 99);
2796 f->AddFrame(gf, fLayoutExpandXYMargin);
2798 fNumberContours->GetNumberEntry()->SetToolTipText(
"Number of level lines to draw");
2804 void TStyleManager::AddHistosHistosAxis(TGCompositeFrame *f)
2806 TGGroupFrame *gf =
new TGGroupFrame(f,
"Axis");
2807 fTrashListFrame->AddFirst(gf);
2808 fHistMinimumZero = AddCheckButton(gf,
"Minimum zero", kHistMinimumZero);
2809 fPaintTextFormat = AddTextEntry(gf,
"Paint format:", kHistPaintTextFormat);
2810 f->AddFrame(gf, fLayoutExpandXYMargin);
2812 fHistMinimumZero->SetToolTipText(
"Set to zero / Compute the minimum of axis range");
2813 fPaintTextFormat->SetToolTipText(
"Paint format of the axis labels in histograms");
2819 void TStyleManager::AddHistosHistosLegoInnerR(TGCompositeFrame *f)
2821 TGGroupFrame *gf =
new TGGroupFrame(f,
"3D Cylindrical (%)");
2822 fTrashListFrame->AddFirst(gf);
2823 fLegoInnerR = AddNumberEntry(gf, 0, 0, 0, kHistLegoInnerR,
"Inner radius:",
2824 0, 5, TGNumberFormat::kNESInteger,
2825 TGNumberFormat::kNEAAnyNumber,
2826 TGNumberFormat::kNELLimitMinMax, 0, 100);
2827 f->AddFrame(gf, fLayoutExpandXYMargin);
2829 fLegoInnerR->GetNumberEntry()->SetToolTipText(
"Percent of radius allocated to the tube");
2835 void TStyleManager::CreateTabHistosFrames(TGCompositeFrame *tab)
2837 TGLayoutHints *layout =
new TGLayoutHints(kLHintsExpandX, 10, 10, 0, 13);
2838 fTrashListLayout->Add(layout);
2840 TGHorizontalFrame *h1 =
new TGHorizontalFrame(tab);
2841 fTrashListFrame->AddFirst(h1);
2843 TGVerticalFrame *v1 =
new TGVerticalFrame(h1);
2844 fTrashListFrame->AddFirst(v1);
2845 AddHistosFramesFill(v1);
2846 AddHistosFramesLine(v1);
2847 h1->AddFrame(v1, fLayoutExpandXY);
2849 TGVerticalFrame *v2 =
new TGVerticalFrame(h1);
2850 fTrashListFrame->AddFirst(v2);
2851 AddHistosFramesBorder(v2);
2852 TGHorizontalFrame *h2 =
new TGHorizontalFrame(v2);
2853 fTrashListFrame->AddFirst(h2);
2854 fPaletteEdit = AddTextButton(h2,
"Palette Editor...", kFramePaletteEdit);
2855 fPaletteEdit->SetEnabled(kFALSE);
2856 v2->AddFrame(h2, layout);
2857 h1->AddFrame(v2, fLayoutExpandXY);
2859 tab->AddFrame(h1, fLayoutExpandX);
2865 void TStyleManager::AddHistosFramesFill(TGCompositeFrame *f)
2867 TGGroupFrame *gf =
new TGGroupFrame(f,
"Fill");
2868 fTrashListFrame->AddFirst(gf);
2869 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
2870 fTrashListFrame->AddFirst(h1);
2871 fFrameFillColor = AddColorEntry(h1, kFrameFillColor);
2872 fFrameFillStyle = AddFillStyleEntry(h1, kFrameFillStyle);
2873 gf->AddFrame(h1, fLayoutExpandX);
2874 f->AddFrame(gf, fLayoutExpandXMargin);
2884 void TStyleManager::AddHistosFramesLine(TGCompositeFrame *f)
2886 TGGroupFrame *gf =
new TGGroupFrame(f,
"Line");
2887 fTrashListFrame->AddFirst(gf);
2888 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
2889 fTrashListFrame->AddFirst(h);
2890 fFrameLineColor = AddColorEntry(h, kFrameLineColor);
2891 fFrameLineWidth = AddLineWidthEntry(h, kFrameLineWidth);
2892 gf->AddFrame(h, fLayoutExpandX);
2893 fFrameLineStyle = AddLineStyleEntry(gf, kFrameLineStyle);
2894 f->AddFrame(gf, fLayoutExpandXYMargin);
2903 void TStyleManager::AddHistosFramesBorder(TGCompositeFrame *f)
2905 fFrameBorderMode = AddBorderModeEntry(f, kFrameBorderModeSunken, kFrameBorderModeNone, kFrameBorderModeRaised);
2906 fFrameBorderSize = AddLineWidthEntry(fFrameBorderMode, kFrameBorderSize);
2912 void TStyleManager::CreateTabHistosGraphs(TGCompositeFrame *tab)
2914 TGHorizontalFrame *h =
new TGHorizontalFrame(tab);
2915 fTrashListFrame->AddFirst(h);
2916 AddHistosGraphsLine(h);
2917 AddHistosGraphsErrors(h);
2918 tab->AddFrame(h, fLayoutExpandX);
2919 AddHistosGraphsBorder(tab);
2925 void TStyleManager::AddHistosGraphsLine(TGCompositeFrame *f)
2927 TGGroupFrame *gf =
new TGGroupFrame(f,
"Line");
2928 fTrashListFrame->AddFirst(gf);
2929 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
2930 fTrashListFrame->AddFirst(h);
2931 fFuncColor = AddColorEntry(h, kGraphsFuncColor);
2932 fFuncWidth = AddLineWidthEntry(h, kGraphsFuncWidth);
2933 gf->AddFrame(h, fLayoutExpandX);
2934 fFuncStyle = AddLineStyleEntry(gf, kGraphsFuncStyle);
2935 f->AddFrame(gf, fLayoutExpandXMargin);
2944 void TStyleManager::AddHistosGraphsBorder(TGCompositeFrame *f)
2946 TGLayoutHints *layout =
new TGLayoutHints(kLHintsExpandX, 10, 21, 5, 5);
2947 fTrashListLayout->Add(layout);
2949 TGHorizontalFrame *h =
new TGHorizontalFrame(f);
2950 fTrashListFrame->AddFirst(h);
2951 fDrawBorder = AddCheckButton(h,
"Draw Border (for Filled Function)", kGraphsDrawBorder);
2952 f->AddFrame(h, layout);
2954 fDrawBorder->SetToolTipText(
"Show / Hide the border of filled functions");
2960 void TStyleManager::AddHistosGraphsErrors(TGCompositeFrame *f)
2962 TGGroupFrame *gf =
new TGGroupFrame(f,
"Errors");
2963 fTrashListFrame->AddFirst(gf);
2964 fEndErrorSize = AddNumberEntry(gf, 0, 0, 0, kGraphsEndErrorSize,
2965 "End error size:", 0, 4, TGNumberFormat::kNESRealOne,
2966 TGNumberFormat::kNEAAnyNumber,
2967 TGNumberFormat::kNELLimitMinMax, 0, 5);
2968 fErrorX = AddNumberEntry(gf, 0, 0, 0, kGraphsErrorX,
"Error X (% of bin):",
2969 0, 4, TGNumberFormat::kNESInteger,
2970 TGNumberFormat::kNEAAnyNumber,
2971 TGNumberFormat::kNELLimitMinMax, 0, 100);
2972 f->AddFrame(gf, fLayoutExpandXMargin);
2974 fEndErrorSize->GetNumberEntry()->SetToolTipText(
"Size of lines drawn at the end of error bars");
2975 fErrorX->GetNumberEntry()->SetToolTipText(
"Percent of the bin width to use for errors along X");
2981 void TStyleManager::CreateTabAxis(TGCompositeFrame *tab)
2983 TGLayoutHints *layout =
2984 new TGLayoutHints(kLHintsNormal, 10, 13, 3);
2985 fTrashListLayout->Add(layout);
2987 TGHorizontalFrame *h =
new TGHorizontalFrame(tab);
2988 fTrashListFrame->AddFirst(h);
2990 TGVerticalFrame *h3 =
new TGVerticalFrame(h);
2991 fTrashListFrame->AddFirst(h3);
2992 fStripDecimals = AddCheckButton(h3,
"Decimal labels' part", kAxisStripDecimals, 0, 8);
2993 TGVerticalFrame *space =
new TGVerticalFrame(h3);
2994 fTrashListFrame->AddFirst(space);
2995 h3->AddFrame(space, fLayoutExpandXY);
2996 fApplyOnXYZ = AddTextButton(h3,
"Apply on XYZ", kAxisApplyOnXYZ);
2997 h->AddFrame(h3, layout);
2999 TGGroupFrame *gf =
new TGGroupFrame(h,
"Date/Time Offset");
3000 fTrashListFrame->AddFirst(gf);
3001 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3002 fTrashListFrame->AddFirst(h2);
3003 fTimeOffsetDate = AddNumberEntry(h2, 0, 13, 10, kAxisTimeOffsetDate,
"",
3004 0, 10, TGNumberFormat::kNESDayMYear,
3005 TGNumberFormat::kNEAAnyNumber,
3006 TGNumberFormat::kNELNoLimits, 0, 0);
3007 fTimeOffsetTime = AddNumberEntry(h2, 0, 15, 0, kAxisTimeOffsetTime,
"",
3008 0, 8, TGNumberFormat::kNESHourMinSec,
3009 TGNumberFormat::kNEAAnyNumber,
3010 TGNumberFormat::kNELNoLimits, 0, 0);
3011 gf->AddFrame(h2, fLayoutExpandX);
3012 h->AddFrame(gf, fLayoutExpandXMargin);
3013 tab->AddFrame(h, fLayoutExpandX);
3015 fAxisTab =
new TGTab(tab);
3016 fAxisTab->Associate(
this);
3017 CreateTabAxisX(fAxisTab->AddTab(
"X axis"));
3018 CreateTabAxisY(fAxisTab->AddTab(
"Y axis"));
3019 CreateTabAxisZ(fAxisTab->AddTab(
"Z axis"));
3020 tab->AddFrame(fAxisTab, fLayoutExpandXY);
3022 fStripDecimals->SetToolTipText(
"Draw / Hide the decimal part of labels");
3023 fApplyOnXYZ->SetToolTipText(
"Apply settings of the currently selected axis on XYZ");
3024 fTimeOffsetDate->GetNumberEntry()->SetToolTipText(
"Date offset for axis (dd/mm/yyyy)");
3025 fTimeOffsetTime->GetNumberEntry()->SetToolTipText(
"Time offset for axis (hh/mm/ss)");
3031 void TStyleManager::CreateTabAxisX(TGCompositeFrame *tab)
3033 TGHorizontalFrame *h1 =
new TGHorizontalFrame(tab);
3034 fTrashListFrame->AddFirst(h1);
3036 AddAxisXDivisions(h1);
3037 tab->AddFrame(h1, fLayoutExpandX);
3039 TGHorizontalFrame *h2 =
new TGHorizontalFrame(tab);
3040 fTrashListFrame->AddFirst(h2);
3043 tab->AddFrame(h2, fLayoutExpandX);
3049 void TStyleManager::AddAxisXLine(TGCompositeFrame *f)
3051 TGLayoutHints *layout =
new TGLayoutHints(kLHintsExpandX, 20);
3052 fTrashListLayout->Add(layout);
3054 TGGroupFrame *gf =
new TGGroupFrame(f,
"Line");
3055 fTrashListFrame->AddFirst(gf);
3056 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
3057 fTrashListFrame->AddFirst(h);
3058 fXAxisColor = AddColorEntry(h, kAxisXAxisColor);
3059 TGHorizontalFrame *h2 =
new TGHorizontalFrame(h);
3060 fTrashListFrame->AddFirst(h2);
3061 fXTickLength = AddNumberEntry(h2, 3, 8, 0, kAxisXTickLength,
"Ticks:",
3062 0, 5, TGNumberFormat::kNESRealThree,
3063 TGNumberFormat::kNEAAnyNumber,
3064 TGNumberFormat::kNELLimitMinMax, 0, 5);
3065 h->AddFrame(h2, layout);
3066 gf->AddFrame(h, fLayoutExpandX);
3067 fOptLogx = AddCheckButton(gf,
"Logarithmic scale", kAxisOptLogx);
3068 f->AddFrame(gf, fLayoutExpandXYMargin);
3072 fXTickLength->GetNumberEntry()->SetToolTipText(
"Set the ticks' length");
3073 fOptLogx->SetToolTipText(
"Draw logarithmic scale");
3079 void TStyleManager::AddAxisXTitle(TGCompositeFrame *f)
3081 TGGroupFrame *gf =
new TGGroupFrame(f,
"Title");
3082 fTrashListFrame->AddFirst(gf);
3083 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3084 fTrashListFrame->AddFirst(h1);
3085 fXTitleColor = AddColorEntry(h1, kAxisXTitleColor);
3086 fXTitleFont = AddFontTypeEntry(h1, kAxisXTitleFont);
3087 gf->AddFrame(h1, fLayoutExpandX);
3088 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3089 fTrashListFrame->AddFirst(h2);
3090 fXTitleSizeInPixels = AddCheckButton(h2,
"Pixels", kAxisXTitleSizeInPixels);
3091 fXTitleSize = AddNumberEntry(h2, 21, 8, 0, kAxisXTitleSize,
"Size:", 0, 5,
3092 TGNumberFormat::kNESRealThree,
3093 TGNumberFormat::kNEAAnyNumber,
3094 TGNumberFormat::kNELLimitMinMax, 0, 0.3);
3095 gf->AddFrame(h2, fLayoutExpandX);
3096 fXTitleOffset = AddNumberEntry(gf, 68, 8, 0, kAxisXTitleOffset,
"Offset:",
3097 0, 5, TGNumberFormat::kNESRealTwo,
3098 TGNumberFormat::kNEAAnyNumber,
3099 TGNumberFormat::kNELLimitMinMax, 0, 1);
3100 f->AddFrame(gf, fLayoutExpandXMargin);
3104 fXTitleSizeInPixels->SetToolTipText(
"Set the title size in pixels if selected, otherwise - in % of pad");
3105 fXTitleSize->GetNumberEntry()->SetToolTipText(
"Title size (in pixels or in % of pad)");
3106 fXTitleOffset->GetNumberEntry()->SetToolTipText(
"Offset between axis and title");
3112 void TStyleManager::AddAxisXDivisions(TGCompositeFrame *f)
3114 TGGroupFrame *gf =
new TGGroupFrame(f,
"Divisions");
3115 fTrashListFrame->AddFirst(gf);
3117 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3118 fTrashListFrame->AddFirst(h1);
3119 fXNdivSubSub = AddNumberEntry(h1, 0, 0, 0, kAxisXNdivSubSub,
"",
3120 0, 3, TGNumberFormat::kNESInteger,
3121 TGNumberFormat::kNEAAnyNumber,
3122 TGNumberFormat::kNELLimitMinMax, 0, 99);
3123 fXNdivSub = AddNumberEntry(h1, 0, 18, 0, kAxisXNdivSub,
"",
3124 0, 3, TGNumberFormat::kNESInteger,
3125 TGNumberFormat::kNEAAnyNumber,
3126 TGNumberFormat::kNELLimitMinMax, 0, 99);
3127 fXNdivMain = AddNumberEntry(h1, 0, 18, 0, kAxisXNdivMain,
"",
3128 0, 3, TGNumberFormat::kNESInteger,
3129 TGNumberFormat::kNEAAnyNumber,
3130 TGNumberFormat::kNELLimitMinMax, 0, 99);
3131 gf->AddFrame(h1, fLayoutExpandX);
3133 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3134 fTrashListFrame->AddFirst(h2);
3135 fXNdivisionsOptimize = AddCheckButton(h2,
"Optimize", kAxisXNdivisionsOptimize);
3136 gf->AddFrame(h2, fLayoutExpandX);
3137 f->AddFrame(gf, fLayoutExpandXMargin);
3139 fXNdivMain->GetNumberEntry()->SetToolTipText(
"Primary axis divisions");
3140 fXNdivSub->GetNumberEntry()->SetToolTipText(
"Secondary axis divisions");
3141 fXNdivSubSub->GetNumberEntry()->SetToolTipText(
"Tertiary axis divisions");
3142 fXNdivisionsOptimize->SetToolTipText(
"Optimize the number of axis divisions if selected");
3148 void TStyleManager::AddAxisXLabels(TGCompositeFrame *f)
3150 TGGroupFrame *gf =
new TGGroupFrame(f,
"Labels");
3151 fTrashListFrame->AddFirst(gf);
3152 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3153 fTrashListFrame->AddFirst(h1);
3154 fXLabelColor = AddColorEntry(h1, kAxisXLabelColor);
3155 fXLabelFont = AddFontTypeEntry(h1, kAxisXLabelFont);
3156 gf->AddFrame(h1, fLayoutExpandX);
3157 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3158 fTrashListFrame->AddFirst(h2);
3159 fXLabelSizeInPixels = AddCheckButton(h2,
"Pixels", kAxisXLabelSizeInPixels);
3160 fXLabelSize = AddNumberEntry(h2, 22, 8, 0, kAxisXLabelSize,
"Size:", 0, 5,
3161 TGNumberFormat::kNESRealThree,
3162 TGNumberFormat::kNEAAnyNumber,
3163 TGNumberFormat::kNELLimitMinMax, 0, 0.3);
3164 gf->AddFrame(h2, fLayoutExpandX);
3165 fXLabelOffset = AddNumberEntry(gf, 69, 8, 0, kAxisXTitleOffset,
"Offset:",
3166 0, 5, TGNumberFormat::kNESRealTwo,
3167 TGNumberFormat::kNEAAnyNumber,
3168 TGNumberFormat::kNELLimitMinMax, 0, 1);
3169 f->AddFrame(gf, fLayoutExpandXMargin);
3173 fXLabelSizeInPixels->SetToolTipText(
"Set the labels size in pixels if selected, otherwise - in % of pad");
3174 fXLabelSize->GetNumberEntry()->SetToolTipText(
"Label size (in pixels or in % of pad)");
3175 fXLabelOffset->GetNumberEntry()->SetToolTipText(
"Offset between axis and labels");
3181 void TStyleManager::CreateTabAxisY(TGCompositeFrame *tab)
3183 TGHorizontalFrame *h1 =
new TGHorizontalFrame(tab);
3184 fTrashListFrame->AddFirst(h1);
3186 AddAxisYDivisions(h1);
3187 tab->AddFrame(h1, fLayoutExpandX);
3189 TGHorizontalFrame *h2 =
new TGHorizontalFrame(tab);
3190 fTrashListFrame->AddFirst(h2);
3193 tab->AddFrame(h2, fLayoutExpandX);
3199 void TStyleManager::AddAxisYLine(TGCompositeFrame *f)
3201 TGLayoutHints *layout =
new TGLayoutHints(kLHintsExpandX, 20);
3202 fTrashListLayout->Add(layout);
3204 TGGroupFrame *gf =
new TGGroupFrame(f,
"Line");
3205 fTrashListFrame->AddFirst(gf);
3206 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
3207 fTrashListFrame->AddFirst(h);
3208 fYAxisColor = AddColorEntry(h, kAxisYAxisColor);
3209 TGHorizontalFrame *h2 =
new TGHorizontalFrame(h);
3210 fTrashListFrame->AddFirst(h2);
3211 fYTickLength = AddNumberEntry(h2, 3, 8, 0, kAxisYTickLength,
"Ticks:",
3212 0, 5, TGNumberFormat::kNESRealThree,
3213 TGNumberFormat::kNEAAnyNumber,
3214 TGNumberFormat::kNELLimitMinMax, 0, 5);
3215 h->AddFrame(h2, layout);
3216 gf->AddFrame(h, fLayoutExpandX);
3217 fOptLogy = AddCheckButton(gf,
"Logarithmic scale", kAxisOptLogy);
3218 f->AddFrame(gf, fLayoutExpandXYMargin);
3222 fYTickLength->GetNumberEntry()->SetToolTipText(
"Set the ticks' length");
3223 fOptLogy->SetToolTipText(
"Draw logarithmic scale");
3229 void TStyleManager::AddAxisYTitle(TGCompositeFrame *f)
3231 TGGroupFrame *gf =
new TGGroupFrame(f,
"Title");
3232 fTrashListFrame->AddFirst(gf);
3233 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3234 fTrashListFrame->AddFirst(h1);
3235 fYTitleColor = AddColorEntry(h1, kAxisYTitleColor);
3236 fYTitleFont = AddFontTypeEntry(h1, kAxisYTitleFont);
3237 gf->AddFrame(h1, fLayoutExpandX);
3238 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3239 fTrashListFrame->AddFirst(h2);
3240 fYTitleSizeInPixels = AddCheckButton(h2,
"Pixels", kAxisYTitleSizeInPixels);
3241 fYTitleSize = AddNumberEntry(h2, 21, 8, 0, kAxisYTitleSize,
"Size:", 0, 5,
3242 TGNumberFormat::kNESRealThree,
3243 TGNumberFormat::kNEAAnyNumber,
3244 TGNumberFormat::kNELLimitMinMax, 0, 0.3);
3245 gf->AddFrame(h2, fLayoutExpandX);
3246 fYTitleOffset = AddNumberEntry(gf, 68, 8, 0, kAxisYTitleOffset,
"Offset:",
3247 0, 5, TGNumberFormat::kNESRealTwo,
3248 TGNumberFormat::kNEAAnyNumber,
3249 TGNumberFormat::kNELLimitMinMax, 0, 1);
3250 f->AddFrame(gf, fLayoutExpandXMargin);
3254 fYTitleSizeInPixels->SetToolTipText(
"Set the title size in pixels if selected, otherwise - in % of pad");
3255 fYTitleSize->GetNumberEntry()->SetToolTipText(
"Title size (in pixels or in % of pad)");
3256 fYTitleOffset->GetNumberEntry()->SetToolTipText(
"Offset between axis and title");
3262 void TStyleManager::AddAxisYDivisions(TGCompositeFrame *f)
3264 TGGroupFrame *gf =
new TGGroupFrame(f,
"Divisions");
3265 fTrashListFrame->AddFirst(gf);
3266 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3267 fTrashListFrame->AddFirst(h1);
3268 fYNdivSubSub = AddNumberEntry(h1, 0, 0, 0, kAxisYNdivSubSub,
"",
3269 0, 3, TGNumberFormat::kNESInteger,
3270 TGNumberFormat::kNEAAnyNumber,
3271 TGNumberFormat::kNELLimitMinMax, 0, 99);
3272 fYNdivSub = AddNumberEntry(h1, 0, 18, 0, kAxisYNdivSub,
"",
3273 0, 3, TGNumberFormat::kNESInteger,
3274 TGNumberFormat::kNEAAnyNumber,
3275 TGNumberFormat::kNELLimitMinMax, 0, 99);
3276 fYNdivMain = AddNumberEntry(h1, 0, 18, 0, kAxisYNdivMain,
"",
3277 0, 3, TGNumberFormat::kNESInteger,
3278 TGNumberFormat::kNEAAnyNumber,
3279 TGNumberFormat::kNELLimitMinMax, 0, 99);
3280 gf->AddFrame(h1, fLayoutExpandX);
3282 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3283 fTrashListFrame->AddFirst(h2);
3284 fYNdivisionsOptimize = AddCheckButton(h2,
"Optimize", kAxisYNdivisionsOptimize);
3285 gf->AddFrame(h2, fLayoutExpandX);
3286 f->AddFrame(gf, fLayoutExpandXMargin);
3288 fYNdivMain->GetNumberEntry()->SetToolTipText(
"Primary axis divisions");
3289 fYNdivSub->GetNumberEntry()->SetToolTipText(
"Secondary axis divisions");
3290 fYNdivSubSub->GetNumberEntry()->SetToolTipText(
"Tertiary axis divisions");
3291 fYNdivisionsOptimize->SetToolTipText(
"Optimize the number of axis divisions");
3297 void TStyleManager::AddAxisYLabels(TGCompositeFrame *f)
3299 TGGroupFrame *gf =
new TGGroupFrame(f,
"Labels");
3300 fTrashListFrame->AddFirst(gf);
3301 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3302 fTrashListFrame->AddFirst(h1);
3303 fYLabelColor = AddColorEntry(h1, kAxisYLabelColor);
3304 fYLabelFont = AddFontTypeEntry(h1, kAxisYLabelFont);
3305 gf->AddFrame(h1, fLayoutExpandX);
3307 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3308 fTrashListFrame->AddFirst(h2);
3309 fYLabelSizeInPixels = AddCheckButton(h2,
"Pixels", kAxisYLabelSizeInPixels);
3310 fYLabelSize = AddNumberEntry(h2, 22, 8, 0, kAxisYLabelSize,
"Size:", 0, 5,
3311 TGNumberFormat::kNESRealThree,
3312 TGNumberFormat::kNEAAnyNumber,
3313 TGNumberFormat::kNELLimitMinMax, 0, 0.3);
3314 gf->AddFrame(h2, fLayoutExpandX);
3315 fYLabelOffset = AddNumberEntry(gf, 69, 8, 0, kAxisYTitleOffset,
"Offset:",
3316 0, 5, TGNumberFormat::kNESRealTwo,
3317 TGNumberFormat::kNEAAnyNumber,
3318 TGNumberFormat::kNELLimitMinMax, 0, 1);
3319 f->AddFrame(gf, fLayoutExpandXMargin);
3323 fYLabelSizeInPixels->SetToolTipText(
"Set the labels size in pixels if selected, otherwise - in % of pad");
3324 fYLabelSize->GetNumberEntry()->SetToolTipText(
"Label size (in pixels or in % of pad)");
3325 fYLabelOffset->GetNumberEntry()->SetToolTipText(
"Offset between axis and labels");
3331 void TStyleManager::CreateTabAxisZ(TGCompositeFrame *tab)
3333 TGHorizontalFrame *h1 =
new TGHorizontalFrame(tab);
3334 fTrashListFrame->AddFirst(h1);
3336 AddAxisZDivisions(h1);
3337 tab->AddFrame(h1, fLayoutExpandX);
3339 TGHorizontalFrame *h2 =
new TGHorizontalFrame(tab);
3340 fTrashListFrame->AddFirst(h2);
3343 tab->AddFrame(h2, fLayoutExpandX);
3349 void TStyleManager::AddAxisZLine(TGCompositeFrame *f)
3351 TGLayoutHints *layout =
new TGLayoutHints(kLHintsExpandX, 20);
3352 fTrashListLayout->Add(layout);
3354 TGGroupFrame *gf =
new TGGroupFrame(f,
"Line");
3355 fTrashListFrame->AddFirst(gf);
3356 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
3357 fTrashListFrame->AddFirst(h);
3358 fZAxisColor = AddColorEntry(h, kAxisZAxisColor);
3359 TGHorizontalFrame *h2 =
new TGHorizontalFrame(h);
3360 fTrashListFrame->AddFirst(h2);
3361 fZTickLength = AddNumberEntry(h2, 3, 8, 0, kAxisZTickLength,
"Ticks:",
3362 0, 5, TGNumberFormat::kNESRealThree,
3363 TGNumberFormat::kNEAAnyNumber,
3364 TGNumberFormat::kNELLimitMinMax, 0, 5);
3365 h->AddFrame(h2, layout);
3366 gf->AddFrame(h, fLayoutExpandX);
3367 fOptLogz = AddCheckButton(gf,
"Logarithmic scale", kAxisOptLogz);
3368 f->AddFrame(gf, fLayoutExpandXYMargin);
3372 fZTickLength->GetNumberEntry()->SetToolTipText(
"Set the ticks' length");
3373 fOptLogz->SetToolTipText(
"Draw logarithmic scale");
3379 void TStyleManager::AddAxisZTitle(TGCompositeFrame *f)
3381 TGGroupFrame *gf =
new TGGroupFrame(f,
"Title");
3382 fTrashListFrame->AddFirst(gf);
3383 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3384 fTrashListFrame->AddFirst(h1);
3385 fZTitleColor = AddColorEntry(h1, kAxisZTitleColor);
3386 fZTitleFont = AddFontTypeEntry(h1, kAxisZTitleFont);
3387 gf->AddFrame(h1, fLayoutExpandX);
3389 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3390 fTrashListFrame->AddFirst(h2);
3391 fZTitleSizeInPixels = AddCheckButton(h2,
"Pixels", kAxisZTitleSizeInPixels);
3392 fZTitleSize = AddNumberEntry(h2, 21, 8, 0, kAxisZTitleSize,
"Size:", 0, 5,
3393 TGNumberFormat::kNESRealThree,
3394 TGNumberFormat::kNEAAnyNumber,
3395 TGNumberFormat::kNELLimitMinMax, 0, 0.3);
3396 gf->AddFrame(h2, fLayoutExpandX);
3397 fZTitleOffset = AddNumberEntry(gf, 68, 8, 0, kAxisZTitleOffset,
"Offset:",
3398 0, 5, TGNumberFormat::kNESRealTwo,
3399 TGNumberFormat::kNEAAnyNumber,
3400 TGNumberFormat::kNELLimitMinMax, 0, 1);
3401 f->AddFrame(gf, fLayoutExpandXMargin);
3405 fZTitleSizeInPixels->SetToolTipText(
"Set the title size in pixels if selected, otherwise - in % of pad");
3406 fZTitleSize->GetNumberEntry()->SetToolTipText(
"Title size (in pixels or in % of pad)");
3407 fZTitleOffset->GetNumberEntry()->SetToolTipText(
"Offset between axis and title");
3413 void TStyleManager::AddAxisZDivisions(TGCompositeFrame *f)
3415 TGGroupFrame *gf =
new TGGroupFrame(f,
"Divisions");
3416 fTrashListFrame->AddFirst(gf);
3417 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3418 fTrashListFrame->AddFirst(h1);
3419 fZNdivSubSub = AddNumberEntry(h1, 0, 0, 0, kAxisZNdivSubSub,
"",
3420 0, 3, TGNumberFormat::kNESInteger,
3421 TGNumberFormat::kNEAAnyNumber,
3422 TGNumberFormat::kNELLimitMinMax, 0, 99);
3423 fZNdivSub = AddNumberEntry(h1, 0, 18, 0, kAxisZNdivSub,
"",
3424 0, 3, TGNumberFormat::kNESInteger,
3425 TGNumberFormat::kNEAAnyNumber,
3426 TGNumberFormat::kNELLimitMinMax, 0, 99);
3427 fZNdivMain = AddNumberEntry(h1, 0, 18, 0, kAxisZNdivMain,
"",
3428 0, 3, TGNumberFormat::kNESInteger,
3429 TGNumberFormat::kNEAAnyNumber,
3430 TGNumberFormat::kNELLimitMinMax, 0, 99);
3431 gf->AddFrame(h1, fLayoutExpandX);
3433 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3434 fTrashListFrame->AddFirst(h2);
3435 fZNdivisionsOptimize = AddCheckButton(h2,
"Optimize", kAxisZNdivisionsOptimize);
3436 gf->AddFrame(h2, fLayoutExpandX);
3437 f->AddFrame(gf, fLayoutExpandXMargin);
3439 fZNdivMain->GetNumberEntry()->SetToolTipText(
"Primary axis divisions");
3440 fZNdivSub->GetNumberEntry()->SetToolTipText(
"Secondary axis divisions");
3441 fZNdivSubSub->GetNumberEntry()->SetToolTipText(
"Tertiary axis divisions");
3442 fZNdivisionsOptimize->SetToolTipText(
"Optimize the number of axis divisions");
3448 void TStyleManager::AddAxisZLabels(TGCompositeFrame *f)
3450 TGGroupFrame *gf =
new TGGroupFrame(f,
"Labels");
3451 fTrashListFrame->AddFirst(gf);
3452 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3453 fTrashListFrame->AddFirst(h1);
3454 fZLabelColor = AddColorEntry(h1, kAxisZLabelColor);
3455 fZLabelFont = AddFontTypeEntry(h1, kAxisZLabelFont);
3456 gf->AddFrame(h1, fLayoutExpandX);
3458 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3459 fTrashListFrame->AddFirst(h2);
3460 fZLabelSizeInPixels = AddCheckButton(h2,
"Pixels", kAxisZLabelSizeInPixels);
3461 fZLabelSize = AddNumberEntry(h2, 22, 8, 0, kAxisZLabelSize,
"Size:", 0, 5,
3462 TGNumberFormat::kNESRealThree,
3463 TGNumberFormat::kNEAAnyNumber,
3464 TGNumberFormat::kNELLimitMinMax, 0, 0.3);
3465 gf->AddFrame(h2, fLayoutExpandX);
3466 fZLabelOffset = AddNumberEntry(gf, 69, 8, 0, kAxisZTitleOffset,
"Offset:",
3467 0, 5, TGNumberFormat::kNESRealTwo,
3468 TGNumberFormat::kNEAAnyNumber,
3469 TGNumberFormat::kNELLimitMinMax, 0, 1);
3470 f->AddFrame(gf, fLayoutExpandXMargin);
3474 fZLabelSizeInPixels->SetToolTipText(
"Set the labels size in pixels if selected, otherwise - in % of pad");
3475 fZLabelSize->GetNumberEntry()->SetToolTipText(
"Label size (in pixels or in % of pad)");
3476 fZLabelOffset->GetNumberEntry()->SetToolTipText(
"Offset between axis and labels");
3482 void TStyleManager::CreateTabTitle(TGCompositeFrame *tab)
3484 TGLayoutHints *layout =
new TGLayoutHints(kLHintsExpandX, 10, 20, 5, 5);
3485 fTrashListLayout->Add(layout);
3487 TGHorizontalFrame *h1 =
new TGHorizontalFrame(tab);
3488 fTrashListFrame->AddFirst(h1);
3489 fOptTitle = AddCheckButton(h1,
"Show title", kTitleOptTitle);
3490 tab->AddFrame(h1, layout);
3492 TGHorizontalFrame *h2 =
new TGHorizontalFrame(tab);
3493 fTrashListFrame->AddFirst(h2);
3494 TGVerticalFrame *v1 =
new TGVerticalFrame(h2);
3495 fTrashListFrame->AddFirst(v1);
3498 h2->AddFrame(v1, fLayoutExpandXY);
3499 TGVerticalFrame *v2 =
new TGVerticalFrame(h2);
3500 fTrashListFrame->AddFirst(v2);
3501 AddTitleBorderSize(v2);
3502 AddTitleGeometry(v2);
3503 h2->AddFrame(v2, fLayoutExpandXY);
3504 tab->AddFrame(h2, fLayoutExpandX);
3506 fOptTitle->SetToolTipText(
"Show / Hide the title pave");
3512 void TStyleManager::AddTitleFill(TGCompositeFrame *f)
3514 TGGroupFrame *gf =
new TGGroupFrame(f,
"Fill");
3515 fTrashListFrame->AddFirst(gf);
3516 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3517 fTrashListFrame->AddFirst(h1);
3518 fTitleColor = AddColorEntry(h1, kTitleFillColor);
3519 fTitleStyle = AddFillStyleEntry(h1, kTitleStyle);
3520 gf->AddFrame(h1, fLayoutExpandX);
3521 f->AddFrame(gf, fLayoutExpandXMargin);
3531 void TStyleManager::AddTitleBorderSize(TGCompositeFrame *f)
3533 TGLayoutHints *layout1 =
new TGLayoutHints(kLHintsNormal, 0, 24, 6);
3534 fTrashListLayout->Add(layout1);
3535 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsNormal, 0, 5, 6);
3536 fTrashListLayout->Add(layout2);
3537 TGLayoutHints *layout3 =
new TGLayoutHints(kLHintsExpandX, 0, 0, 3, 3);
3538 fTrashListLayout->Add(layout3);
3540 TGGroupFrame *gf =
new TGGroupFrame(f,
"Shadow");
3541 fTrashListFrame->AddFirst(gf);
3542 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3543 fTrashListFrame->AddFirst(h1);
3544 fTitleBorderSizeLabel =
new TGLabel(h1,
"Title's:");
3545 h1->AddFrame(fTitleBorderSizeLabel, layout1);
3546 fTitleBorderSize = AddLineWidthEntry(h1, kTitleBorderSize);
3547 gf->AddFrame(h1, layout3);
3549 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3550 fTrashListFrame->AddFirst(h2);
3551 fLegendBorderSizeLabel =
new TGLabel(h2,
"Legend's:");
3552 h2->AddFrame(fLegendBorderSizeLabel, layout2);
3553 fLegendBorderSize = AddLineWidthEntry(h2, kTitleLegendBorderSize);
3554 gf->AddFrame(h2, layout3);
3555 f->AddFrame(gf, fLayoutExpandXMargin);
3561 void TStyleManager::AddTitleText(TGCompositeFrame *f)
3563 TGGroupFrame *gf =
new TGGroupFrame(f,
"Text");
3564 fTrashListFrame->AddFirst(gf);
3565 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3566 fTrashListFrame->AddFirst(h1);
3567 fTitleTextColor = AddColorEntry(h1, kTitleTextColor);
3568 fTitleFont = AddFontTypeEntry(h1, kTitleFont);
3569 gf->AddFrame(h1, fLayoutExpandX);
3570 fTitleAlign = AddTextAlignEntry(gf, kTitleAlign);
3571 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3572 fTrashListFrame->AddFirst(h2);
3573 fTitleFontSizeInPixels = AddCheckButton(h2,
"Pixels", kTitleFontSizeInPixels);
3574 fTitleFontSize = AddNumberEntry(h2, 21, 10, 0, kTitleFontSize,
"Size:", 0, 5,
3575 TGNumberFormat::kNESRealThree,
3576 TGNumberFormat::kNEAAnyNumber,
3577 TGNumberFormat::kNELLimitMinMax, 0, 0.3);
3578 gf->AddFrame(h2, fLayoutExpandX);
3579 f->AddFrame(gf, fLayoutExpandXYMargin);
3583 fTitleFontSizeInPixels->SetToolTipText(
"Set the title's text size in pixels if selected, otherwise - in % of pad");
3584 fTitleFontSize->GetNumberEntry()->SetToolTipText(
"Title's text size (in pixels or in % of pad)");
3590 void TStyleManager::AddTitleGeometry(TGCompositeFrame *f)
3592 TGGroupFrame *gf =
new TGGroupFrame(f,
"Geometry (% of Pad)");
3593 fTrashListFrame->AddFirst(gf);
3594 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3595 fTrashListFrame->AddFirst(h1);
3596 fTitleX = AddNumberEntry(h1, 0, 8, 0, kTitleX,
"X:",
3597 0, 4, TGNumberFormat::kNESInteger,
3598 TGNumberFormat::kNEAAnyNumber,
3599 TGNumberFormat::kNELLimitMinMax, 0, 100);
3600 fTitleY = AddNumberEntry(h1, 8, 8, 0, kTitleY,
"Y:",
3601 0, 4, TGNumberFormat::kNESInteger,
3602 TGNumberFormat::kNEAAnyNumber,
3603 TGNumberFormat::kNELLimitMinMax, 0, 100);
3604 gf->AddFrame(h1, fLayoutExpandXY);
3605 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3606 fTrashListFrame->AddFirst(h2);
3607 fTitleW = AddNumberEntry(h2, 0, 6, 0, kTitleW,
"W:",
3608 0, 4, TGNumberFormat::kNESInteger,
3609 TGNumberFormat::kNEAAnyNumber,
3610 TGNumberFormat::kNELLimitMinMax, 0, 100);
3611 fTitleH = AddNumberEntry(h2, 8, 8, 0, kTitleH,
"H:",
3612 0, 4, TGNumberFormat::kNESInteger,
3613 TGNumberFormat::kNEAAnyNumber,
3614 TGNumberFormat::kNELLimitMinMax, 0, 100);
3615 gf->AddFrame(h2, fLayoutExpandXY);
3616 f->AddFrame(gf, fLayoutExpandXYMargin);
3618 fTitleX->GetNumberEntry()->SetToolTipText(
"Title' default abscissa");
3619 fTitleY->GetNumberEntry()->SetToolTipText(
"Title' default ordinate");
3620 fTitleW->GetNumberEntry()->SetToolTipText(
"Title' default width");
3621 fTitleH->GetNumberEntry()->SetToolTipText(
"Title' default height");
3627 void TStyleManager::CreateTabStats(TGCompositeFrame *tab)
3629 TGLayoutHints *layout1 =
new TGLayoutHints(kLHintsNormal, 0, 5, 6);
3630 fTrashListLayout->Add(layout1);
3631 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsExpandX, 10, 21, 5, 5);
3632 fTrashListLayout->Add(layout2);
3634 TGHorizontalFrame *h1 =
new TGHorizontalFrame(tab);
3635 fTrashListFrame->AddFirst(h1);
3637 TGVerticalFrame *v1 =
new TGVerticalFrame(h1);
3638 fTrashListFrame->AddFirst(v1);
3640 TGHorizontalFrame *h2 =
new TGHorizontalFrame(v1);
3641 fTrashListFrame->AddFirst(h2);
3642 fStatBorderSizeLabel =
new TGLabel(h2,
"Stats' shadow:");
3643 h2->AddFrame(fStatBorderSizeLabel, layout1);
3644 fStatBorderSize = AddLineWidthEntry(h2, kStatBorderSize);
3645 v1->AddFrame(h2, layout2);
3647 AddStatsGeometry(v1);
3648 h1->AddFrame(v1, fLayoutExpandXY);
3650 TGVerticalFrame *v2 =
new TGVerticalFrame(h1);
3651 fTrashListFrame->AddFirst(v2);
3654 h1->AddFrame(v2, fLayoutExpandXY);
3656 tab->AddFrame(h1, fLayoutExpandX);
3662 void TStyleManager::AddStatsFill(TGCompositeFrame *f)
3664 TGGroupFrame *gf =
new TGGroupFrame(f,
"Fill");
3665 fTrashListFrame->AddFirst(gf);
3666 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
3667 fTrashListFrame->AddFirst(h);
3668 fStatColor = AddColorEntry(h, kStatColor);
3669 fStatStyle = AddFillStyleEntry(h, kStatStyle);
3670 gf->AddFrame(h, fLayoutExpandX);
3671 f->AddFrame(gf, fLayoutExpandXMargin);
3681 void TStyleManager::AddStatsText(TGCompositeFrame *f)
3683 TGGroupFrame *gf =
new TGGroupFrame(f,
"Text");
3684 fTrashListFrame->AddFirst(gf);
3685 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3686 fTrashListFrame->AddFirst(h1);
3687 fStatTextColor = AddColorEntry(h1, kStatTextColor);
3688 fStatFont = AddFontTypeEntry(h1, kStatFont);
3689 gf->AddFrame(h1, fLayoutExpandX);
3690 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3691 fTrashListFrame->AddFirst(h2);
3692 fStatFontSizeInPixels = AddCheckButton(h2,
"Pixels", kStatFontSizeInPixels);
3693 fStatFontSize = AddNumberEntry(h2, 21, 10, 0, kStatFontSize,
"Size:", 0, 5,
3694 TGNumberFormat::kNESRealThree,
3695 TGNumberFormat::kNEAAnyNumber,
3696 TGNumberFormat::kNELLimitMinMax, 0, 0.3);
3697 gf->AddFrame(h2, fLayoutExpandX);
3698 f->AddFrame(gf, fLayoutExpandXYMargin);
3702 fStatFontSizeInPixels->SetToolTipText(
"Set the stats's text size in pixels if selected, otherwise - in % of pad");
3703 fStatFontSize->GetNumberEntry()->SetToolTipText(
"Stats's text size (in pixels or in % of pad)");
3709 void TStyleManager::AddStatsGeometry(TGCompositeFrame *f)
3711 TGGroupFrame *gf =
new TGGroupFrame(f,
"Geometry");
3712 fTrashListFrame->AddFirst(gf);
3714 TGHorizontalFrame *h1 =
new TGHorizontalFrame(gf);
3715 fTrashListFrame->AddFirst(h1);
3716 fStatX = AddNumberEntry(h1, 0, 7, 0, kStatX,
"X:",
3717 0., 4, TGNumberFormat::kNESRealTwo,
3718 TGNumberFormat::kNEANonNegative,
3719 TGNumberFormat::kNELLimitMinMax, 0., 1.);
3720 fStatY = AddNumberEntry(h1, 8, 7, 0, kStatY,
"Y:",
3721 0., 4, TGNumberFormat::kNESRealTwo,
3722 TGNumberFormat::kNEANonNegative,
3723 TGNumberFormat::kNELLimitMinMax, 0., 1.);
3724 gf->AddFrame(h1, fLayoutExpandXY);
3726 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3727 fTrashListFrame->AddFirst(h2);
3728 fStatW = AddNumberEntry(h2, 0, 5, 0, kStatW,
"W:",
3729 0., 4, TGNumberFormat::kNESRealTwo,
3730 TGNumberFormat::kNEANonNegative,
3731 TGNumberFormat::kNELLimitMinMax, 0., 1.);
3732 fStatH = AddNumberEntry(h2, 8, 7, 0, kStatH,
"H:",
3733 0., 4, TGNumberFormat::kNESRealTwo,
3734 TGNumberFormat::kNEANonNegative,
3735 TGNumberFormat::kNELLimitMinMax, 0., 1.);
3736 gf->AddFrame(h2, fLayoutExpandXY);
3737 f->AddFrame(gf, fLayoutExpandXYMargin);
3739 fStatX->GetNumberEntry()->SetToolTipText(
"X position of top right corner of stat box.");
3740 fStatY->GetNumberEntry()->SetToolTipText(
"Y position of top right corner of stat box.");
3741 fStatW->GetNumberEntry()->SetToolTipText(
"Width of stat box.");
3742 fStatH->GetNumberEntry()->SetToolTipText(
"Height of stat box.");
3748 void TStyleManager::AddStatsStats(TGCompositeFrame *f)
3750 TGLayoutHints *layout =
new TGLayoutHints(kLHintsNormal, 0, 0, 5);
3751 fTrashListLayout->Add(layout);
3753 TGGroupFrame *gf =
new TGGroupFrame(f,
"Stat Options");
3754 fTrashListFrame->AddFirst(gf);
3755 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
3756 fTrashListFrame->AddFirst(h);
3757 TGVerticalFrame *v1 =
new TGVerticalFrame(h);
3758 fTrashListFrame->AddFirst(v1);
3759 fOptStatName = AddCheckButton(v1,
"Name", kStatOptStatName);
3760 fOptStatOverflow = AddCheckButton(v1,
"Overflow", kStatOptStatOverflow);
3761 fOptStatUnderflow = AddCheckButton(v1,
"Underflow", kStatOptStatUnderflow);
3762 fOptStatSkewness = AddCheckButton(v1,
"Skewness", kStatOptStatSkewness);
3763 fOptStatKurtosis = AddCheckButton(v1,
"Kurtosis", kStatOptStatKurtosis);
3764 h->AddFrame(v1, fLayoutExpandXY);
3765 TGVerticalFrame *v2 =
new TGVerticalFrame(h);
3766 fTrashListFrame->AddFirst(v2);
3767 fOptStatEntries = AddCheckButton(v2,
"Entries", kStatOptStatEntries);
3768 fOptStatMean = AddCheckButton(v2,
"Mean", kStatOptStatMean);
3769 fOptStatRMS = AddCheckButton(v2,
"RMS", kStatOptStatRMS);
3770 fOptStatIntegral = AddCheckButton(v2,
"Integral", kStatOptStatIntegral);
3771 fOptStatErrors = AddCheckButton(v2,
"Errors", kStatOptStatErrors);
3772 h->AddFrame(v2, fLayoutExpandXY);
3773 gf->AddFrame(h, fLayoutExpandX);
3775 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3776 fTrashListFrame->AddFirst(h2);
3777 TGHorizontalFrame *h3 =
new TGHorizontalFrame(h2);
3778 fTrashListFrame->AddFirst(h3);
3779 fStatFormatLabel =
new TGLabel(h3,
"Paint format:");
3780 h3->AddFrame(fStatFormatLabel, layout);
3781 h2->AddFrame(h3, fLayoutExpandX);
3782 fStatFormat = AddTextEntry(h2,
"", kStatFormat);
3783 gf->AddFrame(h2, fLayoutExpandX);
3784 f->AddFrame(gf, fLayoutExpandXYMargin);
3786 fOptStatName->SetToolTipText(
"Show / Hide the histogram name");
3787 fOptStatOverflow->SetToolTipText(
"Show / Hide the number of overflows");
3788 fOptStatUnderflow->SetToolTipText(
"Show / Hide the number of underflows");
3789 fOptStatSkewness->SetToolTipText(
"Show / Hide the skewness");
3790 fOptStatKurtosis->SetToolTipText(
"Show / Hide the kurtosis");
3791 fOptStatEntries->SetToolTipText(
"Show / Hide the number of entries");
3792 fOptStatMean->SetToolTipText(
"Show / Hide the mean value");
3793 fOptStatRMS->SetToolTipText(
"Show / Hide root-mean-square (RMS)");
3794 fOptStatIntegral->SetToolTipText(
"Show / Hide the integral of bins");
3795 fOptStatErrors->SetToolTipText(
"Show / Hide the errors");
3796 fStatFormat->SetToolTipText(
"Paint format of stat options");
3802 void TStyleManager::AddStatsFit(TGCompositeFrame *f)
3804 TGLayoutHints *layout =
new TGLayoutHints(kLHintsNormal, 0, 0, 5);
3805 fTrashListLayout->Add(layout);
3807 TGGroupFrame *gf =
new TGGroupFrame(f,
"Fit Options");
3808 fTrashListFrame->AddFirst(gf);
3809 TGHorizontalFrame *h =
new TGHorizontalFrame(gf);
3810 fTrashListFrame->AddFirst(h);
3811 TGVerticalFrame *v1 =
new TGVerticalFrame(h);
3812 fTrashListFrame->AddFirst(v1);
3813 fOptFitValues = AddCheckButton(v1,
"Values", kStatOptFitValues);
3814 fOptFitProbability = AddCheckButton(v1,
"Probability",
3815 kStatOptFitProbability);
3816 h->AddFrame(v1, fLayoutExpandXY);
3817 TGVerticalFrame *v2 =
new TGVerticalFrame(h);
3818 fTrashListFrame->AddFirst(v2);
3819 fOptFitErrors = AddCheckButton(v2,
"Errors", kStatOptFitErrors);
3820 fOptFitChi = AddCheckButton(v2,
"Chi", kStatOptFitChi);
3821 h->AddFrame(v2, fLayoutExpandXY);
3822 gf->AddFrame(h, fLayoutExpandX);
3823 TGHorizontalFrame *h2 =
new TGHorizontalFrame(gf);
3824 fTrashListFrame->AddFirst(h2);
3825 TGHorizontalFrame *h3 =
new TGHorizontalFrame(h2);
3826 fTrashListFrame->AddFirst(h3);
3827 fFitFormatLabel =
new TGLabel(h3,
"Paint format:");
3828 h3->AddFrame(fFitFormatLabel, layout);
3829 h2->AddFrame(h3, fLayoutExpandX);
3830 fFitFormat = AddTextEntry(h2,
"", kStatFitFormat);
3831 gf->AddFrame(h2, fLayoutExpandX);
3832 f->AddFrame(gf, fLayoutExpandXMargin);
3834 fOptFitValues->SetToolTipText(
"Show / Hide the parameter name and value");
3835 fOptFitProbability->SetToolTipText(
"Show / Hide probability)");
3836 fOptFitErrors->SetToolTipText(
"Show / Hide the errors");
3837 fOptFitChi->SetToolTipText(
"Show / Hide Chisquare");
3838 fFitFormat->SetToolTipText(
"Paint format of fit options");
3844 void TStyleManager::CreateTabPsPdf(TGCompositeFrame *tab)
3846 AddPsPdfHeader(tab);
3848 TGHorizontalFrame *h =
new TGHorizontalFrame(tab);
3849 fTrashListFrame->AddFirst(h);
3850 AddPsPdfPaperSize(h);
3851 TGVerticalFrame *v =
new TGVerticalFrame(h);
3852 fTrashListFrame->AddFirst(v);
3853 AddPsPdfLineScale(v);
3854 AddPsPdfColorModel(v);
3855 h->AddFrame(v, fLayoutExpandXY);
3856 tab->AddFrame(h, fLayoutExpandX);
3862 void TStyleManager::AddPsPdfHeader(TGCompositeFrame *f)
3864 TGGroupFrame *gf =
new TGGroupFrame(f,
"Header");
3865 fTrashListFrame->AddFirst(gf);
3866 fHeaderPS = AddTextEntry(gf,
"", kPSPDFHeaderPS);
3867 f->AddFrame(gf, fLayoutExpandXMargin);
3869 fHeaderPS->SetToolTipText(
"PostScript header");
3875 void TStyleManager::AddPsPdfTitle(TGCompositeFrame *f)
3877 TGGroupFrame *gf =
new TGGroupFrame(f,
"Title");
3878 fTrashListFrame->AddFirst(gf);
3879 fTitlePS = AddTextEntry(gf,
"", kPSPDFTitlePS);
3880 f->AddFrame(gf, fLayoutExpandXMargin);
3882 fTitlePS->SetToolTipText(
"PostScript title");
3888 void TStyleManager::AddPsPdfColorModel(TGCompositeFrame *f)
3890 fColorModelPS =
new TGButtonGroup(f,
"Color Model",
3891 kChildFrame | kHorizontalFrame | kFitWidth);
3893 fColorModelPS->SetLayoutManager(
new TGMatrixLayout(fColorModelPS, 1, 2, 15));
3894 fColorModelPSRGB =
new TGRadioButton(fColorModelPS,
"RGB",
3895 kPSPDFColorModelPSRGB);
3896 fColorModelPSRGB->Associate(
this);
3897 fColorModelPSCMYK =
new TGRadioButton(fColorModelPS,
"CMYK",
3898 kPSPDFColorModelPSCMYK);
3899 fColorModelPSCMYK->Associate(
this);
3900 fColorModelPS->Show();
3901 TGLayoutHints *layout2 =
3902 new TGLayoutHints(kLHintsExpandX | kLHintsExpandY, 5, 5, 5, 12);
3903 fTrashListLayout->Add(layout2);
3904 f->AddFrame(fColorModelPS, layout2);
3910 void TStyleManager::AddPsPdfPaperSize(TGCompositeFrame *f)
3912 TGGroupFrame *gf =
new TGGroupFrame(f,
"Paper Size");
3913 fTrashListFrame->AddFirst(gf);
3914 fPaperSizePredef = AddPaperSizeEntry(gf, kPSPDFPaperSizePredef);
3915 fPaperSizeX = AddNumberEntry(gf, 0, 0, 0, kPSPDFPaperSizeX,
"Width:",
3916 0, 6, TGNumberFormat::kNESRealOne,
3917 TGNumberFormat::kNEAPositive,
3918 TGNumberFormat::kNELLimitMinMax, 1, 40);
3919 fPaperSizeY = AddNumberEntry(gf, 0, 0, 0, kPSPDFPaperSizeY,
"Height:",
3920 0, 6, TGNumberFormat::kNESRealOne,
3921 TGNumberFormat::kNEAPositive,
3922 TGNumberFormat::kNELLimitMinMax, 1, 40);
3923 f->AddFrame(gf, fLayoutExpandXMargin);
3925 fPaperSizeX->GetNumberEntry()->SetToolTipText(
"Width of the printing area");
3926 fPaperSizeY->GetNumberEntry()->SetToolTipText(
"Height of the printing area");
3932 void TStyleManager::AddPsPdfLineScale(TGCompositeFrame *f)
3934 TGLayoutHints *layout =
new TGLayoutHints(kLHintsExpandX, 10, 20, 5, 5);
3935 fTrashListLayout->Add(layout);
3937 TGHorizontalFrame *gf =
new TGHorizontalFrame(f);
3938 fTrashListFrame->AddFirst(gf);
3939 fLineScalePS = AddNumberEntry(gf, 0, 0, 0, kPSPDFLineScalePS,
"Line scale:",
3940 0, 6, TGNumberFormat::kNESRealOne,
3941 TGNumberFormat::kNEAPositive,
3942 TGNumberFormat::kNELLimitMinMax, 0.1, 10);
3943 f->AddFrame(gf, layout);
3945 fLineScalePS->GetNumberEntry()->SetToolTipText(
"Line scale factor when drawing lines on PostScript");
3951 void TStyleManager::AddTitle(TGCompositeFrame *f,
const char *s)
3953 TGLayoutHints *layout1 =
new TGLayoutHints(kLHintsExpandX, 5, 0, 7);
3954 fTrashListLayout->Add(layout1);
3955 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsExpandX, 0, 0, 6, 6);
3956 fTrashListLayout->Add(layout2);
3958 TGHorizontalFrame *h =
new TGHorizontalFrame(f);
3959 fTrashListFrame->AddFirst(h);
3961 TGLabel *lab =
new TGLabel(h, s);
3962 fTrashListFrame->AddFirst(lab);
3965 TGHorizontal3DLine *line =
new TGHorizontal3DLine(h, 4, 2, kFALSE);
3966 fTrashListFrame->AddFirst(line);
3967 h->AddFrame(line, layout1);
3969 f->AddFrame(h, layout2);
3975 TGColorSelect *TStyleManager::AddColorEntry(TGCompositeFrame *f, Int_t
id)
3977 TGLayoutHints *layout =
new TGLayoutHints(kLHintsBottom, 0, 5, 3, 3);
3978 fTrashListLayout->Add(layout);
3980 TGColorSelect *cs =
new TGColorSelect(f, 0,
id);
3981 cs->Associate(
this);
3982 f->AddFrame(cs, layout);
3989 TGedPatternSelect *TStyleManager::AddFillStyleEntry(TGCompositeFrame *f,
3992 TGLayoutHints *layout =
new TGLayoutHints(kLHintsBottom, 0, 0, 3, 3);
3993 fTrashListLayout->Add(layout);
3995 TGedPatternSelect *gps =
new TGedPatternSelect(f, 0,
id);
3996 gps->Associate(
this);
3997 f->AddFrame(gps, layout);
4004 TGedMarkerSelect *TStyleManager::AddMarkerStyleEntry(TGCompositeFrame *f,
4007 TGLayoutHints *layout =
new TGLayoutHints(kLHintsCenterY, 0, 5, 3, 3);
4008 fTrashListLayout->Add(layout);
4010 TGedMarkerSelect *gms =
new TGedMarkerSelect(f, 0,
id);
4011 gms->Associate(
this);
4012 f->AddFrame(gms, layout);
4019 TGComboBox *TStyleManager::AddMarkerSizeEntry(TGCompositeFrame *f, Int_t
id)
4022 TGComboBox *cb =
new TGComboBox(f,
id);
4023 cb->Associate(
this);
4024 for (Int_t i = 1; i <= 15; i++) {
4025 snprintf(a, 10,
"%.1f", 0.2 * i);
4029 f->AddFrame(cb, fLayoutExpandXCenterYMargin);
4036 TGNumberEntry *TStyleManager::AddNumberEntry(TGCompositeFrame *f, Int_t e1,
4037 Int_t e2, Int_t e3, Int_t
id,
const char *s, Double_t init, Int_t digits,
4038 TGNumberFormat::EStyle nfS, TGNumberFormat::EAttribute nfA,
4039 TGNumberFormat::ELimit nfL, Double_t min, Double_t max)
4041 TGHorizontalFrame *h =
new TGHorizontalFrame(f);
4042 fTrashListFrame->AddFirst(h);
4044 TGLabel *lab =
new TGLabel(h, s);
4045 fTrashListFrame->AddFirst(lab);
4046 TGLayoutHints *layout =
new TGLayoutHints(kLHintsNormal, e1, 0, 3);
4047 fTrashListLayout->Add(layout);
4048 h->AddFrame(lab, layout);
4050 TGNumberEntry *ne =
new TGNumberEntry(h, init, digits,
id,
4051 nfS, nfA, nfL, min, max);
4052 ne->Associate(
this);
4053 if ((e1 == 0) && (e2 == 0) && (e3 == 0)) {
4054 TGLayoutHints *layout1 =
new TGLayoutHints(kLHintsRight);
4055 fTrashListLayout->Add(layout1);
4056 h->AddFrame(ne, layout1);
4058 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsNormal, e2, e3);
4059 fTrashListLayout->Add(layout2);
4060 h->AddFrame(ne, layout2);
4063 TGLayoutHints *layout3 =
4064 new TGLayoutHints(kLHintsExpandX | kLHintsCenterY, 0, 2, 3, 3);
4065 fTrashListLayout->Add(layout3);
4066 f->AddFrame(h, layout3);
4068 TGLayoutHints *layout4 =
4069 new TGLayoutHints(kLHintsNormal | kLHintsCenterY, 0, 2, 3, 3);
4070 fTrashListLayout->Add(layout4);
4071 f->AddFrame(h, layout4);
4079 TGLineWidthComboBox *TStyleManager::AddLineWidthEntry(TGCompositeFrame *f,
4082 TGLayoutHints *layout =
new TGLayoutHints(kLHintsExpandX, 0, 0, 3, 3);
4083 fTrashListLayout->Add(layout);
4085 TGHorizontalFrame *h =
new TGHorizontalFrame(f);
4086 fTrashListFrame->AddFirst(h);
4087 TGLineWidthComboBox *lwcb =
new TGLineWidthComboBox(h,
id);
4088 lwcb->Associate(
this);
4089 lwcb->Resize(1, 22);
4090 h->AddFrame(lwcb, fLayoutExpandX);
4091 f->AddFrame(h, layout);
4098 TGLineStyleComboBox *TStyleManager::AddLineStyleEntry(TGCompositeFrame *f,
4101 TGLineStyleComboBox *lscb =
new TGLineStyleComboBox(f,
id);
4102 lscb->Associate(
this);
4103 lscb->Resize(1, 22);
4104 f->AddFrame(lscb, fLayoutExpandXCenterYMargin);
4111 TGTextButton *TStyleManager::AddTextButton(TGCompositeFrame *f,
4112 const char *s, Int_t
id)
4114 TGLayoutHints *layout =
new TGLayoutHints(kLHintsExpandX, 0, 0, 3, 3);
4115 fTrashListLayout->Add(layout);
4117 TGTextButton *tb =
new TGTextButton(f, s,
id);
4118 tb->Associate(
this);
4119 f->AddFrame(tb, layout);
4126 TGFontTypeComboBox *TStyleManager::AddFontTypeEntry(TGCompositeFrame *f,
4129 TGFontTypeComboBox *ftcb =
new TGFontTypeComboBox(f,
id);
4130 ftcb->Associate(
this);
4131 ftcb->Resize(1, 22);
4132 f->AddFrame(ftcb, fLayoutExpandXCenterYMargin);
4139 TGComboBox *TStyleManager::AddTextAlignEntry(TGCompositeFrame *f, Int_t
id)
4141 TGComboBox *cb =
new TGComboBox(f,
id);
4142 cb->Associate(
this);
4143 cb->AddEntry(
"11 Bottom, Left", 11);
4144 cb->AddEntry(
"21 Bottom, Middle", 21);
4145 cb->AddEntry(
"31 Bottom, Right", 31);
4146 cb->AddEntry(
"12 Middle, Left", 12);
4147 cb->AddEntry(
"22 Middle, Middle", 22);
4148 cb->AddEntry(
"32 Middle, Right", 32);
4149 cb->AddEntry(
"13 Top, Left", 13);
4150 cb->AddEntry(
"23 Top, Middle", 23);
4151 cb->AddEntry(
"33 Top, Right", 33);
4153 f->AddFrame(cb, fLayoutExpandXCenterYMargin);
4160 TGButtonGroup *TStyleManager::AddBorderModeEntry(TGCompositeFrame *f,
4161 Int_t id1, Int_t id2, Int_t id3)
4163 TGButtonGroup *bg =
new TGButtonGroup(f,
"Border");
4164 TGRadioButton *sunk =
new TGRadioButton(bg,
"Sunken", id1);
4165 sunk->Associate(
this);
4166 fTrashListFrame->AddFirst(sunk);
4167 TGRadioButton *none =
new TGRadioButton(bg,
"None" , id2);
4168 none->Associate(
this);
4169 fTrashListFrame->AddFirst(none);
4170 TGRadioButton *rais =
new TGRadioButton(bg,
"Raised", id3);
4171 rais->Associate(
this);
4172 fTrashListFrame->AddFirst(rais);
4174 f->AddFrame(bg, fLayoutExpandXYMargin);
4181 TGComboBox *TStyleManager::AddDateFormatEntry(TGCompositeFrame *f, Int_t
id)
4183 TGComboBox *cb =
new TGComboBox(f,
id);
4184 cb->Associate(
this);
4185 cb->AddEntry(
"Wed Sep 25 17:10:35 2002", 1);
4186 cb->AddEntry(
"2002-09-25", 2);
4187 cb->AddEntry(
"2002-09-25 17:10:35", 3);
4189 cb->GetListBox()->Resize(cb->GetListBox()->GetDefaultSize().fWidth, 55);
4190 f->AddFrame(cb, fLayoutExpandXCenterYMargin);
4197 TGCheckButton *TStyleManager::AddCheckButton(TGCompositeFrame *f,
const char *s,
4198 Int_t
id, Int_t e1, Int_t e2)
4200 TGLayoutHints *layout =
new TGLayoutHints(kLHintsNormal, 0, e1, 4, e2);
4201 fTrashListLayout->Add(layout);
4203 TGHorizontalFrame *h =
new TGHorizontalFrame(f);
4204 fTrashListFrame->AddFirst(h);
4205 TGCheckButton *cb =
new TGCheckButton(h, s,
id);
4206 cb->Associate(
this);
4207 h->AddFrame(cb, layout);
4215 TGTextEntry *TStyleManager::AddTextEntry(TGCompositeFrame *f,
4216 const char *s, Int_t
id)
4218 TGHorizontalFrame *h =
new TGHorizontalFrame(f);
4219 fTrashListFrame->AddFirst(h);
4221 TGLabel *lab =
new TGLabel(h, s);
4222 fTrashListFrame->AddFirst(lab);
4223 TGLayoutHints *layout1 =
new TGLayoutHints(kLHintsNormal, 0, 0, 3);
4224 fTrashListLayout->Add(layout1);
4225 h->AddFrame(lab, layout1);
4227 TGTextEntry *te =
new TGTextEntry(h,
"",
id);
4228 te->Associate(
this);
4231 TGLayoutHints *layout2 =
new TGLayoutHints(kLHintsRight, 20);
4232 fTrashListLayout->Add(layout2);
4233 h->AddFrame(te, layout2);
4235 h->AddFrame(te, fLayoutExpandX);
4236 TGLayoutHints *layout3 =
4237 new TGLayoutHints(kLHintsExpandX | kLHintsCenterY, 0, 2, 3, 3);
4238 fTrashListLayout->Add(layout3);
4239 f->AddFrame(h, layout3);
4246 TGComboBox *TStyleManager::AddPaperSizeEntry(TGCompositeFrame *f, Int_t
id)
4248 TGComboBox *cb =
new TGComboBox(f,
id);
4249 cb->Associate(
this);
4250 cb->AddEntry(
"Custom size (cm)", 1);
4251 cb->AddEntry(
"Custom size (inch)", 2);
4252 cb->AddEntry(
"A4 (cm)", 3);
4253 cb->AddEntry(
"US Letter (inch)", 4);
4254 cb->AddEntry(
"US Letter (cm)", 4);
4256 cb->GetListBox()->Resize(cb->GetListBox()->GetDefaultSize().fWidth, 70);
4257 f->AddFrame(cb, fLayoutExpandXCenterYMargin);
4264 void TStyleManager::DoMenu(Int_t menuID)
4267 case kMenuNew: DoNew();
break;
4268 case kMenuDelete: DoDelete();
break;
4269 case kMenuRename: DoRename();
break;
4270 case kMenuImportCanvas: DoImportCanvas();
break;
4271 case kMenuImportMacro: DoImportMacro(kTRUE);
break;
4272 case kMenuExport: DoExport();
break;
4273 case kMenuExit: DoExit();
break;
4274 case kMenuHelp: DoHelp(42);
break;
4275 case kMenuHelpEditor: DoHelp(fCurTabNum);
break;
4276 case kMenuHelpGeneral: DoHelp(0);
break;
4277 case kMenuHelpCanvas: DoHelp(1);
break;
4278 case kMenuHelpPad: DoHelp(2);
break;
4279 case kMenuHelpHistos: DoHelp(3);
break;
4280 case kMenuHelpAxis: DoHelp(4);
break;
4281 case kMenuHelpTitle: DoHelp(5);
break;
4282 case kMenuHelpStats: DoHelp(6);
break;
4283 case kMenuHelpPSPDF: DoHelp(7);
break;
4291 void TStyleManager::DoImportMacro(Bool_t create)
4299 if ((!create) && (!strcmp(fCurSelStyle->GetName(),
"Default"))) {
4300 if ((!strcmp(fCurSelStyle->GetName(),gStyle->GetName())))
4301 gStyle->Reset(
"Default");
4303 delete gROOT->GetStyle(
"Default");
4304 new TStyle(
"Default",
"Default Style");
4306 }
else if ((!create) && (!strcmp(fCurSelStyle->GetName(),
"Plain"))) {
4307 if ((!strcmp(fCurSelStyle->GetName(),gStyle->GetName())))
4308 gStyle->Reset(
"Plain");
4310 delete gROOT->GetStyle(
"Plain");
4311 new TStyle(
"Plain",
"Plain Style (no colors/fill areas)");
4313 }
else if ((!create) && (!strcmp(fCurSelStyle->GetName(),
"Bold"))) {
4314 if ((!strcmp(fCurSelStyle->GetName(),gStyle->GetName())))
4315 gStyle->Reset(
"Bold");
4317 delete gROOT->GetStyle(
"Bold");
4318 new TStyle(
"Bold",
"Bold Style");
4320 }
else if ((!create) && (!strcmp(fCurSelStyle->GetName(),
"Video"))) {
4321 if ((!strcmp(fCurSelStyle->GetName(),gStyle->GetName())))
4322 gStyle->Reset(
"Video");
4324 delete gROOT->GetStyle(
"Video");
4325 new TStyle(
"Video",
"Style for video presentation histograms");
4327 }
else if ((!create) && (!strcmp(fCurSelStyle->GetName(),
"Pub"))) {
4328 if ((!strcmp(fCurSelStyle->GetName(),gStyle->GetName())))
4329 gStyle->Reset(
"Pub");
4331 delete gROOT->GetStyle(
"Pub");
4332 new TStyle(
"Pub",
"Style for Publications");
4338 newName.Form(
"Style_%s.C", fCurSelStyle->GetName());
4339 fCurMacro->fFilename = StrDup(newName.Data());
4341 new TGFileDialog(gClient->GetRoot(),
this, kFDOpen, fCurMacro);
4342 if (fCurMacro->fFilename != 0) {
4343 gROOT->ProcessLine(Form(
".x %s", fCurMacro->fFilename));
4344 fCurMacro->fFilename = StrDup(gSystem->BaseName(fCurMacro->fFilename));
4356 void TStyleManager::DoListSelect()
4359 fCurSelStyle = gROOT->GetStyle(((TGTextLBEntry*) fListComboBox->
4360 GetSelectedEntry())->GetText()->GetString());
4362 fStyleChanged = kFALSE;
4368 if (fMoreAndNotLess) {
4369 DisconnectEditor(fCurTabNum);
4370 UpdateEditor(fCurTabNum);
4371 ConnectEditor(fCurTabNum);
4375 if (fPreviewWindow && fPreviewWindow->IsMapped())
4376 DoEditionUpdatePreview();
4380 newTip.Form(
"'%s'", fCurSelStyle->GetName());
4381 newTip +=
" become current style";
4382 fMakeDefault->SetToolTipText(newTip.Data());
4385 fListComboBox->MapSubwindows();
4386 fListComboBox->Layout();
4393 void TStyleManager::DoRealTime(Bool_t b)
4396 fEditionUpdatePreview->SetEnabled(kFALSE);
4397 fRealTimePreview = kTRUE;
4398 DoEditionUpdatePreview();
4400 fEditionUpdatePreview->SetEnabled(kTRUE);
4401 fRealTimePreview = kFALSE;
4409 void TStyleManager::DoPreview(Bool_t b)
4412 fPreviewButton->SetState(kButtonDown, kFALSE);
4413 if (fPreviewWindow) {
4414 DoEditionUpdatePreview();
4415 fPreviewWindow->MapTheWindow();
4417 if (fCurPad && fCurObj) {
4418 TQObject::Disconnect(
"TCanvas",
"Closed()");
4419 fPreviewWindow =
new TStylePreview(GetMainFrame(), fCurSelStyle, fCurPad);
4420 TQObject::Connect(
"TCanvas",
"Closed()",
"TStyleManager",
this,
"DoSelectNoCanvas()");
4423 fPreviewWindow->Connect(
"CloseWindow()",
"TStyleManager",
this,
"DoPreviewClosed()");
4424 fPreviewRealTime->SetEnabled(kTRUE);
4425 if (fRealTimePreview) {
4426 fPreviewRealTime->SetState(kButtonDown, kFALSE);
4427 fEditionUpdatePreview->SetEnabled(kFALSE);
4429 fPreviewRealTime->SetState(kButtonUp, kFALSE);
4430 fEditionUpdatePreview->SetEnabled(kTRUE);
4432 }
else DoPreviewClosed();
4439 void TStyleManager::DoPreviewClosed()
4441 fPreviewWindow->Disconnect(
"CloseWindow()");
4442 fPreviewButton->SetState(kButtonUp, kFALSE);
4443 fPreviewRealTime->SetEnabled(kFALSE);
4444 fEditionUpdatePreview->SetEnabled(kFALSE);
4445 fPreviewWindow->UnmapWindow();
4452 void TStyleManager::DoMakeDefault()
4454 gROOT->SetStyle(fCurSelStyle->GetName());
4455 fCurStyle->SetText(gStyle->GetName());
4462 void TStyleManager::DoApplyOnSelect(Int_t i)
4464 fAllAndNotCurrent = (i == kTopApplyOnAll);
4471 void TStyleManager::DoApplyOn()
4473 TStyle *tmp = gStyle;
4474 gStyle = fCurSelStyle;
4476 if (fAllAndNotCurrent) {
4478 TCanvas *tmpCanvas = (TCanvas *) (gROOT->GetListOfCanvases()->First());
4480 if ((!fPreviewWindow) || (tmpCanvas != fPreviewWindow->GetMainCanvas())) {
4481 tmpCanvas->UseCurrentStyle();
4482 tmpCanvas->Modified();
4483 tmpCanvas->Update();
4485 tmpCanvas = (TCanvas *) (gROOT->GetListOfCanvases()->After(tmpCanvas));
4488 if (fCurPad && fCurObj) {
4490 fCurObj->UseCurrentStyle();
4491 TCanvas *tmpCanvas = (TCanvas *) (gROOT->GetListOfCanvases()->First());
4493 if (((!fPreviewWindow) || (tmpCanvas != fPreviewWindow->GetMainCanvas()))
4494 && ((tmpCanvas == fCurObj) || tmpCanvas->FindObject(fCurObj))) {
4495 tmpCanvas->Modified();
4496 tmpCanvas->Update();
4498 tmpCanvas = (TCanvas *) (gROOT->GetListOfCanvases()->After(tmpCanvas));
4509 void TStyleManager::DoMoreLess()
4511 fMoreAndNotLess = !fMoreAndNotLess;
4512 if (fMoreAndNotLess) {
4514 SetWMSizeHints(fSMWidth, fSMHeight, fSMWidth, fSMHeight, 0, 0);
4515 ShowFrame(fEditionFrame);
4516 fEditionFrame->ShowFrame(fEditionTab);
4517 fEditionFrame->ShowFrame(fEditionButtonFrame);
4518 fMoreLess->SetText(
"&Close <<");
4519 Resize(fSMWidth, fSMHeight);
4522 DisconnectEditor(fCurTabNum);
4523 UpdateEditor(fCurTabNum);
4524 ConnectEditor(fCurTabNum);
4525 fMoreLess->SetToolTipText(
"Close the editor");
4528 HideFrame(fEditionFrame);
4529 fEditionFrame->HideFrame(fEditionTab);
4530 fEditionFrame->HideFrame(fEditionButtonFrame);
4531 fMoreLess->SetText(
"&Edit >>");
4532 Resize(GetDefaultSize());
4533 SetWMSizeHints(fSMWidth, GetHeight(), fSMWidth, GetHeight(), 0, 0);
4534 fMoreLess->SetToolTipText(
"Open the editor");
4541 void TStyleManager::DoEditionUpdatePreview()
4543 if ((!fCurPad) || (!fCurObj))
return;
4545 if (fPreviewWindow) {
4546 TQObject::Disconnect(
"TCanvas",
"Closed()");
4547 fPreviewWindow->Update(fCurSelStyle, fCurPad);
4548 TQObject::Connect(
"TCanvas",
"Closed()",
"TStyleManager",
this,
"DoSelectNoCanvas()");
4555 void TStyleManager::DoChangeTab(Int_t i)
4559 DisconnectEditor(fCurTabNum);
4561 UpdateEditor(fCurTabNum);
4562 ConnectEditor(fCurTabNum);
4568 void TStyleManager::DoChangeAxisTab(Int_t i)
4577 void TStyleManager::DoSelectNoCanvas()
4582 if (fPreviewWindow && fPreviewWindow->IsMapped())
4585 fCurPadTextEntry->SetText(
"No pad selected");
4586 fCurObjTextEntry->SetText(
"No object selected");
4587 fImportCascade->DisableEntry(kMenuImportCanvas);
4588 fApplyOnButton->SetEnabled(kFALSE);
4589 fToolBarImportCanvas->SetEnabled(kFALSE);
4590 fPreviewButton->SetEnabled(kFALSE);
4591 fPreviewRealTime->SetEnabled(kFALSE);
4592 fEditionUpdatePreview->SetEnabled(kFALSE);
4599 void TStyleManager::DoSelectCanvas(TVirtualPad *pad, TObject *obj, Int_t mouseButton)
4601 if (mouseButton != kButton2Down)
return;
4609 if (fPreviewWindow && (pad->GetCanvas() == fPreviewWindow->GetMainCanvas()))
4613 Bool_t samePad = (fCurPad && (pad->GetCanvas() == fCurPad->GetCanvas()));
4617 Bool_t preview = (fPreviewWindow && fPreviewWindow->IsMapped());
4619 if ((!samePad) && preview) DoPreview(kFALSE);
4623 if (fCurPad->GetName() && strlen(fCurPad->GetName()))
4624 sPad.Append(fCurPad->GetName());
4626 sPad.Append(
"[no name]");
4627 sPad.Append(
" - '");
4628 if (fCurPad->GetTitle() && strlen(fCurPad->GetTitle()))
4629 sPad.Append(fCurPad->GetTitle());
4631 sPad.Append(
"[no title]");
4633 sPad.Append(fCurPad->ClassName());
4634 fCurPadTextEntry->SetText(sPad);
4636 if (strlen(fCurObj->GetName()))
4637 sObj.Append(fCurObj->GetName());
4639 sObj.Append(
"[no name]");
4641 sObj.Append(fCurObj->ClassName());
4642 fCurObjTextEntry->SetText(sObj);
4645 fImportCascade->EnableEntry(kMenuImportCanvas);
4646 fApplyOnButton->SetEnabled(kTRUE);
4647 fToolBarImportCanvas->SetEnabled(kTRUE);
4651 fPreviewButton->SetEnabled(kTRUE);
4652 fPreviewRealTime->SetEnabled(kFALSE);
4653 fEditionUpdatePreview->SetEnabled(kFALSE);
4661 void TStyleManager::CloseWindow()
4669 void TStyleManager::ModFillColor()
4671 fCurSelStyle->SetFillColor(TColor::GetColor(fFillColor->GetColor()));
4678 void TStyleManager::ModFillStyle()
4680 fCurSelStyle->SetFillStyle(fFillStyle->GetPattern());
4687 void TStyleManager::ModHatchesLineWidth()
4689 fCurSelStyle->SetHatchesLineWidth(fHatchesLineWidth->GetSelected());
4696 void TStyleManager::ModHatchesSpacing()
4698 fCurSelStyle->SetHatchesSpacing(fHatchesSpacing->GetNumber());
4705 void TStyleManager::ModMarkerColor()
4707 fCurSelStyle->SetMarkerColor(TColor::GetColor(fMarkerColor->GetColor()));
4714 void TStyleManager::ModMarkerStyle()
4716 fCurSelStyle->SetMarkerStyle(fMarkerStyle->GetMarkerStyle());
4723 void TStyleManager::ModMarkerSize()
4725 fCurSelStyle->SetMarkerSize(fMarkerSize->GetSelected() * 0.2);
4732 void TStyleManager::ModScreenFactor()
4734 fCurSelStyle->SetScreenFactor(fScreenFactor->GetNumber());
4741 void TStyleManager::ModLineColor()
4743 fCurSelStyle->SetLineColor(TColor::GetColor(fLineColor->GetColor()));
4750 void TStyleManager::ModLineWidth()
4752 fCurSelStyle->SetLineWidth(fLineWidth->GetSelected());
4759 void TStyleManager::ModLineStyle()
4761 fCurSelStyle->SetLineStyle(fLineStyle->GetSelected());
4768 void TStyleManager::ModLineStyleEdit()
4776 void TStyleManager::ModTextColor()
4778 fCurSelStyle->SetTextColor(TColor::GetColor(fTextColor->GetColor()));
4785 void TStyleManager::ModTextSize()
4787 fCurSelStyle->SetTextSize(fTextSize->GetNumber());
4794 void TStyleManager::ModTextSizeInPixels(Bool_t b)
4796 Int_t tmp = fCurSelStyle->GetTextFont() / 10;
4797 Int_t mod = fCurSelStyle->GetTextFont() % 10;
4798 Double_t h = TMath::Max(fCurSelStyle->GetCanvasDefH(), 100);
4800 fCurSelStyle->SetTextFont(tmp * 10 + 3);
4801 fTextSize->SetFormat(TGNumberFormat::kNESInteger,
4802 TGNumberFormat::kNEAPositive);
4803 fTextSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, h);
4805 fCurSelStyle->SetTextSize(fCurSelStyle->GetTextSize() * h);
4807 fCurSelStyle->SetTextFont(tmp * 10 + 2);
4808 fTextSize->SetFormat(TGNumberFormat::kNESRealThree,
4809 TGNumberFormat::kNEAPositive);
4810 fTextSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, 1);
4812 fCurSelStyle->SetTextSize(fCurSelStyle->GetTextSize() / h);
4814 fTextSize->SetNumber(fCurSelStyle->GetTextSize());
4821 void TStyleManager::ModTextFont()
4823 Int_t tmp = fCurSelStyle->GetTextFont() % 10;
4824 fCurSelStyle->SetTextFont(fTextFont->GetSelected() * 10 + tmp);
4831 void TStyleManager::ModTextAlign()
4833 fCurSelStyle->SetTextAlign(fTextAlign->GetSelected());
4840 void TStyleManager::ModTextAngle()
4842 fCurSelStyle->SetTextAngle(fTextAngle->GetNumber());
4849 void TStyleManager::ModCanvasColor()
4851 fCurSelStyle->SetCanvasColor(TColor::GetColor(fCanvasColor->GetColor()));
4858 void TStyleManager::ModCanvasDefX()
4860 fCurSelStyle->SetCanvasDefX(fCanvasDefX->GetIntNumber());
4867 void TStyleManager::ModCanvasDefY()
4869 fCurSelStyle->SetCanvasDefY(fCanvasDefY->GetIntNumber());
4876 void TStyleManager::ModCanvasDefW()
4878 fCurSelStyle->SetCanvasDefW(fCanvasDefW->GetIntNumber());
4885 void TStyleManager::ModCanvasDefH()
4887 fCurSelStyle->SetCanvasDefH(fCanvasDefH->GetIntNumber());
4894 void TStyleManager::ModCanvasBorderMode()
4896 Int_t i = kCanvasBorderModeSunken;
4898 while ((but = fCanvasBorderMode->Find(i)) && !but->IsDown())
4900 fCurSelStyle->SetCanvasBorderMode(i - 1 - kCanvasBorderModeSunken);
4907 void TStyleManager::ModCanvasBorderSize()
4909 fCurSelStyle->SetCanvasBorderSize(fCanvasBorderSize->GetSelected());
4916 void TStyleManager::ModOptDateBool()
4918 if (fOptDateBool->IsDown())
4919 fCurSelStyle->SetOptDate(4);
4921 fCurSelStyle->SetOptDate(0);
4922 DisconnectEditor(fCurTabNum);
4923 UpdateEditor(fCurTabNum);
4924 ConnectEditor(fCurTabNum);
4931 void TStyleManager::ModAttDateTextColor()
4934 fCurSelStyle->GetAttDate()->SetTextColor(TColor::GetColor(fAttDateTextColor->GetColor()));
4941 void TStyleManager::ModAttDateTextSize()
4943 fCurSelStyle->GetAttDate()->SetTextSize(fAttDateTextSize->GetNumber());
4950 void TStyleManager::ModAttDateTextSizeInPixels(Bool_t b)
4952 Int_t tmp = fCurSelStyle->GetAttDate()->GetTextFont() / 10;
4953 Int_t mod = fCurSelStyle->GetAttDate()->GetTextFont() % 10;
4954 Double_t h = TMath::Max(fCurSelStyle->GetCanvasDefH(), 100);
4957 fCurSelStyle->GetAttDate()->SetTextFont(tmp * 10 + 3);
4958 fAttDateTextSize->SetFormat(TGNumberFormat::kNESInteger,
4959 TGNumberFormat::kNEAPositive);
4960 fAttDateTextSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, h);
4962 fCurSelStyle->GetAttDate()->SetTextSize(fCurSelStyle->GetAttDate()->GetTextSize() * h);
4964 fCurSelStyle->GetAttDate()->SetTextFont(tmp * 10 + 2);
4965 fAttDateTextSize->SetFormat(TGNumberFormat::kNESRealThree,
4966 TGNumberFormat::kNEAPositive);
4967 fAttDateTextSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, 1);
4969 fCurSelStyle->GetAttDate()->SetTextSize(fCurSelStyle->GetAttDate()->GetTextSize() / h);
4971 fAttDateTextSize->SetNumber(fCurSelStyle->GetAttDate()->GetTextSize());
4978 void TStyleManager::ModOptDateFormat()
4980 Int_t formatPrec = fCurSelStyle->GetOptDate() % 10;
4981 fCurSelStyle->SetOptDate((fOptDateFormat->GetSelected() - 1) * 10
4989 void TStyleManager::ModAttDateTextFont()
4991 Int_t fontPrec = fCurSelStyle->GetAttDate()->GetTextFont() % 10;
4992 fCurSelStyle->GetAttDate()->SetTextFont(fAttDateTextFont->GetSelected() * 10
5000 void TStyleManager::ModAttDateTextAlign()
5002 fCurSelStyle->GetAttDate()->SetTextAlign(fAttDateTextAlign->GetSelected());
5009 void TStyleManager::ModAttDateTextAngle()
5011 fCurSelStyle->GetAttDate()->SetTextAngle(fAttDateTextAngle->GetNumber());
5018 void TStyleManager::ModDateX()
5020 fCurSelStyle->SetDateX(fDateX->GetIntNumber() * 0.01);
5027 void TStyleManager::ModDateY()
5029 fCurSelStyle->SetDateY(fDateY->GetIntNumber() * 0.01);
5036 void TStyleManager::ModPadLeftMargin()
5038 fCurSelStyle->SetPadLeftMargin(fPadLeftMargin->GetIntNumber() * 0.01);
5045 void TStyleManager::ModPadRightMargin()
5047 fCurSelStyle->SetPadRightMargin(fPadRightMargin->GetIntNumber() * 0.01);
5054 void TStyleManager::ModPadTopMargin()
5056 fCurSelStyle->SetPadTopMargin(fPadTopMargin->GetIntNumber() * 0.01);
5063 void TStyleManager::ModPadBottomMargin()
5065 fCurSelStyle->SetPadBottomMargin(fPadBottomMargin->GetIntNumber() * 0.01);
5072 void TStyleManager::ModPadBorderMode()
5074 Int_t i = kPadBorderModeSunken;
5076 while ((but = fPadBorderMode->Find(i)) && !but->IsDown())
5078 fCurSelStyle->SetPadBorderMode(i - 1 - kPadBorderModeSunken);
5085 void TStyleManager::ModPadBorderSize()
5087 fCurSelStyle->SetPadBorderSize(fPadBorderSize->GetSelected());
5094 void TStyleManager::ModPadColor()
5096 fCurSelStyle->SetPadColor(TColor::GetColor(fPadColor->GetColor()));
5103 void TStyleManager::ModPadTickX()
5105 fCurSelStyle->SetPadTickX(fPadTickX->IsDown());
5112 void TStyleManager::ModPadTickY()
5114 fCurSelStyle->SetPadTickY(fPadTickY->IsDown());
5121 void TStyleManager::ModPadGridX()
5123 fCurSelStyle->SetPadGridX(fPadGridX->IsDown());
5130 void TStyleManager::ModPadGridY()
5132 fCurSelStyle->SetPadGridY(fPadGridY->IsDown());
5139 void TStyleManager::ModGridColor()
5141 fCurSelStyle->SetGridColor(TColor::GetColor(fGridColor->GetColor()));
5148 void TStyleManager::ModGridWidth()
5150 fCurSelStyle->SetGridWidth(fGridWidth->GetSelected());
5157 void TStyleManager::ModGridStyle()
5159 fCurSelStyle->SetGridStyle(fGridStyle->GetSelected());
5166 void TStyleManager::ModHistFillColor()
5168 fCurSelStyle->SetHistFillColor(TColor::GetColor(fHistFillColor->GetColor()));
5175 void TStyleManager::ModHistFillStyle()
5177 fCurSelStyle->SetHistFillStyle(fHistFillStyle->GetPattern());
5184 void TStyleManager::ModHistLineColor()
5186 fCurSelStyle->SetHistLineColor(TColor::GetColor(fHistLineColor->GetColor()));
5193 void TStyleManager::ModHistLineWidth()
5195 fCurSelStyle->SetHistLineWidth(fHistLineWidth->GetSelected());
5202 void TStyleManager::ModHistLineStyle()
5204 fCurSelStyle->SetHistLineStyle(fHistLineStyle->GetSelected());
5211 void TStyleManager::ModBarWidth()
5213 fCurSelStyle->SetBarWidth(fBarWidth->GetNumber());
5220 void TStyleManager::ModBarOffset()
5222 fCurSelStyle->SetBarOffset(fBarOffset->GetNumber());
5230 void TStyleManager::ModHistMinimumZero()
5232 fCurSelStyle->SetHistMinimumZero(fHistMinimumZero->IsDown());
5239 void TStyleManager::ModPaintTextFormat()
5241 fCurSelStyle->SetPaintTextFormat(fPaintTextFormat->GetText());
5248 void TStyleManager::ModNumberContours()
5250 fCurSelStyle->SetNumberContours(fNumberContours->GetIntNumber());
5257 void TStyleManager::ModLegoInnerR()
5259 fCurSelStyle->SetLegoInnerR(fLegoInnerR->GetIntNumber() *0.01);
5266 void TStyleManager::ModFrameFillColor()
5268 fCurSelStyle->SetFrameFillColor(TColor::GetColor(fFrameFillColor->GetColor()));
5275 void TStyleManager::ModFrameFillStyle()
5277 fCurSelStyle->SetFrameFillStyle(fFrameFillStyle->GetPattern());
5284 void TStyleManager::ModFrameLineColor()
5286 fCurSelStyle->SetFrameLineColor(TColor::GetColor(fFrameLineColor->GetColor()));
5293 void TStyleManager::ModFrameLineWidth()
5295 fCurSelStyle->SetFrameLineWidth(fFrameLineWidth->GetSelected());
5302 void TStyleManager::ModFrameLineStyle()
5304 fCurSelStyle->SetFrameLineStyle(fFrameLineStyle->GetSelected());
5311 void TStyleManager::ModPaletteEdit()
5319 void TStyleManager::ModFrameBorderMode()
5321 Int_t i = kFrameBorderModeSunken;
5323 while ((but = fFrameBorderMode->Find(i)) && !but->IsDown())
5325 fCurSelStyle->SetFrameBorderMode(i - 1 - kFrameBorderModeSunken);
5332 void TStyleManager::ModFrameBorderSize()
5334 fCurSelStyle->SetFrameBorderSize(fFrameBorderSize->GetSelected());
5341 void TStyleManager::ModFuncColor()
5343 fCurSelStyle->SetFuncColor(TColor::GetColor(fFuncColor->GetColor()));
5350 void TStyleManager::ModFuncWidth()
5352 fCurSelStyle->SetFuncWidth(fFuncWidth->GetSelected());
5359 void TStyleManager::ModFuncStyle()
5361 fCurSelStyle->SetFuncStyle(fFuncStyle->GetSelected());
5368 void TStyleManager::ModDrawBorder()
5370 fCurSelStyle->SetDrawBorder(fDrawBorder->IsDown());
5377 void TStyleManager::ModEndErrorSize()
5379 fCurSelStyle->SetEndErrorSize(fEndErrorSize->GetNumber());
5386 void TStyleManager::ModErrorX()
5388 fCurSelStyle->SetErrorX(fErrorX->GetIntNumber() * 0.001);
5395 void TStyleManager::ModTimeOffset()
5397 Double_t offset = 0;
5398 Int_t year = ((Int_t) fTimeOffsetDate->GetNumber())/10000;
5399 Int_t month = (((Int_t) fTimeOffsetDate->GetNumber())/100) % 100;
5400 Int_t day = ((Int_t) fTimeOffsetDate->GetNumber()) % 100;
5404 offset += 3600 * 24;
5407 Int_t oneMonthInSecs;
5412 if (year % 4) oneMonthInSecs = 3600 * 24 * 28;
5413 else oneMonthInSecs = 3600 * 24 * 29;
5415 case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
5416 oneMonthInSecs = 3600 * 24 * 31;
5419 oneMonthInSecs = 3600 * 24 * 30;
5421 offset += oneMonthInSecs;
5424 Int_t oneYearInSecs;
5425 while (year < 1995) {
5426 if (year % 4) oneYearInSecs = 3600 * 24 * 365;
5427 else oneYearInSecs = 3600 * 24 * 366;
5428 offset -= oneYearInSecs;
5431 while (year > 1995) {
5433 if (year % 4) oneYearInSecs = 3600 * 24 * 365;
5434 else oneYearInSecs = 3600 * 24 * 366;
5435 offset += oneYearInSecs;
5438 offset += 788918400 + fTimeOffsetTime->GetNumber();
5440 fCurSelStyle->SetTimeOffset(offset);
5447 void TStyleManager::ModStripDecimals()
5449 fCurSelStyle->SetStripDecimals(!fStripDecimals->IsDown());
5458 void TStyleManager::ModApplyOnXYZ()
5460 switch (fCurTabAxisNum) {
5462 fCurSelStyle->SetAxisColor(fCurSelStyle->GetAxisColor(
"x"),
"yz");
5463 fCurSelStyle->SetTickLength(fCurSelStyle->GetTickLength(
"x"),
"yz");
5464 fCurSelStyle->SetTitleColor(fCurSelStyle->GetTitleColor(
"x"),
"yz");
5465 fCurSelStyle->SetTitleFont(fCurSelStyle->GetTitleFont(
"x"),
"yz");
5466 fCurSelStyle->SetTitleSize(fCurSelStyle->GetTitleSize(
"x"),
"yz");
5467 fCurSelStyle->SetTitleOffset(fCurSelStyle->GetTitleOffset(
"x"),
"yz");
5468 fCurSelStyle->SetNdivisions(fCurSelStyle->GetNdivisions(
"x"),
"yz");
5469 fCurSelStyle->SetLabelColor(fCurSelStyle->GetLabelColor(
"x"),
"yz");
5470 fCurSelStyle->SetLabelFont(fCurSelStyle->GetLabelFont(
"x"),
"yz");
5471 fCurSelStyle->SetLabelSize(fCurSelStyle->GetLabelSize(
"x"),
"yz");
5472 fCurSelStyle->SetLabelOffset(fCurSelStyle->GetLabelOffset(
"x"),
"yz");
5475 fCurSelStyle->SetAxisColor(fCurSelStyle->GetAxisColor(
"y"),
"xz");
5476 fCurSelStyle->SetTickLength(fCurSelStyle->GetTickLength(
"y"),
"xz");
5477 fCurSelStyle->SetTitleColor(fCurSelStyle->GetTitleColor(
"y"),
"xz");
5478 fCurSelStyle->SetTitleFont(fCurSelStyle->GetTitleFont(
"y"),
"xz");
5479 fCurSelStyle->SetTitleSize(fCurSelStyle->GetTitleSize(
"y"),
"xz");
5480 fCurSelStyle->SetTitleOffset(fCurSelStyle->GetTitleOffset(
"y"),
"xz");
5481 fCurSelStyle->SetNdivisions(fCurSelStyle->GetNdivisions(
"y"),
"xz");
5482 fCurSelStyle->SetLabelColor(fCurSelStyle->GetLabelColor(
"y"),
"xz");
5483 fCurSelStyle->SetLabelFont(fCurSelStyle->GetLabelFont(
"y"),
"xz");
5484 fCurSelStyle->SetLabelSize(fCurSelStyle->GetLabelSize(
"y"),
"xz");
5485 fCurSelStyle->SetLabelOffset(fCurSelStyle->GetLabelOffset(
"y"),
"xz");
5489 fCurSelStyle->SetAxisColor(fCurSelStyle->GetAxisColor(
"z"),
"xy");
5490 fCurSelStyle->SetTickLength(fCurSelStyle->GetTickLength(
"z"),
"xy");
5491 fCurSelStyle->SetTitleColor(fCurSelStyle->GetTitleColor(
"z"),
"xy");
5492 fCurSelStyle->SetTitleFont(fCurSelStyle->GetTitleFont(
"z"),
"xy");
5493 fCurSelStyle->SetTitleSize(fCurSelStyle->GetTitleSize(
"z"),
"xy");
5494 fCurSelStyle->SetTitleOffset(fCurSelStyle->GetTitleOffset(
"z"),
"xy");
5495 fCurSelStyle->SetNdivisions(fCurSelStyle->GetNdivisions(
"z"),
"xy");
5496 fCurSelStyle->SetLabelColor(fCurSelStyle->GetLabelColor(
"z"),
"xy");
5497 fCurSelStyle->SetLabelFont(fCurSelStyle->GetLabelFont(
"z"),
"xy");
5498 fCurSelStyle->SetLabelSize(fCurSelStyle->GetLabelSize(
"z"),
"xy");
5499 fCurSelStyle->SetLabelOffset(fCurSelStyle->GetLabelOffset(
"z"),
"xy");
5503 DisconnectEditor(fCurTabNum);
5504 UpdateEditor(fCurTabNum);
5505 ConnectEditor(fCurTabNum);
5512 void TStyleManager::ModXTitleSize()
5514 fCurSelStyle->SetTitleSize(fXTitleSize->GetNumber(),
"X");
5521 void TStyleManager::ModXTitleSizeInPixels(Bool_t b)
5523 Int_t tmp = fCurSelStyle->GetTitleFont(
"X") / 10;
5524 Int_t mod = fCurSelStyle->GetTitleFont(
"X") % 10;
5525 Double_t h = TMath::Max(fCurSelStyle->GetCanvasDefH(), 100);
5527 fCurSelStyle->SetTitleFont(tmp * 10 + 3,
"X");
5528 fXTitleSize->SetFormat(TGNumberFormat::kNESInteger,
5529 TGNumberFormat::kNEAPositive);
5530 fXTitleSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, h);
5532 fCurSelStyle->SetTitleSize(fCurSelStyle->GetTitleSize(
"X") * h,
"X");
5534 fCurSelStyle->SetTitleFont(tmp * 10 + 2,
"X");
5535 fXTitleSize->SetFormat(TGNumberFormat::kNESRealThree,
5536 TGNumberFormat::kNEAPositive);
5537 fXTitleSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, 1);
5539 fCurSelStyle->SetTitleSize(fCurSelStyle->GetTitleSize(
"X") / h,
"X");
5541 fXTitleSize->SetNumber(fCurSelStyle->GetTitleSize(
"X"));
5548 void TStyleManager::ModXTitleColor()
5550 fCurSelStyle->SetTitleColor(TColor::GetColor(fXTitleColor->GetColor()),
"X");
5557 void TStyleManager::ModXTitleOffset()
5559 fCurSelStyle->SetTitleOffset(fXTitleOffset->GetNumber(),
"X");
5566 void TStyleManager::ModXTitleFont()
5568 Int_t fontPrec = fCurSelStyle->GetTitleFont(
"X") % 10;
5569 fCurSelStyle->SetTitleFont(fXTitleFont->GetSelected() * 10 + fontPrec,
"X");
5576 void TStyleManager::ModXLabelSize()
5578 fCurSelStyle->SetLabelSize(fXLabelSize->GetNumber(),
"X");
5585 void TStyleManager::ModXLabelSizeInPixels(Bool_t b)
5587 Int_t tmp = fCurSelStyle->GetLabelFont(
"X") / 10;
5588 Int_t mod = fCurSelStyle->GetLabelFont(
"X") % 10;
5589 Double_t h = TMath::Max(fCurSelStyle->GetCanvasDefH(), 100);
5591 fCurSelStyle->SetLabelFont(tmp * 10 + 3,
"X");
5592 fXLabelSize->SetFormat(TGNumberFormat::kNESInteger,
5593 TGNumberFormat::kNEAPositive);
5594 fXLabelSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, h);
5596 fCurSelStyle->SetLabelSize(fCurSelStyle->GetLabelSize(
"X") * h,
"X");
5598 fCurSelStyle->SetLabelFont(tmp * 10 + 2,
"X");
5599 fXLabelSize->SetFormat(TGNumberFormat::kNESRealThree,
5600 TGNumberFormat::kNEAPositive);
5601 fXLabelSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, 1);
5603 fCurSelStyle->SetLabelSize(fCurSelStyle->GetLabelSize(
"X") / h,
"X");
5605 fXLabelSize->SetNumber(fCurSelStyle->GetLabelSize(
"X"));
5612 void TStyleManager::ModXLabelColor()
5614 fCurSelStyle->SetLabelColor(TColor::GetColor(fXLabelColor->GetColor()),
"X");
5621 void TStyleManager::ModXLabelOffset()
5623 fCurSelStyle->SetLabelOffset(fXLabelOffset->GetNumber(),
"X");
5630 void TStyleManager::ModXLabelFont()
5632 Int_t fontPrec = fCurSelStyle->GetLabelFont(
"X") % 10;
5633 fCurSelStyle->SetLabelFont(fXLabelFont->GetSelected() * 10 + fontPrec,
"X");
5640 void TStyleManager::ModXAxisColor()
5642 fCurSelStyle->SetAxisColor(TColor::GetColor(fXAxisColor->GetColor()),
"X");
5649 void TStyleManager::ModXTickLength()
5651 fCurSelStyle->SetTickLength(fXTickLength->GetNumber(),
"X");
5659 void TStyleManager::ModOptLogx()
5661 fCurSelStyle->SetOptLogx(fOptLogx->IsDown());
5669 void TStyleManager::ModXNdivisions()
5672 if (fXNdivisionsOptimize->IsDown()) sgn = 1;
5673 fCurSelStyle->SetNdivisions(sgn * (fXNdivMain->GetIntNumber()
5674 + 100 * fXNdivSub->GetIntNumber()
5675 + 10000 * fXNdivSubSub->GetIntNumber()),
"X");
5682 void TStyleManager::ModYTitleSize()
5684 fCurSelStyle->SetTitleSize(fYTitleSize->GetNumber(),
"Y");
5691 void TStyleManager::ModYTitleSizeInPixels(Bool_t b)
5693 Int_t tmp = fCurSelStyle->GetTitleFont(
"Y") / 10;
5694 Int_t mod = fCurSelStyle->GetTitleFont(
"Y") % 10;
5695 Double_t h = TMath::Max(fCurSelStyle->GetCanvasDefH(), 100);
5697 fCurSelStyle->SetTitleFont(tmp * 10 + 3,
"Y");
5698 fYTitleSize->SetFormat(TGNumberFormat::kNESInteger,
5699 TGNumberFormat::kNEAPositive);
5700 fYTitleSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, h);
5702 fCurSelStyle->SetTitleSize(fCurSelStyle->GetTitleSize(
"Y") * h,
"Y");
5704 fCurSelStyle->SetTitleFont(tmp * 10 + 2,
"Y");
5705 fYTitleSize->SetFormat(TGNumberFormat::kNESRealThree,
5706 TGNumberFormat::kNEAPositive);
5707 fYTitleSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, 1);
5709 fCurSelStyle->SetTitleSize(fCurSelStyle->GetTitleSize(
"Y") / h,
"Y");
5711 fYTitleSize->SetNumber(fCurSelStyle->GetTitleSize(
"Y"));
5718 void TStyleManager::ModYTitleColor()
5720 fCurSelStyle->SetTitleColor(TColor::GetColor(fYTitleColor->GetColor()),
"Y");
5727 void TStyleManager::ModYTitleOffset()
5729 fCurSelStyle->SetTitleOffset(fYTitleOffset->GetNumber(),
"Y");
5736 void TStyleManager::ModYTitleFont()
5738 Int_t fontPrec = fCurSelStyle->GetTitleFont(
"Y") % 10;
5739 fCurSelStyle->SetTitleFont(fYTitleFont->GetSelected() * 10 + fontPrec,
"Y");
5746 void TStyleManager::ModYLabelSize()
5748 fCurSelStyle->SetLabelSize(fYLabelSize->GetNumber(),
"Y");
5755 void TStyleManager::ModYLabelSizeInPixels(Bool_t b)
5757 Int_t tmp = fCurSelStyle->GetLabelFont(
"Y") / 10;
5758 Int_t mod = fCurSelStyle->GetLabelFont(
"Y") % 10;
5759 Double_t h = TMath::Max(fCurSelStyle->GetCanvasDefH(), 100);
5761 fCurSelStyle->SetLabelFont(tmp * 10 + 3,
"Y");
5762 fYLabelSize->SetFormat(TGNumberFormat::kNESInteger,
5763 TGNumberFormat::kNEAPositive);
5764 fYLabelSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, h);
5766 fCurSelStyle->SetLabelSize(fCurSelStyle->GetLabelSize(
"Y") * h,
"Y");
5768 fCurSelStyle->SetLabelFont(tmp * 10 + 2,
"Y");
5769 fYLabelSize->SetFormat(TGNumberFormat::kNESRealThree,
5770 TGNumberFormat::kNEAPositive);
5771 fYLabelSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, 1);
5773 fCurSelStyle->SetLabelSize(fCurSelStyle->GetLabelSize(
"Y") / h,
"Y");
5775 fYLabelSize->SetNumber(fCurSelStyle->GetLabelSize(
"Y"));
5782 void TStyleManager::ModYLabelColor()
5784 fCurSelStyle->SetLabelColor(TColor::GetColor(fYLabelColor->GetColor()),
"Y");
5791 void TStyleManager::ModYLabelOffset()
5793 fCurSelStyle->SetLabelOffset(fYLabelOffset->GetNumber(),
"Y");
5800 void TStyleManager::ModYLabelFont()
5802 Int_t fontPrec = fCurSelStyle->GetLabelFont(
"Y") % 10;
5803 fCurSelStyle->SetLabelFont(fYLabelFont->GetSelected() * 10 + fontPrec,
"Y");
5810 void TStyleManager::ModYAxisColor()
5812 fCurSelStyle->SetAxisColor(TColor::GetColor(fYAxisColor->GetColor()),
"Y");
5819 void TStyleManager::ModYTickLength()
5821 fCurSelStyle->SetTickLength(fYTickLength->GetNumber(),
"Y");
5828 void TStyleManager::ModOptLogy()
5830 fCurSelStyle->SetOptLogy(fOptLogy->IsDown());
5838 void TStyleManager::ModYNdivisions()
5841 if (fYNdivisionsOptimize->IsDown()) sgn = 1;
5842 fCurSelStyle->SetNdivisions(sgn * (fYNdivMain->GetIntNumber()
5843 + 100 * fYNdivSub->GetIntNumber()
5844 + 10000 * fYNdivSubSub->GetIntNumber()),
"Y");
5851 void TStyleManager::ModZTitleSize()
5853 fCurSelStyle->SetTitleSize(fZTitleSize->GetNumber(),
"Z");
5860 void TStyleManager::ModZTitleSizeInPixels(Bool_t b)
5862 Int_t tmp = fCurSelStyle->GetTitleFont(
"Z") / 10;
5863 Int_t mod = fCurSelStyle->GetTitleFont(
"Z") % 10;
5864 Double_t h = TMath::Max(fCurSelStyle->GetCanvasDefH(), 100);
5866 fCurSelStyle->SetTitleFont(tmp * 10 + 3,
"Z");
5867 fZTitleSize->SetFormat(TGNumberFormat::kNESInteger,
5868 TGNumberFormat::kNEAPositive);
5869 fZTitleSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, h);
5871 fCurSelStyle->SetTitleSize(fCurSelStyle->GetTitleSize(
"Z") * h,
"Z");
5873 fCurSelStyle->SetTitleFont(tmp * 10 + 2,
"Z");
5874 fZTitleSize->SetFormat(TGNumberFormat::kNESRealThree,
5875 TGNumberFormat::kNEAPositive);
5876 fZTitleSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, 1);
5878 fCurSelStyle->SetTitleSize(fCurSelStyle->GetTitleSize(
"Z") / h,
"Z");
5880 fZTitleSize->SetNumber(fCurSelStyle->GetTitleSize(
"Z"));
5887 void TStyleManager::ModZTitleColor()
5889 fCurSelStyle->SetTitleColor(TColor::GetColor(fZTitleColor->GetColor()),
"Z");
5896 void TStyleManager::ModZTitleOffset()
5898 fCurSelStyle->SetTitleOffset(fZTitleOffset->GetNumber(),
"Z");
5905 void TStyleManager::ModZTitleFont()
5907 Int_t fontPrec = fCurSelStyle->GetTitleFont(
"Z") % 10;
5908 fCurSelStyle->SetTitleFont(fZTitleFont->GetSelected() * 10 + fontPrec,
"Z");
5915 void TStyleManager::ModZLabelSize()
5917 fCurSelStyle->SetLabelSize(fZLabelSize->GetNumber(),
"Z");
5924 void TStyleManager::ModZLabelSizeInPixels(Bool_t b)
5926 Int_t tmp = fCurSelStyle->GetLabelFont(
"Z") / 10;
5927 Int_t mod = fCurSelStyle->GetLabelFont(
"Z") % 10;
5928 Double_t h = TMath::Max(fCurSelStyle->GetCanvasDefH(), 100);
5930 fCurSelStyle->SetLabelFont(tmp * 10 + 3,
"Z");
5931 fZLabelSize->SetFormat(TGNumberFormat::kNESInteger,
5932 TGNumberFormat::kNEAPositive);
5933 fZLabelSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, h);
5935 fCurSelStyle->SetLabelSize(fCurSelStyle->GetLabelSize(
"Z") * h,
"Z");
5937 fCurSelStyle->SetLabelFont(tmp * 10 + 2,
"Z");
5938 fZLabelSize->SetFormat(TGNumberFormat::kNESRealThree,
5939 TGNumberFormat::kNEAPositive);
5940 fZLabelSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, 1);
5942 fCurSelStyle->SetLabelSize(fCurSelStyle->GetLabelSize(
"Z") / h,
"Z");
5944 fZLabelSize->SetNumber(fCurSelStyle->GetLabelSize(
"Z"));
5951 void TStyleManager::ModZLabelColor()
5953 fCurSelStyle->SetLabelColor(TColor::GetColor(fZLabelColor->GetColor()),
"Z");
5960 void TStyleManager::ModZLabelOffset()
5962 fCurSelStyle->SetLabelOffset(fZLabelOffset->GetNumber(),
"Z");
5969 void TStyleManager::ModZLabelFont()
5971 Int_t fontPrec = fCurSelStyle->GetLabelFont(
"Z") % 10;
5972 fCurSelStyle->SetLabelFont(fZLabelFont->GetSelected() * 10 + fontPrec,
"Z");
5979 void TStyleManager::ModZAxisColor()
5981 fCurSelStyle->SetAxisColor(TColor::GetColor(fZAxisColor->GetColor()),
"Z");
5988 void TStyleManager::ModZTickLength()
5990 fCurSelStyle->SetTickLength(fZTickLength->GetNumber(),
"Z");
5997 void TStyleManager::ModOptLogz()
5999 fCurSelStyle->SetOptLogz(fOptLogz->IsDown());
6007 void TStyleManager::ModZNdivisions()
6010 if (fZNdivisionsOptimize->IsDown()) sgn = 1;
6011 fCurSelStyle->SetNdivisions(sgn * (fZNdivMain->GetIntNumber()
6012 + 100 * fZNdivSub->GetIntNumber()
6013 + 10000 * fZNdivSubSub->GetIntNumber()),
"Z");
6020 void TStyleManager::ModOptTitle()
6022 fCurSelStyle->SetOptTitle(fOptTitle->IsDown());
6023 DisconnectEditor(fCurTabNum);
6024 UpdateEditor(fCurTabNum);
6025 ConnectEditor(fCurTabNum);
6032 void TStyleManager::ModTitleFillColor()
6034 fCurSelStyle->SetTitleFillColor(TColor::GetColor(fTitleColor->GetColor()));
6041 void TStyleManager::ModTitleStyle()
6043 fCurSelStyle->SetTitleStyle(fTitleStyle->GetPattern());
6050 void TStyleManager::ModTitleTextColor()
6052 fCurSelStyle->SetTitleTextColor(TColor::GetColor(fTitleTextColor->GetColor()));
6059 void TStyleManager::ModTitleFontSize()
6061 fCurSelStyle->SetTitleFontSize(fTitleFontSize->GetNumber());
6068 void TStyleManager::ModTitleFontSizeInPixels(Bool_t b)
6070 Int_t tmp = fCurSelStyle->GetTitleFont() / 10;
6071 Int_t mod = fCurSelStyle->GetTitleFont() % 10;
6072 Double_t h = TMath::Max(fCurSelStyle->GetCanvasDefH(), 100);
6074 fCurSelStyle->SetTitleFont(tmp * 10 + 3);
6075 fTitleFontSize->SetFormat(TGNumberFormat::kNESInteger,
6076 TGNumberFormat::kNEAPositive);
6077 fTitleFontSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, h);
6079 fCurSelStyle->SetTitleFontSize(fCurSelStyle->GetTitleFontSize() * h);
6081 fCurSelStyle->SetTitleFont(tmp * 10 + 2);
6082 fTitleFontSize->SetFormat(TGNumberFormat::kNESRealThree,
6083 TGNumberFormat::kNEAPositive);
6084 fTitleFontSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, 1);
6086 fCurSelStyle->SetTitleFontSize(fCurSelStyle->GetTitleFontSize() / h);
6088 fTitleFontSize->SetNumber(fCurSelStyle->GetTitleFontSize());
6095 void TStyleManager::ModTitleFont()
6097 Int_t tmp = fCurSelStyle->GetTitleFont() % 10;
6098 fCurSelStyle->SetTitleFont(fTitleFont->GetSelected() * 10 + tmp);
6105 void TStyleManager::ModTitleAlign()
6107 fCurSelStyle->SetTitleAlign(fTitleAlign->GetSelected());
6114 void TStyleManager::ModTitleBorderSize()
6116 fCurSelStyle->SetTitleBorderSize(fTitleBorderSize->GetSelected());
6123 void TStyleManager::ModLegendBorderSize()
6125 fCurSelStyle->SetLegendBorderSize(fLegendBorderSize->GetSelected());
6132 void TStyleManager::ModTitleX()
6134 fCurSelStyle->SetTitleX(fTitleX->GetIntNumber() * 0.01);
6141 void TStyleManager::ModTitleY()
6143 fCurSelStyle->SetTitleY(fTitleY->GetIntNumber() * 0.01);
6150 void TStyleManager::ModTitleW()
6152 fCurSelStyle->SetTitleW(fTitleW->GetIntNumber() * 0.01);
6159 void TStyleManager::ModTitleH()
6161 fCurSelStyle->SetTitleH(fTitleH->GetIntNumber() * 0.01);
6168 void TStyleManager::ModStatColor(Pixel_t color)
6170 fCurSelStyle->SetStatColor(TColor::GetColor(color));
6177 void TStyleManager::ModStatStyle(Style_t pattern)
6179 fCurSelStyle->SetStatStyle(pattern);
6186 void TStyleManager::ModStatTextColor(Pixel_t color)
6188 fCurSelStyle->SetStatTextColor(TColor::GetColor(color));
6195 void TStyleManager::ModStatFontSize()
6197 fCurSelStyle->SetStatFontSize(fStatFontSize->GetNumber());
6204 void TStyleManager::ModStatFontSizeInPixels(Bool_t b)
6206 Int_t tmp = fCurSelStyle->GetStatFont() / 10;
6207 Int_t mod = fCurSelStyle->GetStatFont() % 10;
6208 Double_t h = TMath::Max(fCurSelStyle->GetCanvasDefH(), 100);
6210 fCurSelStyle->SetStatFont(tmp * 10 + 3);
6211 fStatFontSize->SetFormat(TGNumberFormat::kNESInteger,
6212 TGNumberFormat::kNEANonNegative);
6213 fStatFontSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0, h);
6215 fCurSelStyle->SetStatFontSize(fCurSelStyle->GetStatFontSize() * h);
6216 fStatFontSize->SetNumber(fCurSelStyle->GetStatFontSize());
6218 fCurSelStyle->SetStatFont(tmp * 10 + 2);
6219 fStatFontSize->SetFormat(TGNumberFormat::kNESRealThree,
6220 TGNumberFormat::kNEANonNegative);
6221 fStatFontSize->SetLimits(TGNumberFormat::kNELLimitMinMax, 0., 1.);
6223 fCurSelStyle->SetStatFontSize(fCurSelStyle->GetStatFontSize() / h);
6224 fStatFontSize->SetNumber(fCurSelStyle->GetStatFontSize());
6226 fStatFontSize->SetNumber(fCurSelStyle->GetStatFontSize());
6233 void TStyleManager::ModStatFont()
6235 Int_t tmp = fCurSelStyle->GetStatFont() % 10;
6236 fCurSelStyle->SetStatFont(fStatFont->GetSelected() * 10 + tmp);
6243 void TStyleManager::ModStatX()
6245 fCurSelStyle->SetStatX((Float_t)fStatX->GetNumber());
6252 void TStyleManager::ModStatY()
6254 fCurSelStyle->SetStatY((Float_t)fStatY->GetNumber());
6261 void TStyleManager::ModStatW()
6263 fCurSelStyle->SetStatW((Float_t)fStatW->GetNumber());
6270 void TStyleManager::ModStatH()
6272 fCurSelStyle->SetStatH((Float_t)fStatH->GetNumber());
6279 void TStyleManager::ModStatBorderSize()
6281 fCurSelStyle->SetStatBorderSize(fStatBorderSize->GetSelected());
6288 void TStyleManager::ModOptStat()
6291 if (fOptStatName->IsDown()) stat +=1;
6292 if (fOptStatEntries->IsDown()) stat +=10;
6293 if (fOptStatMean->IsDown()) stat +=100;
6294 if (fOptStatRMS->IsDown()) stat +=1000;
6295 if (fOptStatUnderflow->IsDown()) stat +=10000;
6296 if (fOptStatOverflow->IsDown()) stat +=100000;
6297 if (fOptStatIntegral->IsDown()) stat +=1000000;
6298 if (fOptStatSkewness->IsDown()) stat +=10000000;
6299 if (fOptStatKurtosis->IsDown()) stat +=100000000;
6300 if (fOptStatErrors->IsDown()) {
6301 if (fOptStatMean->IsDown()) stat +=100;
6302 if (fOptStatRMS->IsDown()) stat +=1000;
6303 if (fOptStatSkewness->IsDown()) stat +=10000000;
6304 if (fOptStatKurtosis->IsDown()) stat +=100000000;
6306 if (stat == 1) stat = 1000000001;
6307 fCurSelStyle->SetOptStat(stat);
6314 void TStyleManager::ModStatFormat(
const char *sformat)
6316 fCurSelStyle->SetStatFormat(sformat);
6323 void TStyleManager::ModOptFit()
6326 if (fOptFitValues->IsDown()) fit +=1;
6327 if (fOptFitErrors->IsDown()) fit +=10;
6328 if (fOptFitChi->IsDown()) fit +=100;
6329 if (fOptFitProbability->IsDown()) fit +=1000;
6330 if (fit == 1) fit = 10001;
6331 fCurSelStyle->SetOptFit(fit);
6338 void TStyleManager::ModFitFormat(
const char *fitformat)
6340 fCurSelStyle->SetFitFormat(fitformat);
6347 void TStyleManager::ModHeaderPS()
6349 fCurSelStyle->SetHeaderPS(fHeaderPS->GetText());
6356 void TStyleManager::ModTitlePS()
6358 fCurSelStyle->SetTitlePS(fTitlePS->GetText());
6365 void TStyleManager::ModColorModelPS()
6367 Int_t i = kPSPDFColorModelPSRGB;
6369 while ((but = fColorModelPS->Find(i)) && !but->IsDown()) i++;
6370 fCurSelStyle->SetColorModelPS(i - kPSPDFColorModelPSRGB);
6377 void TStyleManager::ModLineScalePS()
6379 fCurSelStyle->SetLineScalePS(fLineScalePS->GetNumber());
6386 void TStyleManager::ModPaperSizePredef()
6390 fCurSelStyle->GetPaperSize(papSizeX, papSizeY);
6392 if (fPaperSizePredef->GetSelected() == 1) {
6393 if (!fPaperSizeEnCm) {
6394 fPaperSizeEnCm = kTRUE;
6395 fPaperSizeX->SetNumber(papSizeX);
6396 fPaperSizeY->SetNumber(papSizeY);
6398 }
else if (fPaperSizePredef->GetSelected() == 2) {
6399 if (fPaperSizeEnCm) {
6400 fPaperSizeEnCm = kFALSE;
6401 fPaperSizeX->SetNumber(papSizeX * 0.394);
6402 fPaperSizeY->SetNumber(papSizeY * 0.394);
6404 }
else if (fPaperSizePredef->GetSelected() == 3) {
6405 fPaperSizeEnCm = kTRUE;
6406 fPaperSizeX->SetNumber(20);
6407 fPaperSizeY->SetNumber(26);
6408 fCurSelStyle->SetPaperSize(20, 26);
6409 }
else if (fPaperSizePredef->GetSelected() == 4) {
6410 fPaperSizeEnCm = kFALSE;
6411 fPaperSizeX->SetNumber(20 * 0.394);
6412 fPaperSizeY->SetNumber(24 * 0.394);
6413 fCurSelStyle->SetPaperSize(20, 24);
6421 void TStyleManager::ModPaperSizeXY()
6423 if (fPaperSizeEnCm) {
6424 fCurSelStyle->SetPaperSize(fPaperSizeX->GetNumber(),
6425 fPaperSizeY->GetNumber());
6426 fPaperSizePredef->Select(1);
6428 fCurSelStyle->SetPaperSize(fPaperSizeX->GetNumber() * 2.54,
6429 fPaperSizeY->GetNumber() * 2.54);
6430 fPaperSizePredef->Select(2);