Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
abuledu:developpeur:logiciels_du_terrier_en_tcl-tk [2008/12/14 03:40] http://abuledu.org/openid/erics |
abuledu:developpeur:logiciels_du_terrier_en_tcl-tk [2016/01/21 12:00] (Version actuelle) erics |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag> | ||
====== Spécification de développement, | ====== Spécification de développement, | ||
Ligne 8: | Ligne 9: | ||
* Révision v0.3 14 juillet 2002 | * Révision v0.3 14 juillet 2002 | ||
* v8.11 22 novembre 2008 | * v8.11 22 novembre 2008 | ||
- | * v8.12 14 décembre 2008 - ajout de la section " | + | * v8.12 14 décembre 2008 - ajout de la section "son" et de la section "pavé numérique sous linux" |
//Ce document essaye de préciser les contraintes que nous souhaitons respecter lors de l' | //Ce document essaye de préciser les contraintes que nous souhaitons respecter lors de l' | ||
Ligne 18: | Ligne 19: | ||
Il s'agit de respecter quelques règles simples qui, dans le passé, ont permis une relecture aisée du code produit. | Il s'agit de respecter quelques règles simples qui, dans le passé, ont permis une relecture aisée du code produit. | ||
- | Car une application | + | Car une application |
Mais elle meurt si elle est illisible. | Mais elle meurt si elle est illisible. | ||
Ligne 34: | Ligne 35: | ||
Commentons sans excès, mais commentons, les parties difficiles à comprendre. | Commentons sans excès, mais commentons, les parties difficiles à comprendre. | ||
- | Evitons | + | Évitons |
* faux | * faux | ||
Ligne 109: | Ligne 110: | ||
ou des identifieurs définis par l' | ou des identifieurs définis par l' | ||
- | Le choix des identifieurs définis par l' | + | Le choix des identifieurs définis par l' |
< | < | ||
Ligne 121: | Ligne 122: | ||
</ | </ | ||
- | est sûrement | + | est surement |
===== 4. Littéral et constante ===== | ===== 4. Littéral et constante ===== | ||
Ligne 156: | Ligne 157: | ||
Les indications concernant les constantes s' | Les indications concernant les constantes s' | ||
- | Evitons | + | Évitons |
< | < | ||
Ligne 267: | Ligne 268: | ||
.menu add cascade -label [mc "À propos" | .menu add cascade -label [mc "À propos" | ||
</ | </ | ||
+ | |||
Exception : si le message doit contenir une variable, par exemple $var, le message doit être composé d'un seul mot suivi ou précédé de la variable. | Exception : si le message doit contenir une variable, par exemple $var, le message doit être composé d'un seul mot suivi ou précédé de la variable. | ||
Ligne 276: | Ligne 278: | ||
</ | </ | ||
- | Autre exception : le message contient plusieurs variables séparées par des mots à traduire. Dans ce cas, l' | + | Autre exception : le message contient plusieurs variables séparées par des mots à traduire. Dans ce cas, l' |
< | < | ||
append titre "ALLER - " [mc " | append titre "ALLER - " [mc " | ||
Ligne 423: | Ligne 425: | ||
</ | </ | ||
- | ===== 11. A faire ===== | ||
+ | ===== 11. Utiliser le pavé numérique sous Linux ===== | ||
+ | |||
+ | Cette section a été ajoutée le 14 décembre 2008 et se propose de fournir une solution pour la gestion du pavé numérique lorsqu' | ||
+ | |||
+ | < | ||
+ | proc changenum {c key} { | ||
+ | global curcol currow | ||
+ | focus -force .frame.c | ||
+ | | ||
+ | $c itemconf textcol[expr \$curcol]row[expr \$currow] -text $key | ||
+ | switch $key { | ||
+ | BackSpace - Delete {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text .} | ||
+ | 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text $key} | ||
+ | #le pavé numérique sous linux retourne les codes suivants au lieu | ||
+ | #de retourner directement les chiffres ... | ||
+ | KP_Insert {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text " | ||
+ | KP_End {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text " | ||
+ | KP_Down {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text " | ||
+ | KP_Next {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text " | ||
+ | KP_Left {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text " | ||
+ | KP_Begin {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text " | ||
+ | KP_Right {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text " | ||
+ | KP_Home {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text " | ||
+ | KP_Up {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text " | ||
+ | KP_Prior {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text " | ||
+ | KP_Delete {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text ,} | ||
+ | comma {$c itemconf textcol[expr \$curcol]row[expr \$currow] -text ,} | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ===== 12. À faire ===== | ||
* répertoire de sauvegarde des traces-élèves (utilisation d'une variable d' | * répertoire de sauvegarde des traces-élèves (utilisation d'une variable d' | ||
* format de la trace-élève (a priori en XML) ; les champs sont à définir | * format de la trace-élève (a priori en XML) ; les champs sont à définir | ||
- | * language | + | * langage |
Si nous choisissons python+Qt, un bon outil de développement serait Qt-designer | Si nous choisissons python+Qt, un bon outil de développement serait Qt-designer | ||
- | Utiliser la forge : gforge.ryxeo.com | + | Utiliser la forge du Terrier |