ATLAS Offline Software
Loading...
Searching...
No Matches
VP1PartSpectController Class Reference

#include <VP1PartSpectController.h>

Inheritance diagram for VP1PartSpectController:
Collaboration diagram for VP1PartSpectController:

Classes

class  Imp

Public Slots

void toggleDialogState (QObject *widget=0)
void enabledButtonStateChanged ()
void collWidgetContentChanged ()

Signals

void fileUpdated (const QString &)
void particleTypeChanged (VP1PartSpect::ParticleType)
void dummyUpdateTrigger ()

Public Member Functions

 VP1PartSpectController (IVP1System *sys)
virtual ~VP1PartSpectController ()
void actualRestoreSettings (VP1Deserialise &)
int currentSettingsVersion () const
void actualSaveSettings (VP1Serialise &) const
VP1PartSpect::ParticleType getParticleType ()
void initLastVars ()
QByteArray saveSettings () const
void restoreSettings (const QByteArray &)
void setSystemBasePointer (IVP1System *sys)
void message (const QString &) const
void message (const QStringList &, const QString &addtoend="") const
void message (const QString &addtostart, const QStringList &, const QString &addtoend="") const
void messageDebug (const QString &) const
void messageDebug (const QStringList &, const QString &addtoend="") const
void messageDebug (const QString &addtostart, const QStringList &, const QString &addtoend="") const
void messageVerbose (const QString &) const
void messageVerbose (const QStringList &, const QString &addtoend="") const
void messageVerbose (const QString &addtostart, const QStringList &, const QString &addtoend="") const
IVP1SystemsystemBase () const
const QString & helperClassName () const

Static Public Member Functions

static void setCustomTourEditor (VP1CustomTourEditor *editor)
static VP1CustomTourEditorcustomTourEditor ()
static bool verbose ()
static void warnUndeletedInstances ()
static QString str (const QString &s)
static QString str (const char *c)
static QString str (const bool b)
static QString str (const QColor &)
static QString str (const SbColor &)
static QString str (const VP1Interval &)
static QString str (const SbVec2d &)
static QString str (const SbVec2f &)
static QString str (const SbVec2s &)
static QString str (const SbVec3d &)
static QString str (const SbVec3f &)
static QString str (const SbVec3s &)
static QString str (const SbVec4d &)
static QString str (const SbVec4f &)
static QString str (short int n)
static QString str (unsigned short int n)
static QString str (long n)
static QString str (ulong n)
static QString str (int n)
static QString str (uint n)
static QString str (qlonglong n)
static QString str (qulonglong n)
static QString str (const double &d)
static QString str (const float &f)
static QString str (const void *)
template<class T>
static QString str (const T *t)
template<class T>
static QString str (const QFlags< T > &f)
template<class T>
static QString str (const HepGeom::BasicVector3D< T > &t)
static QString str (const Amg::Vector3D &t)
template<class T>
static QString str (const QList< T > &t)

Protected Slots

void testForChanges ()

Protected Member Functions

template<class T>
bool changed (T &lastval, const T &newval)
template<class T>
void initDialog (T &theUI, QPushButton *launchbutton, QAbstractButton *enabledButton=0)
void initDialog (QWidget *dialog, QPushButton *launchbutton, QPushButton *closebutton, QAbstractButton *enabledButton=0)
void setupCollWidgetInScrollArea (QScrollArea *scrollarea, VP1CollectionWidget *collWidget)
const char * addUpdateSlot (const char *slot)
void connectToLastUpdateSlot (QObject *sender, const char *signal)
void connectToLastUpdateSlot (QCheckBox *)
void connectToLastUpdateSlot (QComboBox *)
void connectToLastUpdateSlot (QGroupBox *)
void connectToLastUpdateSlot (QSpinBox *)
void connectToLastUpdateSlot (QDoubleSpinBox *)
void connectToLastUpdateSlot (QRadioButton *)
void connectToLastUpdateSlot (QButtonGroup *)
void connectToLastUpdateSlot (QSlider *)
void connectToLastUpdateSlot (VP1ColorSelectButton *)
bool initVarsMode () const
QButtonGroup * defineRadioButtonGroup (QRadioButton *rb0, QRadioButton *rb1, QRadioButton *rb2=0, QRadioButton *rb3=0, QRadioButton *rb4=0, QRadioButton *rb5=0, QRadioButton *rb6=0, QRadioButton *rb7=0, QRadioButton *rb8=0, QRadioButton *rb9=0)
QButtonGroup * defineRadioButtonGroup (const QList< QRadioButton * > &)
SoMaterial * getMaterial (VP1MaterialButton *) const
SoMaterial * fallBackMaterial () const
void setHelperClassName (const QString &n)

Static Protected Member Functions

static QString toString (const bool &par)
static QString toString (const QList< VP1Interval > &l)
static QString toString (SbColor4f)

Private Slots

void openFile ()
void particleType ()

Static Private Member Functions

template<class T>
static QString toString (const T &t)

Private Attributes

Impm_d
bool m_initVarsMode
QString m_helpername
IVP1Systemm_system

Static Private Attributes

static VP1CustomTourEditorm_customTourEditor =0
static const bool s_vp1verbose = VP1QtUtils::environmentVariableIsOn("VP1_VERBOSE_OUTPUT")

Detailed Description

Definition at line 20 of file VP1PartSpectController.h.

Constructor & Destructor Documentation

◆ VP1PartSpectController()

VP1PartSpectController::VP1PartSpectController ( IVP1System * sys)

Definition at line 39 of file VP1PartSpectController.cxx.

40 :VP1Controller(sys,"PartSpectController")
41 ,m_d(new Imp(this))
42{
43 m_d->theclass = this;
44 m_d->ui.setupUi(this);
45
46 m_d->ui.lblFileName->setText("...");
47 connect(m_d->ui.pbtnOpenFile, SIGNAL(clicked()), this, SLOT(openFile()));
48
49 connect(m_d->ui.rbtnBaryon, SIGNAL(toggled(bool)), this, SLOT(particleType()));
50 connect(m_d->ui.rbtnE, SIGNAL(toggled(bool)), this, SLOT(particleType()));
51 connect(m_d->ui.rbtnGamma, SIGNAL(toggled(bool)), this, SLOT(particleType()));
52 connect(m_d->ui.rbtnLepton, SIGNAL(toggled(bool)), this, SLOT(particleType()));
53 connect(m_d->ui.rbtnMeson, SIGNAL(toggled(bool)), this, SLOT(particleType()));
54 connect(m_d->ui.rbtnNeutron, SIGNAL(toggled(bool)), this, SLOT(particleType()));
55 connect(m_d->ui.rbtnNucleus, SIGNAL(toggled(bool)), this, SLOT(particleType()));
56 connect(m_d->ui.rbtnPi, SIGNAL(toggled(bool)), this, SLOT(particleType()));
57 connect(m_d->ui.rbtnProton, SIGNAL(toggled(bool)), this, SLOT(particleType()));
58 m_d->ui.rbtnNeutron->setChecked(true);
59 m_d->last_particleType = VP1PartSpect::Neutron;
60}
VP1Controller(IVP1System *sys, const QString &classname)

◆ ~VP1PartSpectController()

VP1PartSpectController::~VP1PartSpectController ( )
virtual

Definition at line 62 of file VP1PartSpectController.cxx.

63{
64 delete m_d;
65}

Member Function Documentation

◆ actualRestoreSettings()

void VP1PartSpectController::actualRestoreSettings ( VP1Deserialise & s)
virtual

Implements VP1Controller.

Definition at line 67 of file VP1PartSpectController.cxx.

68{
69 if (s.version()!=0) {
70 message("Warning: State data in .vp1 file has unsupported version ("+str(s.version())+")");
71 return;
72 }
73
74 s.restore(m_d->ui.rbtnBaryon
75 ,m_d->ui.rbtnE
76 ,m_d->ui.rbtnGamma
77 ,m_d->ui.rbtnLepton
78 ,m_d->ui.rbtnMeson
79 ,m_d->ui.rbtnNeutron
80 ,m_d->ui.rbtnNucleus
81 ,m_d->ui.rbtnPi
82 ,m_d->ui.rbtnProton);
84}
void message(const QString &) const
static QString str(const QString &s)
Definition VP1String.h:49

◆ actualSaveSettings()

void VP1PartSpectController::actualSaveSettings ( VP1Serialise & s) const
virtual

Implements VP1Controller.

Definition at line 92 of file VP1PartSpectController.cxx.

93{
94 s.save(m_d->ui.rbtnBaryon
95 ,m_d->ui.rbtnE
96 ,m_d->ui.rbtnGamma
97 ,m_d->ui.rbtnLepton
98 ,m_d->ui.rbtnMeson
99 ,m_d->ui.rbtnNeutron
100 ,m_d->ui.rbtnNucleus
101 ,m_d->ui.rbtnPi
102 ,m_d->ui.rbtnProton);
103}

◆ addUpdateSlot()

const char * VP1Controller::addUpdateSlot ( const char * slot)
protectedinherited

Definition at line 318 of file VP1Controller.cxx.

319{
320 messageVerbose("Adding update slot: "+QString(slot));
321 connect(this,SIGNAL(dummyUpdateTrigger()),this,slot);
322 m_d->lastUpdateSlot = slot;
323 return slot;
324}
void dummyUpdateTrigger()
void messageVerbose(const QString &) const

◆ changed()

template<class T>
bool VP1Controller::changed ( T & lastval,
const T & newval )
protectedinherited

Definition at line 151 of file VP1Controller.h.

152{
153 if (initVarsMode()) {
154 lastval=newval;
155 return false;
156 }
157 if (lastval==newval)
158 return false;
159 lastval = newval;
160 return true;
161}
bool initVarsMode() const

◆ collWidgetContentChanged

void VP1Controller::collWidgetContentChanged ( )
slotinherited

Definition at line 232 of file VP1Controller.cxx.

233{
234 if (sender()!=m_d->collWidget||!m_d->collWidget) {
235 message("ERROR: Unexpected signal in collWidgetContentChanged slot!!");
236 return;
237 }
238 QScrollArea* scrollarea = dynamic_cast<QScrollArea*>(m_d->collWidget->parent());
239 if (!scrollarea&&m_d->collWidget->parent())
240 scrollarea = dynamic_cast<QScrollArea*>(m_d->collWidget->parent()->parent());
241 if (!scrollarea) {
242 message("ERROR: m_d->collWidget not child or grandchild of a scroll area!!");
243 return;
244 }
245 int width = m_d->collWidget->appropriateFixedWidth();
246 m_d->collWidget->setMinimumWidth(width);
247 m_d->collWidget->setMaximumWidth(width);
248 QScrollBar * sb = scrollarea->verticalScrollBar();
249 if (sb)
250 width+=sb->sizeHint().width();
251 scrollarea->setMinimumWidth(width+2);//2 is just some margin
252}
const double width

◆ connectToLastUpdateSlot() [1/10]

void VP1Controller::connectToLastUpdateSlot ( QButtonGroup * bg)
protectedinherited

Definition at line 369 of file VP1Controller.cxx.

370{
371 connectToLastUpdateSlot(bg,SIGNAL(buttonClicked(int)));
372}
void connectToLastUpdateSlot(QObject *sender, const char *signal)

◆ connectToLastUpdateSlot() [2/10]

void VP1Controller::connectToLastUpdateSlot ( QCheckBox * cb)
protectedinherited

Definition at line 333 of file VP1Controller.cxx.

334{
335 connectToLastUpdateSlot(cb,SIGNAL(toggled(bool)));
336}

◆ connectToLastUpdateSlot() [3/10]

void VP1Controller::connectToLastUpdateSlot ( QComboBox * cb)
protectedinherited

Definition at line 339 of file VP1Controller.cxx.

340{
341 connectToLastUpdateSlot(cb,SIGNAL(currentIndexChanged(int)));
342}

◆ connectToLastUpdateSlot() [4/10]

void VP1Controller::connectToLastUpdateSlot ( QDoubleSpinBox * dsb)
protectedinherited

Definition at line 357 of file VP1Controller.cxx.

358{
359 connectToLastUpdateSlot(dsb,SIGNAL(valueChanged(double)));
360}

◆ connectToLastUpdateSlot() [5/10]

void VP1Controller::connectToLastUpdateSlot ( QGroupBox * gb)
protectedinherited

Definition at line 345 of file VP1Controller.cxx.

346{
347 connectToLastUpdateSlot(gb,SIGNAL(toggled(bool)));
348}

◆ connectToLastUpdateSlot() [6/10]

void VP1Controller::connectToLastUpdateSlot ( QObject * sender,
const char * signal )
protectedinherited

Definition at line 327 of file VP1Controller.cxx.

328{
329 connect(sender,signal,this,m_d->lastUpdateSlot);
330}

◆ connectToLastUpdateSlot() [7/10]

void VP1Controller::connectToLastUpdateSlot ( QRadioButton * rb)
protectedinherited

Definition at line 363 of file VP1Controller.cxx.

364{
365 connectToLastUpdateSlot(rb,SIGNAL(toggled(bool)));
366}

◆ connectToLastUpdateSlot() [8/10]

void VP1Controller::connectToLastUpdateSlot ( QSlider * s)
protectedinherited

Definition at line 375 of file VP1Controller.cxx.

376{
377 connectToLastUpdateSlot(s,SIGNAL(valueChanged(int)));
378}

◆ connectToLastUpdateSlot() [9/10]

void VP1Controller::connectToLastUpdateSlot ( QSpinBox * sb)
protectedinherited

Definition at line 351 of file VP1Controller.cxx.

352{
353 connectToLastUpdateSlot(sb,SIGNAL(valueChanged(int)));
354}

◆ connectToLastUpdateSlot() [10/10]

void VP1Controller::connectToLastUpdateSlot ( VP1ColorSelectButton * csb)
protectedinherited

Definition at line 381 of file VP1Controller.cxx.

382{
383 connectToLastUpdateSlot(csb,SIGNAL(colorChanged(const QColor&)));
384}

◆ currentSettingsVersion()

int VP1PartSpectController::currentSettingsVersion ( ) const
virtual

Implements VP1Controller.

Definition at line 87 of file VP1PartSpectController.cxx.

88{
89 return 0;
90}

◆ customTourEditor()

VP1CustomTourEditor * VP1Controller::customTourEditor ( )
inlinestaticinherited

Definition at line 61 of file VP1Controller.h.

61{return m_customTourEditor;}
static VP1CustomTourEditor * m_customTourEditor

◆ defineRadioButtonGroup() [1/2]

QButtonGroup * VP1Controller::defineRadioButtonGroup ( const QList< QRadioButton * > & l)
protectedinherited

Definition at line 300 of file VP1Controller.cxx.

301{
302 QRadioButton * rb_checked(0);
303 for (QRadioButton *rb : l) {
304 if (rb->isChecked()) {
305 rb_checked = rb;
306 break;
307 }
308 }
309 QButtonGroup * radiogroup = new QButtonGroup(this);
310 for (QRadioButton *rb : l)
311 radiogroup->addButton(rb);
312 if (rb_checked)
313 rb_checked->setChecked(true);
314 return radiogroup;
315}

◆ defineRadioButtonGroup() [2/2]

QButtonGroup * VP1Controller::defineRadioButtonGroup ( QRadioButton * rb0,
QRadioButton * rb1,
QRadioButton * rb2 = 0,
QRadioButton * rb3 = 0,
QRadioButton * rb4 = 0,
QRadioButton * rb5 = 0,
QRadioButton * rb6 = 0,
QRadioButton * rb7 = 0,
QRadioButton * rb8 = 0,
QRadioButton * rb9 = 0 )
protectedinherited

Definition at line 288 of file VP1Controller.cxx.

292{
293 QList<QRadioButton *> l;
294 l << rb0 << rb1 << rb2 << rb3 << rb4 << rb5 << rb6 << rb7 << rb8 << rb9;
295 l.removeAll(0);
296 return defineRadioButtonGroup(l);
297}
QButtonGroup * defineRadioButtonGroup(QRadioButton *rb0, QRadioButton *rb1, QRadioButton *rb2=0, QRadioButton *rb3=0, QRadioButton *rb4=0, QRadioButton *rb5=0, QRadioButton *rb6=0, QRadioButton *rb7=0, QRadioButton *rb8=0, QRadioButton *rb9=0)
l
Printing final latex table to .tex output file.

◆ dummyUpdateTrigger

void VP1Controller::dummyUpdateTrigger ( )
signalinherited

◆ enabledButtonStateChanged

void VP1Controller::enabledButtonStateChanged ( )
slotinherited

Definition at line 167 of file VP1Controller.cxx.

168{
169 Imp::DialogInfo * di(0);
170 for (Imp::DialogInfo* di2 : m_d->dialogs) {
171 if (di2->enabledButton==sender()) {
172 di = di2;
173 break;
174 }
175 }
176 if (!di) {
177 message("ERROR: enabledButtonStateChanged() triggered with unrecognised sender() ="
178 +QString(sender()?sender()->objectName():"NULL"));
179 return;
180 }
181
182 bool on(di->enabledButton->isChecked());
183 if (di->launchButton->isEnabled()!=on)
184 di->launchButton->setEnabled(on);
185 if (!on) {
186 if (di->dialogWidget->isVisible())
187 di->dialogWidget->setVisible(false);
188 if (di->dialogWidget->windowState()==Qt::WindowMinimized)
189 di->dialogWidget->setWindowState(Qt::WindowNoState);
190 }
191}

◆ fallBackMaterial()

SoMaterial * VP1Controller::fallBackMaterial ( ) const
protectedinherited

Definition at line 427 of file VP1Controller.cxx.

428{
429 if (!m_d->fallBackMaterial) {
430 m_d->fallBackMaterial = new SoMaterial;
431 m_d->fallBackMaterial->ref();
432 }
433 return m_d->fallBackMaterial;
434}

◆ fileUpdated

void VP1PartSpectController::fileUpdated ( const QString & )
signal

◆ getMaterial()

SoMaterial * VP1Controller::getMaterial ( VP1MaterialButton * mb) const
protectedinherited

Definition at line 437 of file VP1Controller.cxx.

438{
439 if (!mb) {
440 message("ERROR: Null material button pointer");
441 return fallBackMaterial();
442 }
443 QList<SoMaterial*> mats = mb->handledMaterials();
444 if (mats.count()!=1) {
445 message("ERROR: No material in button "+mb->objectName());
446 return fallBackMaterial();
447 }
448 return mats.at(0);
449
450
451}
SoMaterial * fallBackMaterial() const

◆ getParticleType()

VP1PartSpect::ParticleType VP1PartSpectController::getParticleType ( )

Definition at line 105 of file VP1PartSpectController.cxx.

106{
107 return m_d->last_particleType;
108}

◆ helperClassName()

const QString & VP1HelperClassBase::helperClassName ( ) const
inlineinherited

Definition at line 51 of file VP1HelperClassBase.h.

51{ return m_helpername; }

◆ initDialog() [1/2]

void VP1Controller::initDialog ( QWidget * dialog,
QPushButton * launchbutton,
QPushButton * closebutton,
QAbstractButton * enabledButton = 0 )
protectedinherited

Definition at line 123 of file VP1Controller.cxx.

124{
125 QString txt(enabledButton?enabledButton->text():launchButton->text());
126 txt.replace("&&","&");
127 dialog->setWindowTitle(txt+" ["+systemBase()->name()+"]");
128 dialog->setWindowIcon(QIcon(QString(":/vp1/icons/icons/3d_32x32.png")));
129 launchButton->setMaximumHeight(static_cast<int>(0.5+QFontMetricsF(launchButton->font()).height()*1.05+2));
130 launchButton->setMinimumHeight(launchButton->maximumHeight());
131 launchButton->setCheckable(true);
132
133 QSizePolicy sizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
134 sizePolicy.setHorizontalStretch(0);
135 sizePolicy.setVerticalStretch(0);
136 sizePolicy.setHeightForWidth(launchButton->sizePolicy().hasHeightForWidth());
137 launchButton->setSizePolicy(sizePolicy);
138 launchButton->setFocusPolicy(Qt::NoFocus);
139
140 if (enabledButton)
141 launchButton->setEnabled(enabledButton->isChecked());
142
143 m_d->dialogs << new Imp::DialogInfo(launchButton,dialog,enabledButton);
144
145 connect(launchButton,SIGNAL(clicked()),this,SLOT(toggleDialogState()));
146 if (enabledButton)
147 connect(enabledButton,SIGNAL(toggled(bool)),this,SLOT(enabledButtonStateChanged()));
148 CloseEventEater* closeEventEater = new CloseEventEater(this);
149 dialog->installEventFilter(closeEventEater);
150
151 if(closeButton) {
152 closeButton->setText("&Close");
153 closeButton->setToolTip("Close this dialog [Esc]");
154 connect(closeButton,SIGNAL(clicked()),dialog,SLOT(close()));
155 }
156 connect(new QShortcut(QKeySequence(Qt::Key_Escape), dialog),SIGNAL(activated()),dialog,SLOT(close()));
157
158 //To avoid an extra call in the code we do this a few times more than necessary (fixme: put in initLastVars!!):
159 int maxwidth(0);
160 for (Imp::DialogInfo* di : m_d->dialogs)
161 maxwidth = std::max(maxwidth,di->launchButton->sizeHint().width());
162 for (Imp::DialogInfo* di : m_d->dialogs)
163 di->launchButton->setMinimumWidth(maxwidth);
164}
void toggleDialogState(QObject *widget=0)
void enabledButtonStateChanged()
IVP1System * systemBase() const

◆ initDialog() [2/2]

template<class T>
void VP1Controller::initDialog ( T & theUI,
QPushButton * launchbutton,
QAbstractButton * enabledButton = 0 )
protectedinherited

Definition at line 144 of file VP1Controller.h.

144 {
145 QWidget * w = new QWidget(0,Qt::WindowStaysOnTopHint);
146 theUI.setupUi(w);
147 initDialog(w, launchbutton, theUI.pushButton_close,enabledButton);
148}
void initDialog(T &theUI, QPushButton *launchbutton, QAbstractButton *enabledButton=0)

◆ initLastVars()

void VP1Controller::initLastVars ( )
inherited

Definition at line 68 of file VP1Controller.cxx.

69{
70 m_initVarsMode = true;
72 m_initVarsMode = false;
73}
void testForChanges()

◆ initVarsMode()

bool VP1Controller::initVarsMode ( ) const
inlineprotectedinherited

Definition at line 97 of file VP1Controller.h.

97{ return m_initVarsMode; }

◆ message() [1/3]

void VP1HelperClassBase::message ( const QString & str) const
inherited

Definition at line 49 of file VP1HelperClassBase.cxx.

50{
51 if (m_helpername.isEmpty()) {
52 if (m_system)
53 m_system->message(str);
54 else
55 std::cout<<VP1Msg::prefix_msg()<<" [nameless helper class]: "<<str.toStdString()<<std::endl;
56 } else {
57 if (m_system)
58 m_system->message("["+m_helpername+"] " + str);
59 else
60 std::cout<<VP1Msg::prefix_msg()<<" ["<<m_helpername.toStdString()<<"]: "<<str.toStdString()<<std::endl;
61 }
62}
static const char * prefix_msg()
Definition VP1Msg.h:56

◆ message() [2/3]

void VP1HelperClassBase::message ( const QString & addtostart,
const QStringList & l,
const QString & addtoend = "" ) const
inherited

Definition at line 131 of file VP1HelperClassBase.cxx.

132{
133 if (addtostart.isEmpty()) {
134 message(l,addtoend);
135 return;
136 }
137 if (addtoend.isEmpty()) {
138 for (const QString& s : l)
139 message(addtostart+s);
140 } else {
141 for (const QString& s : l)
142 message(addtostart+s+addtoend);
143 }
144}

◆ message() [3/3]

void VP1HelperClassBase::message ( const QStringList & l,
const QString & addtoend = "" ) const
inherited

Definition at line 91 of file VP1HelperClassBase.cxx.

92{
93 if (addtoend.isEmpty()) {
94 for (const QString& s : l)
95 message(s);
96 } else {
97 for (const QString& s : l)
98 message(s+addtoend);
99 }
100}

◆ messageDebug() [1/3]

void VP1HelperClassBase::messageDebug ( const QString & str) const
inherited

Definition at line 65 of file VP1HelperClassBase.cxx.

66{
67 if (!VP1Msg::debug())
68 return;
69 std::string sysstring(m_system ? " in "+m_system->name().toStdString() : std::string(""));
70 if (m_helpername.isEmpty()) {
71 std::cout<<VP1Msg::prefix_debug()<<" [helper"<<sysstring<<"]: "<<str.toStdString()<<std::endl;
72 } else {
73 std::cout<<VP1Msg::prefix_debug()<<" ["<<m_helpername.toStdString()<<sysstring<<"]: "<<str.toStdString()<<std::endl;
74 }
75}
static bool debug()
Definition VP1Msg.h:32
static const char * prefix_debug()
Definition VP1Msg.h:57

◆ messageDebug() [2/3]

void VP1HelperClassBase::messageDebug ( const QString & addtostart,
const QStringList & l,
const QString & addtoend = "" ) const
inherited

Definition at line 147 of file VP1HelperClassBase.cxx.

148{
149 if (!VP1Msg::debug())
150 return;
151 if (addtostart.isEmpty()) {
152 messageDebug(l,addtoend);
153 return;
154 }
155 if (addtoend.isEmpty()) {
156 for (const QString& s : l)
157 messageDebug(addtostart+s);
158 } else {
159 for (const QString& s : l)
160 messageDebug(addtostart+s+addtoend);
161 }
162}
void messageDebug(const QString &) const

◆ messageDebug() [3/3]

void VP1HelperClassBase::messageDebug ( const QStringList & l,
const QString & addtoend = "" ) const
inherited

Definition at line 103 of file VP1HelperClassBase.cxx.

104{
105 if (!VP1Msg::debug())
106 return;
107 if (addtoend.isEmpty()) {
108 for (const QString& s : l)
109 messageDebug(s);
110 } else {
111 for (const QString& s : l)
112 messageDebug(s+addtoend);
113 }
114}

◆ messageVerbose() [1/3]

void VP1HelperClassBase::messageVerbose ( const QString & str) const
inherited

Definition at line 78 of file VP1HelperClassBase.cxx.

79{
80 if (!VP1Msg::verbose())
81 return;
82 std::string sysstring(m_system ? " in "+m_system->name().toStdString() : std::string(""));
83 if (m_helpername.isEmpty()) {
84 std::cout<<VP1Msg::prefix_verbose()<<" [helper"<<sysstring<<"]: "<<str.toStdString()<<std::endl;
85 } else {
86 std::cout<<VP1Msg::prefix_verbose()<<" ["<<m_helpername.toStdString()<<sysstring<<"]: "<<str.toStdString()<<std::endl;
87 }
88}
static bool verbose()
Definition VP1Msg.h:31
static const char * prefix_verbose()
Definition VP1Msg.h:59

◆ messageVerbose() [2/3]

void VP1HelperClassBase::messageVerbose ( const QString & addtostart,
const QStringList & l,
const QString & addtoend = "" ) const
inherited

Definition at line 165 of file VP1HelperClassBase.cxx.

166{
167 if (!VP1Msg::verbose())
168 return;
169 if (addtostart.isEmpty()) {
170 messageVerbose(l,addtoend);
171 return;
172 }
173 if (addtoend.isEmpty()) {
174 for (const QString& s : l)
175 messageVerbose(addtostart+s);
176 } else {
177 for (const QString& s : l)
178 messageVerbose(addtostart+s+addtoend);
179 }
180}

◆ messageVerbose() [3/3]

void VP1HelperClassBase::messageVerbose ( const QStringList & l,
const QString & addtoend = "" ) const
inherited

Definition at line 117 of file VP1HelperClassBase.cxx.

118{
119 if (!VP1Msg::verbose())
120 return;
121 if (addtoend.isEmpty()) {
122 for (const QString& s : l)
124 } else {
125 for (const QString& s : l)
126 messageVerbose(s+addtoend);
127 }
128}

◆ openFile

void VP1PartSpectController::openFile ( )
privateslot

Definition at line 110 of file VP1PartSpectController.cxx.

111{
112 QString fileName = QFileDialog::getOpenFileName(NULL
113 ,tr("Open File")
114 ,m_d->lastInputDir
115 ,tr("Root files (*.root)"));
116 if(!fileName.isEmpty()) {
117 QFileInfo fileInfo(fileName);
118 m_d->ui.lblFileName->setText(fileInfo.fileName());
119 fileUpdated(fileName);
120 m_d->lastInputDir = fileInfo.absolutePath();
121 }
122}
void fileUpdated(const QString &)

◆ particleType

void VP1PartSpectController::particleType ( )
privateslot

Definition at line 124 of file VP1PartSpectController.cxx.

125{
126 if(m_d->ui.rbtnBaryon->isChecked()) {
128 m_d->last_particleType = VP1PartSpect::Baryon;
129 } else if(m_d->ui.rbtnE->isChecked()) {
131 m_d->last_particleType = VP1PartSpect::E;
132 } else if(m_d->ui.rbtnGamma->isChecked()) {
134 m_d->last_particleType = VP1PartSpect::Gamma;
135 }else if(m_d->ui.rbtnLepton->isChecked()) {
137 m_d->last_particleType = VP1PartSpect::Lepton;
138 }else if(m_d->ui.rbtnMeson->isChecked()) {
140 m_d->last_particleType = VP1PartSpect::Meson;
141 }else if(m_d->ui.rbtnNeutron->isChecked()) {
143 m_d->last_particleType = VP1PartSpect::Neutron;
144 }else if(m_d->ui.rbtnNucleus->isChecked()) {
146 m_d->last_particleType = VP1PartSpect::Nucleus;
147 }else if(m_d->ui.rbtnPi->isChecked()) {
149 m_d->last_particleType = VP1PartSpect::Pi;
150 }else { // if(m_d->ui.rbtnProton->isChecked()) {
152 m_d->last_particleType = VP1PartSpect::Proton;
153 }
154}
void particleTypeChanged(VP1PartSpect::ParticleType)

◆ particleTypeChanged

void VP1PartSpectController::particleTypeChanged ( VP1PartSpect::ParticleType )
signal

◆ restoreSettings()

void VP1Controller::restoreSettings ( const QByteArray & ba)
inherited

Definition at line 387 of file VP1Controller.cxx.

388{
389 messageDebug("VP1Controller::restoreSettings()");
390
391 VP1Deserialise s(ba,systemBase());
393
394 //warn unrestored:
395 if (m_d->collWidget)
396 s.ignoreWidget(m_d->collWidget);
397 s.warnUnrestored(static_cast<QWidget*>(this));
398 for (Imp::DialogInfo* di : m_d->dialogs)
399 s.warnUnrestored(di->dialogWidget);
400
401 QTimer::singleShot(0, this, SLOT(testForChanges()));
402}
virtual void actualRestoreSettings(VP1Deserialise &)=0

◆ saveSettings()

QByteArray VP1Controller::saveSettings ( ) const
inherited

Definition at line 405 of file VP1Controller.cxx.

406{
407 messageDebug("VP1Controller::saveSettings()");
408
409 VP1Serialise s(currentSettingsVersion(),systemBase());
410
411 messageDebug("calling actualSaveSettings()...");
413
414 //Warn unsaved:
415 if (m_d->collWidget)
416 s.ignoreWidget(m_d->collWidget);
417
418 s.warnUnsaved(static_cast<const QWidget*>(this));
419 for (Imp::DialogInfo* di : m_d->dialogs)
420 s.warnUnsaved(di->dialogWidget);
421
422 return s.result();
423
424}
virtual void actualSaveSettings(VP1Serialise &) const =0
virtual int currentSettingsVersion() const =0

◆ setCustomTourEditor()

void VP1Controller::setCustomTourEditor ( VP1CustomTourEditor * editor)
inlinestaticinherited

Definition at line 60 of file VP1Controller.h.

60{ m_customTourEditor=editor;}

◆ setHelperClassName()

void VP1HelperClassBase::setHelperClassName ( const QString & n)
inlineprotectedinherited

Definition at line 59 of file VP1HelperClassBase.h.

◆ setSystemBasePointer()

void VP1HelperClassBase::setSystemBasePointer ( IVP1System * sys)
inherited

Definition at line 197 of file VP1HelperClassBase.cxx.

198{
199 m_system = sys;
200 if (VP1Msg::verbose()){
201 vp1helperclassbase_instanceMap[this] = (m_system?m_system->name():QString(""));
202 }
203}
static std::map< VP1HelperClassBase *, QString > vp1helperclassbase_instanceMap

◆ setupCollWidgetInScrollArea()

void VP1Controller::setupCollWidgetInScrollArea ( QScrollArea * scrollarea,
VP1CollectionWidget * collWidget )
protectedinherited

Definition at line 255 of file VP1Controller.cxx.

256{
257 if (!scrollarea || !collWidget) {
258 message("ERROR: NULL scrollarea or collWidget");
259 return;
260 }
261 QSizePolicy sizePolicy(QSizePolicy::Fixed, QSizePolicy::Expanding);
262 sizePolicy.setHorizontalStretch(0);
263 sizePolicy.setVerticalStretch(scrollarea->sizePolicy().verticalStretch());
264 sizePolicy.setHeightForWidth(scrollarea->sizePolicy().hasHeightForWidth());
265 scrollarea->setSizePolicy(sizePolicy);
266
267 collWidget->setContentsMargins(0,0,0,0);
268 if (!collWidget->children().isEmpty()&&collWidget->children().at(0)->isWidgetType()) {
269 static_cast<QWidget*>(collWidget->children().at(0))->setContentsMargins(0,0,0,0);
270 }
271 scrollarea->setContentsMargins(0,0,0,0);
272
273 scrollarea->setWidgetResizable(true);
274 scrollarea->setFrameShape(QFrame::NoFrame);
275 scrollarea->setFrameShadow(QFrame::Plain);
276 collWidget->setParent(scrollarea);
277 scrollarea->setWidget(collWidget);
278 scrollarea->viewport()->setContentsMargins(0,0,0,0);
279 scrollarea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
280 collWidget->setObjectName(objectName()+"_CollWidget");
281 scrollarea->setObjectName(objectName()+"_CollWidgetScrollArea");
282 m_d->collWidget = collWidget;
283 connect(collWidget,SIGNAL(visibleContentsChanged()),this,SLOT(collWidgetContentChanged()));
284}
void collWidgetContentChanged()

◆ str() [1/30]

QString VP1String::str ( const Amg::Vector3D & t)
inlinestaticinherited

Definition at line 98 of file VP1String.h.

98{ return "("+str(t.x())+", "+str(t.y())+", "+str(t.z())+")"; }

◆ str() [2/30]

QString VP1String::str ( const bool b)
inlinestaticinherited

Definition at line 53 of file VP1String.h.

53{ return b?"True":"False"; }

◆ str() [3/30]

QString VP1String::str ( const char * c)
inlinestaticinherited

Definition at line 50 of file VP1String.h.

50{ return c; }

◆ str() [4/30]

QString VP1String::str ( const double & d)
inlinestaticinherited

Definition at line 81 of file VP1String.h.

81{ return QString::number(d); }

◆ str() [5/30]

QString VP1String::str ( const float & f)
inlinestaticinherited

Definition at line 82 of file VP1String.h.

82{ return QString::number(f); }

◆ str() [6/30]

template<class T>
QString VP1String::str ( const HepGeom::BasicVector3D< T > & t)
inlinestaticinherited

Definition at line 95 of file VP1String.h.

95{ return "("+str(t.x())+", "+str(t.y())+", "+str(t.z())+")"; }

◆ str() [7/30]

QString VP1String::str ( const QColor & c)
staticinherited

Definition at line 30 of file VP1String.cxx.

31{
32 return c.isValid() ? c.name() : "Invalid";
33}

◆ str() [8/30]

template<class T>
QString VP1String::str ( const QFlags< T > & f)
inlinestaticinherited

Definition at line 91 of file VP1String.h.

91{ return "0x"+QString::number(f, 16).toUpper().rightJustified(8,'0'); }

◆ str() [9/30]

template<class T>
QString VP1String::str ( const QList< T > & t)
inlinestaticinherited

Definition at line 102 of file VP1String.h.

102{ return "QList of size"+QString::number(t.size()); }

◆ str() [10/30]

QString VP1String::str ( const QString & s)
inlinestaticinherited

Definition at line 49 of file VP1String.h.

49{ return s; }

◆ str() [11/30]

QString VP1String::str ( const SbColor & c)
staticinherited

Definition at line 36 of file VP1String.cxx.

37{
39}
static QColor sbcol2qcol(const SbColor &)

◆ str() [12/30]

QString VP1String::str ( const SbVec2d & v)
staticinherited

Definition at line 61 of file VP1String.cxx.

61{ double x,y; v.getValue(x,y); return "("+str(x)+", "+str(y)+")"; }
#define y
#define x

◆ str() [13/30]

QString VP1String::str ( const SbVec2f & v)
staticinherited

Definition at line 62 of file VP1String.cxx.

62{ float x,y; v.getValue(x,y); return "("+str(x)+", "+str(y)+")"; }

◆ str() [14/30]

QString VP1String::str ( const SbVec2s & v)
staticinherited

Definition at line 63 of file VP1String.cxx.

63{ short x,y; v.getValue(x,y); return "("+str(x)+", "+str(y)+")"; }

◆ str() [15/30]

QString VP1String::str ( const SbVec3d & v)
staticinherited

Definition at line 64 of file VP1String.cxx.

64{ double x,y,z; v.getValue(x,y,z); return "("+str(x)+", "+str(y)+", "+str(z)+")"; }
#define z

◆ str() [16/30]

QString VP1String::str ( const SbVec3f & v)
staticinherited

Definition at line 65 of file VP1String.cxx.

65{ float x,y,z; v.getValue(x,y,z); return "("+str(x)+", "+str(y)+", "+str(z)+")"; }

◆ str() [17/30]

QString VP1String::str ( const SbVec3s & v)
staticinherited

Definition at line 66 of file VP1String.cxx.

66{ short x,y,z; v.getValue(x,y,z); return "("+str(x)+", "+str(y)+", "+str(z)+")"; }

◆ str() [18/30]

QString VP1String::str ( const SbVec4d & v)
staticinherited

Definition at line 67 of file VP1String.cxx.

67{ double x,y,z,t; v.getValue(x,y,z,t); return "("+str(x)+", "+str(y)+", "+str(z)+", "+str(t)+")"; }

◆ str() [19/30]

QString VP1String::str ( const SbVec4f & v)
staticinherited

Definition at line 68 of file VP1String.cxx.

68{ float x,y,z,t; v.getValue(x,y,z,t); return "("+str(x)+", "+str(y)+", "+str(z)+", "+str(t)+")"; }

◆ str() [20/30]

template<class T>
QString VP1String::str ( const T * t)
inlinestaticinherited

Definition at line 87 of file VP1String.h.

87{ return str(static_cast<const void* >(t)); }

◆ str() [21/30]

QString VP1String::str ( const void * p)
staticinherited

Definition at line 48 of file VP1String.cxx.

49{
50 if (p) {
51 std::ostringstream s;
52 s << p;
53 // Explicitly naming QString here avoids a cppcheck warning.
54 return QString (s.str().c_str());
55 } else {
56 return "NULL";
57 }
58}

◆ str() [22/30]

QString VP1String::str ( const VP1Interval & i)
staticinherited

Definition at line 42 of file VP1String.cxx.

43{
44 return i.toString();
45}

◆ str() [23/30]

QString VP1String::str ( int n)
inlinestaticinherited

Definition at line 77 of file VP1String.h.

77{ return QString::number(n); }

◆ str() [24/30]

QString VP1String::str ( long n)
inlinestaticinherited

Definition at line 75 of file VP1String.h.

75{ return QString::number(n); }

◆ str() [25/30]

QString VP1String::str ( qlonglong n)
inlinestaticinherited

Definition at line 79 of file VP1String.h.

79{ return QString::number(n); }

◆ str() [26/30]

QString VP1String::str ( qulonglong n)
inlinestaticinherited

Definition at line 80 of file VP1String.h.

80{ return QString::number(n); }

◆ str() [27/30]

QString VP1String::str ( short int n)
inlinestaticinherited

Definition at line 73 of file VP1String.h.

73{ return QString::number(n); }

◆ str() [28/30]

QString VP1String::str ( uint n)
inlinestaticinherited

Definition at line 78 of file VP1String.h.

78{ return QString::number(n); }

◆ str() [29/30]

QString VP1String::str ( ulong n)
inlinestaticinherited

Definition at line 76 of file VP1String.h.

76{ return QString::number(n); }

◆ str() [30/30]

QString VP1String::str ( unsigned short int n)
inlinestaticinherited

Definition at line 74 of file VP1String.h.

74{ return QString::number(n); }

◆ systemBase()

IVP1System * VP1HelperClassBase::systemBase ( ) const
inlineinherited

Definition at line 50 of file VP1HelperClassBase.h.

50{ return m_system; }

◆ testForChanges

void VP1Controller::testForChanges ( )
inlineprotectedslotinherited

Definition at line 112 of file VP1Controller.h.

◆ toggleDialogState

void VP1Controller::toggleDialogState ( QObject * widget = 0)
slotinherited

Definition at line 194 of file VP1Controller.cxx.

195{
196 Imp::DialogInfo * di(0);
197 for (Imp::DialogInfo* di2 : m_d->dialogs) {
198 if (di2->launchButton==sender() || (widget && di2->dialogWidget==widget)) {
199 di = di2;
200 break;
201 }
202 }
203
204 if (!di) {
205 message("ERROR: toggleDialogState() triggered with unrecognised sender() ="
206 +QString(sender()?sender()->objectName():"NULL"));
207 return;
208 }
209
210 bool oldvis = di->dialogWidget->isVisible();
211
212 if (oldvis&&di->dialogWidget->windowState()==Qt::WindowMinimized) {
213 di->dialogWidget->setWindowState(Qt::WindowNoState);
214 } else {
215 di->dialogWidget->setVisible(!oldvis);
216 if (!oldvis && di->neverShown) {
217 di->neverShown = false;
218 //do stuff
219 // QSize size(955, 717);
220 // size = size.expandedTo(VP1MainWindow->minimumSizeHint());
221 // di->dialogWidget->resize(di->dialogWidget->minimumSizeHint());
222 }
223 }
224
225 //synchronise toggle button state (for example if this was called by CloseEventEater)
226 if (di->launchButton->isCheckable() && oldvis){
227 di->launchButton->setChecked(false);
228 }
229}

◆ toString() [1/4]

QString VP1Controller::toString ( const bool & par)
staticprotectedinherited

Definition at line 100 of file VP1Controller.cxx.

101{
102 return par?"On":"Off";
103}

◆ toString() [2/4]

QString VP1Controller::toString ( const QList< VP1Interval > & l)
staticprotectedinherited

Definition at line 106 of file VP1Controller.cxx.

107{
108 QString s;
109 for(int i=0;i<l.count();++i)
110 s+= l.at(i).toString()+(i==l.count()-1?"":", ");
111 return s;
112}

◆ toString() [3/4]

QString VP1Controller::toString ( SbColor4f p)
staticprotectedinherited

Definition at line 115 of file VP1Controller.cxx.

116{
117 float r, g, b, a;
118 p.getValue(r, g, b, a);
119 return "("+str(r)+", "+str(g)+", "+str(b)+", "+str(1-a)+")";
120}
static Double_t a
int r
Definition globals.cxx:22

◆ toString() [4/4]

template<class T>
QString VP1PartSpectController::toString ( const T & t)
inlinestaticprivate

Definition at line 43 of file VP1PartSpectController.h.

43{ return VP1Controller::toString(t); } //unhide base methods
static QString toString(const T &par)

◆ verbose()

bool VP1HelperClassBase::verbose ( )
inlinestaticinherited

Definition at line 32 of file VP1HelperClassBase.h.

32{ return s_vp1verbose; } // Returns true if env var VP1_VERBOSE_OUTPUT=1
static const bool s_vp1verbose

◆ warnUndeletedInstances()

void VP1HelperClassBase::warnUndeletedInstances ( )
staticinherited

Definition at line 183 of file VP1HelperClassBase.cxx.

184{
186 return;
187 std::cout << "WARNING: Detected "<<vp1helperclassbase_instanceMap.size()<<" undeleted helper class instances:"<<std::endl;
188
189 std::map<VP1HelperClassBase*,QString>::iterator it,itE(vp1helperclassbase_instanceMap.end());
190 for (it = vp1helperclassbase_instanceMap.begin();it!=itE;++it) {
191 std::cout << " ==> "<<it->first<<": "<<it->first->m_helpername.toStdString()
192 << (it->second.isEmpty()?QString(""):" (in system "+it->second+")").toStdString()<<std::endl;
193 }
194}

Member Data Documentation

◆ m_customTourEditor

VP1CustomTourEditor * VP1Controller::m_customTourEditor =0
staticprivateinherited

Definition at line 125 of file VP1Controller.h.

◆ m_d

Imp* VP1PartSpectController::m_d
private

Definition at line 40 of file VP1PartSpectController.h.

◆ m_helpername

QString VP1HelperClassBase::m_helpername
privateinherited

Definition at line 67 of file VP1HelperClassBase.h.

◆ m_initVarsMode

bool VP1Controller::m_initVarsMode
privateinherited

Definition at line 129 of file VP1Controller.h.

◆ m_system

IVP1System* VP1HelperClassBase::m_system
privateinherited

Definition at line 68 of file VP1HelperClassBase.h.

◆ s_vp1verbose

const bool VP1HelperClassBase::s_vp1verbose = VP1QtUtils::environmentVariableIsOn("VP1_VERBOSE_OUTPUT")
staticprivateinherited

Definition at line 69 of file VP1HelperClassBase.h.


The documentation for this class was generated from the following files: