OpendTect  6.6
i_qaction.h
Go to the documentation of this file.
1 #ifndef i_qaction_h
2 #define i_qaction_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Nanne Hemstra
9  Date: May 2007
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "uiaction.h"
16 
17 #include <QAction>
18 #include <iostream>
19 
21 
22 QT_BEGIN_NAMESPACE
23 
24 class i_ActionMessenger : public QObject
25 {
26  Q_OBJECT
27  friend class uiAction;
28 
29 protected:
30 i_ActionMessenger( QAction* sndr, uiAction* receiver )
31  : sender_( sndr )
32  , receiver_( receiver )
33 {
34  connect( sender_, SIGNAL(toggled(bool)),this, SLOT(toggled(bool)) );
35  connect( sender_, SIGNAL(triggered(bool)), this, SLOT(triggered(bool)));
36  connect( sender_, SIGNAL(hovered()), this, SLOT(hovered()) );
37 }
38 
39 virtual ~i_ActionMessenger() {}
40 
41 private:
42 
44  QAction* sender_;
45 
46 private slots:
47 
48 void toggled( bool checked )
49 {
50  receiver_->checked_ = checked;
51  receiver_->toggled.trigger( *receiver_ );
52 }
53 
54 void triggered( bool checked )
55 {
56  const int refnr = receiver_->beginCmdRecEvent();
57  receiver_->trigger( checked );
58  receiver_->endCmdRecEvent( refnr );
59 }
60 
61 
62 void hovered()
63 {
64 }
65 
66 };
67 
68 QT_END_NAMESPACE
69 
70 #endif
i_ActionMessenger::sender_
QAction * sender_
Definition: i_qaction.h:44
uiaction.h
i_ActionMessenger::toggled
void toggled(bool checked)
Definition: i_qaction.h:48
i_ActionMessenger::i_ActionMessenger
i_ActionMessenger(QAction *sndr, uiAction *receiver)
Definition: i_qaction.h:30
i_ActionMessenger::uiAction
friend class uiAction
Definition: i_qaction.h:27
i_ActionMessenger
Helper class for uiAction to relay Qt's messages.
Definition: i_qaction.h:25
i_ActionMessenger::hovered
void hovered()
Definition: i_qaction.h:62
i_ActionMessenger::~i_ActionMessenger
virtual ~i_ActionMessenger()
Definition: i_qaction.h:39
i_ActionMessenger::receiver_
uiAction * receiver_
Definition: i_qaction.h:43
i_ActionMessenger::triggered
void triggered(bool checked)
Definition: i_qaction.h:54

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2021