Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Mon premier programme

Envoyé par : thx1138

Date : 13/10/2010 00:51

Bonjour,

Je vous présente ma première application XulRunner+SQLite... XuloContacts (son nom provisoire) dans sa version 0.3.

Comme vous le devinez, c'est une application qui permet de gérer un carnet d'adresses. Cette application me sert à découvrir toutes les possibilités du Xul et des XPCom avant de commencer des applications plus importantes.

Le soft permet d'ajouter, modifier supprimer et rechercher des contacts. Il est possible d'ajouter des données pour chaque fiche comme 2 adresses, des remarques, des images, d'y assigner des catégories....

La navigation d'une fiche à l'autre est possible via des flèches ds la barre d'outils ou la roulette de la souris.... il y à encore plusieurs choses que je vous laisse découvrir.

Merci au collaborateurs du forum (qui est de moins en moins sollicité ainsi qu'au site xulfr.org...)

Je regrette qu'il n'y ai pas plus de documentations sur les XPCom et toutes les possibilités du XUL car je trouve le langage vraiment très bien.

J'attends donc vos commentaires, vos remarques, vos propositions et vos critiques (pas trop) sur ce petit soft....

J'ai encore des idées pour les prochaines version de l'application qui sera disponible très prochainement.

La version fonctionne sur Windows et a été testé sur Ubuntu 10x sans problème. Sur Linux, les problèmes habituelle sont présent (Les images ds les menus n'apparaissent pas et les <fieldset> sont invisible. je n'ai pas de Mac alors je n'ai pas pu testé...

Sinon, tout est ok (génial de pouvoir passer d'une machine à une autre avec la bd intégré)

Lien du programme :

  • version livré avec XulRunner win32
  • version avec le dossier content uniquement

http://thx1138.be/dev/

Sous Ubuntu 10, il faut décompresser le fichier dans un dossier, ce rendre en mode console ou créer un lanceur avec la commande 'xulrunner application.ini'

Voilà, j'attends votre retour

# Re: Mon premier programme

Envoyé par : fredmj

Date : 29/11/2010 23:25

Salut THX1138,

Comme promis, un petit retour (rapide) sur ton code. Je n'ai pas eut le temps de l'essayer complètement car je ne travail pas sous environnement Windows (ou très peux), je n'ai pas xulrunner sous linux et j'avoue que j'avais la flemme de faire un .xpi du .jar. Enfin j'ai très peux de temps pour essayer les codes (les miens également). Je te conseil donc d'en faire un pour faciliter sons installation et son test. Autre remarque, propose également une archive .tar.gz ou .tar.bz2 plutôt que .rar pour ceux qui préfèrent voir le code. Enfin place tes fichiers de l'archive sous un répertoire, plutôt que directement à la racine. Cela évite de devoir recourir à un

for files in $(unrar -lb); do rm -rf $files [...]

pour enlever les fichiers. Je laisse ici cette petit ligne de shell pour ceux que cela intéresserait. Ce ne sont que des remarques d'ordre pratiques qui n'ont rien à voir avec ton code.

Quand à l'application elle-même, elle me semble plutôt réussie. Tes gabarits m'ont l'air assez harmonieux, mais attention je ne suis pas un spécialiste.

Pour ma part, j'éviterais les fichiers .gif et autres marques déposées type yahoo ou autre. Ta table sqlite 'tbl_adresses' me semble énorme et difficile à maintenir, j'essaierais de la scinder.

Enfin une question : Comment gères-tu la lecture/écriture des fichiers d'un client suivant qu'il se connecte sur une plate forme linux ou windows? J'ai vu par exemple qu'une de tes fonctions javascript 'fileDelete()' initialisait un fichier comme "/mozilla/tesfile.txt". Cela fonctionne-t-il sous windows?

Bon courage pour la suite.

# Re: Mon premier programme

Envoyé par : thx1138

Date : 30/11/2010 15:52

Merci de ton encouragement.

Mon application qui à la base était un simple carnet d'adresses pour tester les XPCom trouvés ici et là et faire un petit framework xul est entrain de devenir mon petit canif suisse. J'ai plein d'idées pour l’améliorer. Mais cela prend un temps fou pour tester et intégrer les XPCom au début...

C'est la première, fois que je met du code à disposition, alors je vais essayer de tenir compte de tes remarques. J'ai mis un .rar par pur facilité.

Je vais très prochainement mettre la version 0.5 en ligne qui comprends pas mal d'améliorations et de correctifs.

Enfin place tes fichiers de l'archive sous un répertoire, plutôt que directement à la racine.

Dans mon .rar, y'a un dossier principal qui comprend tous les fichiers du programme ?!

Ta table sqlite 'tbl_adresses' me semble énorme et difficile à maintenir, j'essaierais de la scinder.

Scinder la table n'est pas se compliquer la vie ? Perso, j'ai plus simple de cette manière que d'ajouter une table lié pour les détails mais bon, vais y réfléchir.

La fonction fileDelete() est un bout de code récupéré que je n'ai pas encore intégré. Il le serra très prochainement pour la gestion des images et documents.

Je pense que tu ne dois pas gérer le fait que tu sois sur un os ou l'autre. Le XPCom s’adaptera (pas sur...). Je reviendrai dessus si tu veux dès que j'y aurai passé une nuit...

http://thx1138.be/dev/

Merci.

# Re: Mon premier programme

Envoyé par : thefab

Date : 01/12/2010 03:43

Salut,

L'application ne démarre pas ! Il manque un dossier defaults/preferences avec dedans un js (le nom est égal, prefs.js par exemple) qui contient:

pref("toolkit.defaultChromeURI", "chrome://xulocontacts/content/index.xul");

Le dossier defaults se trouve au même niveau que le dossier chrome...

Fab

Edit: petite remarque, pour construire le chemin de la base de données tu fais un test pour connaître l'OS, il y a plus simple:

var pathChrome =  Cc["@mozilla.org/file/directory_service;1"]
 .getService(Ci.nsIProperties)
 .get("AChrom", Ci.nsIFile);

pathChrome.append("content");
pathChrome.append("datas");
pathChrome.append("datas.sqlite");

Comme ça c'est multi-plateformes ;-)

# Re: Mon premier programme

Envoyé par : thx1138

Date : 03/12/2010 02:48

Cool merci pour les infos.

j'ai mis en ligne la version 0.5 voici les changements importants :

  • Refonte, correction et nettoyage d'une grande partie du code
  • Nouveau système de navigation d'une fiche à l'autre (bon j'avoue j'ai pris l'idée à FileMaker pro)
  • Ajout d'un état d'impression des anniversaires
  • Ajout d'un système d'exportation (format csv) des informations principales
  • Ajout d'un système de suivis par fiche
  • Les images sont maintenant copier dans le répertoire datas (et peuvent donc être transporter avec le programme)

A partir de la prochaine version, vais essayer de mettre un système de mise à jour de la bd en place

Prochaine version si possible vers mars

http://thx1138.be/dev/

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.