mozilla

Comparaison de révisions

Construire une extension

Change Revisions

Révision 122070 :

Révision 122070 par JulienA le

Révision 122071 :

Révision 122071 par JulienA le

Titre :
Construire une extension
Construire une extension
Identifiant d'URL :
Construire_une_extension
Construire_une_extension
Étiquettes :
Extensions
Extensions
Contenu :

Revision 122070
Revision 122071
n140      Prenez l'exemple de code ci-dessus et enregistrez le dans un140      Prenez l'exemple de code ci-dessus et enregistrez le dans u
>n fichier nommé <tt><b>sample.xul</b></tt> dans le dossier <tt>ch>n fichier nommé <tt><b>exemple.xul</b></tt> dans le dossier <tt>c
>rome/chromeFiles/content</tt> que vous avez créé.>hrome/chromeFiles/content</tt> que vous avez créé.
n145    <h4 name="Chrome_URIs">n145    <h4 name="les_URI_chrome">
146      Chrome URIs146      les URI chrome
147    </h4>
148    <p>147    </h4>
149      XUL files are part of "Chrome Packages" - bundles of user i
>nterface components which are loaded via <tt>chrome://</tt> URIs. 
> Rather than load the browser from disk using a <tt>file://</tt>  
>URI (since the location of Firefox on the system can change from  
>platform to platform and system to system), Mozilla developers ca 
>me up with a solution for creating URIs to XUL content that the i 
>nstalled application knows about. 
150    </p>148    <p>
149      Les fichiers XUL font parti des "packages chrome" - ensembl
 >e de composants d'interface utilisateur qui sont chargés via des 
 >URI <tt>chrome://</tt>. Plutôt que de charger le navigateur à par
 >tir du disque en utilisant les URI <tt>file://</tt> (depuis que l
 >a localisation de Firefox sur le système peut changer selon les p
 >lateformes et les systèmes), les développeurs Mozilla ont trouvé 
 >une solution pour créer des URI que l'application installée conna
 >ît pour le contenu XUL.
151    <p>150    </p>
152      The browser is: <tt>chrome://browser/content/browser.xul</t
>t> Try typing this URL into the location bar in Firefox! 
153    </p>151    <p>
152      Le navigateur est&nbsp;: <tt>chrome://browser/content/brows
 >er.xul</tt> Essayez de rentrer cette URL dans la barre d'adresses
 > de Firefox&nbsp;!
154    <p>153    </p>
155      Chrome URIs consist of several components:154    <p>
155      Les URI chrome comprennent plusieurs composants&nbsp;:
n158      <li>Firstly, the <b>URI scheme</b> (<tt>chrome</tt>) which n158      <li>Premièrement, le <b>schéma URI</b> (<tt>chrome</tt>) qu
>tells Firefox's networking library that this is a Chrome URI and >i explique à la librarie réseau de Firefox qu'il s'agit d'une URI
>that content being loaded from one needs to be handled specially.> chrome et que le contenu qui sera chargé doit être manipulé d'un
 >e certaine manière.
n160      <li>Secondly, a package name (in the example above, <tt><b>n160      <li>Deuxièmement, un nom de package (dans l'exemple ci-dess
>browser</b></tt>) which identifies the bundle of user interface c>us, <tt><b>browser</b></tt> qui identifie le paquet de composants
>omponents. This should be as unique to your application as possib> d'interface utilisateur). Il doit être aussi spécifique à votre 
>le to avoid collisions between extensions.>extension que possible, afin d'éviter les collisions entre extens
 >ions.
n162      <li>Thirdly, the type of data being requested. There are thn162      <li>Troisièmement, le type de donnée requis. Il y a trois t
>ree types: <tt>content</tt> (XUL, JavaScript, XML XBL bindings et>ypes&nbsp;: <tt>content</tt> (XUL, Javascript, bindings XML XBL, 
>c that form the structure and behavior of an application UI), <tt>etc., qui forme la structure et le comportement d'une IU d'applic
>>locale</tt> (DTD, .properties files etc that contain strings for>ation), <tt>locale</tt> (DTD, fichiers .properties, etc. qui cont
> the UI's localization), and <tt>skin</tt> (CSS and images that f>iennent les chaînes de caractères pour la localisation de l'IU), 
>orm the theme of the UI)>et <tt>skin</tt> (CSS et images qui forment le thème de l'IU).
n164      <li>Finally, a file name to load.n164      <li>Enfin, un nom de fichier à charger.
n168      So, <tt>chrome://foo/skin/bar.png</tt> loads the file <tt>bn168      Donc, <tt>chrome://foo/skin/bar.png</tt> charge le fichier 
>ar.png</tt> from <tt>foo</tt>'s theme <tt>skin</tt> section.><tt>bar.png</tt> de la section thème <tt>skin</tt> de <tt>foo</tt
 >>.
169    </p>
170    <p>169    </p>
171      When you load content using a Chrome URI, Firefox uses the 
>Chrome Registry to translate these URIs into the actual source fi 
>les on disk (or in JAR packages). 
172    </p>170    <p>
173    <h4 name="Create_a_Chrome_Manifest">171      Quand vous chargez du contenu en utilisant une URI chrome, 
 >Firefox utilise le registre chrome pour traduire ces URI dans les
 > fichiers sources actuels sur le disque (ou dans les packages JAR
 >).
174      Create a Chrome Manifest
175    </h4>
176    <p>172    </p>
177      For more information on Chrome Manifests and the properties173    <h4 name="Cr.C3.A9er_un_manifeste_chrome">
> they support, see the <a href="fr/Chrome_Manifest">Chrome Manife 
>st</a> Reference. 
174      Créer un manifeste chrome
175    </h4>
178    </p>176    <p>
177      Pour plus d'informations sur les manifestes chrome et les p
 >ropriétés qu'ils supportent, voir la référence <a href="fr/Manife
 >ste_Chrome">Manifeste Chrome</a>.
179    <p>178    </p>
180      Open the file called <tt><b>chrome.manifest</b></tt> that y
>ou created alongside the <tt>chrome</tt> directory at the root of 
> your extension's source folder hierarchy. 
181    </p>179    <p>
180      Ouvre le fichier nommé <tt><b>chrome.manifest</b></tt> que 
 >vous avez créé au même niveau que le répertoire <tt>chrome</tt>, 
 >à la racine de la hiérarchie du dossier source de votre extension
 >.
182    <p>181    </p>
183      Add in this code:
184    </p>182    <p>
183      Ajoutez ce code&nbsp;:
184    </p>
n186content     sample    chrome/chromeFiles/content/n186content     exemple    chrome/chromeFiles/content/
n189      This specifies the:n189      Ceci spécifie&nbsp;:
n192      <li>type of material within a chrome packagen192      <li>le type de données au sein d'un package chrome
n194      <li>name of the chrome packagen194      <li>le nom du package chrome
n196      <li>location of the chrome packages' filesn196      <li>l'emplacement des fichiers de package chrome
n200      So, this line says that for a chrome package <b>sample</b>,n200      Donc, cette ligne dit que pour le package chrome <b>exemple
> we can find its <b>content</b> files at the location <tt>chrome/></b>, nous pouvons trouver ses fichiers <b>content</b> à l'emplac
>chromeFiles/content</tt> which is a path relative to the location>ement <tt>chrome/chromeFiles/content</tt> qui est un chemin relat
> of <tt>chrome.manifest</tt>.>if à l'emplacement du <tt>chrome.manifest</tt>.
201    </p>
202    <p>201    </p>
203      Note that content, locale and skin files must be kept insid
>e folders called content, locale and skin within your <tt>chrome< 
>/tt> subdirectory. 
204    </p>202    <p>
203      Notez que les fichiers content, locale et skin doivent être
 > maintenus dans des dossiers nommés content, locale et skin au se
 >in de votre sous-répertoire <tt>chrome</tt>.
205    <p>204    </p>
206      Save the file. When you launch Firefox with your extension,
> this will register the chrome package. 
207    </p>205    <p>
208    <h4 name="Register_an_Overlay">206      Enregistrez le fichier. Quand vous lancez Firefox avec votr
 >e extension, il enregistrera le package chrome.
209      Register an Overlay
210    </h4>
211    <p>207    </p>
212      You need Firefox to merge your overlay with the browser win208    <h4 name="Enregistrer_un_overlay">
>dow whenever it displays one. So add this line to your <tt>chrome 
>.manifest</tt> file: 
209      Enregistrer un overlay
210    </h4>
213    </p>211    <p>
212      Vous avez besoin que Firefox fusionne votre overlay avec la
 > fenêtre de navigateur à chaque fois qu'il en affiche une. Donc a
 >joutez cette ligne à votre fichier <tt>chrome.manifest</tt>&nbsp;
 >:
213    </p>
n215overlay chrome://browser/content/browser.xul chrome://sample/contn215overlay chrome://browser/content/browser.xul chrome://exemple/con
>ent/sample.xul>tent/exemple.xul
t218      This tells Firefox to merge <tt>sample.xul</tt> into <tt>brt218      Cela explique à Firefox de fusionner <tt>exemple.xul</tt> d
>owser.xul</tt> when <tt>browser.xul</tt> loads.>ans <tt>browser.xul</tt> quand <tt>browser.xul</tt> est chargé.

Retour à l'historique