ATLAS Offline Software
Loading...
Searching...
No Matches
VP1Deserialise::Imp Class Reference
Collaboration diagram for VP1Deserialise::Imp:

Public Member Functions

 Imp (VP1Deserialise *tc)
void block (QWidget *w)
void unblock ()
void handle (const QWidget *w)
bool expectsPersistification (QWidget *w)

Public Attributes

VP1Deserialisetheclass
QByteArray byteArray
QBuffer * buffer
QDataStream * state
bool checkedUnused
qint32 version
QSet< const QWidget * > handledWidgets
QSet< QWidget * > ignoredWidgets
QWidget * widgetNeedingUnblock

Static Public Attributes

static unsigned numberOfInstantiations = 0

Detailed Description

Definition at line 44 of file VP1Deserialise.cxx.

Constructor & Destructor Documentation

◆ Imp()

VP1Deserialise::Imp::Imp ( VP1Deserialise * tc)
inline

Definition at line 46 of file VP1Deserialise.cxx.

Member Function Documentation

◆ block()

void VP1Deserialise::Imp::block ( QWidget * w)
inline

Definition at line 58 of file VP1Deserialise.cxx.

58 {
59 assert(!widgetNeedingUnblock);
60 if (w&&!w->signalsBlocked()) {
61 w->blockSignals(true);
63 }
64 }

◆ expectsPersistification()

bool VP1Deserialise::Imp::expectsPersistification ( QWidget * w)

Definition at line 663 of file VP1Deserialise.cxx.

664{
665 //NB: Same code as in VP1Serialise::Imp::expectsPersistification
666 if (!w)
667 return false;
668
669 //Fixme: Something faster than string based? Or only do this in verbose mode?
670
671 if (w->inherits("QGroupBox"))
672 return static_cast<QGroupBox*>(w)->isCheckable();
673
674 return w->inherits("QCheckBox")
675 || w->inherits("QRadioButton")
676 || w->inherits("QComboBox")
677 || w->inherits("QAbstractSpinBox")
678 || w->inherits("QSlider")
679 || w->inherits("QToolBox")
680 || w->inherits("PhiSectionWidget")
681 || w->inherits("VP1EtaPhiCutWidget")
682 || w->inherits("VP1DrawOptionsWidget")
683 || w->inherits("QLineEdit")
684 || w->inherits("VP1ColorSelectButton")
685 || w->inherits("VP1MaterialButton");
686}

◆ handle()

void VP1Deserialise::Imp::handle ( const QWidget * w)
inline

Definition at line 72 of file VP1Deserialise.cxx.

72 {
73 if (!w)
74 return;
75 if (handledWidgets.contains(w))
76 theclass->message("ERROR: Handled widget more than once: Type="
77 +QString(w->metaObject()->className())
78 +", name="+w->objectName());
79 handledWidgets.insert(w);
80 }
QSet< const QWidget * > handledWidgets

◆ unblock()

void VP1Deserialise::Imp::unblock ( )
inline

Definition at line 65 of file VP1Deserialise.cxx.

65 {
67 widgetNeedingUnblock->blockSignals(false);
69 }
70 }

Member Data Documentation

◆ buffer

QBuffer* VP1Deserialise::Imp::buffer

Definition at line 49 of file VP1Deserialise.cxx.

◆ byteArray

QByteArray VP1Deserialise::Imp::byteArray

Definition at line 48 of file VP1Deserialise.cxx.

◆ checkedUnused

bool VP1Deserialise::Imp::checkedUnused

Definition at line 51 of file VP1Deserialise.cxx.

◆ handledWidgets

QSet<const QWidget*> VP1Deserialise::Imp::handledWidgets

Definition at line 54 of file VP1Deserialise.cxx.

◆ ignoredWidgets

QSet<QWidget*> VP1Deserialise::Imp::ignoredWidgets

Definition at line 55 of file VP1Deserialise.cxx.

◆ numberOfInstantiations

unsigned VP1Deserialise::Imp::numberOfInstantiations = 0
static

Definition at line 83 of file VP1Deserialise.cxx.

◆ state

QDataStream* VP1Deserialise::Imp::state

Definition at line 50 of file VP1Deserialise.cxx.

◆ theclass

VP1Deserialise* VP1Deserialise::Imp::theclass

Definition at line 47 of file VP1Deserialise.cxx.

◆ version

qint32 VP1Deserialise::Imp::version

Definition at line 52 of file VP1Deserialise.cxx.

◆ widgetNeedingUnblock

QWidget* VP1Deserialise::Imp::widgetNeedingUnblock

Definition at line 57 of file VP1Deserialise.cxx.


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