Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# [résolu][XULRunner] Ne pas quitter une application

Envoyé par : Thunderseb

Date : 07/09/2008 19:48

Bonjour à tous,

Voilà, j'ai une application tout en XUL sous XULRunner 1.9 et j'ai un problème avec la croix de fermeture. En fait, quand l'utilisateur clic sur la croix, l'application doit lui demander si il veut sauver ou pas le document en cours ou si il veut annuler l'opération (il ne veut plus quitter donc). Et c'est précisément avec cette dernière option que je coince.

J'ai comme XUL :

<window onclose="closeEditor();">

Et en JS j'ai :

function closeEditor() {
  var prompts = Components.classes["@mozilla.org/embedcomp/prompt-service;1"].getService(Components.interfaces.nsIPromptService);
  var check = { value: false };
  var flags = prompts.BUTTON_TITLE_IS_STRING * prompts.BUTTON_POS_0 + prompts.BUTTON_TITLE_IS_STRING * prompts.BUTTON_POS_1 + prompts.BUTTON_TITLE_IS_STRING * prompts.BUTTON_POS_2;
 var button = prompts.confirmEx(window, "Demande de fermeture", "Enregistrer les modifications apportées à truc.tuto ?", flags, "Oui", "Annuler", "Non", null, check);
  // Valeurs de retour de 'button'
  // 0 | oui
  // 1 | annuler
  // 2 | non
  if (button == 1) {
    return false;
  } else {
    quit(false); // quit() est une fonction qui force l'éditeur à se fermer
  }
}

Ca marche bien, la boite de dialogue s'affiche et demande quoi faire. Le problème c'est que le return false n'a aucune incidence ! Alors que si je mets bêtement le return false avant d'afficher la confirmEx (juste pour tester), ça marche !

Je ne sais pas trop quoi faire, ça m'embête assez. auriez-vous une idée de comment résoudre ce problème ?

Merci d'avance :) .

# Re: [XULRunner] Ne pas quitter une application

Envoyé par : thx1138

Date : 08/09/2008 00:50

Test avec ceci :

<window onclose="return closeEditor();">

# Re: [XULRunner] Ne pas quitter une application

Envoyé par : Thunderseb

Date : 08/09/2008 09:01

Ah oui, ça marche. C'est tellement con que je n'y avais même pas pensé :-°

Merci :) .

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.