summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.qmake.conf2
-rw-r--r--src/controls/Calendar.qml25
-rw-r--r--src/controls/Slider.qml10
-rw-r--r--src/controls/Styles/Android/CalendarStyle.qml2
-rw-r--r--src/controls/Styles/Base/CalendarStyle.qml8
-rw-r--r--src/controls/plugin.cpp5
-rw-r--r--src/extras/Private/qquickmathutils.cpp8
-rw-r--r--src/extras/Styles/Flat/CalendarStyle.qml4
-rw-r--r--tests/auto/controls/data/tst_calendar.qml18
-rw-r--r--tests/auto/controls/data/tst_slider.qml9
10 files changed, 59 insertions, 32 deletions
diff --git a/.qmake.conf b/.qmake.conf
index fa9dae13..d6ee2340 100644
--- a/.qmake.conf
+++ b/.qmake.conf
@@ -2,4 +2,4 @@ load(qt_build_config)
CONFIG += warning_clean
android|ios|qnx|winrt|isEmpty(QT.widgets.name): CONFIG += no_desktop
-MODULE_VERSION = 5.9.2
+MODULE_VERSION = 5.10.0
diff --git a/src/controls/Calendar.qml b/src/controls/Calendar.qml
index c5347c51..a5b32210 100644
--- a/src/controls/Calendar.qml
+++ b/src/controls/Calendar.qml
@@ -37,8 +37,8 @@
**
****************************************************************************/
-import QtQuick 2.2
-import QtQuick.Controls 1.2
+import QtQuick 2.9
+import QtQuick.Controls 1.5
import QtQuick.Controls.Styles 1.1
import QtQuick.Controls.Private 1.0
@@ -202,20 +202,27 @@ Control {
property int dayOfWeekFormat: Locale.ShortFormat
/*!
- The locale that this calendar should use to display itself.
+ \qmlproperty object Calendar::locale
+ \since QtQuick.Controls 1.6
- Affects how dates and day names are localized, as well as which
- day is considered the first in a week.
+ This property controls the locale that this calendar uses to display
+ itself.
- To set an Australian locale, for example:
+ The locale affects how dates and day names are localized, as well as
+ which day is considered the first in a week.
+
+ The following example sets an Australian locale:
\code
locale: Qt.locale("en_AU")
\endcode
- The default locale is \c Qt.locale().
+ The default value is equivalent to \c Qt.locale().
*/
- property var __locale: Qt.locale()
+ property var locale: Qt.locale()
+
+ // left for compatibility reasons; can be removed in next minor version/Qt 6
+ property alias __locale: calendar.locale
/*!
\internal
@@ -224,7 +231,7 @@ Control {
populate the dates available to the user.
*/
property CalendarModel __model: CalendarModel {
- locale: calendar.__locale
+ locale: calendar.locale
// TODO: don't set the hour when QTBUG-56787 is fixed
visibleDate: new Date(visibleYear, visibleMonth, 1, 12)
diff --git a/src/controls/Slider.qml b/src/controls/Slider.qml
index a90bc022..c4d25ac2 100644
--- a/src/controls/Slider.qml
+++ b/src/controls/Slider.qml
@@ -171,6 +171,16 @@ Control {
*/
property bool tickmarksEnabled: false
+ /*!
+ \qmlproperty bool Slider::wheelEnabled
+
+ This property determines whether the control handles wheel events.
+ The default value is \c true.
+
+ \since QtQuick.Controls 1.6
+ */
+ property alias wheelEnabled: wheelarea.enabled
+
/*! \internal */
property bool __horizontal: orientation === Qt.Horizontal
diff --git a/src/controls/Styles/Android/CalendarStyle.qml b/src/controls/Styles/Android/CalendarStyle.qml
index 449cc497..52b02bff 100644
--- a/src/controls/Styles/Android/CalendarStyle.qml
+++ b/src/controls/Styles/Android/CalendarStyle.qml
@@ -83,7 +83,7 @@ CalendarStyle {
LabelStyle {
id: dayOfWeek
anchors.centerIn: parent
- text: control.__locale.dayName(styleData.dayOfWeek, control.dayOfWeekFormat)
+ text: control.locale.dayName(styleData.dayOfWeek, control.dayOfWeekFormat)
focused: control.activeFocus
window_focused: control.Window.active
styleDef: AndroidStyle.styleDef.calendarViewStyle.CalendarView_weekDayTextAppearance
diff --git a/src/controls/Styles/Base/CalendarStyle.qml b/src/controls/Styles/Base/CalendarStyle.qml
index 862c5f43..12cb3a4b 100644
--- a/src/controls/Styles/Base/CalendarStyle.qml
+++ b/src/controls/Styles/Base/CalendarStyle.qml
@@ -320,7 +320,7 @@ Style {
color: gridVisible ? "#fcfcfc" : "transparent"
implicitHeight: Math.round(TextSingleton.implicitHeight * 2.25)
Label {
- text: control.__locale.dayName(styleData.dayOfWeek, control.dayOfWeekFormat)
+ text: control.locale.dayName(styleData.dayOfWeek, control.dayOfWeekFormat)
anchors.centerIn: parent
}
}
@@ -397,8 +397,8 @@ Style {
active: control.navigationBarVisible
property QtObject styleData: QtObject {
- readonly property string title: control.__locale.standaloneMonthName(control.visibleMonth)
- + new Date(control.visibleYear, control.visibleMonth, 1).toLocaleDateString(control.__locale, " yyyy")
+ readonly property string title: control.locale.standaloneMonthName(control.visibleMonth)
+ + new Date(control.visibleYear, control.visibleMonth, 1).toLocaleDateString(control.locale, " yyyy")
}
}
@@ -413,7 +413,7 @@ Style {
Repeater {
id: repeater
model: CalendarHeaderModel {
- locale: control.__locale
+ locale: control.locale
}
Loader {
id: dayOfWeekDelegateLoader
diff --git a/src/controls/plugin.cpp b/src/controls/plugin.cpp
index bac0d64d..5a5a9605 100644
--- a/src/controls/plugin.cpp
+++ b/src/controls/plugin.cpp
@@ -120,7 +120,10 @@ static const struct {
{ "TreeView", 1, 4 },
{ "TextArea", 1, 5 },
- { "TreeView", 1, 5 }
+ { "TreeView", 1, 5 },
+
+ { "Calendar", 1, 6 },
+ { "Slider", 1, 6 }
};
QtQuickControls1Plugin::QtQuickControls1Plugin(QObject *parent) : QQmlExtensionPlugin(parent)
diff --git a/src/extras/Private/qquickmathutils.cpp b/src/extras/Private/qquickmathutils.cpp
index 165a6f92..e40d8b6f 100644
--- a/src/extras/Private/qquickmathutils.cpp
+++ b/src/extras/Private/qquickmathutils.cpp
@@ -55,7 +55,7 @@ qreal QQuickMathUtils::pi2() const
Converts the angle \a degrees to radians.
*/
qreal QQuickMathUtils::degToRad(qreal degrees) const {
- return degrees * (M_PI / 180);
+ return qDegreesToRadians(degrees);
}
/*!
@@ -68,14 +68,14 @@ qreal QQuickMathUtils::degToRad(qreal degrees) const {
for example.
*/
qreal QQuickMathUtils::degToRadOffset(qreal degrees) const {
- return (degrees - 90) * (M_PI / 180);
+ return qDegreesToRadians(degrees - 90);
}
/*!
Converts the angle \a radians to degrees.
*/
qreal QQuickMathUtils::radToDeg(qreal radians) const {
- return radians * (180 / M_PI);
+ return qRadiansToDegrees(radians);
}
/*!
@@ -88,7 +88,7 @@ qreal QQuickMathUtils::radToDeg(qreal radians) const {
expect.
*/
qreal QQuickMathUtils::radToDegOffset(qreal radians) const {
- return radians * (180 / M_PI) + 90;
+ return qRadiansToDegrees(radians) + 90;
}
/*!
diff --git a/src/extras/Styles/Flat/CalendarStyle.qml b/src/extras/Styles/Flat/CalendarStyle.qml
index 2598ce78..ece0548d 100644
--- a/src/extras/Styles/Flat/CalendarStyle.qml
+++ b/src/extras/Styles/Flat/CalendarStyle.qml
@@ -190,7 +190,7 @@ Base.CalendarStyle {
Label {
text: localeDayName.length == 0 || localeDayName.length > 1
- ? control.__locale.dayName(styleData.dayOfWeek, Locale.ShortFormat)[0]
+ ? control.locale.dayName(styleData.dayOfWeek, Locale.ShortFormat)[0]
: localeDayName
color: !control.enabled ? FlatStyle.disabledColor : FlatStyle.styleColor
opacity: !control.enabled ? FlatStyle.disabledOpacity : 1
@@ -202,7 +202,7 @@ Base.CalendarStyle {
font.pixelSize: control.height * __headerFontRatio
renderType: FlatStyle.__renderType
- property string localeDayName: control.__locale.dayName(styleData.dayOfWeek, Locale.NarrowFormat)
+ property string localeDayName: control.locale.dayName(styleData.dayOfWeek, Locale.NarrowFormat)
}
}
}
diff --git a/tests/auto/controls/data/tst_calendar.qml b/tests/auto/controls/data/tst_calendar.qml
index 1185aca9..814a361a 100644
--- a/tests/auto/controls/data/tst_calendar.qml
+++ b/tests/auto/controls/data/tst_calendar.qml
@@ -132,7 +132,7 @@ Item {
compare(calendar.selectedDate, new Date(new Date().setHours(0, 0, 0, 0)));
compare(calendar.frameVisible, true);
compare(calendar.dayOfWeekFormat, Locale.ShortFormat);
- compare(calendar.__locale, Qt.locale());
+ compare(calendar.locale, Qt.locale());
}
function test_setAfterConstructed() {
@@ -141,13 +141,13 @@ Item {
calendar.selectedDate = new Date(1980, 0, 1);
calendar.frameVisible = false;
calendar.dayOfWeekFormat = Locale.NarrowFormat;
- calendar.__locale = Qt.locale("de_DE");
+ calendar.locale = Qt.locale("de_DE");
compare(calendar.minimumDate, new Date(1900, 0, 1));
compare(calendar.maximumDate, new Date(1999, 11, 31));
compare(calendar.selectedDate, new Date(1980, 0, 1));
compare(calendar.frameVisible, false);
- compare(calendar.__locale, Qt.locale("de_DE"));
+ compare(calendar.locale, Qt.locale("de_DE"));
}
function test_selectedDate() {
@@ -205,7 +205,7 @@ Item {
calendar.selectedDate = new Date(2013, 0, 1);
// Set this to a certain locale, because days will be in different
// places depending on the system locale of the host machine.
- calendar.__locale = Qt.locale("en_GB");
+ calendar.locale = Qt.locale("en_GB");
/* January 2013 December 2012
M T W T F S S M T W T F S S
@@ -371,7 +371,7 @@ Item {
var startDate = new Date(2013, 0, 1);
calendar.selectedDate = startDate;
- calendar.__locale = Qt.locale("en_US");
+ calendar.locale = Qt.locale("en_US");
compare(calendar.selectedDate, startDate);
pressedSignalSpy.target = calendar;
@@ -457,7 +457,7 @@ Item {
calendar.minimumDate = new Date(2013, 0, 1);
calendar.selectedDate = new Date(startDate);
calendar.maximumDate = new Date(2013, 1, 5);
- calendar.__locale = Qt.locale("no_NO");
+ calendar.locale = Qt.locale("no_NO");
pressedSignalSpy.target = calendar;
pressedSignalSpy.signalName = "pressed";
@@ -531,7 +531,7 @@ Item {
22 23 24 25 26 27 28
29 30 31 1 2 3 4 */
- calendar.__locale = Qt.locale("en_GB");
+ calendar.locale = Qt.locale("en_GB");
calendar.selectedDate = new Date(2014, 11, 1);
mousePress(calendar, toPixelsX(0), toPixelsY(0), Qt.LeftButton);
compare(calendar.selectedDate, new Date(2014, 10, 24));
@@ -602,7 +602,7 @@ Item {
calendar.minimumDate = new Date(2014, 1, 1);
calendar.selectedDate = new Date(2014, 1, 28);
calendar.maximumDate = new Date(2014, 2, 31);
- calendar.__locale = Qt.locale("en_GB");
+ calendar.locale = Qt.locale("en_GB");
pressedSignalSpy.target = calendar;
pressedSignalSpy.signalName = "pressed";
@@ -875,7 +875,7 @@ Item {
function test_pressAndHold() {
calendar.selectedDate = new Date(2013, 0, 1);
- calendar.__locale = Qt.locale("en_GB");
+ calendar.locale = Qt.locale("en_GB");
pressedSignalSpy.target = calendar;
pressedSignalSpy.signalName = "pressed";
diff --git a/tests/auto/controls/data/tst_slider.qml b/tests/auto/controls/data/tst_slider.qml
index 0eec7e34..a27cf70e 100644
--- a/tests/auto/controls/data/tst_slider.qml
+++ b/tests/auto/controls/data/tst_slider.qml
@@ -51,7 +51,7 @@
import QtQuick 2.6
import QtTest 1.0
import QtQuickControlsTests 1.0
-import QtQuick.Controls 1.4
+import QtQuick.Controls 1.6
import QtQuick.Controls.Private 1.0
import QtQuick.Controls.Styles 1.4
@@ -176,6 +176,13 @@ Item {
slider.value = 0
mouseWheel(slider, 5, 5, -40 * ratio, 0)
compare(slider.value, slider.maximumValue)
+
+ // Mousewheel deactivated
+ slider.value = 0
+ slider.wheelEnabled = false
+ mouseWheel(slider, 5, 5, 4 * ratio, 0)
+ compare(slider.value, 0)
+
slider.destroy()
}