Définir des couleurs personnalisées

Pour définir des couleurs personnalisées de l'environnement du client Windows, dans le répertoire de SIMAX créez un fichier : MonStyle.sss.

Si le fichier se nomme "SIMAX.sss", il est chargé automatiquement au lancement de SIMAX.

Sinon pour sélectionner le style à utiliser il faut utiliser le menu du bouton "Mise à jour du style" dans la barre d'outils "Style de SIMAX".

Le contenu de ce fichier est de la forme :

<Constante couleur>=<Valeur Couleur>

<Constante couleur>=<Valeur Couleur>

Où :

<Constante couleur> est une des constantes suivantes ou une constante personnalisée :

// Fond principal - PRINCIPAL_FOND

// Fond boite de dialogue - DIALOG_FOND

// Fond zone contexte vide - CONTEXTE_FOND

// Fond fenêtre - FENETRE_FOND

// Mode fiche - FICHE_FOND - FICHE_TEXTE

// Couleur texte erreur - ERREUR_TEXTE

// Couleur pour les sélections - SELECTION_FOND - SELECTION_TEXTE

// Couleur pour les survols - SURVOL_FOND - SURVOL_TEXTE

// Lien plus moins - PLUSMOINS_TEXTE

// Couleur champ de saisie - CHAMP_FOND_SAISIE - CHAMP_FOND_GRISE - CHAMP_CADRE_FOCUS - CHAMP_CADRE - CHAMP_TEXTE - CHAMP_INVISIBLE

// Bouton avec libelle - BOUTONLIB_FOND - BOUTONLIB_FOND_CLIC - BOUTONLIB_FOND_SURVOL - BOUTONLIB_FOND_GRISE - BOUTONLIB_CADRE - BOUTONLIB_TEXTE

// Bouton sans libellé (bouton carré) - BOUTON_FOND - BOUTON_FOND_CLIC - BOUTON_FOND_SURVOL - BOUTON_FOND_GRISE - BOUTON_CADRE

// Bouton supplémentaire (spin ...) - CHAMP_SUP_FOND - CHAMP_SUP_FOND_CLIC - CHAMP_SUP_FOND_SURVOL

// Liste de suggestion - SUGGESTION_FOND - SUGGESTION_CADRE - SUGGESTION_TEXTE

// Séparateur secondaire - SEPARATEURFICHE_FOND - SEPARATEURFICHE_TEXTE

// Onglet - ONGLET_CADRE - ONGLET_BTN_FOND - ONGLET_BTN_CADRE - VOLET_CADRE_INACTIF - VOLET_FOND_ACTIF - VOLET_FOND_INACTIF - VOLET_FOND_GRISE - VOLET_TEXTE_ACTIF - VOLET_TEXTE_GRISE - VOLET_TEXTE_INACTIF

// Table - TABLE_LIGNEPAIR_FOND - TABLE_LIGNEIMPAIR_FOND - TABLE_SELECTION_FOND - TABLE_CALCUL_LIGNEPAIR_FOND - TABLE_CALCUL_LIGNEIMPAIR_FOND - TABLE_GRILLE - TABLE_ENTETEH_FOND - TABLE_ENTETEH_TEXTE - TABLE_ENTETEV_FOND - TABLE_ENTETEV_TEXTE - TABLE_ENTETE_FOND - TABLE_ENTETE_CADRE

// Barre d'outils - BARREOUTIL_FOND - BARREOUTIL_FOND_SURVOL - BARREOUTIL_CADRE_SURVOL - BARREOUTIL_ACTION_TEXTE_CLIC - BARREOUTIL_ACTION_TEXTE

// Menu - MENU_CADRE - MENU_FOND - MENU_SEPARATEUR - MENU_TEXTE

// Chemin de navigation - CHEMINNAV_FOND - CHEMINNAV_TEXTE_ACTIF - CHEMINNAV_TEXTE

// Ascenseur - ASCENSEUR_CADRE - ASCENSEUR_CAGE_FOND - ASCENSEUR_BTN_FOND - ASCENSEUR_FOND

// Splitteur / Barre de séparation et redimensionnement - SPLITTER_FOND - SPLITTER_FOND_SURVOL

// Barre réduction (calcul et paramètre) - BARREREDUCTION_FOND - BARREREDUCTION_FOND_SURVOL

// Barre de titre - TITRE_FOND_PARAMETRAGE - TITRE_FOND_MESSAGERIE - TITRE_FOND_MESSAGE - TITRE_FOND - TITRE_TEXTE - TITRE_BOUTON_TEXTE - TITRE_BOUTON_FOND_SURVOL

// Barre avec boutons en bas des fenêtres - BARREBTNBAS_FOND_PARAMETRAGE - BARREBTNBAS_FOND_MESSAGERIE - BARREBTNBAS_FOND_MESSAGE - BARREBTNBAS_FOND - BARREBTNBAS_BOUTON_FOND_SURVOL - BARREBTNBAS_BOUTON_FOND - BARREBTNBAS_BOUTON_TEXTE

// Liste des actions en cours - LISTECONTEXTE_FOND - LISTECONTEXTE_BOUTON_FOND_SURVOL - LISTECONTEXTE_BOUTON_FOND_ACTIF - LISTECONTEXTE_BOUTON_FOND - LISTECONTEXTE_BOUTON_TEXTE_ACTIF - LISTECONTEXTE_BOUTON_TEXTE

// Titre pour les graphes - GRAPHE_TITRE_TEXTE - GRAPHE_TITRE_FOND

// Fenêtre message (conflit, compte rendu) - MESSAGE_FOND

Les constantes personnalisées sont définies comme les constantes SIMAX, elles permettent de réutiliser la même couleur dans la suite du fichier.

Dans l'exemple complet BASE sert de couleur de référence pour tout l'environnement. Il suffit de changer la valeur de cette constante pour changer tout le style.

est soit :

  • <Variation luminosité>

<Variation luminosité> est la variation de luminosité à appliquer a la couleur peut aller de "-100" a "+100". Le signe + ou - est obligatoire.

est soit :

  • une

  • une couleur de la forme "#RRVVBB"

  • une fonction.

Les fonctions disponibles :

  • rvb (ou rgb) : une couleur de la forme "rvb(, , )"

  • rvba (ou rgba) : une couleur avec transparence de la forme "rvba(, , , )"

  • Gris (ou Gray) : une couleur grise de la forme "Gris()"

  • Alpha : change la transparence de la couleur; Alpha(, ) ou Alpha(, )

  • DegradeV (ou GradiantV) : un dégradé de couleur Vertical; DegradeV( ou , ..., ou )

  • DegradeH (ou GradiantH) : un dégradé de couleur Horizontal

  • DegradeM (ou GradiantU) : un dégradé de couleur Montant (Up)

  • DegradeD (ou GradiantD) : un dégradé de couleur Descendant (Down)

Si plus de 2 couleurs dans le dégradé alors les changements de couleurs dans le dégradé se fait régulièrement sur une échelle de 0 à 100. Par exemple si 4 couleurs :

De 0 a 25 : Couleur1

De 25 a 50 : Couleur2

De 50 a 75 : Couleur3

De 75 a 100 : Couleur4

Pour changer la position du changement il faut précéder la couleur par ":". Par exemple DegradeV(Coul1, 75:Coul2, Coul3)

, , , : un entier entre 0 et 255

: un réel entre 0 et 1 ou un entier entre 0 et 100

Remarques :

Les majuscules, les minuscules et les accents ne sont pas significatif

Les espaces et tabulations ne sont pas significatifs.

Il ne doit y avoir qu'une constante affecté par ligne.

Par exemple :

FENETRE_FOND=rvb(255, 0, 0)
// La couleur rouge

MENU_FOND=FENETRE_FOND

// La constante MENU_FOND reprends la couleur FENETRE_FOND (rouge)

MENU_TEXTE=MENU_FOND-60

// Le texte du menu est = a la couleur de MENU_FOND mais 60% plus sombre

MENU_CADRE=Gris(127)

// Le cadre du menu est gris foncé

TITRE_FOND=DegradeV(FENETRE_FOND-50, FENETRE_FOND)

// Un dégradé vertical de rouge foncé a rouge

SURVOL_FOND=Alpha(FENETRE_FOND, 0.30)

// Le fond du survol est rouge opaque a 30%

MACOULEURVERTE=RVB(0, 255, 0)

// Constante perso verte

TITRE_FOND_MESSAGE=MACOULEURVERTE-30

// Vert plus foncé

Fichier de complet équivalent au look actuel :

BASE=RVB(39, 93, 167) // Bleu NOUT servant de base aux autres constantes

BASE_COMPLEMENT=RGB(227, 168, 0) // Orange comme couleur complémentaire au bleu

BASE_PARAMETRAGE=RVB(227, 168, 0) // Orange pour le paramétrage

BASE_MESSAGE=RVB(15, 181, 0) // Vert pour les messages

// Fond principal PRINCIPAL_FOND=DegradeD(BASE, BASE+70)

// Fond boite de dialogue DIALOG_FOND=DegradeD(BASE+40, BASE+70)

// Fond zone contexte vide CONTEXTE_FOND=DegradeH(BASE, BASE+70, BASE)

// Fond fenêtre FENETRE_FOND=BASE+90

// Mode fiche FICHE_FOND=Gris(248) FICHE_TEXTE=RVB(0, 0, 0)

// Couleur texte erreur ERREUR_TEXTE=RVB(255, 0, 0)

// Couleur pour les sélections SELECTION_FOND=BASE SELECTION_TEXTE=RVB(255, 255, 255)

// Couleur pour les survols SURVOL_FOND=Alpha(BASE, 0.30) SURVOL_TEXTE=RVB(255, 255, 255)

// Lien plus moins PLUSMOINS_TEXTE=BASE_PARAMETRAGE

// Couleur champ de saisie CHAMP_FOND_SAISIE=RVB(255, 255, 255) CHAMP_FOND_GRISE=Gris(224) CHAMP_CADRE_FOCUS=BASE-10 CHAMP_CADRE=Gris(128) CHAMP_TEXTE=RVB(0, 0, 0) CHAMP_INVISIBLE=RVB(0, 128, 0)

// Bouton avec libelle BOUTONLIB_FOND=BASE BOUTONLIB_FOND_CLIC=BOUTONLIB_FOND-10 BOUTONLIB_FOND_SURVOL=BOUTONLIB_FOND+20 BOUTONLIB_FOND_GRISE=Gris(192) BOUTONLIB_CADRE=BOUTON_CADRE BOUTONLIB_TEXTE=RVB(255, 255, 255)

// Bouton sans libelle BOUTON_FOND=DegradeV(Gris(236), Gris(222)) BOUTON_FOND_CLIC=BOUTON_FOND-10 BOUTON_FOND_SURVOL=BOUTON_FOND+30 BOUTON_FOND_GRISE=BOUTON_FOND BOUTON_CADRE=Gris(208)

// Bouton supplémentaire (spin ...) CHAMP_SUP_FOND=BOUTON_FOND CHAMP_SUP_FOND_CLIC=BOUTON_FOND_CLIC CHAMP_SUP_FOND_SURVOL=BOUTON_FOND_SURVOL

// Liste de suggestion SUGGESTION_FOND=BASE+70 SUGGESTION_CADRE=BASE+30 SUGGESTION_TEXTE=RVB(0, 0, 0)

// Séparateur secondaire SEPARATEURFICHE_FOND=DegradeV(FICHE_FOND, 30:BASE_COMPLEMENT+40, FICHE_FOND) SEPARATEURFICHE_TEXTE=BASE+10

// Onglet ONGLET_CADRE=BASE ONGLET_BTN_FOND=FENETRE_FOND ONGLET_BTN_CADRE=ONGLET_CADRE VOLET_CADRE_INACTIF=Gris(224) VOLET_FOND_ACTIF=FICHE_FOND VOLET_FOND_INACTIF=BASE+10 VOLET_FOND_GRISE=Gris(144) VOLET_TEXTE_ACTIF=FICHE_TEXTE VOLET_TEXTE_GRISE=Gris(176) VOLET_TEXTE_INACTIF=RVB(255, 255, 255)

// Table TABLE_LIGNEPAIR_FOND=RVB(255, 255, 255) TABLE_LIGNEIMPAIR_FOND=TABLE_LIGNEPAIR_FOND-10 TABLE_SELECTION_FOND=Alpha(BASE, 0.5) TABLE_CALCUL_LIGNEPAIR_FOND=TABLE_LIGNEPAIR_FOND-20 TABLE_CALCUL_LIGNEIMPAIR_FOND=TABLE_CALCUL_LIGNEPAIR_FOND TABLE_GRILLE=TABLE_LIGNEPAIR_FOND-40 TABLE_ENTETEH_FOND=DegradeV(BASE+50, 80:BASE, BASE) TABLE_ENTETEH_TEXTE=RVB(255, 255, 255) TABLE_ENTETEV_FOND=DegradeH(BASE+50, 80:BASE, BASE) TABLE_ENTETEV_TEXTE=TABLE_ENTETEH_TEXTE TABLE_ENTETE_FOND=FENETRE_FOND TABLE_ENTETE_CADRE=TABLE_LIGNEIMPAIR_FOND

// Barre d'outils BARREOUTIL_FOND=FENETRE_FOND BARREOUTIL_FOND_SURVOL=BARREOUTIL_FOND+5 BARREOUTIL_CADRE_SURVOL=BARREOUTIL_FOND-60 BARREOUTIL_ACTION_TEXTE_CLIC=RVB(255, 255, 255) BARREOUTIL_ACTION_TEXTE=BASE

// Menu MENU_CADRE=BASE+30 MENU_FOND=BASE+90 MENU_SEPARATEUR=BASE MENU_TEXTE=RVB(0, 0, 0)

// Chemin de navigation CHEMINNAV_FOND=BASE CHEMINNAV_TEXTE_ACTIF=RVB(255, 255, 255) CHEMINNAV_TEXTE=CHEMINNAV_FOND-50

// Ascenseur ASCENSEUR_CADRE=ASCENSEUR_FOND-100 ASCENSEUR_CAGE_FOND=ASCENSEUR_FOND-20 ASCENSEUR_BTN_FOND=ASCENSEUR_CAGE_FOND ASCENSEUR_FOND=Gris(224)

// Splitteur SPLITTER_FOND=BASE-30 SPLITTER_FOND_SURVOL=BASE+20

// Barre réduction (calcul et paramètre) BARREREDUCTION_FOND=BASE+50 BARREREDUCTION_FOND_SURVOL=BASE-10

// Barre de titre TITRE_FOND_PARAMETRAGE=DegradeV(BASE_PARAMETRAGE, BASE_PARAMETRAGE+70) TITRE_FOND_MESSAGERIE=DegradeV(BASE, BASE+70) TITRE_FOND_MESSAGE=DegradeV(BASE_MESSAGE, BASE_MESSAGE+70) TITRE_FOND=DegradeV(BASE, BASE+70) TITRE_TEXTE=RVB(255, 255, 255) TITRE_BOUTON_TEXTE=RVB(0, 0, 0) TITRE_BOUTON_FOND_SURVOL=RVBA(255, 255, 255, 0.30) // Plus clair au survol

// Barre avec boutons en bas des fenêtres BARREBTNBAS_FOND_PARAMETRAGE=DegradeV(BASE_PARAMETRAGE+70, BASE_PARAMETRAGE) BARREBTNBAS_FOND_MESSAGERIE=DegradeV(BASE+70, BASE) BARREBTNBAS_FOND_MESSAGE=DegradeV(BASE_MESSAGE+70, BASE_MESSAGE) BARREBTNBAS_FOND=DegradeV(BASE+70, BASE) BARREBTNBAS_BOUTON_FOND_SURVOL=RVBA(255, 255, 255, 0.30) // Plus clair au survol BARREBTNBAS_BOUTON_FOND=RVBA(255, 255, 255, 0.06) // Plus clair que la couleur de fond BARREBTNBAS_BOUTON_TEXTE=RVB(0, 0, 0)

// Liste des actions en cours LISTECONTEXTE_FOND=FENETRE_FOND LISTECONTEXTE_BOUTON_FOND_SURVOL=LISTECONTEXTE_BOUTON_FOND+20 LISTECONTEXTE_BOUTON_FOND_ACTIF=BASE+30 LISTECONTEXTE_BOUTON_FOND=BASE+70 LISTECONTEXTE_BOUTON_TEXTE_ACTIF=RVB(255, 255, 255) LISTECONTEXTE_BOUTON_TEXTE=Gris(48)

// Titre pour les graphes GRAPHE_TITRE_TEXTE=RVB(0, 0, 0) GRAPHE_TITRE_FOND=BASE_COMPLEMENT+40

// Fenêtre message (conflit, compte rendu) MESSAGE_FOND=BASE_MESSAGE+100

Mis à jour