switched PMusrCanvas where possible to smart pointers.

This commit is contained in:
2023-10-21 17:47:32 +02:00
parent b01505b07f
commit 282ed68b61
2 changed files with 29 additions and 163 deletions

View File

@@ -258,28 +258,28 @@ class PMusrCanvas : public TObject, public TQObject
Double_t fXmin, fXmax, fYmin, fYmax; ///< data/theory frame range
PDoubleVector fCurrentFourierPhase; ///< holds the current Fourier phase(s)
TLatex *fCurrentFourierPhaseText; ///< used in Re/Im Fourier to show the current phase in the pad
TString *fRRFText; ///< RRF information
TLatex *fRRFLatexText; ///< used to display RRF info
std::unique_ptr<TLatex> fCurrentFourierPhaseText; ///< used in Re/Im Fourier to show the current phase in the pad
std::unique_ptr<TString> fRRFText; ///< RRF information
std::unique_ptr<TLatex> fRRFLatexText; ///< used to display RRF info
TStyle *fStyle; ///< A collection of all graphics attributes
std::unique_ptr<TStyle> fStyle; ///< A collection of all graphics attributes
TTimer *fTimeoutTimer; ///< timeout timer in order to terminate if no action is taking place for too long
std::unique_ptr<TTimer> fTimeoutTimer; ///< timeout timer in order to terminate if no action is taking place for too long
// canvas menu related variables
TRootCanvas *fImp; ///< ROOT native GUI version of main window with menubar and drawing area
TGMenuBar *fBar; ///< menu bar
TGPopupMenu *fPopupMain; ///< popup menu Musrfit in the main menu bar
TGPopupMenu *fPopupFourier; ///< popup menu of the Musrfit/Fourier sub menu
std::unique_ptr<TGPopupMenu> fPopupFourier; ///< popup menu of the Musrfit/Fourier sub menu
// canvas related variables
TCanvas *fMainCanvas; ///< main canvas
TPaveText *fTitlePad; ///< title pad used to display a title
TPad *fDataTheoryPad; ///< data/theory pad used to display the data/theory
TPaveText *fParameterPad; ///< parameter pad used to display the fitting parameters
TPaveText *fTheoryPad; ///< theory pad used to display the theory and functions
TLegend *fInfoPad; ///< info pad used to display a legend of the data plotted
TLegend *fMultiGraphLegend; ///< used for non-muSR plots to display a legend
std::unique_ptr<TCanvas> fMainCanvas; ///< main canvas
std::unique_ptr<TPaveText> fTitlePad; ///< title pad used to display a title
std::unique_ptr<TPad> fDataTheoryPad; ///< data/theory pad used to display the data/theory
std::unique_ptr<TPaveText> fParameterPad; ///< parameter pad used to display the fitting parameters
std::unique_ptr<TPaveText> fTheoryPad; ///< theory pad used to display the theory and functions
std::unique_ptr<TLegend> fInfoPad; ///< info pad used to display a legend of the data plotted
std::unique_ptr<TLegend> fMultiGraphLegend; ///< used for non-muSR plots to display a legend
TH1F *fHistoFrame; ///< fHistoFrame is a 'global' frame needed in order to plot histograms with (potentially) different x-frames