import QtQuick 2.3
import QtQml 2.2
Rectangle {
id: container
color: "#00000000"
/* Konfiguracja */
property string cfg_temperature_unit: "°C" // "°C"; "°F"
property string cfg_speed_unit: "km/h" // "km/h"; "mph"
/* Lokalizacyjne */
property string lang_current_condition: "Warunki aktualne"
property string lang_forecast: "Prognoza"
property string lang_temperature: "Temperatura"
property string lang_max_temperature: "Temperatura maksymalna"
property string lang_min_temperature: "Temperatura minimalna"
property string lang_wind: "Wiatr"
property string lang_precipitation: "Opady"
property string lang_humidity: "Wilgotność"
property string lang_visibility: "Widoczność"
property string lang_atmospheric_pressure: "Ciśnienie atmosferyczne"
property string lang_cloud_cover: "Zachmurzenie"
/*
* Funkcja zwraca stringa - sformatowaną wartość
*
* Typy parametrów
*
* 1 - klucz/wartosc. Dla wartosci a_value wyszukuje index z listy wartosci (a_param_p_0) klucz i go zwraca (a_param_p_1)
* przyklad: dla wartosci 255 przy a_param_0: "0|1|255" i a_param_1: "Lato|Zima|Auto" zostanie zwrocone "Auto"
* jezeli nie uda sie przporzadkowac do wartosci klucza to zostanie zwrocona wprost wartosc
* 2 - float z jednostką:
* a_param_p_0 - dzielnik (0 - brak dzielnika)
* 3 - tylko godzina (czas): param_value - godziny; param_p_0 - minuty;
* 4 - tylko data: param_value - rok (dwie ostatnie cyfry); param_p_0 - miesiąc; param_p_0 - dzień;
* 5 - nazwa dnia tygodnia - (zlokalizowany);
*/
function funct_getValue(a_type, a_value, a_param_p_0, a_param_p_1) {
var result = "";
switch (a_type) {
case 1:
if (a_value === -65535) {
result = "- - -";
} else {
result = a_value;
var tmp_key = a_param_p_1.split("|");
var tmp_value = a_param_p_0.split("|");
if (tmp_value.length > 0) {
for (var i=0; i<tmp_value.length; i++) {
if (tmp_value[i] == a_value) {
result = tmp_key[i];
}
}
}
}
break
case 2:
if (a_value === -65535) {
result = "- - -";
} else {
if (a_param_p_0 !== 0) {
result = (a_value/a_param_p_0).toLocaleString();
} else {
result = a_value.toLocaleString();
}
}
break
case 3:
result = get_date_time(a_value, a_param_p_0, 1, 1, 2014).toLocaleTimeString(Locale.ShortFormat)
break
case 4:
result = get_date_time(0, 0, a_value, a_param_p_0, a_param_p_1).toLocaleDateString(Locale.ShortFormat)
break
case 5:
result = Qt.locale().dayName(a_value)
break
default:
result = a_value.toString();
break
}
return result;
}
/*
* Funkcja zwraca odpowiednią date i godzinę
*/
function get_date_time(a_hour, a_minute, a_year, a_month, a_day) {
var dateTime = new Date();
dateTime.setHours(a_hour);
dateTime.setMinutes(a_minute);
dateTime.setFullYear(2000 + a_year);
dateTime.setMonth(a_month);
dateTime.setDate(a_day);
return dateTime
}
/*
* Funkcja generuje kod QML dla obektów dynamicznych
*/
function generateQMLstring(a_C_name, a_index, a_title, a_p_0) {
var result = "";
result = "
import QtQuick 2.2;
import \"../../commons/\";
" + a_C_name + " {
prop_index: " + a_index + "
prop_title: \"" + a_title + "\"
prop_p_0: \"" + a_p_0 + "\"
}
";
return result;
}
}