summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/platforms/directfb/qdirectfbconvenience.cpp62
1 files changed, 57 insertions, 5 deletions
diff --git a/src/plugins/platforms/directfb/qdirectfbconvenience.cpp b/src/plugins/platforms/directfb/qdirectfbconvenience.cpp
index 7b253b7220..e41a2e0440 100644
--- a/src/plugins/platforms/directfb/qdirectfbconvenience.cpp
+++ b/src/plugins/platforms/directfb/qdirectfbconvenience.cpp
@@ -128,13 +128,65 @@ IDirectFBSurface *QDirectFbConvenience::dfbSurfaceForPlatformPixmap(QPlatformPix
Qt::MouseButton QDirectFbConvenience::mouseButton(DFBInputDeviceButtonIdentifier identifier)
{
- switch (identifier){
- case DIBI_LEFT:
+ // The Enum contains values for DIBI_FIRST (= DIBI_LEFT), DIBI_LAST (= 0x1f,) and
+ // just 3 enumerated Mouse Buttons. To convert into *ALL* possible Qt::MoueButton values,
+ // the parameter is cast as integer.
+
+ switch (int(identifier)) {
+ case DIBI_LEFT: // value is 0x00
return Qt::LeftButton;
- case DIBI_MIDDLE:
- return Qt::MidButton;
- case DIBI_RIGHT:
+ case DIBI_RIGHT: // value is 0x01
return Qt::RightButton;
+ case DIBI_MIDDLE: // value is 0x02
+ return Qt::MidButton;
+ case 0x03:
+ return Qt::BackButton;
+ case 0x04:
+ return Qt::ForwardButton;
+ case 0x05:
+ return Qt::ExtraButton3;
+ case 0x06:
+ return Qt::ExtraButton4;
+ case 0x07:
+ return Qt::ExtraButton5;
+ case 0x08:
+ return Qt::ExtraButton6;
+ case 0x09:
+ return Qt::ExtraButton7;
+ case 0x0a:
+ return Qt::ExtraButton8;
+ case 0x0b:
+ return Qt::ExtraButton9;
+ case 0x0c:
+ return Qt::ExtraButton10;
+ case 0x0d:
+ return Qt::ExtraButton11;
+ case 0x0e:
+ return Qt::ExtraButton12;
+ case 0x0f:
+ return Qt::ExtraButton13;
+ case 0x10:
+ return Qt::ExtraButton14;
+ case 0x11:
+ return Qt::ExtraButton15;
+ case 0x12:
+ return Qt::ExtraButton16;
+ case 0x13:
+ return Qt::ExtraButton17;
+ case 0x14:
+ return Qt::ExtraButton18;
+ case 0x15:
+ return Qt::ExtraButton19;
+ case 0x16:
+ return Qt::ExtraButton20;
+ case 0x17:
+ return Qt::ExtraButton21;
+ case 0x18:
+ return Qt::ExtraButton22;
+ case 0x19:
+ return Qt::ExtraButton23;
+ case 0x1a:
+ return Qt::ExtraButton24;
default:
return Qt::NoButton;
}