Import initial du projet shipheart_cm5

This commit is contained in:
2026-08-13 09:19:38 +02:00
commit 53e47729fb
533 changed files with 127946 additions and 0 deletions
+171
View File
@@ -0,0 +1,171 @@
import QtQuick 2.12
import QtQuick.Controls 2.12
// Shipheart_page est un composant au sens QML. Il commence donc par une majuscule.
// Il peut être utilisé partout dans le projet.
Page {
id: page
background: Rectangle { // Attention : Background ne peut avoir qu'un seul élément [a priori, pas complètement sûr...] => on créé un Rectangle de plus haut niveau et on met ensuite dedans ce qu'on veut...
anchors.fill: parent
color: shipheart_theme_couleur_fond_ecran
Image {
anchors.fill: parent
fillMode: Image.Tile
// fillMode: Image.PreserveAspectCrop
source: shipheart_theme_fichier_fond_ecran
visible: (shipheart_theme_fichier_fond_ecran !== "")
}
}
//=================================================================================================
// Fonction : Shipheart_clic
// Cette fonction est normalement appelé à chaque appel d'un 'MouseArea.OnClick'
//=================================================================================================
function shipheart_clic()
{
emission_bip();
reload_economiseur();
}
//=====================================================================================
// Fonction : Vérifie si la configuration en cours nécessite l'émission d'un bip.
// Si oui, met à jour le champ correspondant dans la BDD et fait une demande
// de synchro pour que celle-ci soit prise en compte rapidmeent.
// Reçoit : Rien
// Retour : Rien
//=====================================================================================
function emission_bip()
{
if ((shipheart_bips !== "") && // Si shipheart_bips = "", il n'y a aucun bip à émettre...
(shipheart_type_installation === shipheart_type_installation_shipbase)) // SDIR 317 : ... et si on est sur ShipRS, on n'émet pas de bips
{
bdd.requete_unique("UPDATE TB_Systeme SET Valeur='" + shipheart_bips + "/0/0/0' WHERE Nom='New_bip'");
synchro_bdd(shipheart_type_synchro_data);
}
return;
}
//=================================================================================================
// Fonction : Réarmement économiseur
//=================================================================================================
function reload_economiseur()
{
var req, res;
/* // La valeur est relue à chaque fois dans la BDD pour être certain d'avoir la dernière valeur :
req = 'SELECT Valeur FROM TB_Configuration WHERE Nom LIKE "%Time_out_economiseur%" ';
res = bdd.requete_unique(req);
shipheart_compteur_economiseur = Number(res[0]);
*/
shipheart_compteur_economiseur = shipheart_time_out_economiseur;
}
//=================================================================================================
// Fonction : Demande de mise en veille (on ou off)
//=================================================================================================
function mise_en_veille(veille)
{
if (shipheart_type_installation !== shipheart_type_installation_shipbase) return; // SDIR #251
if (veille === 0) // On sort toujours du mode veille si c'est demandé
{
bdd.requete_unique('UPDATE TB_Systeme SET Valeur=' + veille + ' WHERE Nom="Veille"');
synchro_bdd(shipheart_type_synchro_data);
//console.log("Sortie de veille");
flag_economiseur_actif = false;
}
else
{
if ((veille === 1) && (get_validation_economiseur() === 1)) // On ne rentre en veille que si c'est demandé (le time-out a expiré ET l'économiseur est valide)
{
bdd.requete_unique('UPDATE TB_Systeme SET Valeur=' + veille + ' WHERE Nom="Veille"');
synchro_bdd(shipheart_type_synchro_data);
flag_economiseur_actif = true;
}
//else console.log("Demande d'activation de l'économiseur alors qu'il est dévalidé")
}
}
//=================================================================================================
// Fonction : Change l'état de la validation économiseur
//=================================================================================================
function changer_validation_economiseur()
{
var req, res;
var new_val;
req = 'SELECT Valeur FROM TB_Configuration WHERE Nom LIKE "%Validation_economiseur%" ';
res = bdd.requete_unique(req);
if (Number(res[0]) === 0) new_val = '1';
else new_val = '0';
bdd.requete_unique('UPDATE TB_Configuration SET Valeur=' + new_val + ' WHERE Nom LIKE "%Validation_economiseur%" ');
}
//=================================================================================================
// Fonction : Retourne l'état actuel de la validation de l'économiseur
//=================================================================================================
function get_validation_economiseur()
{
var req, res;
req = 'SELECT Valeur FROM TB_Configuration WHERE Nom LIKE "%Validation_economiseur%" ';
res = bdd.requete_unique(req);
return(Number(res[0]));
}
//=================================================================================================
// Fonction : Charge les paramètres du thème en cours
//=================================================================================================
function chargement_theme()
{
var req, res;
// Récupération du paramètre 'TB_Configuration.Theme'
req = 'SELECT Valeur FROM TB_Configuration WHERE Nom="Theme" ';
res = bdd.requete_unique(req);
// Vérifie que la n° de thème sélectionné est bien compatible avec les thèmes présents sur cette version (on peut imaginer qu'on en ait supprimé...) :
if (Number(res[0]) >= shipheart_config_themes.length)
{
shipheart_theme = 0; // Valeur par défaut
req = 'UPDATE TB_Configuration '; // Mise à jour dans la BDD pour les prochains démarrages
req += ' SET Valeur="' + shipheart_theme + '" ';
req += ' WHERE Nom="Theme" ';
//console.log("Requête = " + req)
bdd.requete_unique(req);
}
else shipheart_theme = Number(res[0]); // Cas normal
// Mise à jour des paramètres d'affcihage liés au thème choisit :
shipheart_theme_fichier_fond_ecran = shipheart_config_themes[shipheart_theme][shipheart_index_theme_fichier_fond_ecran];
shipheart_theme_couleur_fond_ecran = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_fond_ecran];
shipheart_couleur_fond_bouton_actif = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_fond_bouton_actif];
shipheart_couleur_texte_titre_1 = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_texte_titre_1];
shipheart_couleur_texte_titre_2 = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_texte_titre_2];
shipheart_couleur_texte_titre_3 = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_texte_titre_3];
shipheart_couleur_fond_boite_dialogue_niveau_0 = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_fond_boite_dialogue_niveau_0];
shipheart_couleur_fond_boite_dialogue_niveau_1 = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_fond_boite_dialogue_niveau_1];
shipheart_couleur_fond_boite_dialogue_niveau_2 = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_fond_boite_dialogue_niveau_2];
shipheart_couleur_texte_boite_dialogue_niveau_0 = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_texte_boite_dialogue_niveau_0];
shipheart_couleur_texte_boite_dialogue_niveau_1 = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_texte_boite_dialogue_niveau_1];
shipheart_couleur_texte_boite_dialogue_niveau_2 = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_texte_boite_dialogue_niveau_2];
shipheart_couleur_texte_slider = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_texte_slider];
shipheart_couleur_bordure_courbes = shipheart_config_themes[shipheart_theme][shipheart_index_theme_couleur_bordure_courbes];
//console.log("Thème d'affichage à utiliser = " + shipheart_theme + " [fichier = '" + shipheart_theme_fichier_fond_ecran + "' et couleur = '" + shipheart_theme_couleur_fond_ecran + "']");
}
}