F4DTK 1.1
Jacques BOSSY (JKBSY@Wanadoo.fr)
Ajouts de fonctions dans la palette :
1) Double clic sur la barre de titre de la grande palette, et elle se réduit.
2) Un clic sur le mot "Structure" permet de déployer toutes les tables,
avec la touche majuscule, toutes les tables sont contractées.
3) Double clic sur la barre de titre de la moyenne palette, et elle se réduit.
la petite fenêtre devrait disparaitre à terme.
Ajouts de fonctionalités dans la ToolBox
1) Le thème Qry est créé. Il contient F4DTKQuery.
L'appel se fait par :
$MaChaineConvertie := F4DTBQry_fct_GenPhoné($MaChaineOrigine)
2) Le thème Str est créé.
La fonction F4DTBStr_fct_TextesÉgaux est créée. Elle renvoie le résultat
de la comparaison diacritique de deux textes.
3) Le thème DHr est créé.
La fonction F4DTBDHr_fct_SwatchBeats est créée. Elle renvoie l'heure donnée
(sinon l'heure courante) en @beats de Swatch.
4) La méthode F4DTBFen_do_Redimensionne gère le redimensionnement de la fenêtre
courante. Elle peut être appelée dans un bouton de redimensionnement.
Modifications
1) Interdiction de réduire la grande palette à une hauteur de 0 (voir négative)
2) Un clic simple sur "Méthodes préférées" suffit pour créer un nouveau groupe.
----------------------------------------------------------------------
F4DTK 1.0.3
Jacques BOSSY (JKBSY@Wanadoo.fr)
Création du premier embryon de F4DTB, la ToolBox de Free 4D Tool Kit.
- F4DTK_do_PopUp_EnTete
petite rectif pour bon fonctionnement de "copier titre fenêtre" et "copier date et heure".
- F4DTK_Init et F4DTK_Fin
seul le Super_Utilisateur déclanche F4DTK.
- Bouton "Enregistrer méthodes" de l'onglet"Méthodes préférées" dans le dialogue préférences
bug défini par Eric JUHEL corrigé.
- La table [Constants]
est renommée en [F4DTB_Dialogues]
- F4DTK_FenCentree
devient F4DTBFen_do_Centrée
- F4DTK_Init_Ressources
correction du bug qui ne repérait pas correctement le chemin du fichier F4DTK.RSR.
- F4DTKSec_Init_Chemin
devient F4DTKSec_Init. Elle est à appeler dans "Sur Ouverture"
- F4DTK_do_ChercherRemplacer
accepte 4 séparateurs de mots suplémentaires : < > ² ³. Demandé par Frère Dominique SAVIO MARIE.
Je recommande d'aller voir le contenu de :
- Compiler_F4DTBDDD et Compiler_F4DTBInt.
- F4DTBDDD_fct_CheminAccés et F4DTBDDD_Init.
Toutes les 4 sont très simples, leur contenu était existant.
Les dénominations ont été modifiées et les points d'appels aussi.
Les nouveautés (elles sont commentées au début de chaque méthode) :
- Fenêtres
F4DTBFen_do_PetiteOuvre{(message)}
F4DTBFen_do_PetiteMessage{(message)}
F4DTBFen_do_PetiteFerme{(nombre)}
- Interface
F4DTBInt_do_Dodo{ (NbSecondes { ;?heure? { ;NbProcess } } ) }
F4DTBInt_fct_SuperUtilisateur
- Messages
F4DTBMes_do_Confirmer(Question { ;RéponseDéfaut { ;TitreOui { ;TitreNon { ;TitreInterrompre } } } } )
F4DTBMes_do_Progression(Titre { ;Taux } )
- Numériques
F4DTBNum_fct_Littéral(Valeur { ;Unité } )
Sur Ouverture
doit appeler 4DFTB_Init AVANT d'appeler les F4DTK_Init, F4DTKSec_Init, ....
Liste des thèmes disponibles dans la ToolBox :
Fen : Fenêtres
Int : Interface
Mes : Messages
DDD : Documents et Dossiers sur Disques
Num : Numériques
----------------------------------------------------------------------
Note : Par **** on lira normaliser, simplifier, ... bref tout ce qui fait plaisir !
Créer un ensemble d'outils destinés à **** la programmation. Il s'agit bien de programme (de code). Je ne rejette pas F4DTK, bien au contraire. F4DTK est un ensemble d'outils destiné à **** la saisie des méthodes dans 4D. F4DTKSEC et F4DTKQuery sont plus destinés à **** le fonctionnement du programme. La ToolBox va se situer entre les deux : elle sera destinée à **** la rédaction, la lisibilité, la compréhension, l'optimisation, la portabilité, ... des programmes. Elle sera aussi un outil destiné à F4DTK, mais pas de façon exclusive. Elle contiendra des méthodes, des fonctions, des variables, des constantes.
LA METHODE
Plagier un système que l'on utilisait dans le passé les UNITS. (Pascal, C, Cobol, Fortran, et tous les autres)
Plus sérieusement :
Il est essentiel d'organiser les outils généraux en sous-ensembles ou en thèmes.
Pour donner des exemples :
* Thème Dossiers et documents sur disque
- Création d'une série de dossiers et sous-dossiers en une seule commande.
- Récupération du dossier parent d'un dossier ou d'un fichier.
(ex : début de F4DTK_Init_Ressources)
(ex : F4DTKSEC_Chemin_Acces)
les deux font sensiblement la même chose.
- Compression/Décompression de fichiers en multi-plateforme.
* Thème Plateforme
- Définition de la plateforme utilisée.
(ex : F4DTK_Init)
(ex : F4DTKSEC_INIT_CHEMIN)
les deux font sensiblement la même chose. (je me répète)
* Thème Numériques
- Traduction en littéral d'une valeur (récement abordé dans le Forum)
- Conversion des heures en Swatch Beat (pour ceux qui ont suivi Maurice)
* Thème Chaines
- Comparaison diacritique de chaines
etc
Tous ses thèmes, même s'ils sont différenciés dans leur dénomination, ne doivent faire partie que d'un seul pack (d'une seule librairie). La liste des thèmes est à définir.
ORGANISATION ET CONVENTIONS
Identiques en tous points des excellentes définitions de F4DTK. Pour une question de limitation de la longueur des noms, on pourrait employer F4DTB pour identifier la ToolBox de F4DTK et tout ce qui s'y rapporte. Tout ce qui se rapporte à un thème pourrait être préfixé de la façon suivante :
F4DTBxxx, où xxx seraient 3 caractères définissant le thème.
Exemples :
- F4DTBNum_fct_Littéral
- F4DTBNum_fct_LittéralCents
- F4DTBNum_Init_Littéral
COMPATIBILITÉ DE MISE À JOUR
Une définition précise des éléments externes nécessaires acompagnera toujours la librairie (un fichier "Lisez-moi").
Un historique sera tenu à jour à chaque évolution (un fichier "Historique").
La méthode F4DTB_Init sera la seule Init de F4DTB appelée dans "Sur ouverture", elle sera appelée avant F4DTK_Init et les autres.
Elle ne sera jamais appelée dans F4DTK ou F4DTKSEC ou F4DTKQuery ...
Elle devra être modifiée par des ajouts de nouvelles F4DTBxxx_Init_yyyyy, et ne devra contenir que cela.
HIERARCHIE
ATTENTION : F4DTK devient un enfant de F4DTB !
Que les fondateurs et auteurs de Free 4D Tool Kit se rassurent :
l'objectif n'est pas de "changer la galerie des ancêtres" (Pagnol) de F4DTK, mais de définir l'arborescence de l'ensemble :
- F4DTB ne doit jamais faire appel à F4DTK.
- F4DTK devra faire le plus souvent possible faire appel à F4DTB.
Pour représenter les choses différament :
Chaque niveau ne connait que les niveaux supérieurs.
EXEMPLE DE BASE
` Sur ouverture
` Créée le 2 Déc 1998 à 02:21 par JKBSY@Wanadoo.fr
F4DTB_Init
F4DTK_Init
4DDébut ` C'est la suite du début
` Méthode : F4DTB_Init
` Créée le 2 Déc 1998 à 02:08 par JKBSY@Wanadoo.fr
F4DTBNum_Init_Littéral
` Méthode : F4DTBNum_Init_Littéral
` Créée le 2 Déc 1998 à 02:23 par JKBSY@Wanadoo.fr
TABLEAU ALPHA(10;*F4DTBNum_ta10_NbEnLettres;25)
*F4DTBNum_ta10_NbEnLettres{0}:=""
*F4DTBNum_ta10_NbEnLettres{1}:="UN "
*F4DTBNum_ta10_NbEnLettres{2}:="DEUX "
...
*F4DTBNum_ta10_NbEnLettres{24}:="QUARANTE "
*F4DTBNum_ta10_NbEnLettres{25}:="CINQUANTE "
` Méthode : F4DTBNum_fct_Littéral
` Créée le 2 Déc 1998 à 02:25 par JKBSY@Wanadoo.fr
C_TEXTE($0) ` résultat
C_REEL($1) ` montant
C_ALPHA(4;$2) ` unité
...
C_TEXTE($Ch)
$Ch:=""
...
$0:=$Ch