CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes | Private Attributes
CSGContinuousAction Class Reference

#include <Fireworks/Core/interface/CSGContinuousAction.h>

Inheritance diagram for CSGContinuousAction:
CSGAction

Public Member Functions

void createCustomIconsButton (TGCompositeFrame *p, const TGPicture *upPic, const TGPicture *downPic, const TGPicture *disabledPic, const TGPicture *upRunningPic, const TGPicture *downRunningPic, TGLayoutHints *l=nullptr, Int_t id=-1, GContext_t norm=TGButton::GetDefaultGC()(), UInt_t option=0)
 
 CSGContinuousAction (CSGActionSupervisor *sup, const char *name)
 
 CSGContinuousAction (const CSGContinuousAction &)=delete
 
void globalDisable () override
 
void globalEnable () override
 
bool isRunning () const
 
const CSGContinuousActionoperator= (const CSGContinuousAction &)=delete
 
void stop ()
 
void switchMode ()
 
- Public Member Functions inherited from CSGAction
void activate ()
 
void addSCToMenu ()
 
void createCheckButton (TGCompositeFrame *p, TGLayoutHints *l=nullptr, Bool_t state=true, Int_t id=-1, GContext_t norm=TGButton::GetDefaultGC()(), FontStruct_t font=TGTextButton::GetDefaultFontStruct())
 
FWCustomIconsButtoncreateCustomIconsButton (TGCompositeFrame *p, const TGPicture *upPic, const TGPicture *downPic, const TGPicture *disabledPic, TGLayoutHints *l=nullptr, Int_t id=-1, GContext_t norm=TGButton::GetDefaultGC()(), UInt_t option=0)
 
void createMenuEntry (TGPopupMenu *menu)
 
void createPictureButton (TGCompositeFrame *p, const TGPicture *pic, TGLayoutHints *l=nullptr, Int_t id=-1, GContext_t norm=TGButton::GetDefaultGC()(), UInt_t option=kRaisedFrame|kDoubleBorder)
 
void createShortcut (UInt_t key, const char *mod, int windowID)
 
void createTextButton (TGCompositeFrame *p, TGLayoutHints *l=nullptr, Int_t id=-1, GContext_t norm=TGButton::GetDefaultGC()(), FontStruct_t font=TGTextButton::GetDefaultFontStruct(), UInt_t option=kRaisedFrame|kDoubleBorder)
 
 CSGAction (CSGActionSupervisor *supervisor, const char *name)
 
 CSGAction (const CSGAction &)=delete
 
void disable ()
 
void enable ()
 
Int_t getKeycode () const
 
TGPopupMenu * getMenu () const
 
int getMenuEntry () const
 
Int_t getModcode () const
 
const std::string & getName () const
 
TString getSCCombo () const
 
TGToolBar * getToolBar () const
 
ToolBarData_t * getToolBarData () const
 
const std::string & getToolTip () const
 
virtual Bool_t isEnabled () const
 
const CSGActionoperator= (const CSGAction &)=delete
 
Bool_t resizeMenuEntry ()
 
void setMenuLabel (const std::string &label)
 
void setName (const std::string &name)
 
void setToolTip (const std::string &tip)
 
virtual ~CSGAction ()
 

Public Attributes

sigc::signal< void()> started_
 
sigc::signal< void()> stopped_
 
- Public Attributes inherited from CSGAction
sigc::signal< void()> activated
 

Private Attributes

FWCustomIconsButtonm_button
 
const TGPicture * m_disabledPic
 
const TGPicture * m_downPic
 
std::string m_imageFileName
 
bool m_isRunning
 
const TGPicture * m_runningDownPic
 
std::string m_runningImageFileName
 
const TGPicture * m_runningUpPic
 
const TGPicture * m_upPic
 

Additional Inherited Members

- Static Public Member Functions inherited from CSGAction
static TString keycodeToString (Int_t keycode)
 

Detailed Description

Description: An action which continues over time (e.g. playing events)

Usage: <usage>

Definition at line 29 of file CSGContinuousAction.h.

Constructor & Destructor Documentation

CSGContinuousAction::CSGContinuousAction ( CSGActionSupervisor sup,
const char *  name 
)

Definition at line 32 of file CSGContinuousAction.cc.

References CSGAction::activated, and switchMode().

33  : CSGAction(iSupervisor, iName),
34  m_upPic(nullptr),
35  m_downPic(nullptr),
36  m_disabledPic(nullptr),
37  m_runningUpPic(nullptr),
38  m_runningDownPic(nullptr),
39  m_button(nullptr),
40  m_isRunning(false) {
41  activated.connect(std::bind(&CSGContinuousAction::switchMode, this));
42 }
FWCustomIconsButton * m_button
const TGPicture * m_downPic
const TGPicture * m_upPic
const TGPicture * m_runningUpPic
const TGPicture * m_disabledPic
const TGPicture * m_runningDownPic
CSGAction(CSGActionSupervisor *supervisor, const char *name)
Definition: CSGAction.cc:38
sigc::signal< void()> activated
Definition: CSGAction.h:100
CSGContinuousAction::CSGContinuousAction ( const CSGContinuousAction )
delete

Member Function Documentation

void CSGContinuousAction::createCustomIconsButton ( TGCompositeFrame *  p,
const TGPicture *  upPic,
const TGPicture *  downPic,
const TGPicture *  disabledPic,
const TGPicture *  upRunningPic,
const TGPicture *  downRunningPic,
TGLayoutHints *  l = nullptr,
Int_t  id = -1,
GContext_t  norm = TGButton::GetDefaultGC()(),
UInt_t  option = 0 
)

Definition at line 44 of file CSGContinuousAction.cc.

References CSGAction::createCustomIconsButton(), m_button, m_disabledPic, m_downPic, m_runningDownPic, m_runningUpPic, and m_upPic.

Referenced by CmsShowMainFrame::CmsShowMainFrame().

53  {
54  m_upPic = upPic;
55  m_downPic = downPic;
56  m_disabledPic = disabledPic;
57  m_runningUpPic = upRunningPic;
58  m_runningDownPic = downRunningPic;
59  m_button = CSGAction::createCustomIconsButton(p, upPic, downPic, disabledPic, l, id, norm, option);
60 }
FWCustomIconsButton * m_button
const TGPicture * m_downPic
const TGPicture * m_upPic
const TGPicture * m_runningUpPic
const TGPicture * m_disabledPic
const TGPicture * m_runningDownPic
FWCustomIconsButton * createCustomIconsButton(TGCompositeFrame *p, const TGPicture *upPic, const TGPicture *downPic, const TGPicture *disabledPic, TGLayoutHints *l=nullptr, Int_t id=-1, GContext_t norm=TGButton::GetDefaultGC()(), UInt_t option=0)
Definition: CSGAction.cc:155
void CSGContinuousAction::globalDisable ( )
overridevirtual

Reimplemented from CSGAction.

Definition at line 102 of file CSGContinuousAction.cc.

References CSGAction::globalDisable(), and m_isRunning.

102  {
103  if (!m_isRunning) {
105  }
106 }
virtual void globalDisable()
Definition: CSGAction.cc:284
void CSGContinuousAction::globalEnable ( )
overridevirtual

Reimplemented from CSGAction.

Definition at line 100 of file CSGContinuousAction.cc.

References CSGAction::globalEnable().

virtual void globalEnable()
Definition: CSGAction.cc:279
bool CSGContinuousAction::isRunning ( ) const
inline

Definition at line 35 of file CSGContinuousAction.h.

References m_isRunning.

35 { return m_isRunning; }
const CSGContinuousAction& CSGContinuousAction::operator= ( const CSGContinuousAction )
delete
void CSGContinuousAction::stop ( )

Definition at line 84 of file CSGContinuousAction.cc.

References CSGAction::getMenu(), CSGAction::getMenuEntry(), CSGAction::getToolBar(), CSGAction::getToolBarData(), m_button, m_disabledPic, m_downPic, m_imageFileName, m_isRunning, m_upPic, and FWCustomIconsButton::swapIcons().

Referenced by CmsShowMainFrame::enableNext(), CmsShowMainFrame::enablePrevious(), and switchMode().

84  {
85  m_isRunning = false;
86  if (getToolBar() && !m_imageFileName.empty()) {
87  getToolBar()->ChangeIcon(getToolBarData(), m_imageFileName.c_str());
88  }
89  if (nullptr != m_button) {
90  const TGPicture* tUp = m_upPic;
91  const TGPicture* tDown = m_downPic;
92 
93  m_button->swapIcons(tUp, tDown, m_disabledPic);
94  }
95  if (nullptr != getMenu()) {
96  getMenu()->UnCheckEntry(getMenuEntry());
97  }
98 }
ToolBarData_t * getToolBarData() const
Definition: CSGAction.cc:265
TGPopupMenu * getMenu() const
Definition: CSGAction.cc:257
FWCustomIconsButton * m_button
const TGPicture * m_downPic
TGToolBar * getToolBar() const
Definition: CSGAction.cc:267
const TGPicture * m_upPic
int getMenuEntry() const
Definition: CSGAction.cc:259
const TGPicture * m_disabledPic
void swapIcons(const TGPicture *&iUpIcon, const TGPicture *&iDownIcon, const TGPicture *&iDisabledIcon)
void CSGContinuousAction::switchMode ( )

Definition at line 62 of file CSGContinuousAction.cc.

References CSGAction::getMenu(), CSGAction::getMenuEntry(), CSGAction::getToolBar(), CSGAction::getToolBarData(), CSGAction::globalEnable(), m_button, m_disabledPic, m_isRunning, m_runningDownPic, m_runningImageFileName, m_runningUpPic, started_, stop(), stopped_, and FWCustomIconsButton::swapIcons().

Referenced by CmsShowMain::checkLiveMode(), CSGContinuousAction(), and CmsShowMainFrame::HandleKey().

62  {
63  if (!m_isRunning) {
64  m_isRunning = true;
66  if (getToolBar() && !m_runningImageFileName.empty()) {
67  getToolBar()->ChangeIcon(getToolBarData(), m_runningImageFileName.c_str());
68  }
69  if (nullptr != m_button) {
70  const TGPicture* tUp = m_runningUpPic;
71  const TGPicture* tDown = m_runningDownPic;
72  m_button->swapIcons(tUp, tDown, m_disabledPic);
73  }
74  if (nullptr != getMenu()) {
75  getMenu()->CheckEntry(getMenuEntry());
76  }
77  started_();
78  } else {
79  stop();
80  stopped_();
81  }
82 }
ToolBarData_t * getToolBarData() const
Definition: CSGAction.cc:265
TGPopupMenu * getMenu() const
Definition: CSGAction.cc:257
FWCustomIconsButton * m_button
sigc::signal< void()> stopped_
TGToolBar * getToolBar() const
Definition: CSGAction.cc:267
int getMenuEntry() const
Definition: CSGAction.cc:259
std::string m_runningImageFileName
const TGPicture * m_runningUpPic
const TGPicture * m_disabledPic
const TGPicture * m_runningDownPic
virtual void globalEnable()
Definition: CSGAction.cc:279
sigc::signal< void()> started_
void swapIcons(const TGPicture *&iUpIcon, const TGPicture *&iDownIcon, const TGPicture *&iDisabledIcon)

Member Data Documentation

FWCustomIconsButton* CSGContinuousAction::m_button
private

Definition at line 76 of file CSGContinuousAction.h.

Referenced by createCustomIconsButton(), stop(), and switchMode().

const TGPicture* CSGContinuousAction::m_disabledPic
private

Definition at line 72 of file CSGContinuousAction.h.

Referenced by createCustomIconsButton(), stop(), and switchMode().

const TGPicture* CSGContinuousAction::m_downPic
private

Definition at line 71 of file CSGContinuousAction.h.

Referenced by createCustomIconsButton(), and stop().

std::string CSGContinuousAction::m_imageFileName
private

Definition at line 67 of file CSGContinuousAction.h.

Referenced by stop().

bool CSGContinuousAction::m_isRunning
private

Definition at line 78 of file CSGContinuousAction.h.

Referenced by globalDisable(), isRunning(), stop(), and switchMode().

const TGPicture* CSGContinuousAction::m_runningDownPic
private

Definition at line 74 of file CSGContinuousAction.h.

Referenced by createCustomIconsButton(), and switchMode().

std::string CSGContinuousAction::m_runningImageFileName
private

Definition at line 68 of file CSGContinuousAction.h.

Referenced by switchMode().

const TGPicture* CSGContinuousAction::m_runningUpPic
private

Definition at line 73 of file CSGContinuousAction.h.

Referenced by createCustomIconsButton(), and switchMode().

const TGPicture* CSGContinuousAction::m_upPic
private

Definition at line 70 of file CSGContinuousAction.h.

Referenced by createCustomIconsButton(), and stop().

sigc::signal<void()> CSGContinuousAction::started_

Definition at line 52 of file CSGContinuousAction.h.

Referenced by switchMode().

sigc::signal<void()> CSGContinuousAction::stopped_

Definition at line 53 of file CSGContinuousAction.h.

Referenced by switchMode().