diff options
author | Sami Merila <sami.merila@nokia.com> | 2010-10-29 09:52:21 (GMT) |
---|---|---|
committer | Sami Merila <sami.merila@nokia.com> | 2010-10-29 09:55:47 (GMT) |
commit | 177960b77ce7b02b853c45278b7c7068783be49f (patch) | |
tree | 25fd09457ded57454743933843fa2c186b07eea1 /src/gui/styles/qs60style_p.h | |
parent | d7e1ed1c505f61ab9b9a9874bcbdf9bd94965a27 (diff) | |
download | Qt-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.h | 4 |
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 }; |