Envoyé par : Raphael
Date : 05/12/2006 16:39
Bonjour, actuellement voici mon arborescence :
chrome |-content | |-libs | | |cardviewer.js | |-cards | | |card-001.jpg | | |card-002.jpg | | |... | |main.js | |main.xul data |-cards
cardviewer.js est chargé depuis main.js, chargé depuis main.xul.
Voici le code qui affiche mon image dans cardviewer.js :
var ImageLocation = "cards/" + cards[i].Reference + ".jpg"; $("card_image").setAttribute('src', ImageLocation);
Le code marche très bien, mais je voudrais ordonner un peu mieux mon arborescence et déplacer mes cartes dans /data/cards/ qui se trouve dans le répertoire d'installation (celui où se trouve mon exécutable).
var ImageLocation = "../data/cards/" + cards[i].Reference + ".jpg";
Mais ça ne marche pas...
var file = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("CurProcD", Components.interfaces.nsILocalFile); file.append("data"); file.append("cards"); file.append("card-001.jpg"); var ImageLocation = file.path; $("card_image").setAttribute('src', ImageLocation);
Là encore, sans résultats...
Est-ce que quelqu'un pourrait m'aider ? Merci d'avance.
Envoyé par : Raphael
Date : 07/12/2006 19:25
Bonjour, je me permets d'upper mon petit topic car je me pose toujours pas mal de questions concernant les chemins d'accès à utiliser pour l'attribut "src" de <image>.
De plus, je me demande également où sauvegarder mes données ? Mon logiciel utilisera une base de données et un pack d'images à inclure. Où placer tout ça pour une appli. autonome avec XulRunner ?
Enfin voilà, mais mon principal problème reste le chemin d'accès à mes images dans l'attribut "src" de <image>.
Merci d'avance =)
Envoyé par : papy
Date : 08/12/2006 09:43
En ce qui concerne les données, dans le concept elles doivent généralement se trouver dans le profil, mais ca peut dépendre de l'utilité de ces données.
Pour la base de données, tu dois pouvoir la stocker via mozStorage, c'est prévu pour ca (ce mécanisme stocke les bases SQLite dans le profil de l'utilisateur)
Pour les images, ca dépend de ce que tu entend par
...et un pack d'images à inclure
Pour les profils, sous linux ils sont effectivement stocké dans /home/user/.mozilla/firefox/xxxxxx.default/, sous windows le système est équivalent, si je me rapelle bien ils sont stockés dans C:\Documents and Settings\User\Application Data\Mozilla\Firefox\xxxx.default (enfin quelque chose comme ca :P)
Enfin pour l'attribut src d'une image ca doit être un chemin absolu ou un chemin relatif. Dans le cas du chemin relatif, le répertoire courant est calculé à partir du fichier qui inclu l'image :
fichier chrome://monappli/content/main.xul contenant un attribut image, le chemin relatif commence à chrome://monappli/content/
Envoyé par : Raphael
Date : 08/12/2006 12:58
Ok... En fait, ma base est faite et j'y accède correctement, tout va bien de ce côté-là =)
Pour l'attribut src de image, alors apparemment ce sont des URL Chrome ? même pour XULRunner ?
Ca expliquerait pourquoi ce code ne marche pas :
var file = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("CurProcD", Components.interfaces.nsILocalFile); file.append("data"); file.append("cards"); file.append("card-001.jpg"); var ImageLocation = file.path; $("card_image").setAttribute('src', ImageLocation);
Car il me renvoie le chemin absolu "/home/user/..." et non pas le chemin absolu chrome.
Saurais-tu alors me dire comment accéder à mes images dans le répertoire que je veux ? que ce soit en absolu ou en relatif, peu m'importe pourvu que ça marche =)
Envoyé par : papy
Date : 08/12/2006 16:36
Ah oui XulRunner fonctionne avec des URL chrome. Si tu veux, ils ont extrait le moteur Gecko qui se trouve dans Firefox (ou dans Thunderbird et autre) pour faire XulRunner, à terme même Firefox et Thunderbird devraient être lancé depuis XulRunner.
Pour tes URL c'est pas très compliqué :
+ extension + chrome + content - extension.xul + data - image1.png - image1.png
et dans le fichier extension.xul, soit en absolu
<image src="chrome://extension/content/data/image1.png"/>
soit en relatif (à vérifier que ca marche depuis une extension, en tout cas pour du remote xul c'est ok)
<image src="data/image1.png"/>
<image src="file:///home/user/icons/icon1.png"/>
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.