Documents > BPS V2 C++ API
bpskeyboard.h
Go to the documentation of this file.
00001 
00004 #ifndef BPSKEYBOARD_H
00005 #define BPSKEYBOARD_H
00006 
00007 #include "bpsgui_global.h"
00008 #include <QFrame>
00009 
00015 class BPSGUI_EXPORT BpsKeyboard : public QFrame
00016 {
00017     Q_OBJECT
00018     BPS_PRIVATE(BpsKeyboard)
00019 
00020 public:
00024     BpsKeyboard(QWidget* aParent = 0);
00025 
00026     virtual ~BpsKeyboard();
00027 
00031     Qt::KeyboardModifiers modifiers() const;
00032 
00036     bool isShift() const;
00037 
00041     bool isCtrl() const;
00042 
00046     bool isAlt() const;
00047 
00053     void setShift(bool aEnable);
00054 
00060     void setCtrl(bool aEnable);
00061 
00067     void setAlt(bool aEnable);
00068 
00069 signals:
00070 
00075     void shiftChanged(bool aEnable);
00076 
00081     void ctrlChanged(bool aEnable);
00082 
00087     void altChanged(bool aEnable);
00088 
00089 protected:
00091     virtual void mousePressEvent(QMouseEvent* aEvent);
00092     virtual void mouseMoveEvent(QMouseEvent* aEvent);
00093     virtual void mouseReleaseEvent(QMouseEvent* aEvent);
00095 }; // BpsKeyboard
00096 
00102 class BPSGUI_EXPORT BpsSwissGermanKeyboard : public BpsKeyboard
00103 {
00104     Q_OBJECT
00105     BPS_PRIVATE(BpsSwissGermanKeyboard)
00106 
00107 public:
00111     BpsSwissGermanKeyboard(QWidget* aParent = 0);
00112 
00113 }; // BpsKeyboardSG
00114 
00120 class BPSGUI_EXPORT BpsNumericKeyboard : public BpsKeyboard
00121 {
00122     Q_OBJECT
00123     BPS_PRIVATE(BpsNumericKeyboard)
00124 
00125 public:
00129     BpsNumericKeyboard(QWidget* aParent = 0);
00130 
00131 }; // BpsNumericKeyboard
00132 
00133 
00134 #endif // BPSKEYBOARD_H