Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : Super-Calimero

Date : 27/08/2004 02:38

J'ai réfléchi sur les possibilités offertes par les fameux behavior HTC sous IE. J'ai vu qu'il serait peut-être possible de pouvoir interpréter une petite partie des spécifications XUL.

Voici un très petit exmple fais en vitesse :

  • index.xul :
<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/css" href="xul.css" media="all"?>
<window id="example-window" title="Example" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<label control="some-text" value="Enter some text"/>
<textbox id="some-text" value="toto"/>
<label control="some-password" value="Enter a password"/>
<textbox id="some-password" type="password" maxlength="8"/>
<menulist label="Bus">
  <menupopup>
    <menuitem label="Car"/>
    <menuitem label="Taxi"/>
    <menuitem label="Bus" selected="true"/>
    <menuitem label="Train"/>
  </menupopup>
</menulist>
</window>
  • xul.css :
label{behavior:url(label.htc)}
menuitem{behavior:url(menuitem.htc)}
menulist{behavior:url(menulist.htc)}
menupopup{behavior:url(menupopup.htc)}
textbox{behavior:url(textbox.htc)}
window{behavior:url(window.htc)}
  • label.htc :
<public:htc urn="window">
<public:attach event="ondocumentready" handler="build" />
<public:property name="value" />
<script type="text/javascript">
function build(){this.innerHTML=this.value;}
</script>
</public:htc>
  • menuitem.htc :
<public:htc urn="window">
<public:attach event="ondocumentready" handler="build" />
<public:property name="id" />
<public:property name="label" />
<public:property name="value" />
<script type="text/javascript">
function build() {
	var option = document.createElement("option");
	var style=this.currentStyle;
	option.setAttribute("id",id);
	if(this.id!=null){option.setAttribute("id",this.id);}
	if(this.value!=null){option.setAttribute("value",this.value);}
	if(label!=null){option.innerHTML=label;}
	for(var prop in style){option.style[prop]=style[prop];}
	this.outerHTML=option.outerHTML;
}
</script>
</public:htc>
  • menulist.htc
<public:htc urn="window">
<public:attach event="ondocumentready" handler="build" />
<public:property name="id" />
<script type="text/javascript">
function build() {
	var select = document.createElement("select");
	var style=this.currentStyle;
	select.setAttribute("id",id);
	if(id!=null){
		select.setAttribute("id",this.id);
		select.setAttribute("name",this.id);
	}
	select.innerHTML=this.innerHTML;
	for(var prop in style){
		select.style[prop]=style[prop];
	}
	select.style.width="100%";
	this.outerHTML=select.outerHTML;
}
</script>
</public:htc>
  • menupopup.htc
<public:htc urn="window">
<public:attach event="ondocumentready" handler="build" />
<public:property name="id" />
<public:property name="label" />
<public:property name="value" />
<script type="text/javascript">
function build() {
	var optgroup = document.createElement("optgroup");
	var style=this.currentStyle;
	if(this.id!=null){optgroup.setAttribute("id",this.id);}
	if(this.label!=null){optgroup.innerHTML=this.label;}
	optgroup.innerHTML=this.innerHTML;
	for(var prop in style){optgroup.style[prop]=style[prop];}
	this.outerHTML=optgroup.outerHTML;
}
</script>
</public:htc>
  • textbox.htc
<public:htc urn="window">
<public:attach event="ondocumentready" handler="build" />
<public:property name="id" />
<public:property name="value" />
<public:property name="type" />
<public:property name="maxlength" />
<script type="text/javascript">
function build() {
	var input = document.createElement("input");
	var style=this.currentStyle;
	input.setAttribute("id",id);
	if(value!=null){input.setAttribute("value",value);}
	if(type!=null){input.setAttribute("type",type);}
	if(maxlength!=null){input.setAttribute("maxlength",maxlength);}
	for(var prop in style){input.style[prop]=style[prop];}
	input.style.width="100%";
	input.style.cursor="text";
	input.style.borderStyle="inset";
	input.style.borderColor="ActiveBorder";
	input.style.borderWidth="2px";
	input.style.backgroundColor="#FFFFFF";
	input.style.paddingLeft="2px";
	this.outerHTML=input.outerHTML;
}
</script>
</public:htc>
  • window.htc
<public:htc urn="window">
<public:attach event="ondocumentready" handler="build" />
<public:property name="title" />
<script type="text/javascript">
function build(){window.status=this.title;}
</script>
</public:htc> 

Grâce à ce procédé, peut-être peut-on espérer toucher un plus grand nombre de personnes avec XUL ? Qu'en pensez-vous ... ?

# Re: XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : Utilisateur anonyme

Date : 29/08/2004 07:39

Interessant mais si je pensse pas que se soit necessaire de se donner de la peine pour un logiciel qui ne respecte meme pas les normes...

# Re: XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : Super-Calimero

Date : 31/08/2004 01:17

Je comprend tout à fait ton point de vu.

Je suis actuellement ingénieur en intégration dans une SSII parisienne. J'essai de convaincre les dirigeants de mon entreprise de toutes les qualité du framework Mozilla et de XUL. Le fait est que la majeure partie (si ce n'est même la totalité) de nos clients pour lesquels nous réalisons entre autres des intranets, sont sous IE.

Il ne faut pas se leurrer, même si Mozilla est vraiment formidable (et je dis ça en toute honnêteté), Internet Explorer détiens encore son monopole, et l'arrivé de XAML avec Longhorn ne fera que le consolider. Il faut donc absolument essayer de convaincre en moins de 2 ans la majorité de migrer sur Mozilla avant l'arrivé de Longhorn.

Le but d'un éventuelle projet comme " XUL sous IE " n'est absolument pas de consolider IE dans sa position car on n'arrivera pas, je pense, à égaler ne serais-ce qu'un dizième de ce que fait XUL avec Mozilla. Mais par contre, nous pouvons faire prendre conscience au gens de ce qu'ils pourraient trouver ailleurs en mieux et avec de meilleures performances.

Ce n'est donc pas du "non respect des normes de IE" (oui, nous le savons tous, pas la peine de gaspiller ses efforts pour le redémontrer) qu'il convient de parler ici, mais plutôt : "comment faire connaître au plus grand nombre la puissance de XUL et de toutes les technologies qui gravitent autour du projet Mozilla".

# Re: XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : laurentj

Date : 01/09/2004 12:36

Interressant en effet ces htc.

On ne pourra toutefois pas reproduire tout ce que l'on peut faire dans un mozilla. Je pense en particulier à tous les objets scriptables disponibles dans Moz, que l'on a pas dans IE ou alors sous avec une autre api.

Bref, pour arriver à faire un truc compatible, ça va prendre du temps et surtout beaucoup de ligne de code. Est ce que le volume de htc à charger sera compatible avec les impératifs du web, même si le cache est activé ?

Pas sûr.

Mais c'est en tout cas interressant.

# Re: XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : jep

Date : 08/09/2004 20:51

Bref, pour arriver à faire un truc compatible, ça va prendre du temps et surtout beaucoup de ligne de code. Est ce que le volume de htc à charger sera compatible avec les impératifs du web, même si le cache est activé ?

Effectivement, mais dans le cadre d'un intranet, cela peut être assez interressant (même si il vaux mieux commencer par essayer de convaincre le client de migrer vers Mozilla)

# Re: XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : Utilisateur anonyme

Date : 31/01/2005 20:38

Ne serait il pas plutôt intéressant d'executer le gecko engine en tant qu'activeX de IE? et donc de pouvoir disposer de toutes les possibilités de mozilla/xul dans Internet explorer.

# Re: XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : kryogen

Date : 14/05/2007 10:52

Bonjour, Cette discussion datant de début 2005, y-a-t-il eu des avancés dans la possibilité d'afficher le moteur gecko sous explorer (que ce soit en htc ou activeX) ? Xul est une technologie très intéressante au niveau applicatif en Extranet et la présence d'Internet Explorer sur plus de 80% des PC freine considérablement son essor...

# Re: XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : snotling

Date : 14/05/2007 18:00

# Re: XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : kryogen

Date : 15/05/2007 17:55

mm, je suis tombé déjà dessus.
Ainsi que :
http://www.iol.ie/~locka/mozilla/control.htm
Mais je n'y comprends pas grand chose pour la mise en oeuvre...

# Re: XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : chBok

Date : 16/05/2007 10:21

kryogen a écrit:

mm, je suis tombé déjà dessus.

Ainsi que :

http://www.iol.ie/~locka/mozilla/control.htm
Mais je n'y comprends pas grand chose pour la mise
en oeuvre...

Non, le sujet parle de faire tourner du XUL sous MSIE. La page que tu cites permet d'installer sous Firefox un plugin gérant le contrôle activeX de Window Media Player.

# Re: XUL sous Internet Explorer, pourquoi pas ...

Envoyé par : Paul Rouget

Date : 16/05/2007 14:19

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.