summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qguiapplication.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/kernel/qguiapplication.cpp')
-rw-r--r--src/gui/kernel/qguiapplication.cpp49
1 files changed, 26 insertions, 23 deletions
diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp
index e1d40806bc..029a89c472 100644
--- a/src/gui/kernel/qguiapplication.cpp
+++ b/src/gui/kernel/qguiapplication.cpp
@@ -58,6 +58,7 @@
#include <QtGui/QPlatformIntegration>
#include <QtGui/QGenericPluginFactory>
+#include <QtGui/qstylehints.h>
#include <QWindowSystemInterface>
#include "private/qwindowsysteminterface_qpa_p.h"
@@ -82,8 +83,6 @@ Q_GUI_EXPORT bool qt_is_gui_used = true;
Qt::MouseButtons QGuiApplicationPrivate::mouse_buttons = Qt::NoButton;
Qt::KeyboardModifiers QGuiApplicationPrivate::modifier_buttons = Qt::NoModifier;
-int QGuiApplicationPrivate::keyboard_input_time = 400;
-int QGuiApplicationPrivate::mouse_double_click_time = 400;
QPointF QGuiApplicationPrivate::lastCursorPosition(0.0, 0.0);
QPlatformIntegration *QGuiApplicationPrivate::platform_integration = 0;
@@ -401,6 +400,8 @@ QGuiApplicationPrivate::~QGuiApplicationPrivate()
cleanupThreadData();
+ delete styleHints;
+
delete platform_integration;
platform_integration = 0;
}
@@ -434,26 +435,6 @@ Qt::MouseButtons QGuiApplication::mouseButtons()
return QGuiApplicationPrivate::mouse_buttons;
}
-void QGuiApplication::setDoubleClickInterval(int ms)
-{
- QGuiApplicationPrivate::mouse_double_click_time = ms;
-}
-
-int QGuiApplication::doubleClickInterval()
-{
- return QGuiApplicationPrivate::mouse_double_click_time;
-}
-
-void QGuiApplication::setKeyboardInputInterval(int ms)
-{
- QGuiApplicationPrivate::keyboard_input_time = ms;
-}
-
-int QGuiApplication::keyboardInputInterval()
-{
- return QGuiApplicationPrivate::keyboard_input_time;
-}
-
QPlatformNativeInterface *QGuiApplication::platformNativeInterface()
{
QPlatformIntegration *pi = QGuiApplicationPrivate::platformIntegration();
@@ -588,7 +569,8 @@ void QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::Mo
}
buttons = e->buttons;
if (button & e->buttons) {
- if ((e->timestamp - mousePressTime) < static_cast<ulong>(QGuiApplication::doubleClickInterval()) && button == mousePressButton) {
+ if ((e->timestamp - mousePressTime) < static_cast<ulong>(qApp->styleHints()->mouseDoubleClickInterval()) &&
+ button == mousePressButton) {
type = QEvent::MouseButtonDblClick;
mousePressButton = Qt::NoButton;
}
@@ -1171,6 +1153,27 @@ void QGuiApplication::restoreOverrideCursor()
}
#endif// QT_NO_CURSOR
+/*!
+ \since 5.0
+
+ returns the style hints.
+
+ The style hints encapsulate a set of platform dependent properties
+ such as double click intervals, full width selection and others.
+
+ The hints can be used to integrate tighter with the underlying platform.
+
+ \sa QStyleHints
+ */
+QStyleHints *QGuiApplication::styleHints() const
+{
+ Q_D(const QGuiApplication);
+ if (!d->styleHints)
+ const_cast<QGuiApplicationPrivate *>(d)->styleHints = new QStyleHints();
+ return d->styleHints;
+}
+
+
// Returns the current platform used by keyBindings
uint QGuiApplicationPrivate::currentKeyPlatform()