|
Free 4D ToolKit
Free 4D ToolKit est une boîte à outils pour 4D et réalisés avec 4D.Le code source de cette boîte à outils est librement disponible et appartient au domaine publique suivant les termes de la licence GPL (GNU Public Licence). Tous les auteurs participant à ce projet s'engage à ne pas fournir de code provenant de tiers et soumis à copyright.Le code de base est issu de l'application qu'Anne Françoise Chacun a mis à la disposition de tousThibaud, nous a donné sa bénédiction ! ("Donc: no problemo !")Maurice s'est mis au travail et a rameuté la communauté 4D en criant bien fort sur 4D-Forum pour que tout le monde participe... ;-)
Mercredi, 3 juin 1998Le projet est lancé.
- Voici une première liste des suggestions qui ont été formulées :
- Nom de Baptême pour ce projet "Free 4D ToolKit" suggéré par Pierre-Jean COUDERT . Emanuel Archambault propose lui "4D Forum Synergie" . Enfin Bernard Fevat propose "Soul'Kit". Autoritairement j'opte pour "Soul'Kit":-) Mais la discussion reste ouverte...et les votations sont lancés, il vous suffit de cliquer sur le nom du projet de votre choix !
- Mention du type de Licence GNU pour s'assurer que personne ne s'appropriera à titre personnel le travail collectif d'amélioration du code de Base d'Anne Françoise.
- Une méthodologie générale de programmation serait nécessaire afin de parler un même langage.
- Maurice ce propose de centraliser et de coordonner ce projet.(ah ! l'erreur... ;-))
- Voici la 2ème version du projet après intégration des fonctionnalités 3 et 4 qu'Eric Juhel a implémenté :
- Version Mac
- Version Windows
- Attention le Mot de passe = 11, l'administrateur n'a pas de mot de passe
- Les nouvelles fonctions sont implémentés dans le menu "Démo/Lancer démo 2..."
Vendredi, 5 juin 1998
La machine s'emballe... Je croule sous les messages électroniques ! C'est un bon signe...Première constatation, tout le monde a des idées ! Bravo ! Je vais essayer de compiler les propositions.
Dimanche, 7 juin 1998
Résultat des votations sur le nom du projet de boîte à outils 4D:
Free 4D ToolKit est donc le nom retenu pour le projet. Afin de simplifier, la structure s'appellera "F4DTK".La liste des suggestions intègre les dernières idées et propositions sur une page séparée.Les différentes versions de F4DTK sont désormais inventoriés sur une page séparée.La version 1.02 intégrant l'internationalisation des mots clés et un mini gestionnaire de process, est disponible. Pour la télécharger...Frère Dominique Savio Marie est en train de nous préparer une fonction de "Rechercher - remplacer partout"... à suivre...
Mercredi, 10 juin 1998
Que le temps passe vite...Personne ne s'est décidé à me proposer une méthologie de programmation toute faite.Je dois donc m'y mettre afin d'éviter une certaine anarchie. Je tiens à remercier Alain Meunier et Pierre Jean COUDERT pour toutes leurs bonnes idées qui m'a permis de réfléchir et réaliser le projet d'organisation et de conventions que je vous propose aujourd'hui...Je vous convie donc sur cette nouvelle page qui va tenter de décrire une méthodologie de travail :Organisation de travail et méthodologie de programmation pour le projet F4DTK.Conformément au nouveau mode de travail, cette proposition devra être acceptée par au moins 10 membres et si il y a au moins un vote négatif commenté, une discussion sera de nouveau lancée afin d'obtenir un consensus et une nouvelle votation aura lieu...
Dimanche, 14 juin 1998
Problème avec mon Jazz qui vient de me lâcher :-( Tout le site F4DTK est perdu et le travail que j'avais commencé de faire aussi !Je recommence donc en rechargeant les pages existantes depuis le site.Les principales nouveautés concernent le document "Organisation et Conventions", suite aux perspicaces remarques de (Benoit Angibault), (Alain Meunier) et (Pierre Jean COUDERT)J'en profite pour simplifier la navigation sur le site suite aux remarques d'Hubert !
Mardi, 16 juin 1998
Le vote a été clôturé à 20h00Résultat des votes pour le texte : Modèle d'organisation et conventions de programmationpour 18 voix - 0 voix contreLe modèle d'organisation et les conventions de développement sont donc adoptés :-)Alea jacta est....Le rubicon franchi, l'étape suivante sera de mettre en conformité la dernière version recensée, c'est à dire la version 1.02.Benoit Angibault s'est déjà proposé pour ce travail d'adaptation...Aussitôt que les corrections seront intégrées, vous serez informés via 4D-Forum.En attendant, n'hésitez pas à me faire parvenir vos idées...Elles seront systématiquement référencées avec la date, votre nom et un URL sur votre adresse Email.. à l'adresse :
<http://www.ajar.ch/F4DTK/suggestions.html>
Mercredi, 17 juin 1998
La page des suggestions est transformée. C'est un tableau qui permet de mieux apprécier l'avancement des travaux...
Mardi, 23 juin 1998
Le site s'est enrichi d'une Mailing list dédié au projet F4DTK et d'un moteur de recherche sur les emails échangés sur cette mailing list.La version 1.02Sr1 : est publiée . Cette version est un première proposition de version officielle 1.02.
Mercredi, 24 juin 1998
Les conventions sont amendées :
- Ajout du préfixe fct_ dans les types de méthodes
- Description du principe de numérotation des versions
- Ajout de l'usage de la touche Shift en lieu et place de la touche Alt pour le projet F4DTK.
Alain a suggérer l'idée de créer un petit utilitaire 4D pour faciliter les traitements tel que l'importation des commandes avec leurs arguments pour permettre l'internationalisation de F4DTKLa version 1.0.2 tiendra compte de ces changements....
Dimanche, 28 juin 1998Le tableau des suggestions est mis à jour !
Lundi, 29 juin 1998
Mise à disposition de la version 1.02r4 réalisé par Alain Meunier... Il reste encore des choses à faire, mais quel progrès !!!
Mercredi, 8 juillet 1998
Mise à disposition de la version 1.02r5 par Alain Meunier...C'est principalement une correction des principaux problèmes relevés en version 1.02r4.Alain Meunier passe la main. Il faut trouver un volontaire pour reprendre le relais.
Jeudi, 16 juillet 1998
Frere Dominique Savio Marie vient de me faire parvenir la nouvelle version 1.02r6 incorporant la fonction de Rechercher/Remplacer...Reste à faire
- Aide
- Mémorisation des prefs sur le disque (dossier ACI)
- Mémorisation des commandes les plus utilisées (ou création d'un best off perso)
- Gestion du drag&drop
- Trouver un type de fenetre redimensionnable
- La vérification des conventions F4DTK n'est pas faite
Jeudi, 16 juillet 1998
Subject: [ANN] ExecuteIt v2.0
From: Keith Goebel <keith.g@clear.net.nz>
Date: Sun, 28 Jun 98 19:24:59 +1200
28 June 1998 Auckland, New Zealand.
For immediate release:
We are proud to announce the release of ExecuteIt v2.0.
ExecuteIt v2.0 is the 4D v6 version of the 4D code library that allows a
compiled application to Execute 4D code contained in a text file, or
entered directly into the Execute Editor.
"This is just wonderful" said Keith Goebel at today's press conference.
He was also heard to comment to a close personal friend, "I think this is
the most important add-on for 4D developers since 'All Records' was
included as a 4D command".
Sorry guys, the devil made me do it... ;-)
Suite a cette communication, j'ai pris contact avec Keith pour lui demander l'autorisation d'intégrer ExecuteIt v2.0 dans notre projet F4DTK. Voici sa réponse !
Maurice, greetings from wet and windy Auckland, New Zealand.
>We are a Team of French 4D Developper working on a project "Free 4D
>ToolKit"
>The idea is to provide Free Tools to the 4D Community
That sounds brilliant :-)))
>Could we integrate ExecuteIt in our project ?
Absolutely. Please give the authors credit for the appropriate parts.
Un GRAND Merci à Keith.Je vous met donc à disposition ExecuteIt v2.0 ( Mac 130 Ko - Windows 79 Ko)Il restera à adapter ExecuteIt v2.0 à nos conventions avec comme NOUVEAU SUFFIXE : F4DTKExeQui est volontaire ?
Lundi, 3 août 1998Michel Paris nous met à disposition une nouvelle librairie touchant à la sécurité que je lui ai demandé de baptiser F4DTKSecF4DTKSEC 2.0
Méthodes génériques compatibles 4D V6 Windows et 4D V6 Mac.
F4DTKSEC permet au développeur de copier rapidement sa Structure ou ses Données avant modification ( pour ceux qui n'aiment pas faire des sauvegardes :=))) dans un dossier de sécurité, au même niveau hiérarchique ou sur un autre volume.
Ces méthodes peuvent aussi être utilisées lors des mises à jour des nouvelles versions de la Structure chez les clients (en cas de malheur le client a toujours une copie de la Structure utilisée, de la Structure précédente et des données)
J'ai fait quelques mises à jours et en particulier, la page listant les différentes versions de F4DTK.
Lundi, 14 septembre 1998Michel Paris nous met à disposition une nouvelle révision de F4DTKSecF4DTKSEC 3.0
Méthodes génériques compatibles 4D V6 Windows et 4D V6 Mac.
ajout de 2 méthodes pour import export enregistrements de toutes les tables
Mardi, 30 septembre 1998
Marc Texier, nous met à disposition une libairie de recherche phonétique. J'ai baptisé ce module F4DTKQuery et il pourra certainement s'enrichir de beaucoup d'autres idées !Commentaires de l'auteur :
Elle contient 3 méthodes:
F4DTKQuery_GenPhoné (méthode d'appel générale)$mot-en-phonétique:=F4DTKQuery_genphoné($mot-courant) reçoit une chaine255 et retourne un chaine255
cette méthode appelle 2 autres: F4DTKQuery_genphonéloop (comme son nom l'indique) et F4DTKQuery_genphonéredoubl (qui fait un peu de nettoyage dans les lettres redoublées).
Par ailleurs je l'ai programmée pour une finalité bien précise (recherche sur des noms propres : nom de famille, nom de pays et de villes), si on veut s'en servir sur les mots courant d'un texte il faut revoir les assimilations de voyelles et de consonnes (d=t, f=v=w, etc...)Contibution très généreuse sur le même sujet par Christian Quest.voici le principe de recherche "floue" que j'avais mis au point il y a plusieurs années. Pour la petite histoire, ce système a été utilisé sur un serveur minitel, le 3615 LASE qui était à l'époque le Guide des Compact Disc (aussi distribué en librairie). Il a fait l'objet d'un crédit d'impôt en faveur de la recherche qui nous a vallu un contrôle fiscal et qui s'est suivi d'une prodécure au tribunal administratif qui n'est toujours pas terminée (on nous réclame 200kF :-((( ).Donc, voici le fruit de cette recherche...Le but de ce système est d'éliminer les fautes de frappes et les erreurs d'orthographe.J'avai tout d'abord mis en place un espion sur le serveur Minitel qui conservait les paramètres de recherche qui n'aboutissait à aucune fiche trouvée.Ensuite, j'ai analysé les erreurs de saisie ou d'orthographe les plus courantes.1ère constatation: une traduction phonétique exacte ne permet pas de rendre la recherche "floue", car elle est trop précise !
2ème constatation: beaucoup plus d'erreur sur les voyelles que les consonnes3ème constatation: beaucoup d'erreur sur les lettres doubles4ème constatation: des erreurs sur les F / PH, des QU K ou CPour rendre la recherche "floue", il faut éliminer de l'information pouvant être source d'erreur, donc:1) on élimine les voyelles, elles sont remplacées par des "*"2) on élimine toutes les lettres doubles3) on supprime les H sauf les CH (ou on ne laisse que le H)4) on remplace les QU et C par un K5) on remplace les PH par FVoilà ! Exemple: QUATRIEME DIMENSION -> K*TR*M* D*M*NS*NC'est loin d'être parfait, mais ça fonctionne plutôt bien.Cela peut évidemment être amélioré.Désolé, je n'ai pas de code 4D implémentant cette recherche floue car j'avais écrit cela en Basic Dragster, puis en Pascal pour en faire une externe 4D.Le truc c'est de conserver l'info exacte dans la fiche, et d'avoir un deuxième champ avec l'info "floue" et on fait des recherches directement sur les infos floues si on n'a rien trouvé avec l'info réelle.Reste à implémenter dans F4DTKQuery !
Jeudi, 29 octobre 1998
Christophe Doucet nous met à disposition gratuitement son fichier de données des communes françaises . Cliquez ici pour le télécharger
Ce fichier texte contient :
Code Insee (si connu)
Code Postal
Commune (en majuscule)
Nombre d'Habitants (si connu)
Coord X (si connu, a partir d'un fichier exemple de l'IGN pour tester)
Coord Y (si connu, a partir d'un fichier exemple de l'IGN pour tester)
Adresse de la Mairie (si connu)
Tel Mairie (si connu)
Fax Mairie (si connu)
Nom Insee (en minuscule avec accents)
Particularite (pref, sous pref, etc...)
Vendredi, 30 octobre 1998
La nouvelle version 1.02r74 vient d'être mise sur le serveur. On doit cette version à Frère Dominique Savio Marie .
Lundi, 30 novembre 1998
La nouvelle version 1.02r75 vient d'être mise sur le serveur. On doit cette version à Christophe Doucet.
Mardi, 8 décembre 1998
Beaucoup de nouveautés au menu du jour que nous devons à l'inépuisable Jacques Bossy , qui en quelques jours à fait un travail herculéen. Jugez-en plutôt :Tout d'abord, une nouvelle boîte à outils pour F4DTK .:
L'OBJECTIF
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énnomination, 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
Cette proposition ayant été faite sans opposition, Jacque a créé une nouvelle librairie : F4DTB 1.1 (ToolBox) et a fait l'adaptation nécessaire à F4DTK 1.1 et F4DTKSec 3.1.C'est pas tout.... Dans F4DTB, Jacques a intégré, plein de belles choses...Un grand bravo, pour l'énorme travail réalisé par Jacques Bossy (surtout pour la fonction Swatch beat ;-) )
Mercredi, 16 décembre 1998
Jacques Bossy vient de nous concocter une version 1.1.1 qui vaut son pesant d'or ! ! C'est très fort !Il reste à améliorer le comportement de la fonction rechercher/remplacer et pour ça je donne la main à à Frère Dominique Savio Marie .J'ai fait quelques modifications sur le site, suite à diverses remarques. En particulier, j'ai scindé la liste des suggestions en deux (implémentées et non implémentées). J'ai profité (eh eh eh ) pour rajouter quelques suggestions....
Dimanche, 3 janvier 1999
Mise à disposition de la version 1.2 réalisée par Jacques Bossy et Michel Paris et du nouveau manuel d'emploi de F4DTK rédigé par Patrick EMANUEL .Bravo à Jacques pour sa patience, l'immense travail de coordination et d'implémentation qu'il a fait et aussi à Patrick pour la réalisation de cette première version de la documentation de F4DTB et F4DTK :-)
Mercredi, 3 février 1999
Eric Rochant vient d'implémenter un analyseur de méthode permettant d'automisaer la déclaration des variables locales !
Micaël GERMANN nous a intégré la fonction de calcul de distance.Je publie le tout dans la nouvelle version Beta 1.3.1 , il reste à tester le tout...
Mardi, 9 février 1999
Alain meunier à la main. Il vient de nous faire parvenir une première release 1.3.2bPrincipale Nouveauté :- Nouveau dialogue des preférences :
- réorganisation plus rationnelle
- préférences de typage des locales
- respect de l'interface courante dans la capture d'aide
- nouvelle macro "_Typage" pour insérer les directives de compilation des locales
- Suppression du bouton "$" dans la petite palette et réorganisation des boutons sur les palettes- Méthode de typage des locales :
- Respect des directives de compilation présentent dans le code
- Paramétrage possible de la syntaxe des variables pour déduire le type si aucune directive n'est disponible
- Balise paramétrable d'insertion des directives de compilation
- Respect du code déjà inséré dans le zone de directive de compilation (pour ne pas perdre d'éventuels commentaires
- (presque) prêt pour une version US
- Les palettes sont actives uniqement lorsque une fenêtre de méthode est au premier plan
Mardi, 16 Mars 1999La première Beta 1.4 est dispo. Pour la télécharger, cliquez ici...
Dimanche, 21 Mars 1999
La deuxième Beta 1.4 est dispo. La démo a été remanié. J'ai corrigé les problèmes avec l'exemple de confirmation et de progression. D'autres petites corrections d'interface ont été apporté à la démo "Générique Chercher". J'ai un petit problème avec la version Windows. Le fichier des pref qui est sauvé sous windows ne doit pas être très propre et chaque fois que je quitte F4DTK et que je relance, 4D se plante... Il faut donc détruire le fichier à chaque fois :-( Faut que je trouve le pourquoi du comment parce que je n'ai pas se problème sous MacOS !
Pour la télécharger, cliquez ici...
Lundi, 22 Mars 1999
La beta 3 est disponible. Michel Paris a fait les corrections pour la version Windows. Tout marche ai poil à présent...Pour la télécharger, cliquez ici...
Mercredi, 30 Mars 1999
La beta 4 est disponible.Pour la télécharger, cliquez ici...
Dimanche, 4 Avril 1999
La beta 5 est disponible. Ajout des coordonnées des principales villes du monde (Calcul de distance) et correction du bug de contrôle de version sous WindowsPour la télécharger, cliquez ici...
Mercredi 5 Mai 1999
La beta 7 est disponible. Il y a pas mal de nouveautés : Procédure de cryptage, Versioning, Démo remaniée. Michel Paris à fait un peu d'ordre pour rendre le tout compilable. Bref à tester sans attendre...Michel Paris rend la main. J'attends une bonne âme pour finir les démos, remanier la documentation afin de finaliser cette version 1.4.Après on pourra s'attaquer à l'adaptation 4D v6.5... Mais rien ne presse...Pour la télécharger, cliquez ici...
Depuis cette date le projet est entré en léthargie, largement par ma faute. Mais il ne demande qu'à être relancé par une bonne âme prêt à reprendre le flambeau.... Si vous êtes cette bonne âme, veuillez me contacter : Maurice Inzirillo
date de modification - 9/6/02MI
|