rem: * and on Linux [button 3] [button 2] [button 1]. 
add: * and on Linux [button 3] [button 2] [button 1]. 
context: function confirmEx(msg, buttons, defaultButton, checkText,                    checkVal, parent, title){    /* Note that on versions before Mozilla 0.9, using 3 buttons,     * the revert or dontsave button, or custom button titles will NOT work.     *     * The buttons should be listed in the 'accept', 'cancel' and 'extra' order,     * and the exact button order is host app- and platform-dependant.     * For example, on Windows this is usually [button 1] [button 3] [button 2],     * and on Linux [button 3] [button 2] [button 1].      */    var PROMPT_CTRID = "@mozilla.org/embedcomp/prompt-service;1";    var nsIPromptService = Components.interfaces.nsIPromptService;    var ps = Components.classes[PROMPT_CTRID].getService(nsIPromptService);    var buttonConstants = {        ok: ps.BUTTON_TITLE_OK,        cancel: ps.BUTTON_TITLE_CANCEL,        yes: ps.BUTTON_TITLE_YES,        no: ps.BUTTON_TITLE_NO,        save: ps.BUTTON_TITLE_SAVE,        revert: ps.BUTTON_TITLE_REVERT,        dontsave: ps.BUTTON_TITLE_DONT_SAVE    };    var buttonFlags = 0;    var buttonText = [null, null, null];    if (!isinstance(buttons, Array))         throw "buttons parameter must be an Array";    if ((buttons.length < 1) || (buttons.length > 3))        throw "the buttons array must have 1, 2 or 3 elements";    for (var i = 0; i < buttons.length; i++)    {        var buttonFlag = ps.BUTTON_TITLE_IS_STRING;        if ((buttons[i][0] == "!") && (buttons[i].substr(1) in buttonConstants))            buttonFlag = buttonConstants[buttons[i].substr(1)];        else            buttonText[i] = buttons[i];        buttonFlags += ps["BUTTON_POS_" + i] * buttonFlag;    }    // ignore anything but a proper number    var defaultIsNumber = (typeof defaultButton == "number");    if (defaultIsNumber && arrayHasElementAt(buttons, defaultButton))        buttonFlags += ps["BUTTON_POS_" + defaultButton + "_DEFAULT"];    if (!parent)        parent = window;    if (!title)        title = MSG_CONFIRM;    if (!checkVal)        checkVal = new Object();    var rv = ps.confirmEx(parent, title, msg, buttonFlags, buttonText[0],                          buttonText[1], buttonText[2], checkText, checkVal);    return rv;}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/d6298c315ff74b4cd7e3ca8bc8dbe45e1abd18dc/utils.js/clean/extensions/irc/js/lib/utils.js