summaryrefslogtreecommitdiffstats
path: root/src/gui/styles/qs60style_p.h
diff options
context:
space:
mode:
authorSami Merila <sami.merila@nokia.com>2010-10-29 09:52:21 (GMT)
committerSami Merila <sami.merila@nokia.com>2010-10-29 09:55:47 (GMT)
commit177960b77ce7b02b853c45278b7c7068783be49f (patch)
tree25fd09457ded57454743933843fa2c186b07eea1 /src/gui/styles/qs60style_p.h
parentd7e1ed1c505f61ab9b9a9874bcbdf9bd94965a27 (diff)
downloadQt-177960b77ce7b02b853c45278b7c7068783be49f.zip
Qt-177960b77ce7b02b853c45278b7c7068783be49f.tar.gz
Qt-177960b77ce7b02b853c45278b7c7068783be49f.tar.bz2
Support tactile feeedback from QS60Style for QWidgets
Currently tactile feedback is not given for QWidgets running on Symbian even if the native side supports this (Sym^3 and 5th Edition devices). This task adds support for QWidgets having QS60Style. The tactile feedback has been implemented as a plugin that the style loads when instantiating itself for touch devices. NOTE that the feedback is NOT supported by the emulated style, nor is the plugin interface public, so it cannot be used outside of style. The implementation is simplistic, since we only want to provide stop-gap solution until 4.8 when real Qt feedback implementation is ready. The implementation will only give feedback for touch-down events for visible, interactive and enabled widgets. Sliders and scrollbars will use sensitive feedback (slightly less aggressive) and all others will use basic feedback. Note that Sym^3 adds tens of different feedback categories, which this plugin ignores as we want to share the same implementation for Sym^3 and 5th ed. In distributed Qt package there is no tactile feedback for 5th edition, due to package creation limitations. Support can be added manually by re-compiling Qt on top of 5th Edition SDK. Task-number: QT-4037 Reviewed-by: Jani Hautakangas Reviewed-by: Janne Koskinen
Diffstat (limited to 'src/gui/styles/qs60style_p.h')
-rw-r--r--src/gui/styles/qs60style_p.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gui/styles/qs60style_p.h b/src/gui/styles/qs60style_p.h
index b3f4160..b46f75e 100644
--- a/src/gui/styles/qs60style_p.h
+++ b/src/gui/styles/qs60style_p.h
@@ -387,6 +387,7 @@ private: //data members
class QFocusFrame;
class QProgressBar;
class QS60StyleAnimation;
+class TactileFeedbackInterface;
// Private class
#ifdef Q_OS_SYMBIAN
@@ -572,6 +573,8 @@ public:
void stopAnimation(QS60StyleEnums::SkinParts animation);
static QS60StyleAnimation* animationDefinition(QS60StyleEnums::SkinParts part);
static void removeAnimations();
+ //No support for tactile feedback in emulated style
+ void touchFeedback(QEvent *event, const QWidget *widget);
#endif
@@ -626,6 +629,7 @@ private:
#ifdef Q_WS_S60
//list of progress bars having animation running
QList<QProgressBar *> m_bars;
+ TactileFeedbackInterface *m_feedbackPlugin;
#endif
};