зеркало из https://github.com/mozilla/gecko-dev.git
bug 213228: new toolkit independence bug, part 3.
create toolkit/obsolete directory obsolete dialogOverlay.xul and remove the need for platformOverlay.xul
This commit is contained in:
Родитель
7ffd84ef09
Коммит
d521951ba9
|
@ -0,0 +1,98 @@
|
||||||
|
var doOKFunction = 0;
|
||||||
|
var doCancelFunction = 0;
|
||||||
|
var doButton2Function = 0;
|
||||||
|
var doButton3Function = 0;
|
||||||
|
|
||||||
|
// call this from dialog onload() to allow ok and cancel to call your code
|
||||||
|
// functions should return true if they want the dialog to close
|
||||||
|
function doSetOKCancel(okFunc, cancelFunc, button2Func, button3Func )
|
||||||
|
{
|
||||||
|
//dump("top.window.navigator.platform: " + top.window.navigator.platform + "\n");
|
||||||
|
|
||||||
|
doOKFunction = okFunc;
|
||||||
|
doCancelFunction = cancelFunc;
|
||||||
|
doButton2Function = button2Func;
|
||||||
|
doButton3Function = button3Func;
|
||||||
|
}
|
||||||
|
|
||||||
|
function doOKButton()
|
||||||
|
{
|
||||||
|
var close = true;
|
||||||
|
|
||||||
|
if ( doOKFunction )
|
||||||
|
close = doOKFunction();
|
||||||
|
|
||||||
|
if (close && top)
|
||||||
|
top.window.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
function doCancelButton()
|
||||||
|
{
|
||||||
|
var close = true;
|
||||||
|
|
||||||
|
if ( doCancelFunction )
|
||||||
|
close = doCancelFunction();
|
||||||
|
|
||||||
|
if (close && top)
|
||||||
|
top.window.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
function doButton2()
|
||||||
|
{
|
||||||
|
var close = true;
|
||||||
|
|
||||||
|
if ( doButton2Function )
|
||||||
|
close = doButton2Function();
|
||||||
|
|
||||||
|
if (close && top)
|
||||||
|
top.window.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
function doButton3()
|
||||||
|
{
|
||||||
|
var close = true;
|
||||||
|
|
||||||
|
if ( doButton3Function )
|
||||||
|
close = doButton3Function();
|
||||||
|
|
||||||
|
if (close && top)
|
||||||
|
top.window.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
function moveToAlertPosition()
|
||||||
|
{
|
||||||
|
// hack. we need this so the window has something like its final size
|
||||||
|
if (window.outerWidth == 1) {
|
||||||
|
dump("Trying to position a sizeless window; caller should have called sizeToContent() or sizeTo(). See bug 75649.\n");
|
||||||
|
sizeToContent();
|
||||||
|
}
|
||||||
|
|
||||||
|
var xOffset = (opener.outerWidth - window.outerWidth) / 2;
|
||||||
|
var yOffset = opener.outerHeight / 5;
|
||||||
|
|
||||||
|
var newX = opener.screenX + xOffset;
|
||||||
|
var newY = opener.screenY + yOffset;
|
||||||
|
|
||||||
|
// ensure the window is fully onscreen (if smaller than the screen)
|
||||||
|
if (newX < screen.availLeft)
|
||||||
|
newX = screen.availLeft + 20;
|
||||||
|
if ((newX + window.outerWidth) > (screen.availLeft + screen.availWidth))
|
||||||
|
newX = (screen.availLeft + screen.availWidth) - window.outerWidth - 20;
|
||||||
|
|
||||||
|
if (newY < screen.availTop)
|
||||||
|
newY = screen.availTop + 20;
|
||||||
|
if ((newY + window.outerHeight) > (screen.availTop + screen.availHeight))
|
||||||
|
newY = (screen.availTop + screen.availHeight) - window.outerHeight - 60;
|
||||||
|
|
||||||
|
window.moveTo( newX, newY );
|
||||||
|
}
|
||||||
|
|
||||||
|
function centerWindowOnScreen()
|
||||||
|
{
|
||||||
|
var xOffset = screen.availWidth/2 - window.outerWidth/2;
|
||||||
|
var yOffset = screen.availHeight/2 - window.outerHeight/2; //(opener.outerHeight *2)/10;
|
||||||
|
|
||||||
|
xOffset = ( xOffset > 0 ) ? xOffset : 0;
|
||||||
|
yOffset = ( yOffset > 0 ) ? yOffset : 0;
|
||||||
|
window.moveTo( xOffset, yOffset);
|
||||||
|
}
|
|
@ -0,0 +1,134 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
# -*- Mode: HTML -*-
|
||||||
|
# ***** BEGIN LICENSE BLOCK *****
|
||||||
|
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||||
|
#
|
||||||
|
# The contents of this file are subject to the Mozilla Public License Version
|
||||||
|
# 1.1 (the "License"); you may not use this file except in compliance with
|
||||||
|
# the License. You may obtain a copy of the License at
|
||||||
|
# http://www.mozilla.org/MPL/
|
||||||
|
#
|
||||||
|
# Software distributed under the License is distributed on an "AS IS" basis,
|
||||||
|
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||||
|
# for the specific language governing rights and limitations under the
|
||||||
|
# License.
|
||||||
|
#
|
||||||
|
# The Original Code is mozilla.org toolkit.
|
||||||
|
#
|
||||||
|
# The Initial Developer of the Original Code is
|
||||||
|
# Netscape Communications Corporation.
|
||||||
|
# Portions created by the Initial Developer are Copyright (C) 2002
|
||||||
|
# the Initial Developer. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Contributor(s):
|
||||||
|
#
|
||||||
|
# Alternatively, the contents of this file may be used under the terms of
|
||||||
|
# either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||||
|
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||||
|
# in which case the provisions of the GPL or the LGPL are applicable instead
|
||||||
|
# of those above. If you wish to allow use of your version of this file only
|
||||||
|
# under the terms of either the GPL or the LGPL, and not to allow others to
|
||||||
|
# use your version of this file under the terms of the NPL, indicate your
|
||||||
|
# decision by deleting the provisions above and replace them with the notice
|
||||||
|
# and other provisions required by the GPL or the LGPL. If you do not delete
|
||||||
|
# the provisions above, a recipient may use your version of this file under
|
||||||
|
# the terms of any one of the NPL, the GPL or the LGPL.
|
||||||
|
#
|
||||||
|
# ***** END LICENSE BLOCK *****
|
||||||
|
#
|
||||||
|
# WARNING!!! This file is obsoleted by the dialog.xml widget
|
||||||
|
#
|
||||||
|
|
||||||
|
<!DOCTYPE overlay SYSTEM "chrome://global/locale/dialogOverlay.dtd">
|
||||||
|
|
||||||
|
<overlay id="dialogOverlay"
|
||||||
|
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||||
|
|
||||||
|
<script type="application/x-javascript" src="chrome://global/content/dialogOverlay.js"/>
|
||||||
|
|
||||||
|
#ifdef XP_MACOSX
|
||||||
|
#
|
||||||
|
<hbox id="okCancelButtons">
|
||||||
|
<spacer flex="1"/>
|
||||||
|
<button class="exit-dialog" id="Button3" label="" collapsed="true" oncommand="doButton3();"/>
|
||||||
|
<button class="exit-dialog" id="Button2" label="" collapsed="true" oncommand="doButton2();"/>
|
||||||
|
<button class="exit-dialog" id="cancel" label="&cancelButton.label;" oncommand="doCancelButton();"/>
|
||||||
|
<button class="right exit-dialog" id="ok" default="true" label="&okButton.label;" oncommand="doOKButton();"/>
|
||||||
|
</hbox>
|
||||||
|
|
||||||
|
<hbox id="okCancelHelpButtons">
|
||||||
|
<button class="exit-dialog" id="help" label="&helpButton.label;" oncommand="doHelpButton();"/>
|
||||||
|
<spacer flex="1"/>
|
||||||
|
<button class="exit-dialog" id="Button3" label="" collapsed="true" oncommand="doButton3();"/>
|
||||||
|
<button class="exit-dialog" id="Button2" label="" collapsed="true" oncommand="doButton2();"/>
|
||||||
|
<button class="exit-dialog" id="cancel" label="&cancelButton.label;" oncommand="doCancelButton();"/>
|
||||||
|
<button class="right exit-dialog" id="ok" default="true" label="&okButton.label;" oncommand="doOKButton();"/>
|
||||||
|
</hbox>
|
||||||
|
|
||||||
|
<hbox id="okCancelButtonsRight">
|
||||||
|
<spacer flex="1"/>
|
||||||
|
<button class="exit-dialog" id="Button3" label="" collapsed="true" oncommand="doButton3();"/>
|
||||||
|
<button class="exit-dialog" id="Button2" label="" collapsed="true" oncommand="doButton2();"/>
|
||||||
|
<button class="exit-dialog" id="cancel" label="&cancelButton.label;" oncommand="doCancelButton();"/>
|
||||||
|
<button class="right exit-dialog" id="ok" default="true" label="&okButton.label;" oncommand="doOKButton();"/>
|
||||||
|
</hbox>
|
||||||
|
|
||||||
|
<hbox id="okCancelHelpButtonsRight">
|
||||||
|
<button class="exit-dialog" id="help" label="&helpButton.label;" oncommand="doHelpButton();"/>
|
||||||
|
<spacer flex="1"/>
|
||||||
|
<button class="exit-dialog" id="Button3" label="" collapsed="true" oncommand="doButton3();"/>
|
||||||
|
<button class="exit-dialog" id="Button2" label="" collapsed="true" oncommand="doButton2();"/>
|
||||||
|
<button class="exit-dialog" id="cancel" label="&cancelButton.label;" oncommand="doCancelButton();"/>
|
||||||
|
<button class="right exit-dialog" id="ok" default="true" label="&okButton.label;" oncommand="doOKButton();"/>
|
||||||
|
</hbox>
|
||||||
|
#
|
||||||
|
#else
|
||||||
|
#
|
||||||
|
<hbox id="okCancelButtons">
|
||||||
|
<spacer flex="1"/>
|
||||||
|
<button class="right exit-dialog" id="ok" label="&okButton.label;" default="true" oncommand="doOKButton();"/>
|
||||||
|
<button class="exit-dialog" id="Button2" label="&cancelButton.label;" collapsed="true" oncommand="doButton2();"/>
|
||||||
|
<button class="exit-dialog" id="Button3" label="&cancelButton.label;" collapsed="true" oncommand="doButton3();"/>
|
||||||
|
<button class="exit-dialog" id="cancel" label="&cancelButton.label;" oncommand="doCancelButton();"/>
|
||||||
|
<spacer flex="1"/>
|
||||||
|
</hbox>
|
||||||
|
|
||||||
|
<hbox id="okCancelHelpButtons">
|
||||||
|
<spacer flex="1"/>
|
||||||
|
<button class="right exit-dialog" id="ok" label="&okButton.label;" default="true" oncommand="doOKButton();"/>
|
||||||
|
<button class="exit-dialog" id="Button2" label="&cancelButton.label;" collapsed="true" oncommand="doButton2();"/>
|
||||||
|
<button class="exit-dialog" id="Button3" label="&cancelButton.label;" collapsed="true" oncommand="doButton3();"/>
|
||||||
|
<button class="exit-dialog" id="cancel" label="&cancelButton.label;" oncommand="doCancelButton();"/>
|
||||||
|
<button class="exit-dialog" id="help" label="&helpButton.label;" oncommand="doHelpButton();"/>
|
||||||
|
<spacer flex="1"/>
|
||||||
|
</hbox>
|
||||||
|
|
||||||
|
<hbox id="okCancelButtonsRight">
|
||||||
|
<spacer flex="1"/>
|
||||||
|
<button class="right exit-dialog" id="ok" label="&okButton.label;" default="true" oncommand="doOKButton();"/>
|
||||||
|
<button class="exit-dialog" id="Button2" label="&cancelButton.label;" collapsed="true" oncommand="doButton2();"/>
|
||||||
|
<button class="exit-dialog" id="Button3" label="&cancelButton.label;" collapsed="true" oncommand="doButton3();"/>
|
||||||
|
<button class="exit-dialog" id="cancel" label="&cancelButton.label;" oncommand="doCancelButton();"/>
|
||||||
|
</hbox>
|
||||||
|
|
||||||
|
<hbox id="okCancelHelpButtonsRight">
|
||||||
|
<spacer flex="1"/>
|
||||||
|
<button class="right exit-dialog" id="ok" label="&okButton.label;" default="true" oncommand="doOKButton();"/>
|
||||||
|
<button class="exit-dialog" id="Button2" label="&cancelButton.label;" collapsed="true" oncommand="doButton2();"/>
|
||||||
|
<button class="exit-dialog" id="Button3" label="&cancelButton.label;" collapsed="true" oncommand="doButton3();"/>
|
||||||
|
<button class="exit-dialog" id="cancel" label="&cancelButton.label;" oncommand="doCancelButton();"/>
|
||||||
|
<button class="exit-dialog" id="help" label="&helpButton.label;" oncommand="doHelpButton();"/>
|
||||||
|
</hbox>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
<keyset id="dialogKeys">
|
||||||
|
<key keycode="VK_ENTER" oncommand="if (!document.getElementById('ok').disabled) doOKButton();"/>
|
||||||
|
<key keycode="VK_RETURN" oncommand="if (!document.getElementById('ok').disabled) doOKButton();"/>
|
||||||
|
<key keycode="VK_ESCAPE" oncommand="doCancelButton();"/>
|
||||||
|
#ifdef XP_MACOSX
|
||||||
|
<key key="." modifiers="meta" oncommand="doCancelButton();"/>
|
||||||
|
#
|
||||||
|
#endif
|
||||||
|
</keyset>
|
||||||
|
|
||||||
|
</overlay>
|
|
@ -0,0 +1,44 @@
|
||||||
|
# -*- Mode: HTML -*-
|
||||||
|
# ***** BEGIN LICENSE BLOCK *****
|
||||||
|
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||||
|
#
|
||||||
|
# The contents of this file are subject to the Mozilla Public License Version
|
||||||
|
# 1.1 (the "License"); you may not use this file except in compliance with
|
||||||
|
# the License. You may obtain a copy of the License at
|
||||||
|
# http://www.mozilla.org/MPL/
|
||||||
|
#
|
||||||
|
# Software distributed under the License is distributed on an "AS IS" basis,
|
||||||
|
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||||
|
# for the specific language governing rights and limitations under the
|
||||||
|
# License.
|
||||||
|
#
|
||||||
|
# The Original Code is mozilla.org toolkit.
|
||||||
|
#
|
||||||
|
# The Initial Developer of the Original Code is
|
||||||
|
# Netscape Communications Corporation.
|
||||||
|
# Portions created by the Initial Developer are Copyright (C) 2002
|
||||||
|
# the Initial Developer. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Contributor(s):
|
||||||
|
#
|
||||||
|
# Alternatively, the contents of this file may be used under the terms of
|
||||||
|
# either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||||
|
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||||
|
# in which case the provisions of the GPL or the LGPL are applicable instead
|
||||||
|
# of those above. If you wish to allow use of your version of this file only
|
||||||
|
# under the terms of either the GPL or the LGPL, and not to allow others to
|
||||||
|
# use your version of this file under the terms of the NPL, indicate your
|
||||||
|
# decision by deleting the provisions above and replace them with the notice
|
||||||
|
# and other provisions required by the GPL or the LGPL. If you do not delete
|
||||||
|
# the provisions above, a recipient may use your version of this file under
|
||||||
|
# the terms of any one of the NPL, the GPL or the LGPL.
|
||||||
|
#
|
||||||
|
# ***** END LICENSE BLOCK *****
|
||||||
|
#
|
||||||
|
# WARNING!!! This file is obsoleted by the dialog.xml widget
|
||||||
|
#
|
||||||
|
<!-- OK Cancel Buttons -->
|
||||||
|
<!ENTITY okButton.label "OK">
|
||||||
|
<!ENTITY cancelButton.label "Cancel">
|
||||||
|
<!ENTITY helpButton.label "Help">
|
||||||
|
|
Загрузка…
Ссылка в новой задаче