Envoyé par : pitivier
Date : 22/04/2006 13:54
Bonjour à tous,
Je développe une application de test avec xulrunner. Je voudrais utiliser l'objet PrefWindow, mais jusqu'ici je n'y arrive pas.
Lorsque j'ouvre la prefwindow, elle s'affiche mais aucun composant n'est visible, et la console affiche l'erreur suivante :
Error: uncaught exception: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIPrefBranch.getBoolPref]" nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)" location: "JS frame :: chrome://global/content/bindings/preferences.xml :: get__shouldAnimate :: line 689" data: no]
J'ai repris le code de ma prefwindow
sur xulplanet :
<prefwindow xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" title="Mes options"> <prefpane id="saveoptions" label="Backups"> <preferences> <preference id="pref-backup" name="demo.mybackups" type="bool"/> <preference id="pref-backupduration" name="demo.mybackups.duration" type="int"/> </preferences> <checkbox label="Automatically Save Backups" preference="pref-backup"/> <textbox label="Duration:" preference="pref-backupduration"/> </prefpane> </prefwindow>
Je ne comprend pas ce qui ne va pas, je n'ai rien trouvé sur MDC. Si quelqu'un a une solution...
Merci d'avance
Envoyé par : souqueta
Date : 23/04/2006 03:00
Bonjour,
J'ai le même problème de mon côté. Une "solution" consiste à l'ouvrir via openDialog mais je n'ai pas trouvé d'autres alternatives.
Envoyé par : pitivier
Date : 23/04/2006 13:35
Bonjour et merci de ta réponse.
J'ouvre également ma fenêtre avec la commande :
openDialog("pref.xul","myprefwindow","chrome");
Mais moi ça ne change rien.
Envoyé par : Utilisateur anonyme
Date : 23/04/2006 15:06
deja il faudrait que tu mettes en place la preference indiquee a la ligne de l"erreur
Envoyé par : pitivier
Date : 23/04/2006 18:39
deja il faudrait que tu mettes en place la preference indiquee a la ligne de l'erreur
Dans mon fichier de préférences j'ai mis les lignes suivantes :
pref("toolkit.defaultChromeURI", "chrome://demo/content/demo.xul"); pref("demo.mybackups.duration", 4); pref("demo.mybackups", true);
Je pensais que c'était là où on définissait les préférences, mais je me suis peut-être planté, ou il manque encore quelque chose.
Si tu pouvais me dire ce qui ne va pas.
Merci d'avance.
Envoyé par : souqueta
Date : 24/04/2006 16:23
J'ai les mêmes lignes mis à part que je place les composants dans une vbox. Je lance toujours via openDialog.
<vbox> <checkbox label="Automatically Save Backups" preference="pref-backup"/> <textbox label="Duration:" preference="pref-backupduration"/> </vbox> </prefpane>
Les données de tes préférences que tu cites ci dessus n'interviennent pas dans l'affichage des tes composants.
Envoyé par : guyzmo
Date : 24/04/2006 22:56
En regardant a la ligne 689 du fichier chrome://global/content/bindings/preferences.xm, on voit le code suivant:
return psvc.getBoolPref("browser.preferences.animateFadeIn");
On voit donc trivialement, qu'il faut definir la preference browser.preferences.animateFadeIn.
un petit about:config montre que cette preference est un bbouleen a false par defaut (du moins sous linux)
Je viens de la mettre a true et ca fait un petit fondu sympatique lorsqu'on change d'option. je me demande bien pourquoi cette option est desactivee par defaut alors que des gens se sont casses le cul a coder l'effet ...
Donc je pense que tu as oublie la pref browser.preferences.animateFadeIn. Il est possible qu'il faille en mettre d'autre.
Envoyé par : pitivier
Date : 25/04/2006 09:24
Bien vu guyzmo,
En effet, j'ai renseigné deux pref à true :
browser.preferences.animateFadeIn browser.preferences.instantApply
Et là, plus de problème, ma fenêtre s'affiche correctement sans erreur Javascript. En revanche je ne sais pas pourquoi il fallait les renseigner alors que je ne m'en sert nulle part explicitement.
Merci à tous pour vos réponse.
Envoyé par : guyzmo
Date : 25/04/2006 09:32
je crois que tu as mal lu ton message d'erreur ...
Error: uncaught exception: [Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIPrefBranch.getBoolPref]" nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)" location: "JS frame :: chrome://global/content/bindings/preferences.xml :: get__shouldAnimate :: line 689" data: no]
c'est pas toi qui utilises les preferences, ce sont les composants xbl, notemment celui qui a du code en ligne 689.
Par contre moi j'avais rencontre un autre probleme, il y a quelques mois quand j'avais fait mes tests : si je me souviens bien (je vais peut-etre me tromper dans le nom des balises), on doit pouvoir normallement mettre plusieurs prefpanel dans une prefwindow, comme c'est fait dans firefox. Cependant avec xulrunner, seul le premier prefpanel est visible, j'ai jamais trouve comment resoudre le pb, donc si toi ca marche, ca m'interesse
Envoyé par : ferllings
Date : 03/10/2006 22:37
Bonjour,
Je rencontre le même problème avec mon appli xulrunner.
J'ai un peu de mal à comprendre où se trouve les preferences de mon application.
Où se trouve mon preferences.xml
Dois-je le créer?
Merci
Envoyé par : guyzmo
Date : 04/10/2006 11:06
Salut,
Où se trouve mon preferences.xml
je crois que c'est dans toolkit.jar dans le dossier chrome de xulrunner
ca doit etre le fichier xbl contenant les composant de gestion de l'interface des preferences. (outils>options sous firefox windows)
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.