Canorus 0.0
toolbutton.h
Go to the documentation of this file.
1
8#ifndef TOOLBUTTON_H_
9#define TOOLBUTTON_H_
10
11#include <QToolButton>
12
14
15class QWidget;
16class CAMainWin;
17
18class CAToolButton : public QToolButton {
19 Q_OBJECT
20public:
21 CAToolButton( QWidget *parent );
22 virtual ~CAToolButton();
23 inline int currentId() { return _currentId; }
24 virtual void setCurrentId(int id) { _currentId = id; }
25 inline bool buttonsVisible() { return (_popupWidget) ? _popupWidget->isVisible() : 0; } // Is the popup widget visible or not
27 virtual void showButtons();
28 virtual void hideButtons();
29
30private slots:
31 void handleToggled( bool checked );
32 void handleTriggered();
33
34signals:
35 void toggled( bool checked, int id );
36
37protected:
38 inline CAMainWin *mainWin() { return _mainWin; }
39 inline void setMainWin( CAMainWin *m ) { _mainWin = m; }
40 inline void setPopupWidget(QWidget* w) { _popupWidget->setWidget(w); }
41 virtual void wheelEvent(QWheelEvent*) = 0;
42 void mousePressEvent( QMouseEvent* );
43 QPoint calculateTopLeft( QSize widgetSize );
44
45 CAMainWin *_mainWin; // Pointer to the main window for toolbar location polling etc.
46 int _currentId; // current ID of the button
47 CAToolButtonPopup *_popupWidget; // container for the floating widget
48};
49
50#endif /* TOOLBUTTON_H_ */
Canorus main window Class CAMainWin represents Canorus main window. The core layout is generated usin...
Definition: plugins_swig.h:6
Container for tool button popup widgets.
Definition: toolbuttonpopup.h:13
void setWidget(QWidget *w)
Definition: toolbuttonpopup.h:18
Tool button with a menu at the side.
Definition: toolbutton.h:18
virtual void setCurrentId(int id)
Definition: toolbutton.h:24
virtual void wheelEvent(QWheelEvent *)=0
int currentId()
Definition: toolbutton.h:23
bool buttonsVisible()
Definition: toolbutton.h:25
void handleTriggered()
Definition: toolbutton.cpp:84
virtual void hideButtons()
Definition: toolbutton.cpp:53
void setPopupWidget(QWidget *w)
Definition: toolbutton.h:40
int _currentId
Definition: toolbutton.h:46
CAToolButtonPopup * _popupWidget
Definition: toolbutton.h:47
void setDefaultAction(QAction *)
Definition: toolbutton.cpp:102
void setMainWin(CAMainWin *m)
Definition: toolbutton.h:39
void handleToggled(bool checked)
Definition: toolbutton.cpp:94
void toggled(bool checked, int id)
CAMainWin * _mainWin
Definition: toolbutton.h:45
CAToolButton(QWidget *parent)
Definition: toolbutton.cpp:29
virtual void showButtons()
Definition: toolbutton.cpp:43
void mousePressEvent(QMouseEvent *)
Definition: toolbutton.cpp:61
virtual ~CAToolButton()
Definition: toolbutton.cpp:36
QPoint calculateTopLeft(QSize widgetSize)
Definition: toolbutton.cpp:124
CAMainWin * mainWin()
Definition: toolbutton.h:38