ATLAS Offline Software
Loading...
Searching...
No Matches
IVP12DStandardChannelWidget.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
6// //
7// Header file for class IVP12DStandardChannelWidget //
8// //
9// Author: Thomas Kittelmann <Thomas.Kittelmann@cern.ch> //
10// //
11// Initial version: April 2007 //
12// //
14
15#ifndef IVP12DSTANDARDCHANNELWIDGET_H
16#define IVP12DSTANDARDCHANNELWIDGET_H
17
19class IVP12DSystem;
21
23
24 Q_OBJECT
25
26public:
27 IVP12DStandardChannelWidget(const QString & name, const QString & information, const QString & contact_info);
28 //Fixme: Pass along default backgroundcolor as an option?
29
30protected:
32 AllowAll = 0x0000,
33 DisallowSelections = 0x0100,//User can not interact with items from this system (movable though, is handled separately)
34 DisallowSwitchable = 0x0400,//User can not turn items from this system on/off.
35 DisallowController = 0x0800,//Custom controllers provided by this wont be present in the GUI
36 DisallowMovable = 0x1000,//Items from this systems are never movable
38 };
39public: //public instead of protected due to compilation problems on SLC3
40 Q_DECLARE_FLAGS(SystemOptions, SystemOption)
41protected:
42 //Call the following in constructor of a derived class. Do not delete the systems in the derived class.
43 void addSystem(IVP12DSystem*, const SystemOptions& options = AllowAll );
44
46
47 //Convenience so users dont need to cast themselves (needed due to private inheritance in IVP12DSystemSimple):
48 void addSystem(IVP12DSystemSimple*, const SystemOptions& options = AllowAll );
49public:
50 Type type() const { return TWODIMENSIONAL; };
51
52 void create();
56 virtual QByteArray saveState();
57 virtual void restoreFromState(QByteArray);
58
59protected Q_SLOTS:
61
62private:
63 class Imp;
65private Q_SLOTS:
66 void toggleSystemActive();
67 void setBackgroundColor(const QColor &);
68};
69
70Q_DECLARE_OPERATORS_FOR_FLAGS(IVP12DStandardChannelWidget::SystemOptions)
71
72#endif
void addSystem(IVP12DSystem *, const SystemOptions &options=AllowAll)
IVP12DStandardChannelWidget(const QString &name, const QString &information, const QString &contact_info)
const QString & information() const
const QString & name() const
IVP1ChannelWidget(const QString &name, const QString &information, const QString &contact_info)
const QString & contact_info() const