/usr/lib/x86_64-linux-gnu/qt5/qml/Ubuntu/Components/Pickers/1.3/DayModel.qml is in qml-module-ubuntu-components 1.3.1918+16.04.20160404-0ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | /*
* Copyright 2013 Canonical Ltd.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; version 3.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
import QtQuick 2.4
import Ubuntu.Components 1.3
PickerModelBase {
circular: true
function reset() {
resetting = true;
clear();
for (var i = 0; i < date.daysInMonth(); i++) {
append({"day": i});
}
}
function resetLimits(label, margin) {
label.text = '9999';
narrowFormatLimit = label.paintedWidth + 2 * margin;
shortFormatLimit = longFormatLimit = 0.0;
for (var day = 1; day <= 7; day++) {
label.text = '99 ' + mainComponent.locale.dayName(day, Locale.ShortFormat)
shortFormatLimit = Math.max(label.paintedWidth + 2 * margin, shortFormatLimit);
label.text = '99 ' + mainComponent.locale.dayName(day, Locale.LongFormat)
longFormatLimit = Math.max(label.paintedWidth + 2 * margin, longFormatLimit);
}
}
function syncModels() {
var newDaysCount = mainComponent.date.daysInMonth(mainComponent.year, mainComponent.month);
var modelCount = count;
var daysDiff = newDaysCount - modelCount;
if (daysDiff < 0) {
remove(modelCount + daysDiff, -daysDiff);
} else if (daysDiff > 0) {
for (var d = modelCount; d < modelCount + daysDiff; d++) {
append({"day": d});
}
}
}
function indexOf() {
return date.getDate() - 1;
}
function dateFromIndex(index) {
if (index < 0 || index >= count) {
return date;
}
var newDate = new Date(date);
newDate.setDate(index + 1);
return newDate;
}
function text(value) {
if (value === undefined) {
return "";
}
var thisDate = new Date(date);
thisDate.setDate(value + 1);
if (pickerWidth >= longFormatLimit) {
return Qt.formatDate(thisDate, "dd ") + mainComponent.locale.dayName(thisDate.getDay(), Locale.LongFormat);
}
if (pickerWidth >= shortFormatLimit) {
return Qt.formatDate(thisDate, "dd ") + mainComponent.locale.dayName(thisDate.getDay(), Locale.ShortFormat);
}
return Qt.formatDate(thisDate, "dd");
}
}
|