1111 lines
71 KiB
QML
1111 lines
71 KiB
QML
import QtQuick 2.12
|
|
import QtQuick.Controls 2.12
|
|
import QtQuick.VirtualKeyboard 2.4
|
|
import QtQuick.VirtualKeyboard.Settings 2.2
|
|
|
|
import qt.koriolan.shipheart 1.0
|
|
|
|
ApplicationWindow {
|
|
id: root
|
|
|
|
//===============================================================================================================================
|
|
// Propriétés statiques :
|
|
//===============================================================================================================================
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Générations de ShipBase :
|
|
readonly property int shipheart_generation_shipbase_inconnue: 0
|
|
readonly property int shipheart_generation_shipbase_v1: 1
|
|
readonly property int shipheart_generation_shipbase_v2: 2
|
|
readonly property int shipheart_generation_shipbase_v3: 3
|
|
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Thèmes :
|
|
readonly property int shipheart_index_theme_nom: 0
|
|
readonly property int shipheart_index_theme_fichier_fond_ecran: 1
|
|
readonly property int shipheart_index_theme_couleur_fond_ecran: 2
|
|
readonly property int shipheart_index_theme_couleur_fond_bouton: 3
|
|
readonly property int shipheart_index_theme_couleur_fond_bouton_actif: 4
|
|
readonly property int shipheart_index_theme_couleur_texte_titre_1: 5
|
|
readonly property int shipheart_index_theme_couleur_texte_titre_2: 6
|
|
readonly property int shipheart_index_theme_couleur_texte_titre_3: 7
|
|
readonly property int shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0: 8
|
|
readonly property int shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1: 9
|
|
readonly property int shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2: 10
|
|
readonly property int shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0: 11
|
|
readonly property int shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1: 12
|
|
readonly property int shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2: 13
|
|
readonly property int shipheart_index_theme_couleur_texte_slider: 14
|
|
readonly property int shipheart_index_theme_couleur_bordure_courbes: 15
|
|
|
|
|
|
readonly property variant shipheart_config_themes: [
|
|
//--------------------------------------------
|
|
// Theme = 0:
|
|
[
|
|
qsTr("Original"), // shipheart_index_theme_nom
|
|
"/images/fibre_carbone.png", // shipheart_index_theme_fichier_fond_ecran
|
|
"transparent", // shipheart_index_theme_couleur_fond_ecran
|
|
couleur_gris_tres_fonce_transparent, // shipheart_index_theme_couleur_fond_bouton
|
|
couleur_bleu_koriolan_transparent, // shipheart_index_theme_couleur_fond_bouton_actif
|
|
couleur_gris_fonce, // shipheart_index_theme_couleur_texte_titre_1
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_texte_titre_2
|
|
couleur_gris_pale, // shipheart_index_theme_couleur_texte_titre_3
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0
|
|
couleur_orange, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1
|
|
couleur_rouge, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2
|
|
couleur_bleu_koriolan, // shipheart_couleur_texte_slider
|
|
couleur_bleu_koriolan // shipheart_index_theme_couleur_bordure_courbes
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Theme = 1:
|
|
[
|
|
qsTr("Sombre"),
|
|
"",
|
|
couleur_noir,
|
|
couleur_gris_tres_fonce_transparent, // shipheart_index_theme_couleur_fond_bouton
|
|
couleur_bleu_koriolan_transparent, // shipheart_index_theme_couleur_fond_bouton_actif
|
|
couleur_gris_fonce, // shipheart_index_theme_couleur_texte_titre_1
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_texte_titre_2
|
|
couleur_gris_pale, // shipheart_index_theme_couleur_texte_titre_3
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0
|
|
couleur_orange, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1
|
|
couleur_rouge, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2
|
|
couleur_bleu_koriolan, // shipheart_couleur_texte_slider
|
|
couleur_bleu_koriolan // shipheart_index_theme_couleur_bordure_courbes
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Theme = 2:
|
|
[
|
|
qsTr("Métallique"),
|
|
"/images/fond_2.jpg",
|
|
"transparent",
|
|
couleur_gris_tres_fonce_transparent, // shipheart_index_theme_couleur_fond_bouton
|
|
couleur_bleu_koriolan_transparent, // shipheart_index_theme_couleur_fond_bouton_actif
|
|
couleur_gris_fonce, // shipheart_index_theme_couleur_texte_titre_1
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_texte_titre_2
|
|
couleur_gris_pale, // shipheart_index_theme_couleur_texte_titre_3
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0
|
|
couleur_orange, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1
|
|
couleur_rouge, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2
|
|
couleur_bleu_koriolan, // shipheart_couleur_texte_slider
|
|
couleur_bleu_koriolan // shipheart_index_theme_couleur_bordure_courbes
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Theme = 3:
|
|
[
|
|
qsTr("Triangles"),
|
|
"/images/fond_3.jpg",
|
|
"transparent",
|
|
couleur_gris_tres_fonce_transparent, // shipheart_index_theme_couleur_fond_bouton
|
|
couleur_bleu_koriolan_transparent, // shipheart_index_theme_couleur_fond_bouton_actif
|
|
couleur_gris_fonce, // shipheart_index_theme_couleur_texte_titre_1
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_texte_titre_2
|
|
couleur_gris_pale, // shipheart_index_theme_couleur_texte_titre_3
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0
|
|
couleur_orange, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1
|
|
couleur_rouge, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2
|
|
couleur_bleu_koriolan, // shipheart_couleur_texte_slider
|
|
couleur_bleu_koriolan // shipheart_index_theme_couleur_bordure_courbes
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Theme = 4:
|
|
[
|
|
qsTr("Sable"),
|
|
"",
|
|
couleur_noir,
|
|
couleur_gris_tres_fonce_transparent, // shipheart_index_theme_couleur_fond_bouton
|
|
couleur_sable_transparent, // shipheart_index_theme_couleur_fond_bouton_actif
|
|
couleur_sable_transparent, // shipheart_index_theme_couleur_texte_titre_1
|
|
couleur_sable, // shipheart_index_theme_couleur_texte_titre_2
|
|
couleur_sable_transparent, // shipheart_index_theme_couleur_texte_titre_3
|
|
couleur_sable, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0
|
|
couleur_orange, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1
|
|
couleur_rouge, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2
|
|
couleur_sable, // shipheart_couleur_texte_slider
|
|
couleur_sable // shipheart_index_theme_couleur_bordure_courbes
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Theme = 5:
|
|
[
|
|
qsTr("Thème 5"),
|
|
"",
|
|
couleur_bleu_koriolan_transparent,
|
|
couleur_gris_tres_fonce_transparent, // shipheart_index_theme_couleur_fond_bouton
|
|
couleur_bleu_koriolan_transparent, // shipheart_index_theme_couleur_fond_bouton_actif
|
|
couleur_gris_fonce, // shipheart_index_theme_couleur_texte_titre_1
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_texte_titre_2
|
|
couleur_gris_pale, // shipheart_index_theme_couleur_texte_titre_3
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0
|
|
couleur_orange, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1
|
|
couleur_rouge, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2
|
|
couleur_bleu_koriolan, // shipheart_couleur_texte_slider
|
|
couleur_bleu_koriolan // shipheart_index_theme_couleur_bordure_courbes
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Theme = 6:
|
|
[
|
|
qsTr("Thème 6"),
|
|
"",
|
|
couleur_gris_pale,
|
|
couleur_gris_tres_fonce_transparent, // shipheart_index_theme_couleur_fond_bouton
|
|
couleur_sable_transparent, // shipheart_index_theme_couleur_fond_bouton_actif
|
|
couleur_gris_fonce, // shipheart_index_theme_couleur_texte_titre_1
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_texte_titre_2
|
|
couleur_gris_pale, // shipheart_index_theme_couleur_texte_titre_3
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0
|
|
couleur_orange, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1
|
|
couleur_rouge, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2
|
|
couleur_bleu_koriolan, // shipheart_couleur_texte_slider
|
|
couleur_bleu_koriolan // shipheart_index_theme_couleur_bordure_courbes
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Theme = 7:
|
|
[
|
|
qsTr("Thème 7"),
|
|
"",
|
|
"#2F076A",
|
|
couleur_gris_tres_fonce_transparent, // shipheart_index_theme_couleur_fond_bouton
|
|
couleur_bleu_koriolan_transparent, // shipheart_index_theme_couleur_fond_bouton_actif
|
|
couleur_gris_fonce, // shipheart_index_theme_couleur_texte_titre_1
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_texte_titre_2
|
|
couleur_gris_pale, // shipheart_index_theme_couleur_texte_titre_3
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0
|
|
couleur_orange, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1
|
|
couleur_rouge, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2
|
|
couleur_bleu_koriolan, // shipheart_couleur_texte_slider
|
|
couleur_bleu_koriolan // shipheart_index_theme_couleur_bordure_courbes
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Theme = 8:
|
|
[
|
|
qsTr("Thème 8"),
|
|
"",
|
|
"#5B1297",
|
|
couleur_gris_tres_fonce_transparent, // shipheart_index_theme_couleur_fond_bouton
|
|
couleur_bleu_koriolan_transparent, // shipheart_index_theme_couleur_fond_bouton_actif
|
|
couleur_gris_fonce, // shipheart_index_theme_couleur_texte_titre_1
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_texte_titre_2
|
|
couleur_gris_pale, // shipheart_index_theme_couleur_texte_titre_3
|
|
couleur_bleu_koriolan, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0
|
|
couleur_orange, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1
|
|
couleur_rouge, // shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1
|
|
couleur_blanc_casse, // shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2
|
|
couleur_bleu_koriolan, // shipheart_couleur_texte_slider
|
|
couleur_bleu_koriolan // shipheart_index_theme_couleur_bordure_courbes
|
|
]
|
|
];
|
|
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Type d'installation :
|
|
readonly property int shipheart_type_installation_shipbase : 0
|
|
readonly property int shipheart_type_installation_ecran_deporte : 1
|
|
|
|
readonly property int shipheart_type_installation_ecran_deporte_7_pouces : 17
|
|
readonly property int shipheart_type_installation_ecran_deporte_10_pouces : 110
|
|
readonly property int shipheart_type_installation_ecran_deporte_22_pouces : 122
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Spécificités clients :
|
|
readonly property int shipheart_specifique_client_tous : 0
|
|
readonly property int shipheart_specifique_client_suncy : 1
|
|
readonly property int shipheart_specifique_client_o_yachts : 2
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Types de source :
|
|
readonly property int shipheart_type_source_inconnu : 0
|
|
readonly property int shipheart_type_source_circuits : 1
|
|
readonly property int shipheart_type_source_capteurs: 2
|
|
readonly property int shipheart_type_source_reservoirs: 3
|
|
readonly property int shipheart_type_source_batteries: 4
|
|
readonly property int shipheart_type_source_modules: 5
|
|
readonly property int shipheart_type_source_events: 6
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Types de page :
|
|
readonly property int shipheart_type_page_inconnu : 0
|
|
readonly property int shipheart_type_page_preconfiguree_ephemeride : 1
|
|
readonly property int shipheart_type_page_preconfiguree_chronometre : 2
|
|
readonly property int shipheart_type_page_personnalisee_minuteur : 3
|
|
readonly property int shipheart_type_page_preconfiguree_reveil : 4
|
|
readonly property int shipheart_type_page_personnalisee_non_masquable : 10
|
|
readonly property int shipheart_type_page_personnalisee_masquable : 11
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Paramètres d'une page personnalisée :
|
|
readonly property int shipheart_page_personnalisee_nb_max_points : 30
|
|
|
|
readonly property variant shipheart_page_personnalisee_type_point_icones : [
|
|
//--------------------------------------------
|
|
// Type_source = 0 = Système
|
|
[],
|
|
|
|
//--------------------------------------------
|
|
// Type_source = 1 = Circuits:
|
|
[
|
|
"point_transparent.png", // Attention : rang #0 = icone utilisée pour circuit OFF...
|
|
"point_blanc.png",
|
|
"point_rouge.png",
|
|
"point_vert.png",
|
|
"point_bleu.png",
|
|
"point_jaune.png",
|
|
"point_orange.png",
|
|
"point_arc_en_ciel.png"
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Type_source = 2 = Capteurs:
|
|
[
|
|
"icone_barometre.png",
|
|
"icone_humidite.png",
|
|
"icone_consommation_electrique.png",
|
|
"icone_temperature.png",
|
|
"vanne.png",
|
|
"vanne_ouverte.png",
|
|
"vanne_fermee.png",
|
|
"satellite.png"
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Type_source = 3 = Reservoirs:
|
|
[
|
|
"reservoir.png",
|
|
"reservoir_eau.png"
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Type_source = 4 = Batteries:
|
|
[
|
|
"batterie_moyen.png"
|
|
],
|
|
|
|
//--------------------------------------------
|
|
// Type_source = 5 = Modules:
|
|
[
|
|
"shipbase.png", // Attention : dans l'ordre du 'Types de modules' ci-dessous !
|
|
"sp8dc.png", // Par approximation, on met une image de 8DC...
|
|
"shipbs.png",
|
|
"sp4ac.png",
|
|
"sp8dc.png"
|
|
],
|
|
]
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Langues :
|
|
readonly property int shipheart_langue_fr: 0
|
|
readonly property int shipheart_langue_en: 1
|
|
readonly property int shipheart_langue_de: 2
|
|
readonly property int shipheart_langue_es: 3
|
|
readonly property int shipheart_langue_pt: 4
|
|
readonly property int shipheart_langue_nl: 5
|
|
readonly property int shipheart_langue_it: 6
|
|
readonly property int shipheart_langue_lv: 7
|
|
readonly property int shipheart_langue_ca: 8
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Types unité : // Cf aussi 'fonctions.js' et 'shipheart.h' en cas de modifications/ajouts
|
|
readonly property int shipheart_type_unite_volume: 1
|
|
readonly property int shipheart_type_unite_temperature: 2
|
|
readonly property int shipheart_type_unite_latitude: 3
|
|
readonly property int shipheart_type_unite_longitude: 4
|
|
|
|
// Unités volume : // Cf aussi 'fonctions.js' et 'shipheart.h' en cas de modifications/ajouts
|
|
readonly property int shipheart_unite_volume_litres: 0
|
|
readonly property int shipheart_unite_volume_us_gallons: 1
|
|
readonly property int shipheart_unite_volume_imp_gallons: 2
|
|
|
|
// Unités température : // Cf aussi 'fonctions.js' et 'shipheart.h' en cas de modifications/ajouts
|
|
readonly property int shipheart_unite_temperature_celsius: 0
|
|
readonly property int shipheart_unite_temperature_fahrehneit: 1
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Localisation des fichiers :
|
|
|
|
readonly property string shipheart_repertoire_versions_a_charger: "/home/koriolan/shipheart/versions/a_charger"
|
|
readonly property string shipheart_repertoire_versions_a_valider: "/home/koriolan/shipheart/versions/a_valider"
|
|
readonly property string shipheart_repertoire_versions_current: "/home/koriolan/shipheart/versions/current"
|
|
readonly property string shipheart_repertoire_config: "/home/koriolan/shipheart/config"
|
|
readonly property string shipheart_repertoire_cle_usb: "/home/koriolan/cle_usb"
|
|
readonly property string shipheart_repertoire_tmp_usb: "/home/koriolan/shipheart/tmp/usb"
|
|
readonly property string shipheart_repertoire_sys_usb: "/sys/kernel/debug/usb"
|
|
readonly property string shipheart_repertoire_utils: "/home/koriolan/shipheart/utils"
|
|
|
|
readonly property string shipheart_sous_repertoire_rapports: "/rapports"
|
|
readonly property string shipheart_sous_repertoire_images_accueil: "/images_accueil"
|
|
readonly property string shipheart_sous_repertoire_sauvegardes: "/sauvegardes"
|
|
readonly property string shipheart_sous_repertoire_images_silhouette: "/images_silhouette"
|
|
|
|
readonly property string shipheart_nom_complet_fichier_shiprs_conf: "/home/koriolan/shipheart/versions/shiprs.conf"
|
|
|
|
readonly property string shipheart_nom_fichier_image_accueil_par_defaut: "logo_shipheart.png"
|
|
readonly property string shipheart_nom_fichier_rapport_installation: "rapport_installation.php"
|
|
readonly property string shipheart_nom_fichier_sauvegarde: "sauvegarde.php"
|
|
readonly property string shipheart_nom_fichier_usb_devices: "devices"
|
|
readonly property string shipheart_nom_fichier_usb_lsblk: "resultat_lsblk"
|
|
readonly property string shipheart_nom_fichier_usb_ls: "resultat_ls"
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Modes de fonctionnement du menu 'config_fichiers' :
|
|
readonly property int shipheart_mode_config_fichiers_inconnu: 0
|
|
readonly property int shipheart_mode_config_fichiers_image_accueil: 1
|
|
readonly property int shipheart_mode_config_fichiers_silhouette: 2
|
|
readonly property int shipheart_mode_config_fichiers_rapports: 3
|
|
readonly property int shipheart_mode_config_fichiers_sauvegardes: 4
|
|
|
|
readonly property int shipheart_taille_maxi_image_accueil: (5 * 1000 * 1000) // En octets
|
|
readonly property int shipheart_taille_maxi_silhouette: (2 * 1000 * 1000) // En octets
|
|
readonly property int shipheart_taille_maxi_rapport: (50 * 1000 * 1000) // En octets
|
|
readonly property int shipheart_taille_maxi_sauvegarde: (50 * 1000 * 1000) // En octets
|
|
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Gestion des fichiers de mise à jour :
|
|
readonly property int shipheart_demande_maj_soft_aucune: 0 // Valeur de repos
|
|
readonly property int shipheart_demande_maj_soft_validation: 1 // Validation du fichier dans A_VALIDER qui sera copié dans A_CHARGER
|
|
readonly property int shipheart_demande_maj_soft_chargement: 2 // Idem VALIDATION + demande de reset pour prise en compte immédiate
|
|
readonly property int shipheart_demande_maj_soft_annulation: -1 // Suppression du fichier présent dans A_VALIDER ou dans A_CHARGER (les 2 sont vidés)
|
|
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Modules :
|
|
readonly property int shipheart_max_nombre_modules: (32+1)
|
|
|
|
// Types de modules : // Cf aussi 'fonctions.js' en cas de modifications/ajouts
|
|
readonly property int shipheart_type_module_inconnu: -1
|
|
readonly property int shipheart_type_module_shipbase: 0
|
|
readonly property int shipheart_type_module_shippower812: 1
|
|
readonly property int shipheart_type_module_shipBS: 2
|
|
readonly property int shipheart_type_module_shippower4AC: 3
|
|
readonly property int shipheart_type_module_shippower8DC: 4
|
|
|
|
// Etat commande d'une carte :
|
|
readonly property int shipheart_etat_commande_module_ok: 0
|
|
readonly property int shipheart_etat_commande_module_undervoltage: 1
|
|
readonly property int shipheart_etat_commande_module_test: 2
|
|
|
|
// Code commande d'une carte :
|
|
readonly property int shipheart_commande_module_localisation: 1
|
|
readonly property int shipheart_commande_module_etat_systeme: 2
|
|
|
|
readonly property int shipheart_commande_module_etat_systeme_normal: 0
|
|
readonly property int shipheart_commande_module_etat_systeme_alerte: 1
|
|
readonly property int shipheart_commande_module_etat_systeme_alarme: 2
|
|
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Historique types :
|
|
readonly property int shipheart_historique_type_tous: -1
|
|
readonly property int shipheart_historique_type_systeme: 0
|
|
readonly property int shipheart_historique_type_circuits: 1
|
|
readonly property int shipheart_historique_type_capteurs: 2
|
|
readonly property int shipheart_historique_type_reservoirs: 3
|
|
readonly property int shipheart_historique_type_batteries: 4
|
|
readonly property int shipheart_historique_type_usb: 5
|
|
readonly property int shipheart_historique_type_event: 6
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Messages users :
|
|
readonly property int shipheart_message_users_code_aucun: 0
|
|
readonly property int shipheart_message_users_code_fin_minuteur: 1
|
|
readonly property int shipheart_message_users_code_reveil: 2
|
|
readonly property int shipheart_message_users_code_maj_en_cours: 3
|
|
readonly property int shipheart_message_users_code_redemarrage: 4
|
|
readonly property int shipheart_message_users_code_nouvelle_version_detectee: 5
|
|
readonly property int shipheart_message_users_code_defaut_config_k_bus: 6
|
|
readonly property int shipheart_message_users_code_declenchement_event: 7
|
|
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Protection d'accès :
|
|
readonly property string code_koriolan: "87cf9a09f9889c4c9d2d9e30cfb6dfe6f238ef7f2db16cd5ea3ebfcd2c90b9b9"
|
|
|
|
readonly property int shipheart_type_code_normal: 0
|
|
readonly property int shipheart_type_code_admin: 1
|
|
|
|
readonly property int shipheart_niveau_acces_aucun: 0
|
|
readonly property int shipheart_niveau_acces_user: 1
|
|
readonly property int shipheart_niveau_acces_admin: 10
|
|
readonly property int shipheart_niveau_acces_koriolan: 20
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Types de synchro de BDD :
|
|
readonly property int shipheart_type_synchro_aucune : 0
|
|
readonly property int shipheart_type_synchro_data : 1
|
|
readonly property int shipheart_type_synchro_config : 2
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Timings système :
|
|
readonly property int shipheart_periode_timer_home: 1000
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Ports USB :
|
|
readonly property int shipheart_port_usb_aucun: -1
|
|
readonly property int shipheart_port_usb_arriere: 0 // Connecteur USB-A à l'arrière
|
|
readonly property int shipheart_port_usb_spare: 1 // Sortie sur 4 broches à souder au pas de 2.54mm
|
|
readonly property int shipheart_port_usb_avant_bas: 2 // Connecteur USB-A à l'avant, en partie basse de la colonne des 3 ports en face avant
|
|
readonly property int shipheart_port_usb_touchpad: 3 // Connecteur pour cable plat sur carte Shipbase, vers l'écran Densitron.
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Entrées Auxiliaires :
|
|
readonly property int shipheart_entrees_aux_max_nombre: 32
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Entrées Level Sensor :
|
|
readonly property int shipheart_entrees_level_sensor_max_nombre: 8
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Entrées Volt :
|
|
readonly property int shipheart_entrees_volt_max_nombre: 4
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Events :
|
|
readonly property int shipheart_max_nombre_events: 200 // Cf 'event.h' dans l'appli
|
|
readonly property int shipheart_max_nombre_conditions_horaires_par_event: 15 // Cf 'event.h' dans l'appli
|
|
readonly property int shipheart_max_nombre_action_circuits_par_event: 50 // Cf 'event.h' dans l'appli
|
|
|
|
// Heures spéciales :
|
|
readonly property int shipheart_heure_speciale_fin_nuit: 24 // -18° de l'horizon
|
|
readonly property int shipheart_heure_speciale_aube_nautique: 25 // -12° de l'horizon
|
|
readonly property int shipheart_heure_speciale_aube: 26 // -6° de l'horizon
|
|
readonly property int shipheart_heure_speciale_lever_soleil: 27 // -0.833° de l'horizon
|
|
readonly property int shipheart_heure_speciale_zenith: 28
|
|
readonly property int shipheart_heure_speciale_coucher_soleil: 29 // -0.833° de l'horizon
|
|
readonly property int shipheart_heure_speciale_crepuscule: 30 // -6° de l'horizon
|
|
readonly property int shipheart_heure_speciale_crepuscule_nautique: 31 // -12° de l'horizon
|
|
readonly property int shipheart_heure_speciale_debut_nuit: 32 // -18° de l'horizon
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Mesures :
|
|
// Type mesure : // Cf aussi 'fonctions.js' et 'shipheart.h' en cas de modifications/ajouts
|
|
readonly property int shipheart_source_mesure_circuit: 1
|
|
readonly property int shipheart_source_mesure_capteur: 2
|
|
readonly property int shipheart_source_mesure_reservoir: 3
|
|
readonly property int shipheart_source_mesure_batterie: 4
|
|
|
|
// Modes enregistrement mesures :
|
|
readonly property int shipheart_mode_enregistrement_mesures_aucun: 0
|
|
readonly property int shipheart_mode_enregistrement_mesures_periodique: 1
|
|
readonly property int shipheart_mode_enregistrement_mesures_changement_etat: 2
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Divers :
|
|
readonly property string shipheart_adresse_ip_inconnue: "inconnue" // Valeur identique à ADRESSE_IP_INCONNUE dans l'appli, dans 'systeme.h'
|
|
|
|
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Couleurs prédéfinies :
|
|
readonly property color couleur_bleu_koriolan: Qt.rgba((0/255), (118/255), (154/255), 1.0)
|
|
readonly property color couleur_bleu_koriolan_transparent: Qt.rgba((0/255), (118/255), (154/255), 0.4)
|
|
readonly property color couleur_bleu_koriolan_tres_transparent: Qt.rgba((0/255), (118/255), (154/255), 0.2)
|
|
readonly property color couleur_bleu_koriolan_tres_tres_transparent: Qt.rgba((0/255), (118/255), (154/255), 0.1)
|
|
readonly property color couleur_bleu_koriolan_clair: Qt.rgba((113/255), (187/255), (216/255), 1.0)
|
|
readonly property color couleur_bleu_koriolan_clair_transparent: Qt.rgba((113/255), (187/255), (216/255), 0.4)
|
|
readonly property color couleur_bleu_koriolan_clair_tres_transparent: Qt.rgba((113/255), (187/255), (216/255), 0.2)
|
|
readonly property color couleur_noir: Qt.rgba((0/255), (0/255), (0/255), 1.0)
|
|
readonly property color couleur_gris_tres_tres_fonce: Qt.rgba((10/255), (10/255), (10/255), 1.0)
|
|
readonly property color couleur_gris_tres_tres_fonce_transparent: Qt.rgba((10/255), (10/255), (10/255), 0.9)
|
|
readonly property color couleur_gris_tres_tres_fonce_tres_transparent: Qt.rgba((10/255), (10/255), (10/255), 0.2)
|
|
readonly property color couleur_gris_tres_fonce: Qt.rgba((60/255), (60/255), (60/255), 1.0)
|
|
readonly property color couleur_gris_tres_fonce_transparent: Qt.rgba((60/255), (60/255), (60/255), 0.5)
|
|
readonly property color couleur_gris_tres_fonce_tres_transparent: Qt.rgba((60/255), (60/255), (60/255), 0.2)
|
|
readonly property color couleur_gris_fonce: Qt.rgba((80/255), (80/255), (80/255), 1.0)
|
|
readonly property color couleur_gris_moyen: Qt.rgba((110/255), (110/255), (110/255), 1.0)
|
|
readonly property color couleur_gris_pale: Qt.rgba((130/255), (130/255), (130/255), 1.0)
|
|
readonly property color couleur_gris_tres_pale: Qt.rgba((150/255), (150/255), (150/255), 1.0)
|
|
readonly property color couleur_gris_tres_pale_transparent: Qt.rgba((150/255), (150/255), (150/255), 0.2)
|
|
readonly property color couleur_gris_tres_tres_pale: Qt.rgba((200/255), (200/255), (200/255), 1.0)
|
|
readonly property color couleur_blanc_casse: Qt.rgba((230/255), (230/255), (230/255), 1.0)
|
|
readonly property color couleur_blanc_casse_transparent: Qt.rgba((230/255), (230/255), (230/255), 0.5)
|
|
readonly property color couleur_blanc: Qt.rgba(1, 1, 1, 1.0)
|
|
readonly property color couleur_vert: Qt.rgba((177/255), (251/255), (23/255), 1.0)
|
|
readonly property color couleur_vert_transparent: Qt.rgba((177/255), (251/255), (23/255), 0.4)
|
|
readonly property color couleur_jaune: Qt.rgba((253/255), (240/255), (100/255), 1.0)
|
|
readonly property color couleur_jaune_transparent: Qt.rgba((253/255), (240/255), (100/255), 0.4)
|
|
readonly property color couleur_jaune_post_it: Qt.rgba((255/255), (195/255), (63/255), 1.0)
|
|
readonly property color couleur_jaune_post_it_transparent: Qt.rgba((255/255), (195/255), (63/255), 0.4)
|
|
readonly property color couleur_orange: Qt.rgba((255/255),(140/255), (0/255), 1.0)
|
|
readonly property color couleur_orange_transparent: Qt.rgba((255/255),(140/255), (0/255), 0.4)
|
|
readonly property color couleur_rouge: Qt.rgba((255/255), (30/255), (0/255), 1.0)
|
|
readonly property color couleur_rouge_transparent: Qt.rgba((255/255), (30/255), (0/255), 0.4)
|
|
readonly property color couleur_green_yellow: Qt.rgba((173/255), (255/255), (47/255), 1.0)
|
|
readonly property color couleur_green_yellow_transparent: Qt.rgba((173/255), (255/255), (47/255), 0.4)
|
|
readonly property color couleur_sable: Qt.rgba((205/255), (154/255), (124/255), 1.0)
|
|
readonly property color couleur_sable_transparent: Qt.rgba((205/255), (154/255), (124/255), 0.4)
|
|
readonly property color couleur_sable_tres_transparent: Qt.rgba((205/255), (154/255), (124/255), 0.2)
|
|
|
|
|
|
|
|
// Boutons :
|
|
readonly property int shipheart_rayon_bouton: 6
|
|
readonly property int shipheart_grand_rayon_bouton: 12
|
|
readonly property int shipheart_rayon_zoom: 20
|
|
|
|
readonly property int shipheart_mouse_press_and_hold_interval_tres_court: 5 // Utilisé comme léger filtrage
|
|
readonly property int shipheart_mouse_press_and_hold_interval_court: 250 // Utilisé comme léger filtrage
|
|
readonly property int shipheart_mouse_press_and_hold_interval_long: 1000 // Utilisé pour les commandes 'sensibles', comme la comm
|
|
readonly property int shipheart_mouse_press_and_hold_interval_tres_long: 2000 // Utilisé pour valider par appui maintenu sur un "bouton défilant"
|
|
|
|
// Mise en page :
|
|
readonly property double bandeau_bas_spacing: 0.004 // pourcentage de la largeur de page utilisé pour séparer les boutons dans le bandeau bas.
|
|
|
|
// Formulaires :
|
|
readonly property int shipheart_formulaire_ligne_separation_haute: 1
|
|
readonly property int shipheart_formulaire_ligne_separation_basse: 2
|
|
readonly property int shipheart_formulaire_ligne_separation_haute_basse: 3
|
|
|
|
readonly property int shipheart_formulaire_ligne_separation_force_faible: 1
|
|
readonly property int shipheart_formulaire_ligne_separation_force_moyenne: 2
|
|
readonly property int shipheart_formulaire_ligne_separation_force_elevee: 3
|
|
|
|
readonly property string shipheart_font_saisie_textarea: "Noto Mono" // "Sans Serif" [Default], "URW Gothic L", "Nimbus Mono L"
|
|
readonly property string shipheart_font_saisie_textfield: "Noto Mono"
|
|
|
|
readonly property color shipheart_formulaire_couleur_texte_par_defaut: couleur_blanc_casse
|
|
readonly property color shipheart_formulaire_couleur_texte_en_erreur: couleur_rouge
|
|
|
|
// Boutons validation boite de dialogue :
|
|
readonly property int shipheart_boite_dialogue_bouton_1: 1 // Souvent Ok
|
|
readonly property int shipheart_boite_dialogue_bouton_2: 2 // Souvent Annuler
|
|
readonly property int shipheart_boite_dialogue_bouton_3: 3 // Souvent Plus Tard ou Supprimer
|
|
readonly property int shipheart_boite_dialogue_bouton_4: 4 // Souvent Bouton Sécurisé
|
|
|
|
// Protection :
|
|
readonly property int protection_mode_access_parametres_avances: 1
|
|
readonly property int protection_mode_verrouillage: 2
|
|
readonly property int protection_mode_deverrouillage: 3
|
|
|
|
// Courbes :
|
|
readonly property color courbes_couleur_fond: couleur_bleu_koriolan_tres_transparent // Couleur intérieure des AreaSeries
|
|
readonly property color courbes_couleur_shades_fond: couleur_gris_tres_tres_fonce_tres_transparent // Couleur des bandes verticales du fond (celles qui ne sont pas purement transparentes).
|
|
readonly property int courbes_epaisseur_bordure: 4 // Epaisseur de la courbe elle-même
|
|
readonly property int courbe_etalonnage_max_points: 12 // Max nb de points d'étalonnage (utilisé dans'config_valeur_niveau.qml' pour les batteries et les réservoirs)
|
|
|
|
// Caractères spéciaux :
|
|
readonly property int unicode_fleche_droite: 0x2192 // Utilisation du type 'String.fromCharCode(unicode_fleche_droite)'
|
|
readonly property int unicode_fleche_demi_epaisse_continue_droite: 0x279E
|
|
readonly property int unicode_fleche_demi_epaisse_discontinue_droite: 0x279F
|
|
readonly property int unicode_fleche_epaisse_discontinue_droite: 0x27A0
|
|
readonly property int unicode_fleche_epaisse_continue_droite: 0x27A1
|
|
readonly property int unicode_omega: 0x2126 // Symbole des Ohms
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Batteries :
|
|
// Type d'entrées batteries :
|
|
readonly property int shipheart_batteries_type_entrees_volt: 3
|
|
readonly property int shipheart_batteries_type_entrees_predefinie: 5
|
|
readonly property int shipheart_batteries_type_entrees_ibs: 6
|
|
|
|
// Types de variables :
|
|
readonly property string shipheart_batterie_temperature: "Batt_temperature"
|
|
readonly property string shipheart_batterie_tension: "Batt_tension"
|
|
readonly property string shipheart_batterie_courant_differentiel: "Batt_courant_differentiel"
|
|
readonly property string shipheart_batterie_courant_charge: "Batt_courant_charge"
|
|
readonly property string shipheart_batterie_courant_decharge: "Batt_courant_decharge"
|
|
readonly property string shipheart_batterie_soh: "Batt_soh"
|
|
readonly property string shipheart_batterie_soc: "Batt_soc"
|
|
readonly property string shipheart_batterie_autonomie: "Batt_autonomie"
|
|
readonly property string shipheart_batterie_puissance: "Batt_puissance"
|
|
readonly property string shipheart_batterie_energie: "Batt_energie"
|
|
|
|
// Commande de batterie :
|
|
readonly property int shipheart_batteries_commande_reserve: 0
|
|
readonly property int shipheart_batteries_commande_forcage_pleine_charge: 1
|
|
readonly property int shipheart_batteries_commande_reset_soh: 2
|
|
readonly property int shipheart_batteries_commande_reset_compteurs: 3
|
|
|
|
// Type de batterie :
|
|
readonly property int shipheart_batteries_type_indefini: 0
|
|
readonly property int shipheart_batteries_type_plomb_acide_liquide: 1
|
|
readonly property int shipheart_batteries_type_plomb_agm_vrla: 2
|
|
readonly property int shipheart_batteries_type_plomb_gel: 3
|
|
readonly property int shipheart_batteries_type_plomb_carbone: 4
|
|
readonly property int shipheart_batteries_type_lihium: 10
|
|
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Capteurs :
|
|
readonly property int shipheart_capteur_max_nombre_entrees_aux: 4 // Vérifier cohérence avec MAX_NOMBRE_ENTREES_PAR_CAPTEUR dans 'capteurs.h' de l'Appli.
|
|
|
|
// Type d'entrées capteurs :
|
|
readonly property int shipheart_capteur_type_entrees_aux: 1
|
|
readonly property int shipheart_capteur_type_entrees_level_sensor: 2
|
|
readonly property int shipheart_capteur_type_entrees_volt: 3
|
|
readonly property int shipheart_capteur_type_entrees_ow: 4
|
|
readonly property int shipheart_capteur_type_entrees_predefinie: 5
|
|
readonly property int shipheart_capteur_type_entrees_ibs: 6
|
|
readonly property int shipheart_capteur_type_entrees_nmea: 7
|
|
readonly property int shipheart_capteur_type_entrees_can: 8
|
|
readonly property int shipheart_capteur_type_entrees_calculee_booleen: 20
|
|
readonly property int shipheart_capteur_type_entrees_calculee_numerique: 21
|
|
|
|
// Modes des capteurs :
|
|
readonly property int shipheart_capteur_mode_entrees_aux_normal: 0
|
|
readonly property int shipheart_capteur_mode_entrees_aux_inverse: 1
|
|
|
|
readonly property int shipheart_capteur_mode_entrees_level_sensor_non_defini: 0
|
|
readonly property int shipheart_capteur_mode_entrees_level_sensor_0_10v: 1
|
|
readonly property int shipheart_capteur_mode_entrees_level_sensor_500r: 2
|
|
readonly property int shipheart_capteur_mode_entrees_level_sensor_4_20ma: 3
|
|
readonly property int shipheart_capteur_mode_entrees_level_sensor_defaut_isolement_masse: 5
|
|
readonly property int shipheart_capteur_mode_entrees_level_sensor_defaut_isolement_v_plus: 6
|
|
readonly property int shipheart_capteur_mode_entrees_level_sensor_defaut_isolement_complet: 7
|
|
|
|
// Etat capteurs :
|
|
readonly property int shipheart_capteur_etat_normal: 0
|
|
readonly property int shipheart_capteur_etat_alerte: 1
|
|
readonly property int shipheart_capteur_etat_alarme: 2
|
|
|
|
// Capteurs prédéfinis :
|
|
readonly property int shipheart_capteur_predefini_aucun: 0
|
|
readonly property int shipheart_capteur_predefini_pat: 1
|
|
readonly property int shipheart_capteur_predefini_hum: 2
|
|
readonly property int shipheart_capteur_predefini_temp: 3
|
|
readonly property int shipheart_capteur_predefini_lat: 4
|
|
readonly property int shipheart_capteur_predefini_lon: 5
|
|
readonly property int shipheart_capteur_predefini_in_v: 6
|
|
readonly property int shipheart_capteur_predefini_in_i: 7
|
|
readonly property int shipheart_capteur_predefini_usb_i: 8
|
|
readonly property int shipheart_capteur_predefini_edm: 9
|
|
readonly property int shipheart_capteur_predefini_acc_xyz: 10
|
|
readonly property int shipheart_capteur_predefini_acc_x: 11
|
|
readonly property int shipheart_capteur_predefini_acc_y: 12
|
|
readonly property int shipheart_capteur_predefini_acc_z: 13
|
|
readonly property int shipheart_capteur_predefini_alt: 14
|
|
readonly property int shipheart_capteur_predefini_sog: 15
|
|
readonly property int shipheart_capteur_predefini_cog: 16
|
|
readonly property int shipheart_capteur_predefini_siv: 17
|
|
readonly property int shipheart_capteur_predefini_hpa: 18
|
|
readonly property int shipheart_capteur_predefini_vpa: 19
|
|
readonly property int shipheart_capteur_predefini_rsrp: 20
|
|
readonly property int shipheart_capteur_predefini_rssi: 21
|
|
readonly property int shipheart_capteur_predefini_sinr: 22
|
|
|
|
// Types de variables :
|
|
readonly property string shipheart_capteur_sans_unite: "Capt_sans_unite"
|
|
readonly property string shipheart_capteur_tension_v: "Capt_tension_v"
|
|
readonly property string shipheart_capteur_tension_mv: "Capt_tension_mv"
|
|
readonly property string shipheart_capteur_courant_a: "Capt_courant_a"
|
|
readonly property string shipheart_capteur_courant_ma: "Capt_courant_ma"
|
|
readonly property string shipheart_capteur_puissance_w: "Capt_puissance_w"
|
|
readonly property string shipheart_capteur_puissance_va: "Capt_puissance_va"
|
|
readonly property string shipheart_capteur_puissance_db: "Capt_puissance_db"
|
|
readonly property string shipheart_capteur_frequence: "Capt_frequence"
|
|
readonly property string shipheart_capteur_resistance: "Capt_resistance"
|
|
readonly property string shipheart_capteur_temperature: "Capt_temperature"
|
|
readonly property string shipheart_capteur_pression_atm: "Capt_pression_atm"
|
|
readonly property string shipheart_capteur_humidite: "Capt_humidite"
|
|
readonly property string shipheart_capteur_acceleration: "Capt_acceleration"
|
|
readonly property string shipheart_capteur_position: "Capt_position"
|
|
readonly property string shipheart_capteur_pourcentage: "Capt_pourcentage"
|
|
readonly property string shipheart_capteur_distance_m: "Capt_distance_m"
|
|
readonly property string shipheart_capteur_distance_km: "Capt_distance_km"
|
|
readonly property string shipheart_capteur_distance_nq: "Capt_distance_nq"
|
|
readonly property string shipheart_capteur_vitesse_kts: "Capt_vitesse_kts"
|
|
readonly property string shipheart_capteur_vitesse_kmh: "Capt_vitesse_kmh"
|
|
readonly property string shipheart_capteur_angle_degres: "Capt_angle_degres"
|
|
readonly property string shipheart_capteur_latitude: "Capt_latitude"
|
|
readonly property string shipheart_capteur_longitude: "Capt_longitude"
|
|
readonly property string shipheart_capteur_volume: "Capt_volume"
|
|
|
|
// Capteurs calculés :
|
|
readonly property int shipheart_max_nombre_conditions_par_capteur: 50 // Cf 'capteurs.h' dans l'appli
|
|
|
|
// Opération de condition :
|
|
readonly property int shipheart_operation_condition_non_definie: 0
|
|
readonly property int shipheart_operation_condition_ou: 1
|
|
readonly property int shipheart_operation_condition_et: 2
|
|
readonly property int shipheart_operation_condition_ou_exclusif: 3
|
|
readonly property int shipheart_operation_condition_plus: 10
|
|
readonly property int shipheart_operation_condition_moins: 11
|
|
readonly property int shipheart_operation_condition_multiplie: 12
|
|
readonly property int shipheart_operation_condition_divise: 13
|
|
|
|
// Type de condition :
|
|
readonly property int shipheart_type_condition_normale: 0
|
|
readonly property int shipheart_type_condition_debut_groupe_ou: shipheart_operation_condition_ou
|
|
readonly property int shipheart_type_condition_debut_groupe_et: shipheart_operation_condition_et
|
|
readonly property int shipheart_type_condition_debut_groupe_ou_exclusif: shipheart_operation_condition_ou_exclusif
|
|
readonly property int shipheart_type_condition_debut_groupe_plus: shipheart_operation_condition_plus
|
|
readonly property int shipheart_type_condition_debut_groupe_moins: shipheart_operation_condition_moins
|
|
readonly property int shipheart_type_condition_debut_groupe_multiplie: shipheart_operation_condition_multiplie
|
|
readonly property int shipheart_type_condition_debut_groupe_divise: shipheart_operation_condition_divise
|
|
// NB : il existe les même valeurs en négatif pour fermer le groupe correspondant.
|
|
|
|
// Tests :
|
|
readonly property int shipheart_test_non_defini: 0
|
|
readonly property int shipheart_test_strictement_inferieur: 1
|
|
readonly property int shipheart_test_inferieur_ou_egal: 2
|
|
readonly property int shipheart_test_egal: 3
|
|
readonly property int shipheart_test_superieur_ou_egal: 4
|
|
readonly property int shipheart_test_strictement_superieur: 5
|
|
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Circuits :
|
|
|
|
// Max :
|
|
readonly property int shipheart_max_circuits_par_module_shipbase: 3
|
|
readonly property int shipheart_max_circuits_par_module_sp812: 8
|
|
readonly property int shipheart_max_circuits_par_module_sp8dc: 8
|
|
readonly property int shipheart_max_circuits_par_module_sp8xx: 8 // Valeur commune aux SP812 et aux SP8DC
|
|
readonly property int shipheart_max_circuits_par_module_sp4ac: 4
|
|
|
|
readonly property double shipheart_max_courant_masses_sp8dc: 25.0 // En A (le max 'technique' est 25.5 car transféré en uint_8 vers les SP8DC
|
|
|
|
readonly property double shipheart_plancher_intensite_circuit_shipbase: 0.05 // En dessous de cette valeur, l'intensité ne sera pas affichée
|
|
readonly property double shipheart_plancher_intensite_circuit_sp8xx: 0.05 // En dessous de cette valeur, l'intensité ne sera pas affichée
|
|
readonly property double shipheart_plancher_intensite_circuit_sp4ac: 0.5 // En dessous de cette valeur, l'intensité ne sera pas affichée
|
|
|
|
// Mode commande des circuits :
|
|
readonly property int shipheart_mode_commande_circuit_tor: 0
|
|
readonly property int shipheart_mode_commande_circuit_soft_tor: 1
|
|
readonly property int shipheart_mode_commande_circuit_soft_variable: 2
|
|
|
|
// Etat des circuits :
|
|
readonly property int shipheart_etat_circuit_ok: 0
|
|
readonly property int shipheart_etat_circuit_limitation: 1
|
|
readonly property int shipheart_etat_circuit_protection: 2
|
|
readonly property int shipheart_etat_circuit_disjonte: 3
|
|
readonly property int shipheart_etat_circuit_cc_batterie: 4
|
|
readonly property int shipheart_etat_circuit_deleste: 5
|
|
readonly property int shipheart_etat_circuit_undervoltage: 6
|
|
readonly property int shipheart_etat_circuit_inversion_phase_neutre: 7
|
|
readonly property int shipheart_etat_circuit_absence_terre: 8
|
|
readonly property int shipheart_etat_circuit_absence_masse: 9
|
|
readonly property int shipheart_etat_circuit_inconnu: 99
|
|
|
|
// Types de variables :
|
|
readonly property string shipheart_circuit_consigne: "Circ_consigne"
|
|
readonly property string shipheart_circuit_tension: "Circ_tension"
|
|
readonly property string shipheart_circuit_courant: "Circ_courant"
|
|
readonly property string shipheart_circuit_frequence: "Circ_frequence"
|
|
readonly property string shipheart_circuit_puissance: "Circ_puissance"
|
|
readonly property string shipheart_circuit_energie: "Circ_energie"
|
|
readonly property string shipheart_circuit_tension_secteur: "Circ_tension_secteur"
|
|
|
|
|
|
//-----------------------------------------------------------------------------------
|
|
// Réservoirs :
|
|
readonly property int shipheart_reservoir_max_nombre_entrees_aux: 12
|
|
|
|
// Type d'entrées réservoir :
|
|
readonly property int shipheart_reservoir_type_entrees_aux: 1
|
|
readonly property int shipheart_reservoir_type_entrees_level_sensor: 2
|
|
|
|
// Mode entrées réservoir :
|
|
readonly property int shipheart_reservoir_mode_entrees_aux_normal: 0
|
|
readonly property int shipheart_reservoir_mode_entrees_aux_inverse: 1
|
|
|
|
readonly property int shipheart_reservoir_mode_entrees_level_sensor_0_10v: 1
|
|
readonly property int shipheart_reservoir_mode_entrees_level_sensor_500r: 2
|
|
readonly property int shipheart_reservoir_mode_entrees_level_sensor_4_20ma: 3
|
|
|
|
// Type_sonde réservoir :
|
|
readonly property int shipheart_reservoir_mode_entrees_level_sensor_500r_0_500r: 0
|
|
readonly property int shipheart_reservoir_mode_entrees_level_sensor_500r_0_190r: 1
|
|
readonly property int shipheart_reservoir_mode_entrees_level_sensor_500r_240_30r: 2
|
|
|
|
// Types de variables :
|
|
readonly property string shipheart_reservoir_niveau: "Res_niveau"
|
|
|
|
|
|
|
|
//===============================================================================================================================
|
|
// Propriétés dynamiques :
|
|
//===============================================================================================================================
|
|
property int shipheart_type_installation: shipheart_type_installation_shipbase
|
|
property var shipheart_specifique_client // Tableau mis à jour avec 'TB_Configuration.Specifique_client' dans 'main.qml' via l'appel à 'init_shipheart_specifique_client()' dans initialItem de StackView ci-dessous
|
|
property string shipheart_code_client: "" // Chaine contenant le code client 'TB_Configuration.Code_client'
|
|
|
|
// Thèmes d'affichage :
|
|
property string shipheart_fichier_image_accueil: "" // Fichier dans '/docs/image_accueil' à utiliser sur la page d'accueil (ou "" pour l'image par défaut)
|
|
property int shipheart_theme: 0 // N° du thème à utiliser. Mis à jour au démarrage à partir de TB_Configuration.Theme.
|
|
property string shipheart_theme_fichier_fond_ecran: "" // Le nom du fichier à utiliser comme fond d'écran
|
|
property string shipheart_theme_couleur_fond_ecran: couleur_noir // Le nom (cf plus haut) de la couleur à utiliser en fond d'écran (ne fonctionne que si 'shipheart_theme_fichier_fond_ecran' est vide)
|
|
property color shipheart_couleur_fond_bouton: couleur_gris_tres_fonce_transparent
|
|
property color shipheart_couleur_fond_bouton_actif: couleur_bleu_koriolan_transparent
|
|
property color shipheart_couleur_texte_titre_1: couleur_gris_fonce
|
|
property color shipheart_couleur_texte_titre_2: couleur_bleu_koriolan
|
|
property color shipheart_couleur_texte_titre_3: couleur_gris_pale
|
|
property color shipheart_couleur_fond_boite_dialogue_niveau_0: couleur_bleu_koriolan
|
|
property color shipheart_couleur_fond_boite_dialogue_niveau_1: couleur_orange
|
|
property color shipheart_couleur_fond_boite_dialogue_niveau_2: couleur_rouge
|
|
property color shipheart_couleur_texte_boite_dialogue_niveau_0: couleur_blanc_casse
|
|
property color shipheart_couleur_texte_boite_dialogue_niveau_1: couleur_blanc_casse
|
|
property color shipheart_couleur_texte_boite_dialogue_niveau_2: couleur_blanc_casse
|
|
property color shipheart_couleur_texte_slider: couleur_bleu_koriolan
|
|
property color shipheart_couleur_bordure_courbes: couleur_bleu_koriolan // Couleur de la courbe elle-même
|
|
|
|
|
|
|
|
property int shipheart_generation_shipbase: shipheart_generation_shipbase_inconnue
|
|
property int shipheart_defaut_config_k_bus: 0 // 0=normal, 1=défaut de config K-Bus vs modules réellement présents (mis à jour par Home en fonction du flag provenant de l'Appli)
|
|
property int shipheart_fuseau_horaire: 0 // UTC par défaut
|
|
property int shipheart_heure_ete: 0 // 0= hiver, 1= été
|
|
property int shipheart_langue: 0 // Français par défaut
|
|
property string shipheart_code_pays: "FR" // Français par défaut
|
|
property string shipheart_code_langue: "fr_FR" // Français par défaut
|
|
property int shipheart_unite_temperature: shipheart_unite_temperature_celsius // °C par défaut
|
|
property string shipheart_unite_temperature_symbole: "°C"
|
|
property int shipheart_unite_volume: shipheart_unite_volume_litres // Litres par défaut
|
|
property string shipheart_unite_volume_symbole: "l"
|
|
property int shipheart_time_out_economiseur: 0 // Image de TB_Configuration.Time_out_economiseur
|
|
property string shipheart_bips: "" // Image de TB_Configuration.Bips.
|
|
|
|
property double shipheart_latitude: 0
|
|
property double shipheart_longitude: 0
|
|
property string shipheart_heure_aube_nautique: "--:--"
|
|
property string shipheart_heure_lever_soleil: "--:--"
|
|
property string shipheart_heure_zenith: "--:--"
|
|
property string shipheart_heure_coucher_soleil: "--:--"
|
|
property string shipheart_heure_crepuscule_nautique: "--:--"
|
|
|
|
property string shipheart_fichier_a_valider: "";
|
|
property string shipheart_fichier_a_charger: "";
|
|
property int shipheart_nb_fichiers_a_charger: 0;
|
|
|
|
property int max_taille_code_pattern: 10 // Nb maxi de chiffres saisissable d'un code (attention : différent de Min_taille_code et Max_taille code de TB_Configuration). D'ailleurs, cette valeur est ajustée à Max_taille_code + 2 dans 'parametres.qml' et dans les pages spécifiques qui traitent la saisie de codes d'accès (ex : home_suncy.qml).
|
|
property int shipheart_compteur_economiseur: 30 // Valeur décrémentée chaque seconde et réarmée à chaque interaction d'un utilisateur (valeur mise à jour avec 'TB_Configuration.Time_out_economiseur' à chaque 'reload_economiseur()' dans 'Shipheart_page.qml')
|
|
property bool shipheart_flag_nettoyage_ecran_en_cours: false // Permet de passer l'info que le nettoyage est en cours (et, par exemple, bloquer l'économiseur d'écran)
|
|
property bool shipheart_flag_blocage_compteurs_pendant_config: false // Permet de bloquer le compteur pendant qu'on est en config
|
|
property int shipheart_compteur_time_out_niveau_acces: 0 // Contient le temps restant, en secondes, de la validité de l'accés en cours
|
|
property int shipheart_time_out_niveau_acces: 120
|
|
property int shipheart_niveau_acces_en_cours: shipheart_niveau_acces_aucun // 0=aucun accès valide, 1=accès user validé, 10=accès admin validé, 20=accès Koriolan validé
|
|
property int shipheart_message_users_max_nombre_reports: 3 // Valeur mise à jour avec 'TB_Configuration.Nb_maxi_reports_message_user' lors de l'init de 'home.qml'
|
|
property int shipheart_periode_obsolescence_capteur_nmea: 600 // En secondes
|
|
|
|
property int shipheart_niveau_home: 0 // Contient le niveau dans la StackView de la page 'home.qml' (dépend si des pages spécifique au client sont disposées avant). Permet de revenir directement à la page 'home.qml' depuis certaines pages
|
|
|
|
property double shipheart_test_vitesse_test_ecran: 1500
|
|
property int nombre_lignes_matrice_test: 8
|
|
property int nombre_colonnes_matrice_test: 10
|
|
|
|
property bool flag_economiseur_actif: false
|
|
|
|
// Dimensions (mises à jour dans 'home_attente.qml' selon la valeur de 'shipheart_type_installation' :
|
|
property int shipheart_largeur_page
|
|
property int shipheart_hauteur_page
|
|
property int shipheart_hauteur_bandeau_haut
|
|
property int shipheart_hauteur_titre_2
|
|
property int shipheart_hauteur_bandeau_bas
|
|
property int shipheart_hauteur_clavier
|
|
|
|
|
|
// Modèles :
|
|
property Bdd bdd : Bdd{}
|
|
property Systeme systeme : Systeme{}
|
|
property TbMesuresModel tbmesuresModel : TbMesuresModel{}
|
|
|
|
// Signals :
|
|
|
|
|
|
|
|
width: shipheart_largeur_page
|
|
height: shipheart_hauteur_page
|
|
color: shipheart_theme_couleur_fond_ecran
|
|
visible: true
|
|
property int duree_animation_pages: 400 // En ms
|
|
|
|
|
|
//===========================================================
|
|
// Connexion BDD :
|
|
// La connexion MySql a un time-out (par défaut de 8h apparemment). La page Home faisant des mises à jour chaque secondes, il n'y a
|
|
// aucun soucis de déclenchement.
|
|
// Par contre, les mises à jour de Home étant désactivées lorsqu'on navigue sur les pages de niveau inférieur, si on reste sur
|
|
// une telle page pendant plusieurs heures, le time-out se déclenche. Par exemple, si on reste sur une page de configuration
|
|
// pensant une nuit, il est probable qu'on se trouve dans ce cas...
|
|
// Dans ce cas, seul une réinit de l'appli QT permet de redémarrer puisque la connexion à la BDD est fait dans main.cpp.
|
|
// Plutôt que d'allonger le time-out (il ne semble pas possible de le mettre à infini), il est ajouté ce timer qui fait une requête
|
|
// toutes les heures, même lorsque Home n'est pas la page active.
|
|
//===========================================================
|
|
Timer {
|
|
id: timer_maintient_connexion_bdd
|
|
interval: 60 * 60 * 1000 // Toutes les heures = 60 minutes x 60 secondes x 1000ms
|
|
running: true
|
|
repeat: true
|
|
onTriggered: {
|
|
let req = 'SELECT Valeur FROM TB_Systeme WHERE Nom="Heart_beat" ';
|
|
let res = bdd.requete_unique(req);
|
|
console.log("Déclenchement du timer de maintient de la connexion avec la BDD")
|
|
}
|
|
}
|
|
|
|
|
|
//==============================================================
|
|
// Pile de pages :
|
|
//==============================================================
|
|
StackView {
|
|
id: stackView
|
|
width: root.width
|
|
height: root.height
|
|
Component.onCompleted: {
|
|
var result = stackView.push(Qt.resolvedUrl("qrc:/home_attente.qml")) // Cela permet d'avoir une page "propre" plutot qu'une page toute blanche en attendant que l'accès à la BDD soit possible et permette de déterminer la home page à charger.
|
|
// console.log("Résultat du push : " + result)
|
|
}
|
|
|
|
pushEnter: Transition { // Nouvelle page, lors d'un PUSH
|
|
PropertyAnimation {
|
|
property: "x"
|
|
from: shipheart_largeur_page // Part du bord droit...
|
|
to:0 // ... jusqu'au bord gauche (la page "entre" par la gauche)
|
|
duration: duree_animation_pages
|
|
easing.type: Easing.OutQuad;
|
|
}
|
|
}
|
|
pushExit: Transition { // Ancienne page, lors d'un PUSH
|
|
PropertyAnimation {
|
|
property: "x"
|
|
from: 0 // Part du bord gauche, là où elle était affichée...
|
|
to: -shipheart_largeur_page // ... et sort par la gauche, jusqu'à ce qu'elle disparaisse complètement à gauche.
|
|
duration: duree_animation_pages
|
|
easing.type: Easing.OutQuad;
|
|
}
|
|
}
|
|
popEnter: Transition { // Nouvelle page, lors d'un POP
|
|
PropertyAnimation {
|
|
property: "x"
|
|
from: -shipheart_largeur_page // Part de complètement hors du cadre, à gauche...
|
|
to: 0 // ... jusqu'à ce que son bord gauche soit aligné avec le bord gauche de l'écran.
|
|
duration: duree_animation_pages
|
|
easing.type: Easing.OutQuad;
|
|
}
|
|
}
|
|
popExit: Transition { // Ancienne page lors d'un POP.
|
|
PropertyAnimation {
|
|
property: "x"
|
|
from: 0 // Part du bord gauche...
|
|
to: shipheart_largeur_page // ... jusqu'au bord droit de l'écran (sort par la droite).
|
|
duration: duree_animation_pages
|
|
easing.type: Easing.OutQuad;
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//==============================================================
|
|
// Clavier :
|
|
//==============================================================
|
|
InputPanel {
|
|
id: clavier
|
|
z: 99
|
|
x: 0
|
|
y: root.height
|
|
width: root.width
|
|
|
|
states: State {
|
|
name: "visible"
|
|
when: clavier.active
|
|
PropertyChanges {
|
|
target: clavier
|
|
y: root.height - clavier.height
|
|
}
|
|
}
|
|
transitions: Transition {
|
|
from: ""
|
|
to: "visible"
|
|
reversible: true
|
|
ParallelAnimation {
|
|
NumberAnimation {
|
|
properties: "y"
|
|
duration: 250
|
|
easing.type: Easing.InOutQuad
|
|
}
|
|
}
|
|
}
|
|
Component.onCompleted: {
|
|
console.log("locales available: " + VirtualKeyboardSettings.availableLocales)
|
|
console.log("Locale before changing it: " + VirtualKeyboardSettings.locale)
|
|
VirtualKeyboardSettings.locale = "fr_FR";
|
|
console.log("Locale after changing it: " + VirtualKeyboardSettings.locale)
|
|
// VirtualKeyboardSettings.styleName = "retro"
|
|
|
|
// Les fichiers de layout spécifiques à Koriolan sont dans le répertoire /virtualkeyboard_layouts_koriolan et renseigné en ressource de qrc.
|
|
// La procédure a été trouvée ici : https://forum.qt.io/topic/93279/how-to-custom-qml-virtual-keyboard/2
|
|
|
|
// Note : les fichiers relatifs au clavier sont situés dans /home/koriolan/qt/raspi/qt-everywhere-src-5.12.5/qtvirtualkeyboard/src/virtualkeyboard
|
|
// En particulier, les fichiers de DEFAULT ou RETRO sont dans /home/koriolan/qt/raspi/qt-everywhere-src-5.12.5/qtvirtualkeyboard/src/virtualkeyboard/content/styles
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//---------------------------------------------------------------------------------------------------------------------------------------
|
|
// Les fonctions ci-dessous sont accessibles depuis n'importe quelle page (puisque appelée, directement ou indirectement par cell-ci).
|
|
//---------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
//=============================================================================================================
|
|
// Demande de synchro de la BDD
|
|
//=============================================================================================================
|
|
function synchro_bdd(type_synchro)
|
|
{
|
|
switch (type_synchro)
|
|
{
|
|
case shipheart_type_synchro_aucune:
|
|
break;
|
|
case shipheart_type_synchro_data:
|
|
bdd.requete_unique('UPDATE TB_Systeme SET Valeur=1 WHERE Nom="Synchro" ');
|
|
break;
|
|
case shipheart_type_synchro_config:
|
|
bdd.requete_unique('UPDATE TB_Systeme SET Valeur=2 WHERE Nom="Synchro" ');
|
|
break;
|
|
default:
|
|
console.log("/!\\ Le paramètre de synchro de BDD reçu n'est pas valide [" + type_synchro + "]")
|
|
break;
|
|
}
|
|
}
|
|
|
|
//=============================================================================================================
|
|
// Rebooter via l'Appli (permet un reboot "ordonné") :
|
|
//=============================================================================================================
|
|
function rebooter()
|
|
{
|
|
|
|
console.log("!!! Commande de REBOOT reçue !!!");
|
|
bdd.requete_unique('UPDATE TB_Systeme SET Valeur="Reboot" WHERE Nom="Demande_reboot" ');
|
|
|
|
stackView.pop(stackView.get(shipheart_niveau_home)); // Retour à la page 'home.qml' car on va reseter et il faut pouvoir afficher le message user
|
|
}
|
|
|
|
}
|