diff --git a/src/declarativeimports/calendar/qml/MonthMenu.qml b/src/declarativeimports/calendar/qml/MonthMenu.qml index 6b0fb96cc..aa5d3b46d 100644 --- a/src/declarativeimports/calendar/qml/MonthMenu.qml +++ b/src/declarativeimports/calendar/qml/MonthMenu.qml @@ -17,62 +17,21 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 2.010-1301, USA. */ -import QtQuick 2.0 +import QtQuick 2.2 import org.kde.plasma.components 2.0 as PlasmaComponents PlasmaComponents.Menu { id: testMenu - property date today: new Date() + property int year - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(0)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 0, 1) - } - - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(1)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 1, 1) - } - - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(2)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 2, 1) - } - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(3)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 3, 1) - } - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(4)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 4, 1) - } - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(5)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 5, 1) - } - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(6)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 6, 1) - } - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(7)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 7, 1) - } - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(8)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 8, 1) - } - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(9)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 9, 1) - } - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(10)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 10, 1) - } - PlasmaComponents.MenuItem { - text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(11)) - onClicked: calendarBackend.displayedDate = new Date(today.getFullYear(), 11, 1) + // Needs to be a property since Menu doesn't accept other items than MenuItem + property Instantiator items: Instantiator { + model: 12 + PlasmaComponents.MenuItem { + text: capitalizeFirstLetter(Qt.locale().standaloneMonthName(index)) + onClicked: calendarBackend.displayedDate = new Date(year, index, 1) + } + onObjectAdded: testMenu.addMenuItem(object) } // Because some locales don't have it in standaloneMonthNames, diff --git a/src/declarativeimports/calendar/qml/MonthView.qml b/src/declarativeimports/calendar/qml/MonthView.qml index 11013a76f..6eaa8db21 100644 --- a/src/declarativeimports/calendar/qml/MonthView.qml +++ b/src/declarativeimports/calendar/qml/MonthView.qml @@ -119,6 +119,7 @@ Item { if (menuLoader.source == "") { menuLoader.source = "MonthMenu.qml" } + menuLoader.item.year = selectedYear menuLoader.item.open(0, height); } onExited: previousPixelDelta = 0