CalendarComboBox.qml 1.43 KB
Newer Older
Julien Wadel's avatar
Julien Wadel committed
import QtQuick.Controls.Material as Control
Gaëlle Braud's avatar
Gaëlle Braud committed
import QtQuick.Layouts
Gaëlle Braud's avatar
Gaëlle Braud committed
	readonly property var selectedDate: calendar.selectedDate
	onSelectedDateChanged: popupItem.close()
Gaëlle Braud's avatar
Gaëlle Braud committed
	property alias contentText: contentText
Gaëlle Braud's avatar
Gaëlle Braud committed
		id: contentText
		text: Qt.formatDate(calendar.selectedDate, "ddd d, MMMM")
		anchors.fill: parent
		anchors.leftMargin: 15 * DefaultStyle.dp
		anchors.verticalCenter: parent.verticalCenter
		verticalAlignment: Text.AlignVCenter
		font {
			pixelSize: 14 * DefaultStyle.dp
			weight: 700 * DefaultStyle.dp
		}
	}
	popup: Control.Popup {
Julien Wadel's avatar
Julien Wadel committed
		id: popupItem
		y: mainItem.height
		width: 321 * DefaultStyle.dp
		height: 270 * DefaultStyle.dp
		closePolicy: Popup.NoAutoClose
Gaëlle Braud's avatar
Gaëlle Braud committed
		topPadding: 25 * DefaultStyle.dp
		bottomPadding: 24 * DefaultStyle.dp
		leftPadding: 21 * DefaultStyle.dp
		rightPadding: 19 * DefaultStyle.dp
Julien Wadel's avatar
Julien Wadel committed
		onOpened: calendar.forceActiveFocus()
Gaëlle Braud's avatar
Gaëlle Braud committed
			anchors.fill: parent
			Rectangle {
				id: calendarBg
				anchors.fill: parent
				color: DefaultStyle.grey_0
				radius: 16 * DefaultStyle.dp
Julien Wadel's avatar
Julien Wadel committed
				border.color: DefaultStyle.main1_500_main
				border.width: calendar.activeFocus? 1 : 0
			}
			MultiEffect {
				anchors.fill: calendarBg
				source: calendarBg
				shadowEnabled: true
Gaëlle Braud's avatar
Gaëlle Braud committed
				shadowBlur: 0.1
				shadowOpacity: 0.1
			}
		}
		contentItem: Calendar {
			id: calendar
		}
	}
Julien Wadel's avatar
Julien Wadel committed
}