Merci a vous d'avoir tenter de regler mon pb , mais j'ai toujours le meme pb sachant que j'utilise cette couleur d'ecriture je pensse que sa complque la chose , merci d'avance :
dialog couleur {
title "Configuration Couleur"
size -1 -1 186 61
option dbu
box "Configuration", 10, 5 2 103 37
text "1ère couleur :", 50, 10 12 44 8
combo 1, 61 10 41 36, size drop
text "2ème couleur :", 60, 10 25 44 8
combo 2, 61 23 41 36, size drop
button "OK", 30, 5 43 37 12, default ok
button "Annuler", 40, 52 43 37 12, cancel
box "Options", 20, 111 2 70 37
check "Gras", 3, 116 10 50 10
check "1ère lettre majuscule", 4, 116 18 62 10
check "Alterner", 5, 116 25 50 10
button "Enlever tout", 80, 114 42 56 9
}
on *:dialog:couleur:init:*:{
did -a couleur 1,2 Blanc
did -a couleur 1,2 Noir
did -a couleur 1,2 Bleu
did -a couleur 1,2 Vert
did -a couleur 1,2 Rouge Clair
did -a couleur 1,2 Brun
did -a couleur 1,2 Mauve
did -a couleur 1,2 Orange
did -a couleur 1,2 Jaune
did -a couleur 1,2 Vert Clair
did -a couleur 1,2 Cyan
did -a couleur 1,2 Cyan Clair
did -a couleur 1,2 Bleu Clair
did -a couleur 1,2 Rose
did -a couleur 1,2 Gris
did -a couleur 1,2 Gris Clair
did -c couleur 1 $calc(%fcolor + 1)
did -c couleur 2 $calc(%scolor + 1)
if ( %gras == 1 ) did -c couleur 3
if ( %maj == 1 ) did -c couleur 4
if ( %altern == 1 ) did -c couleur 5
}
on *:dialog:couleur:sclick:30:{
if ( $calc($did(1).sel - 1) < 10 ) { set %fcolor 0 $+ $calc($did(1).sel - 1) }
else { set %fcolor $calc($did(1).sel - 1) }
if ( $calc($did(2).sel - 1) < 10 ) { set %scolor 0 $+ $calc($did(2).sel - 1) }
else { set %scolor $calc($did(2).sel - 1) }
set %gras $did(3).state
set %altern $did(5).state
set %maj $did(4).state
}
on *:dialog:couleur:sclick:80:{
set %fcolor 01
set %scolor 01
set %gras 0
set %maj 0
set %altern 0
dialog -x couleur
}
on *:load:{ dialog -m couleur couleur }
alias couleur { dialog -m couleur couleur }
on *:input:#:{
if (( %altern == 1 ) && ( $left($1,1) != ! ) && ( $left($1,1) != / )) {
if ( $1 ison $active ) {
var %i 1
var %couleur %scolor
while ( %i <= $len($2-) ) {
var %t = $mid($2-, %i , 1 )
if ( %couleur == 3; $+ %fcolor ) { %couleur = 3; $+ %scolor }
else { %couleur = 3; $+ %fcolor }
var %message = %message $+ %couleur $+ %t $+ 3;
inc %i
}
}
else {
var %i 1
var %couleur %scolor
while ( %i <= $len($1-) ) {
var %t = $mid($1-, %i , 1 )
if ( %couleur == 3; $+ %fcolor ) { %couleur = 3; $+ %scolor }
else { %couleur = 3; $+ %fcolor }
if ( %t == $chr(32) ) {
if ( %couleur == 3; $+ %fcolor ) { %couleur = 3; $+ %scolor }
else { %couleur = 3; $+ %fcolor }
}
var %message = %message $+ %couleur $+ %t $+ 3;
inc %i
}
}
say $iif( $1 ison $active , 2;3;41F; $+ $1 $+ 1F;F;2; ) $iif( %gras == 1, 2; ) $+ $iif( %maj == 1, $upper( $left(%message,4) ), $left(%message, $iif( %fcolor < 10, 5, 4 )) ) $+ $right(%message, $iif( %fcolor < 10, -5, -4 ))
halt
}
if (( %maj == 0 ) && ( %gras == 0 ) && ( %fcolor == 01 ) && ( %scolor == 01 )) goto fin
if (( $left($1-,1) == / ) || ( $left($1-,1) == . ) || ( $left($1-,1) == ! )) goto fin
var %first.letter.text $left($1,1)
var %rest.of.text $right($1-,-1)
if (( $1 ison $active ) && ( $2 != $null )) { var %first.letter.text $left($2,1) | var %rest.of.text $right($2-,-1) | /say 3;11F; $+ $1 $+ 1F;2; $iif( %gras == 1, 2; ) $+ 3; $+ %fcolor $+ $iif( %maj == 1, $upper(%first.letter.text), %first.letter.text) $+ 3; $+ %scolor $+ %rest.of.text | halt }
say $iif( %gras == 1, 2; ) $+ 3; $+ %fcolor $+ $iif( %maj == 1, $upper(%first.letter.text), %first.letter.text) $+ 3; $+ %scolor $+ %rest.of.text
halt
:fin
}
on *:input:?:{
if (( %altern == 1 ) && ( $left($1,1) != ! ) && ( $left($1,1) != / )) {
var %i 1
var %couleur %scolor
while ( %i <= $len($1-) ) {
var %t = $mid($1-, %i , 1 )
if ( %couleur == 3; $+ %fcolor ) { %couleur = 3; $+ %scolor }
else { %couleur = 3; $+ %fcolor }
if ( %t == $chr(32) ) {
if ( %couleur == 3; $+ %fcolor ) { %couleur = 3; $+ %scolor }
else { %couleur = 3; $+ %fcolor }
}
var %message = %message $+ %couleur $+ %t $+ 3;
inc %i
}
say $iif( %gras == 1, 2; ) $+ $iif( %maj == 1, $upper( $left(%message,4) ), $left(%message, $iif( %fcolor < 10, 5, 4 )) ) $+ $right(%message, $iif( %fcolor < 10, -5, -4 ))
halt
}
if (( %maj == 0 ) && ( %gras == 0 ) && ( %fcolor == 01 ) && ( %scolor == 01 )) goto fin
if (( $left($1-,1) == / ) || ( $left($1-,1) == ! )) goto fin
var %first.letter.text $left($1,1)
var %rest.of.text $right($1-,-1)
say $iif( %gras == 1, 2; ) $+ 3; $+ %fcolor $+ $iif( %maj == 1, $upper(%first.letter.text), %first.letter.text) $+ 3; $+ %scolor $+ %rest.of.text
halt
:fin
}