mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-11 17:57:32 +09:00
Add Pale Moon
This commit is contained in:
parent
dcd9973243
commit
fe8028fa2e
1173 changed files with 143053 additions and 934 deletions
|
|
@ -0,0 +1,15 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
|
||||
|
||||
/*
|
||||
* Status Popup
|
||||
*/
|
||||
|
||||
statuspanel
|
||||
{
|
||||
-moz-binding: url("chrome://browser/content/statusbar/tabbrowser.xml#statuspanel");
|
||||
}
|
||||
|
||||
16
application/palemoon/components/statusbar/content/overlay.js
Normal file
16
application/palemoon/components/statusbar/content/overlay.js
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
if(!caligon) var caligon = {};
|
||||
|
||||
window.addEventListener("load", function buildS4E()
|
||||
{
|
||||
window.removeEventListener("load", buildS4E, false);
|
||||
|
||||
Components.utils.import("resource:///modules/statusbar/Status4Evar.jsm");
|
||||
|
||||
caligon.status4evar = new Status4Evar(window, gBrowser, gNavToolbox);
|
||||
caligon.status4evar.setup();
|
||||
}, false);
|
||||
|
||||
|
|
@ -0,0 +1,82 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!-- This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
|
||||
|
||||
<!DOCTYPE overlay SYSTEM "chrome://browser/locale/statusbar/statusbar-overlay.dtd">
|
||||
|
||||
<?xml-stylesheet href="chrome://browser/content/statusbar/overlay.css" type="text/css" ?>
|
||||
<?xml-stylesheet href="chrome://browser/skin/statusbar/overlay.css" type="text/css" ?>
|
||||
<?xml-stylesheet href="chrome://browser/skin/statusbar/dynamic.css" type="text/css" ?>
|
||||
|
||||
<overlay id="status4evar-overlay"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
<stringbundleset id="stringbundleset">
|
||||
<stringbundle id="bundle_status4evar" src="chrome://browser/locale/statusbar/overlay.properties" />
|
||||
</stringbundleset>
|
||||
|
||||
<script type="application/javascript" src="chrome://browser/content/statusbar/overlay.js" />
|
||||
|
||||
<commandset>
|
||||
<command id="S4E:Options" oncommand="caligon.status4evar.launchOptions(window);"/>
|
||||
</commandset>
|
||||
|
||||
<popupset id="mainPopupSet">
|
||||
<hbox id="status4evar-download-notification-container" mousethrough="always">
|
||||
<vbox id="status4evar-download-notification-anchor">
|
||||
<vbox id="status4evar-download-notification-icon" />
|
||||
</vbox>
|
||||
</hbox>
|
||||
</popupset>
|
||||
|
||||
<menupopup id="menu_ToolsPopup">
|
||||
<menuitem id="statusbar-options-fx" command="S4E:Options"
|
||||
label="&status4evar.menu.options.label;"/>
|
||||
</menupopup>
|
||||
|
||||
<menupopup id="appmenu_customizeMenu">
|
||||
<menuitem id="statusbar-options-app" command="S4E:Options"
|
||||
label="&status4evar.menu.options.label;"/>
|
||||
</menupopup>
|
||||
|
||||
<toolbarpalette id="BrowserToolbarPalette">
|
||||
<toolbaritem id="status4evar-status-widget"
|
||||
title="&status4evar.status.widget.title;"
|
||||
removable="true" flex="1" persist="width" width="100">
|
||||
<label id="status4evar-status-text" flex="1" crop="end" value="&status4evar.status.widget.title;" />
|
||||
</toolbaritem>
|
||||
|
||||
<toolbarbutton id="status4evar-download-button"
|
||||
title="&status4evar.download.widget.title;"
|
||||
class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
removable="true" collapsed="true" tooltip="_child"
|
||||
oncommand="caligon.status4evar.downloadStatus.openUI(event)">
|
||||
<stack id="status4evar-download-anchor" class="toolbarbutton-icon">
|
||||
<vbox id="status4evar-download-icon" />
|
||||
<vbox pack="end">
|
||||
<progressmeter id="status4evar-download-progress-bar" mode="normal" value="0" collapsed="true" min="0" max="100" />
|
||||
</vbox>
|
||||
</stack>
|
||||
<tooltip id="status4evar-download-tooltip" />
|
||||
<label id="status4evar-download-label" value="&status4evar.download.widget.title;" class="toolbarbutton-text" crop="right" flex="1" />
|
||||
</toolbarbutton>
|
||||
|
||||
<toolbaritem id="status4evar-progress-widget"
|
||||
title="&status4evar.progress.widget.title;"
|
||||
removable="true">
|
||||
<progressmeter id="status4evar-progress-bar" class="progressmeter-statusbar"
|
||||
mode="normal" value="0" collapsed="true" min="0" max="100" />
|
||||
</toolbaritem>
|
||||
|
||||
<toolbarbutton id="status4evar-options-button"
|
||||
title="&status4evar.options.widget.title;"
|
||||
class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
label="&status4evar.options.widget.label;"
|
||||
removable="true" command="S4E:Options" tooltiptext="&status4evar.options.widget.title;" />
|
||||
</toolbarpalette>
|
||||
|
||||
<statusbar id="status-bar" ordinal="1" />
|
||||
</overlay>
|
||||
|
||||
11
application/palemoon/components/statusbar/content/prefs.css
Normal file
11
application/palemoon/components/statusbar/content/prefs.css
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
|
||||
|
||||
.css-bg-editor
|
||||
{
|
||||
-moz-binding: url("chrome://browser/content/statusbar/prefs.xml#css-bg-editor");
|
||||
}
|
||||
|
||||
274
application/palemoon/components/statusbar/content/prefs.js
Normal file
274
application/palemoon/components/statusbar/content/prefs.js
Normal file
|
|
@ -0,0 +1,274 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
Components.utils.import("resource://gre/modules/Services.jsm");
|
||||
|
||||
var status4evarPrefs =
|
||||
{
|
||||
get dynamicProgressStyle()
|
||||
{
|
||||
let styleSheets = window.document.styleSheets;
|
||||
for(let i = 0; i < styleSheets.length; i++)
|
||||
{
|
||||
let styleSheet = styleSheets[i];
|
||||
if(styleSheet.href == "chrome://browser/skin/statusbar/dynamic.css")
|
||||
{
|
||||
delete this.dynamicProgressStyle;
|
||||
return this.dynamicProgressStyle = styleSheet;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
},
|
||||
|
||||
//
|
||||
// Status timeout management
|
||||
//
|
||||
get statusTimeoutPref()
|
||||
{
|
||||
delete this.statusTimeoutPref;
|
||||
return this.statusTimeoutPref = document.getElementById("status4evar-pref-status-timeout");
|
||||
},
|
||||
|
||||
get statusTimeoutCheckbox()
|
||||
{
|
||||
delete this.statusTimeoutCheckbox;
|
||||
return this.statusTimeoutCheckbox = document.getElementById("status4evar-status-timeout-check");
|
||||
},
|
||||
|
||||
statusTimeoutChanged: function()
|
||||
{
|
||||
if(this.statusTimeoutPref.value > 0)
|
||||
{
|
||||
this.statusTimeoutPref.disabled = false;
|
||||
this.statusTimeoutCheckbox.checked = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.statusTimeoutPref.disabled = true;
|
||||
this.statusTimeoutCheckbox.checked = false;
|
||||
}
|
||||
},
|
||||
|
||||
statusTimeoutSync: function()
|
||||
{
|
||||
this.statusTimeoutChanged();
|
||||
return undefined;
|
||||
},
|
||||
|
||||
statusTimeoutToggle: function()
|
||||
{
|
||||
if(this.statusTimeoutPref.disabled == this.statusTimeoutCheckbox.checked)
|
||||
{
|
||||
if(this.statusTimeoutCheckbox.checked)
|
||||
{
|
||||
this.statusTimeoutPref.value = 10;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.statusTimeoutPref.value = 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// Status network management
|
||||
//
|
||||
get statusNetworkPref()
|
||||
{
|
||||
delete this.statusNetworkPref;
|
||||
return this.statusNetworkPref = document.getElementById("status4evar-pref-status-network");
|
||||
},
|
||||
|
||||
get statusNetworkXHRPref()
|
||||
{
|
||||
delete this.statusNetworkXHRPref;
|
||||
return this.statusNetworkXHRPref = document.getElementById("status4evar-pref-status-network-xhr");
|
||||
},
|
||||
|
||||
statusNetworkChanged: function()
|
||||
{
|
||||
this.statusNetworkXHRPref.disabled = ! this.statusNetworkPref.value;
|
||||
},
|
||||
|
||||
statusNetworkSync: function()
|
||||
{
|
||||
this.statusNetworkChanged();
|
||||
return undefined;
|
||||
},
|
||||
|
||||
//
|
||||
// Status Text langth managment
|
||||
//
|
||||
get textMaxLengthPref()
|
||||
{
|
||||
delete this.textMaxLengthPref;
|
||||
return this.textMaxLengthPref = document.getElementById("status4evar-pref-status-toolbar-maxLength");
|
||||
},
|
||||
|
||||
get textMaxLengthCheckbox()
|
||||
{
|
||||
delete this.textMaxLengthCheckbox;
|
||||
return this.textMaxLengthCheckbox = document.getElementById("status4evar-status-toolbar-maxLength-check");
|
||||
},
|
||||
|
||||
textLengthChanged: function()
|
||||
{
|
||||
if(this.textMaxLengthPref.value > 0)
|
||||
{
|
||||
this.textMaxLengthPref.disabled = false;
|
||||
this.textMaxLengthCheckbox.checked = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.textMaxLengthPref.disabled = true;
|
||||
this.textMaxLengthCheckbox.checked = false;
|
||||
}
|
||||
},
|
||||
|
||||
textLengthSync: function()
|
||||
{
|
||||
this.textLengthChanged();
|
||||
return undefined;
|
||||
},
|
||||
|
||||
textLengthToggle: function()
|
||||
{
|
||||
if(this.textMaxLengthPref.disabled == this.textMaxLengthCheckbox.checked)
|
||||
{
|
||||
if(this.textMaxLengthCheckbox.checked)
|
||||
{
|
||||
this.textMaxLengthPref.value = 800;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.textMaxLengthPref.value = 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// Toolbar progress style management
|
||||
//
|
||||
get progressToolbarStylePref()
|
||||
{
|
||||
delete this.progressToolbarStylePref;
|
||||
return this.progressToolbarStylePref = document.getElementById("status4evar-pref-progress-toolbar-style");
|
||||
},
|
||||
|
||||
get progressToolbarCSSPref()
|
||||
{
|
||||
delete this.progressToolbarCSSPref;
|
||||
return this.progressToolbarCSSPref = document.getElementById("status4evar-pref-progress-toolbar-css");
|
||||
},
|
||||
|
||||
get progressToolbarProgress()
|
||||
{
|
||||
delete this.progressToolbarProgress;
|
||||
return this.progressToolbarProgress = document.getElementById("status4evar-progress-bar");
|
||||
},
|
||||
|
||||
progressToolbarCSSChanged: function()
|
||||
{
|
||||
if(!this.progressToolbarCSSPref.value)
|
||||
{
|
||||
this.progressToolbarCSSPref.value = "#33FF33";
|
||||
}
|
||||
this.dynamicProgressStyle.cssRules[1].style.background = this.progressToolbarCSSPref.value;
|
||||
},
|
||||
|
||||
progressToolbarStyleChanged: function()
|
||||
{
|
||||
this.progressToolbarCSSChanged();
|
||||
this.progressToolbarCSSPref.disabled = !this.progressToolbarStylePref.value;
|
||||
if(this.progressToolbarStylePref.value)
|
||||
{
|
||||
this.progressToolbarProgress.setAttribute("s4estyle", true);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.progressToolbarProgress.removeAttribute("s4estyle");
|
||||
}
|
||||
},
|
||||
|
||||
progressToolbarStyleSync: function()
|
||||
{
|
||||
this.progressToolbarStyleChanged();
|
||||
return undefined;
|
||||
},
|
||||
|
||||
//
|
||||
// Download progress management
|
||||
//
|
||||
get downloadProgressCheck()
|
||||
{
|
||||
delete this.downloadProgressCheck;
|
||||
return this.downloadProgressCheck = document.getElementById("status4evar-download-progress-check");
|
||||
},
|
||||
|
||||
get downloadProgressPref()
|
||||
{
|
||||
delete this.downloadProgressPref;
|
||||
return this.downloadProgressPref = document.getElementById("status4evar-pref-download-progress");
|
||||
},
|
||||
|
||||
get downloadProgressColorActivePref()
|
||||
{
|
||||
delete this.downloadProgressActiveColorPref;
|
||||
return this.downloadProgressActiveColorPref = document.getElementById("status4evar-pref-download-color-active");
|
||||
},
|
||||
|
||||
get downloadProgressColorPausedPref()
|
||||
{
|
||||
delete this.downloadProgressPausedColorPref;
|
||||
return this.downloadProgressPausedColorPref = document.getElementById("status4evar-pref-download-color-paused");
|
||||
},
|
||||
|
||||
downloadProgressSync: function()
|
||||
{
|
||||
let val = this.downloadProgressPref.value;
|
||||
this.downloadProgressColorActivePref.disabled = (val == 0);
|
||||
this.downloadProgressColorPausedPref.disabled = (val == 0);
|
||||
this.downloadProgressPref.disabled = (val == 0);
|
||||
this.downloadProgressCheck.checked = (val != 0);
|
||||
return ((val == 0) ? 1 : val);
|
||||
},
|
||||
|
||||
downloadProgressToggle: function()
|
||||
{
|
||||
let enabled = this.downloadProgressCheck.checked;
|
||||
this.downloadProgressPref.value = ((enabled) ? 1 : 0);
|
||||
},
|
||||
|
||||
//
|
||||
// Pref Window load
|
||||
//
|
||||
get downloadButtonActionCommandPref()
|
||||
{
|
||||
delete this.downloadButtonActionCommandPref;
|
||||
return this.downloadButtonActionCommandPref = document.getElementById("status4evar-pref-download-button-action-command");
|
||||
},
|
||||
|
||||
get downloadButtonActionThirdPartyItem()
|
||||
{
|
||||
delete this.downloadButtonActionThirdPartyItem;
|
||||
return this.downloadButtonActionThirdPartyItem = document.getElementById("status4evar-download-button-action-menu-thirdparty");
|
||||
},
|
||||
|
||||
onPrefWindowLoad: function()
|
||||
{
|
||||
if(!this.downloadButtonActionCommandPref.value)
|
||||
{
|
||||
this.downloadButtonActionThirdPartyItem.disabled = true;
|
||||
}
|
||||
},
|
||||
|
||||
onPrefWindowUnLoad: function()
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
var XULBrowserWindow = {
|
||||
}
|
||||
|
||||
704
application/palemoon/components/statusbar/content/prefs.xml
Normal file
704
application/palemoon/components/statusbar/content/prefs.xml
Normal file
|
|
@ -0,0 +1,704 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!-- This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
|
||||
|
||||
<!DOCTYPE bindings SYSTEM "chrome://browser/locale/statusbar/statusbar-prefs.dtd">
|
||||
|
||||
<bindings id="status4evar-prefs-bindings"
|
||||
xmlns="http://www.mozilla.org/xbl"
|
||||
xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
xmlns:xbl="http://www.mozilla.org/xbl">
|
||||
|
||||
<binding id="css-bg-editor">
|
||||
<content sizetopopup="pref">
|
||||
<xul:vbox flex="1">
|
||||
<xul:deck anonid="css-bg-editor-deck" flex="1">
|
||||
<xul:vbox>
|
||||
<xul:hbox align="center">
|
||||
<xul:label xbl:inherits="disabled">&status4evar.editor.css.color.label;</xul:label>
|
||||
<xul:colorpicker anonid="css-bg-editor-color" type="button" onchange="this._editor._buildCSS();" xbl:inherits="disabled" />
|
||||
</xul:hbox>
|
||||
|
||||
<xul:hbox align="center">
|
||||
<xul:label xbl:inherits="disabled">&status4evar.editor.css.image.label;</xul:label>
|
||||
<xul:textbox anonid="css-bg-editor-image" readonly="true" flex="1" xbl:inherits="disabled" />
|
||||
<xul:button anonid="css-bg-editor-image-browse" label="&status4evar.option.browse;" oncommand="this._editor._imageBrowse();" xbl:inherits="disabled" />
|
||||
</xul:hbox>
|
||||
<xul:hbox align="center" pack="end">
|
||||
<xul:button anonid="css-bg-editor-image-clear" label="&status4evar.option.clear;" oncommand="this._editor._imageClear();" xbl:inherits="disabled=no-image" />
|
||||
</xul:hbox>
|
||||
|
||||
<xul:hbox>
|
||||
<xul:groupbox pack="center">
|
||||
<xul:caption label="" />
|
||||
<xul:hbox flex="1" align="center">
|
||||
<xul:label>X</xul:label>
|
||||
</xul:hbox>
|
||||
<xul:separator class="groove" orient="horizontal" />
|
||||
<xul:hbox flex="1" align="center">
|
||||
<xul:label>Y</xul:label>
|
||||
</xul:hbox>
|
||||
</xul:groupbox>
|
||||
|
||||
<xul:groupbox>
|
||||
<xul:caption label="&status4evar.editor.css.image.repeat;" xbl:inherits="disabled=no-image" />
|
||||
<xul:menulist anonid="css-bg-editor-image-repeat-x" sizetopopup="always" onselect="this._editor._buildCSS();" xbl:inherits="disabled=no-image">
|
||||
<xul:menupopup>
|
||||
<xul:menuitem label="&status4evar.option.no-repeat;" value="no-repeat" />
|
||||
<xul:menuitem label="&status4evar.option.repeat;" value="repeat" />
|
||||
<!--
|
||||
<xul:menuitem label="&status4evar.option.space;" value="space" />
|
||||
<xul:menuitem label="&status4evar.option.round;" value="round" />
|
||||
-->
|
||||
</xul:menupopup>
|
||||
</xul:menulist>
|
||||
<xul:separator class="groove" orient="horizontal" />
|
||||
<xul:menulist anonid="css-bg-editor-image-repeat-y" sizetopopup="always" onselect="this._editor._buildCSS();" xbl:inherits="disabled=no-image">
|
||||
<xul:menupopup>
|
||||
<xul:menuitem label="&status4evar.option.no-repeat;" value="no-repeat" />
|
||||
<xul:menuitem label="&status4evar.option.repeat;" value="repeat" />
|
||||
<!--
|
||||
<xul:menuitem label="&status4evar.option.space;" value="space" />
|
||||
<xul:menuitem label="&status4evar.option.round;" value="round" />
|
||||
-->
|
||||
</xul:menupopup>
|
||||
</xul:menulist>
|
||||
</xul:groupbox>
|
||||
|
||||
<xul:groupbox>
|
||||
<xul:caption label="&status4evar.editor.css.image.position;" xbl:inherits="disabled=no-image" />
|
||||
<xul:menulist anonid="css-bg-editor-image-position-x" sizetopopup="always" onselect="this._editor._updatePositionX();" xbl:inherits="disabled=no-image">
|
||||
<xul:menupopup>
|
||||
<xul:menuitem label="&status4evar.option.left;" value="left" />
|
||||
<xul:menuitem label="&status4evar.option.center;" value="center" />
|
||||
<xul:menuitem label="&status4evar.option.right;" value="right" />
|
||||
<xul:menuitem label="&status4evar.option.offset;" value="offset" />
|
||||
</xul:menupopup>
|
||||
</xul:menulist>
|
||||
<xul:separator class="groove" orient="horizontal" />
|
||||
<xul:menulist anonid="css-bg-editor-image-position-y" sizetopopup="always" onselect="this._editor._updatePositionY();" xbl:inherits="disabled=no-image">
|
||||
<xul:menupopup>
|
||||
<xul:menuitem label="&status4evar.option.top;" value="top" />
|
||||
<xul:menuitem label="&status4evar.option.center;" value="center" />
|
||||
<xul:menuitem label="&status4evar.option.bottom;" value="bottom" />
|
||||
<xul:menuitem label="&status4evar.option.offset;" value="offset" />
|
||||
</xul:menupopup>
|
||||
</xul:menulist>
|
||||
</xul:groupbox>
|
||||
|
||||
<xul:groupbox>
|
||||
<xul:caption label="&status4evar.editor.css.image.offset;" xbl:inherits="disabled=no-image" />
|
||||
<xul:hbox>
|
||||
<xul:textbox anonid="css-bg-editor-image-offset-x" type="number" size="4" min="-65535" onchange="this._editor._buildCSS();" />
|
||||
<xul:menulist anonid="css-bg-editor-image-offset-unit-x" sizetopopup="always" onselect="this._editor._buildCSS();">
|
||||
<xul:menupopup>
|
||||
<xul:menuitem label="%" value="%" />
|
||||
<xul:menuitem label="px" value="px" />
|
||||
<xul:menuitem label="em" value="em" />
|
||||
<xul:menuitem label="in" value="in" />
|
||||
<xul:menuitem label="cm" value="cm" />
|
||||
<xul:menuitem label="mm" value="mm" />
|
||||
<xul:menuitem label="pt" value="pt" />
|
||||
<xul:menuitem label="pc" value="pc" />
|
||||
</xul:menupopup>
|
||||
</xul:menulist>
|
||||
</xul:hbox>
|
||||
<xul:separator class="groove" orient="horizontal" />
|
||||
<xul:hbox>
|
||||
<xul:textbox anonid="css-bg-editor-image-offset-y" type="number" size="4" min="-65535" onchange="this._editor._buildCSS();" />
|
||||
<xul:menulist anonid="css-bg-editor-image-offset-unit-y" sizetopopup="always" onselect="this._editor._buildCSS();">
|
||||
<xul:menupopup>
|
||||
<xul:menuitem label="%" value="%" />
|
||||
<xul:menuitem label="px" value="px" />
|
||||
<xul:menuitem label="em" value="em" />
|
||||
<xul:menuitem label="in" value="in" />
|
||||
<xul:menuitem label="cm" value="cm" />
|
||||
<xul:menuitem label="mm" value="mm" />
|
||||
<xul:menuitem label="pt" value="pt" />
|
||||
<xul:menuitem label="pc" value="pc" />
|
||||
</xul:menupopup>
|
||||
</xul:menulist>
|
||||
</xul:hbox>
|
||||
</xul:groupbox>
|
||||
</xul:hbox>
|
||||
</xul:vbox>
|
||||
|
||||
<xul:textbox anonid="css-bg-editor-css-text" multiline="true" rows="6" xbl:inherits="disabled" />
|
||||
</xul:deck>
|
||||
</xul:vbox>
|
||||
|
||||
<xul:hbox align="center" pack="end">
|
||||
<children includes="progressmeter|toolbox" />
|
||||
<xul:label xbl:inherits="disabled">&status4evar.editor.label;</xul:label>
|
||||
<xul:menulist anonid="css-bg-editor-mode-menu" sizetopopup="always" onselect="this._editor._updateMode();" xbl:inherits="disabled">
|
||||
<xul:menupopup>
|
||||
<xul:menuitem label="&status4evar.option.simple;" />
|
||||
<xul:menuitem label="&status4evar.option.advanced;" />
|
||||
</xul:menupopup>
|
||||
</xul:menulist>
|
||||
</xul:hbox>
|
||||
</content>
|
||||
|
||||
<implementation>
|
||||
<constructor><![CDATA[
|
||||
[
|
||||
"_editorColor",
|
||||
"_editorImageBrowse",
|
||||
"_editorImageClear",
|
||||
"_editorImageRepeatX",
|
||||
"_editorImageRepeatY",
|
||||
"_editorImagePositionX",
|
||||
"_editorImagePositionY",
|
||||
"_editorImageOffsetX",
|
||||
"_editorImageOffsetY",
|
||||
"_editorImageOffsetUnitX",
|
||||
"_editorImageOffsetUnitY",
|
||||
"_editorMode"
|
||||
].forEach(function(prop)
|
||||
{
|
||||
this[prop]._editor = this;
|
||||
}, this);
|
||||
|
||||
this.setAdvanced(true, false);
|
||||
]]></constructor>
|
||||
|
||||
<destructor><![CDATA[
|
||||
]]></destructor>
|
||||
|
||||
<field name="_disableBuildCSS"><![CDATA[
|
||||
true
|
||||
]]></field>
|
||||
|
||||
<field name="_editorColor" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-color");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorCSS" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-css-text");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorDeck" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-deck");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImage" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImageBrowse" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image-browse");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImageClear" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image-clear");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImageRepeatX" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image-repeat-x");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImageRepeatY" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image-repeat-y");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImagePositionX" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image-position-x");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImagePositionY" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image-position-y");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImageOffsetX" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image-offset-x");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImageOffsetY" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image-offset-y");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImageOffsetUnitX" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image-offset-unit-x");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorImageOffsetUnitY" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-image-offset-unit-y");
|
||||
]]></field>
|
||||
|
||||
<field name="_editorMode" readonly="true"><![CDATA[
|
||||
document.getAnonymousElementByAttribute(this, "anonid", "css-bg-editor-mode-menu");
|
||||
]]></field>
|
||||
|
||||
<field name="_initialized"><![CDATA[
|
||||
false
|
||||
]]></field>
|
||||
|
||||
<field name="_reRGB" readonly="true"><![CDATA[
|
||||
/^rgb\((\d+), (\d+), (\d+)\)$/
|
||||
]]></field>
|
||||
|
||||
<field name="_reURL" readonly="true"><![CDATA[
|
||||
/^url\(\s*['"]?(.+?)['"]?\s*\)$/
|
||||
]]></field>
|
||||
|
||||
<field name="_reBgPosition" readonly="true"><![CDATA[
|
||||
/^(left|center|right)? ?(-?\d+[^\s\d]+)? ?(top|center|bottom)? ?(-?\d+[^\s\d]+)?$/
|
||||
]]></field>
|
||||
|
||||
<field name="_reCSSUnit" readonly="true"><![CDATA[
|
||||
/^(-?\d+)([^\s\d]+)$/
|
||||
]]></field>
|
||||
|
||||
<field name="_strings" readonly="true"><![CDATA[
|
||||
document.getElementById("bundle_status4evar");
|
||||
]]></field>
|
||||
|
||||
<property name="value">
|
||||
<getter><![CDATA[
|
||||
return this._editorCSS.value;
|
||||
]]></getter>
|
||||
<setter><![CDATA[
|
||||
this._editorCSS.value = val;
|
||||
|
||||
if(!this._initialized)
|
||||
{
|
||||
this.setAdvanced(false, false);
|
||||
this._initialized = true;
|
||||
}
|
||||
|
||||
return val;
|
||||
]]></setter>
|
||||
</property>
|
||||
|
||||
<property name="disabled">
|
||||
<getter><![CDATA[
|
||||
return this.getAttribute("disabled") == "true";
|
||||
]]></getter>
|
||||
<setter><![CDATA[
|
||||
if(val)
|
||||
{
|
||||
this.setAttribute("disabled", "true");
|
||||
}
|
||||
else
|
||||
{
|
||||
this.removeAttribute("disabled");
|
||||
}
|
||||
|
||||
this._updateImageControllDisable();
|
||||
|
||||
return val;
|
||||
]]></setter>
|
||||
</property>
|
||||
|
||||
<method name="setAdvanced">
|
||||
<parameter name="aVal"/>
|
||||
<parameter name="aPrompt"/>
|
||||
<body><![CDATA[
|
||||
if(!aVal)
|
||||
{
|
||||
let success = this._parseCSS();
|
||||
if(!success)
|
||||
{
|
||||
let result = aPrompt && Services.prompt.confirm(window,
|
||||
this._strings.getString("simpleEditorTitle"),
|
||||
this._strings.getString("simpleEditorMessage"));
|
||||
if(result)
|
||||
{ // Continue to simple mode
|
||||
this._buildCSS();
|
||||
}
|
||||
else
|
||||
{ // Stay on advanced mode
|
||||
aVal = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this._disableBuildCSS = aVal;
|
||||
this._editorDeck.selectedIndex = ((aVal) ? 1 : 0);
|
||||
this._editorMode.selectedIndex = ((aVal) ? 1 : 0);
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_buildCSS">
|
||||
<body><![CDATA[
|
||||
if(this._disableBuildCSS)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
let cssVal = this._editorColor.color;
|
||||
let imgVal = this._editorImage.value;
|
||||
if(imgVal)
|
||||
{
|
||||
cssVal += " url(\"" + imgVal + "\")";
|
||||
|
||||
//
|
||||
// Print the background repeat
|
||||
//
|
||||
let bgRX = this._editorImageRepeatX.value;
|
||||
let bgRY = this._editorImageRepeatY.value;
|
||||
if(bgRX == "repeat" && bgRY == "no-repeat")
|
||||
{
|
||||
cssVal += " repeat-x";
|
||||
}
|
||||
else if(bgRX == "no-repeat" && bgRY == "repeat")
|
||||
{
|
||||
cssVal += " repeat-y";
|
||||
}
|
||||
else
|
||||
{
|
||||
cssVal += " " + bgRX;
|
||||
if(bgRX != bgRY)
|
||||
{
|
||||
cssVal += " " + bgRY;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Print the background position
|
||||
//
|
||||
let bgPX = this._editorImagePositionX.value;
|
||||
let bgPOX = this._editorImageOffsetX.value;
|
||||
if(bgPX != "offset")
|
||||
{
|
||||
cssVal += " " + bgPX;
|
||||
}
|
||||
else
|
||||
{
|
||||
cssVal += " " + bgPOX + this._editorImageOffsetUnitX.value;
|
||||
}
|
||||
|
||||
let bgPY = this._editorImagePositionY.value;
|
||||
let bgPOY = this._editorImageOffsetY.value;
|
||||
if(bgPY != "offset")
|
||||
{
|
||||
cssVal += " " + bgPY;
|
||||
}
|
||||
else
|
||||
{
|
||||
cssVal += " " + bgPOY + this._editorImageOffsetUnitY.value;
|
||||
}
|
||||
}
|
||||
|
||||
this._editorCSS.value = cssVal;
|
||||
|
||||
let event = document.createEvent("Event");
|
||||
event.initEvent("change", true, true);
|
||||
this._editorCSS.dispatchEvent(event);
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_parseCSS">
|
||||
<body><![CDATA[
|
||||
let retVal = true;
|
||||
|
||||
let cssParser = document.createElement("div");
|
||||
cssParser.style.background = this._editorCSS.value;
|
||||
if(!cssParser.style.background)
|
||||
{
|
||||
Components.utils.reportError("Error parsing background CSS rule: " + this._editorCSS.value);
|
||||
cssParser.style.background = "#33FF33";
|
||||
retVal = false;
|
||||
}
|
||||
|
||||
//
|
||||
// Parse the background color
|
||||
//
|
||||
let bgC = cssParser.style.backgroundColor;
|
||||
if(this._reRGB.test(bgC))
|
||||
{
|
||||
let digits = this._reRGB.exec(bgC);
|
||||
|
||||
let red = parseInt(digits[1]);
|
||||
let green = parseInt(digits[2]);
|
||||
let blue = parseInt(digits[3]);
|
||||
|
||||
let rgb = blue | (green << 8) | (red << 16);
|
||||
bgC = "#" + rgb.toString(16);
|
||||
}
|
||||
else
|
||||
{
|
||||
Components.utils.reportError("Error parsing background-color value: " + bgC);
|
||||
bgC = "#33FF33";
|
||||
retVal = false;
|
||||
}
|
||||
|
||||
//
|
||||
// Parse the background image
|
||||
//
|
||||
let bgI = cssParser.style.backgroundImage;
|
||||
if(bgI != "none" && !this._reURL.test(bgI))
|
||||
{
|
||||
Components.utils.reportError("Error parsing background-image value: " + bgI);
|
||||
bgI = "none";
|
||||
retVal = false;
|
||||
}
|
||||
bgI = ((bgI != "none") ? this._reURL.exec(bgI)[1].trim() : "");
|
||||
|
||||
//
|
||||
// Parse the background repeat
|
||||
//
|
||||
let bgR = cssParser.style.backgroundRepeat.split(" ");
|
||||
let bgRX = bgR[0];
|
||||
if(bgRX == "repeat-x")
|
||||
{
|
||||
bgRX = "repeat";
|
||||
}
|
||||
else if(bgRX == "repeat-y")
|
||||
{
|
||||
bgRX = "no-repeat";
|
||||
}
|
||||
|
||||
let bgRY = bgR[bgR.length - 1];
|
||||
if(bgRY == "repeat-x")
|
||||
{
|
||||
bgRY = "no-repeat";
|
||||
}
|
||||
else if(bgRY == "repeat-y")
|
||||
{
|
||||
bgRY = "repeat";
|
||||
}
|
||||
|
||||
//
|
||||
// Parse the background position
|
||||
//
|
||||
let bgP = cssParser.style.backgroundPosition;
|
||||
let bgPParts = this._reBgPosition.exec(bgP);
|
||||
let bgPValues = new Array();
|
||||
for(let i = 1; i <= 4; i++)
|
||||
{
|
||||
if(bgPParts[i])
|
||||
{
|
||||
bgPValues.push({
|
||||
"value": bgPParts[i],
|
||||
"group": i
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
if(bgPValues.length == 1)
|
||||
{
|
||||
bgPValues.splice(((bgPValues[0].group == 2) ? 0 : 1), 0, {
|
||||
"value": "center",
|
||||
"group": ((bgPValues[0].group == 2) ? 0 : 2)
|
||||
});
|
||||
}
|
||||
|
||||
if(bgPValues.length == 2 && bgPValues[1].group == 2)
|
||||
{
|
||||
bgPValues[1].group = 4;
|
||||
}
|
||||
|
||||
for(let i = 0; i < 4; i++)
|
||||
{
|
||||
let group = (i + 1);
|
||||
if(bgPValues[i] != undefined && bgPValues[i].group == group)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
let tmp = "0px";
|
||||
switch(i)
|
||||
{
|
||||
case 0:
|
||||
tmp = "offset";
|
||||
break;
|
||||
case 2:
|
||||
tmp = "offset";
|
||||
break;
|
||||
}
|
||||
|
||||
bgPValues.splice(i, 0, {
|
||||
"value": tmp,
|
||||
"group": group
|
||||
});
|
||||
}
|
||||
|
||||
let bgPOXParts = this._reCSSUnit.exec(bgPValues[1].value);
|
||||
let bgPOYParts = this._reCSSUnit.exec(bgPValues[3].value);
|
||||
|
||||
//
|
||||
// Parse the background size
|
||||
//
|
||||
|
||||
//
|
||||
// Initialize the UI
|
||||
//
|
||||
let disableBuildCSS = this._disableBuildCSS;
|
||||
this._disableBuildCSS = true;
|
||||
|
||||
this._editorColor.color = bgC;
|
||||
this._editorImage.value = bgI;
|
||||
this._editorImageOffsetX.value = bgPOXParts[1];
|
||||
this._editorImageOffsetY.value = bgPOYParts[1];
|
||||
|
||||
[
|
||||
[this._editorImageRepeatX, bgRX, "repeat", "repeat X"],
|
||||
[this._editorImageRepeatY, bgRY, "repeat", "repeat Y"],
|
||||
[this._editorImagePositionX, bgPValues[0].value, "left", "position X"],
|
||||
[this._editorImagePositionY, bgPValues[2].value, "top", "position Y"],
|
||||
[this._editorImageOffsetUnitX, bgPOXParts[2], "px", "offset X unit"],
|
||||
[this._editorImageOffsetUnitY, bgPOYParts[2], "px", "offset Y unit"]
|
||||
].forEach(function(info)
|
||||
{
|
||||
if(!this._setSelectedItemSafe(info[0], info[1], info[2]))
|
||||
{
|
||||
Components.utils.reportError("Error setting " + info[3] + " to " + info[1]);
|
||||
retVal = false;
|
||||
}
|
||||
}, this);
|
||||
|
||||
this._updateImageControllDisable();
|
||||
|
||||
this._disableBuildCSS = disableBuildCSS;
|
||||
|
||||
return retVal;
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_imageBrowse">
|
||||
<body><![CDATA[
|
||||
let nsIFilePicker = Components.interfaces.nsIFilePicker;
|
||||
let filePicker = Components.classes["@mozilla.org/filepicker;1"].createInstance(nsIFilePicker);
|
||||
filePicker.init(window, this._strings.getString("imageSelectTitle"), nsIFilePicker.modeOpen);
|
||||
filePicker.appendFilters(nsIFilePicker.filterImages);
|
||||
|
||||
let res = filePicker.show();
|
||||
if(res == nsIFilePicker.returnOK)
|
||||
{
|
||||
this._editorImage.value = Services.io.newFileURI(filePicker.file).spec;
|
||||
this._updateImageControllDisable();
|
||||
this._buildCSS();
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_imageClear">
|
||||
<body><![CDATA[
|
||||
this._editorImage.value = "";
|
||||
this._editorImageRepeatX.value = "repeat";
|
||||
this._editorImageRepeatY.value = "repeat";
|
||||
this._editorImagePositionX.value = "left";
|
||||
this._editorImagePositionY.value = "top";
|
||||
this._editorImageOffsetX.value = 0;
|
||||
this._editorImageOffsetY.value = 0;
|
||||
this._editorImageOffsetUnitX.value = "px";
|
||||
this._editorImageOffsetUnitY.value = "px";
|
||||
this._updateImageControllDisable();
|
||||
this._buildCSS();
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_processEvent">
|
||||
<parameter name="event"/>
|
||||
<body><![CDATA[
|
||||
if(!("css-bg-editor-css-text" == event.originalTarget.getAttribute("anonid")
|
||||
|| "css-bg-editor-css-text" == document.getBindingParent(event.originalTarget).getAttribute("anonid")))
|
||||
{
|
||||
event.stopPropagation();
|
||||
}
|
||||
|
||||
//Components.utils.reportError("Editor event " + event.type + " on " + event.originalTarget.tagName + "::" + event.originalTarget.getAttribute("anonid"));
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_setSelectedItemSafe">
|
||||
<parameter name="aElement"/>
|
||||
<parameter name="aValue"/>
|
||||
<parameter name="aDefault"/>
|
||||
<body><![CDATA[
|
||||
aElement.value = aValue;
|
||||
if(!aElement.selectedItem || aElement.selectedItem.value != aValue)
|
||||
{
|
||||
aElement.value = aDefault;
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_updateImageControllDisable">
|
||||
<body><![CDATA[
|
||||
if(this.disabled || !this._editorImage.value)
|
||||
{
|
||||
this.setAttribute("no-image", "true");
|
||||
this._updatePositionOffsetXDisabled(true);
|
||||
this._updatePositionOffsetYDisabled(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.removeAttribute("no-image");
|
||||
this._updatePositionOffsetXDisabled(false);
|
||||
this._updatePositionOffsetYDisabled(false);
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_updateMode">
|
||||
<body><![CDATA[
|
||||
if(this._editorMode.selectedIndex == this._editorDeck.selectedIndex)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
this.setAdvanced(((this._editorMode.selectedIndex == 1) ? true : false), true);
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_updatePositionOffsetXDisabled">
|
||||
<parameter name="aVal"/>
|
||||
<body><![CDATA[
|
||||
let bgPX = this._editorImagePositionX.value;
|
||||
let disableOffsetX = aVal || (bgPX != "offset");// || bgPX == "center");
|
||||
this._editorImageOffsetX.disabled = disableOffsetX;
|
||||
this._editorImageOffsetUnitX.disabled = disableOffsetX;
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_updatePositionOffsetYDisabled">
|
||||
<parameter name="aVal"/>
|
||||
<body><![CDATA[
|
||||
let bgPY = this._editorImagePositionY.value;
|
||||
var disableOffsetY = aVal || (bgPY != "offset");// || bgPY == "center");
|
||||
this._editorImageOffsetY.disabled = disableOffsetY;
|
||||
this._editorImageOffsetUnitY.disabled = disableOffsetY;
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_updatePositionX">
|
||||
<body><![CDATA[
|
||||
this._updatePositionOffsetXDisabled(false);
|
||||
this._buildCSS();
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_updatePositionY">
|
||||
<body><![CDATA[
|
||||
this._updatePositionOffsetYDisabled(false);
|
||||
this._buildCSS();
|
||||
]]></body>
|
||||
</method>
|
||||
</implementation>
|
||||
|
||||
<handlers>
|
||||
<handler event="command"><![CDATA[
|
||||
this._processEvent(event);
|
||||
]]></handler>
|
||||
|
||||
<handler event="change"><![CDATA[
|
||||
this._processEvent(event);
|
||||
]]></handler>
|
||||
|
||||
<handler event="input"><![CDATA[
|
||||
this._processEvent(event);
|
||||
]]></handler>
|
||||
|
||||
<handler event="select"><![CDATA[
|
||||
this._processEvent(event);
|
||||
]]></handler>
|
||||
</handlers>
|
||||
</binding>
|
||||
</bindings>
|
||||
|
||||
297
application/palemoon/components/statusbar/content/prefs.xul
Normal file
297
application/palemoon/components/statusbar/content/prefs.xul
Normal file
|
|
@ -0,0 +1,297 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!-- This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
|
||||
|
||||
<!DOCTYPE prefwindow [
|
||||
<!ENTITY % prefsDTD SYSTEM "chrome://browser/locale/statusbar/statusbar-prefs.dtd">
|
||||
%prefsDTD;
|
||||
]>
|
||||
|
||||
<?xml-stylesheet href="chrome://global/skin/config.css" type="text/css" ?>
|
||||
<?xml-stylesheet href="chrome://browser/skin/browser.css" type="text/css" ?>
|
||||
|
||||
<?xml-stylesheet href="chrome://browser/content/statusbar/overlay.css" type="text/css" ?>
|
||||
<?xml-stylesheet href="chrome://browser/skin/statusbar/overlay.css" type="text/css" ?>
|
||||
<?xml-stylesheet href="chrome://browser/skin/statusbar/dynamic.css" type="text/css" ?>
|
||||
|
||||
<?xml-stylesheet href="chrome://browser/content/statusbar/prefs.css" type="text/css" ?>
|
||||
<?xml-stylesheet href="chrome://browser/skin/statusbar/prefs.css" type="text/css" ?>
|
||||
|
||||
<prefwindow id="status4evar-prefs" title="&status4evar.window.title;"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
onload="status4evarPrefs.onPrefWindowLoad();" onunload="status4evarPrefs.onPrefWindowUnLoad();">
|
||||
|
||||
<stringbundleset id="stringbundleset">
|
||||
<stringbundle id="bundle_status4evar" src="chrome://browser/locale/statusbar/prefs.properties" />
|
||||
</stringbundleset>
|
||||
<script type="application/javascript" src="chrome://browser/content/statusbar/prefs.js" />
|
||||
|
||||
<prefpane id="status4evar-pane-status" label="&status4evar.pane.status;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-status" name="status4evar.status" type="int" />
|
||||
<preference id="status4evar-pref-status-default" name="status4evar.status.default" type="bool" />
|
||||
<preference id="status4evar-pref-status-network" name="status4evar.status.network" type="bool"
|
||||
onchange="status4evarPrefs.statusNetworkChanged();" />
|
||||
<preference id="status4evar-pref-status-network-xhr" name="status4evar.status.network.xhr" type="bool" />
|
||||
<preference id="status4evar-pref-status-timeout" name="status4evar.status.timeout" type="int"
|
||||
onchange="status4evarPrefs.statusTimeoutChanged();" />
|
||||
<preference id="status4evar-pref-status-linkOver" name="status4evar.status.linkOver" type="int" />
|
||||
<preference id="status4evar-pref-status-linkOver-delay-show" name="status4evar.status.linkOver.delay.show" type="int" />
|
||||
<preference id="status4evar-pref-status-linkOver-delay-hide" name="status4evar.status.linkOver.delay.hide" type="int" />
|
||||
<preference id="status4evar-pref-status-toolbar-maxLength" name="status4evar.status.toolbar.maxLength" type="int"
|
||||
onchange="status4evarPrefs.textLengthChanged();" />
|
||||
<preference id="status4evar-pref-status-popup-invertMirror" name="status4evar.status.popup.invertMirror" type="bool" />
|
||||
<preference id="status4evar-pref-status-popup-mouseMirror" name="status4evar.status.popup.mouseMirror" type="bool" />
|
||||
<preference id="toolkit-pref-dom-status-change" name="dom.disable_window_status_change" type="bool" inverted="true" />
|
||||
</preferences>
|
||||
|
||||
<commandset id="status4evar-commandset-status">
|
||||
<command id="status4evar-command-status-timeout" oncommand="status4evarPrefs.statusTimeoutToggle();" />
|
||||
<command id="status4evar-command-status-toolbar-maxLength" oncommand="status4evarPrefs.textLengthToggle();" />
|
||||
</commandset>
|
||||
|
||||
<tabbox id="status4evar-tabbox-status" flex="1">
|
||||
<tabs id="status4evar-tabs-status">
|
||||
<tab id="status4evar-tab-status-general" label="&status4evar.tab.general;" />
|
||||
<tab id="status4evar-tab-status-toolbar" label="&status4evar.tab.toolbar;" />
|
||||
<tab id="status4evar-tab-status-popup" label="&status4evar.tab.popup;" />
|
||||
</tabs>
|
||||
|
||||
<tabpanels id="status4evar-tabpanels-status" flex="1">
|
||||
<tabpanel id="status4evar-tabpanel-status-general" orient="vertical">
|
||||
<groupbox id="status4evar-status-general-status">
|
||||
<caption label="&status4evar.status.general.status.caption;" />
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-label" control="status4evar-status-menu">&status4evar.status.label;</label>
|
||||
<menulist id="status4evar-status-menu" preference="status4evar-pref-status" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem label="&status4evar.option.none;" value="0" />
|
||||
<menuitem label="&status4evar.option.toolbar;" value="1" />
|
||||
<menuitem label="&status4evar.option.popup;" value="3" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<checkbox id="status4evar-status-timeout-check" label="&status4evar.status.timeout.label;"
|
||||
command="status4evar-command-status-timeout" />
|
||||
<textbox id="status4evar-status-timeout-value" preference="status4evar-pref-status-timeout" type="number" size="4"
|
||||
onsyncfrompreference="return status4evarPrefs.statusTimeoutSync();" />
|
||||
<label id="status4evar-status-timeout-unit">&status4evar.unit.seconds;</label>
|
||||
</hbox>
|
||||
|
||||
<checkbox id="status4evar-status-default-check" preference="status4evar-pref-status-default" label="&status4evar.status.default.label;" />
|
||||
|
||||
<checkbox id="status4evar-status-network-check" preference="status4evar-pref-status-network" label="&status4evar.status.network.label;"
|
||||
onsyncfrompreference="return status4evarPrefs.statusNetworkSync();" />
|
||||
|
||||
<hbox align="center" class="indent">
|
||||
<checkbox id="status4evar-status-network-xhr-check" preference="status4evar-pref-status-network-xhr" label="&status4evar.status.network.xhr.label;" />
|
||||
</hbox>
|
||||
|
||||
<checkbox id="toolkit-dom-status-change-check" preference="toolkit-pref-dom-status-change" label="&toolkit.dom.status.change.label;" />
|
||||
</groupbox>
|
||||
|
||||
<groupbox id="status4evar-status-general-linkOver">
|
||||
<caption label="&status4evar.status.general.linkOver.caption;" />
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-linkOver-label" control="status4evar-status-linkOver-menu">&status4evar.status.linkOver.label;</label>
|
||||
<menulist id="status4evar-status-linkOver-menu" preference="status4evar-pref-status-linkOver" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem label="&status4evar.option.none;" value="0" />
|
||||
<menuitem label="&status4evar.option.toolbar;" value="1" />
|
||||
<menuitem label="&status4evar.option.popup;" value="3" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-linkOver-delay-show-label" control="status4evar-status-linkOver-delay-show-value">&status4evar.status.linkOver.delay.show.label;</label>
|
||||
<textbox id="status4evar-status-linkOver-delay-show-value" preference="status4evar-pref-status-linkOver-delay-show" type="number" size="5" />
|
||||
<label id="status4evar-status-linkOver-delay-show-unit">&status4evar.unit.milliseconds;</label>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-linkOver-delay-hide-label" control="status4evar-status-linkOver-delay-hide-value">&status4evar.status.linkOver.delay.hide.label;</label>
|
||||
<textbox id="status4evar-status-linkOver-delay-hide-value" preference="status4evar-pref-status-linkOver-delay-hide" type="number" size="5" />
|
||||
<label id="status4evar-status-linkOver-delay-hide-unit">&status4evar.unit.milliseconds;</label>
|
||||
</hbox>
|
||||
</groupbox>
|
||||
|
||||
</tabpanel>
|
||||
|
||||
<tabpanel id="status4evar-tabpanel-status-toolbar" orient="vertical">
|
||||
<hbox align="center">
|
||||
<checkbox id="status4evar-status-toolbar-maxLength-check" label="&status4evar.status.toolbar.maxLength.label;"
|
||||
command="status4evar-command-status-toolbar-maxLength" />
|
||||
<textbox id="status4evar-status-toolbar-maxLength-value" preference="status4evar-pref-status-toolbar-maxLength" type="number" size="4"
|
||||
onsyncfrompreference="return status4evarPrefs.textLengthSync();" />
|
||||
<label id="status4evar-status-toolbar-maxLength-unit">&status4evar.unit.px;</label>
|
||||
</hbox>
|
||||
</tabpanel>
|
||||
|
||||
<tabpanel id="status4evar-tabpanel-status-popup" orient="vertical">
|
||||
<checkbox id="status4evar-status-popup-invertMirror-check" preference="status4evar-pref-status-popup-invertMirror" label="&status4evar.status.popup.invertMirror.label;" />
|
||||
|
||||
<checkbox id="status4evar-status-popup-mouseMirror-check" preference="status4evar-pref-status-popup-mouseMirror" label="&status4evar.status.popup.mouseMirror.label;" />
|
||||
</tabpanel>
|
||||
|
||||
</tabpanels>
|
||||
</tabbox>
|
||||
</prefpane>
|
||||
|
||||
<prefpane id="status4evar-pane-progress" label="&status4evar.pane.progress;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-progress-toolbar-force" name="status4evar.progress.toolbar.force" type="bool" />
|
||||
<preference id="status4evar-pref-progress-toolbar-style" name="status4evar.progress.toolbar.style" type="bool"
|
||||
onchange="status4evarPrefs.progressToolbarStyleChanged();" />
|
||||
<preference id="status4evar-pref-progress-toolbar-css" name="status4evar.progress.toolbar.css" type="string"
|
||||
onchange="status4evarPrefs.progressToolbarCSSChanged();" />
|
||||
</preferences>
|
||||
|
||||
<commandset id="status4evar-commandset-status">
|
||||
</commandset>
|
||||
|
||||
<checkbox id="status4evar-progress-toolbar-force-check" preference="status4evar-pref-progress-toolbar-force" label="&status4evar.progress.toolbar.force.label;" />
|
||||
|
||||
<checkbox id="status4evar-progress-toolbar-style-check" preference="status4evar-pref-progress-toolbar-style" label="&status4evar.progress.style.label;"
|
||||
onsyncfrompreference="return status4evarPrefs.progressToolbarStyleSync();" />
|
||||
|
||||
<vbox class="css-bg-editor" preference="status4evar-pref-progress-toolbar-css" preference-editable="true" flex="1">
|
||||
<progressmeter id="status4evar-progress-bar" value="75" flex="1" />
|
||||
</vbox>
|
||||
</prefpane>
|
||||
|
||||
<prefpane id="status4evar-pane-download" label="&status4evar.pane.download;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-download-button-action" name="status4evar.download.button.action" type="int" />
|
||||
<preference id="status4evar-pref-download-color-active" name="status4evar.download.color.active" type="string" />
|
||||
<preference id="status4evar-pref-download-color-paused" name="status4evar.download.color.paused" type="string" />
|
||||
<preference id="status4evar-pref-download-force" name="status4evar.download.force" type="bool" />
|
||||
<preference id="status4evar-pref-download-label" name="status4evar.download.label" type="int" />
|
||||
<preference id="status4evar-pref-download-label-force" name="status4evar.download.label.force" type="bool" />
|
||||
<preference id="status4evar-pref-download-notify-animate" name="status4evar.download.notify.animate" type="bool" />
|
||||
<preference id="status4evar-pref-download-notify-timeout" name="status4evar.download.notify.timeout" type="int" />
|
||||
<preference id="status4evar-pref-download-progress" name="status4evar.download.progress" type="int" />
|
||||
<preference id="status4evar-pref-download-tooltip" name="status4evar.download.tooltip" type="int" />
|
||||
|
||||
<preference id="status4evar-pref-download-button-action-command" name="status4evar.download.button.action.command" type="string"/>
|
||||
</preferences>
|
||||
|
||||
<commandset id="status4evar-commandset-download">
|
||||
<command id="status4evar-command-download-progress" oncommand="status4evarPrefs.downloadProgressToggle();" />
|
||||
</commandset>
|
||||
|
||||
<checkbox id="status4evar-download-force-check" preference="status4evar-pref-download-force" label="&status4evar.download.force.label;" />
|
||||
|
||||
<checkbox id="status4evar-download-label-force-check" preference="status4evar-pref-download-label-force" label="&status4evar.download.label.force.label;" />
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-label-label" control="status4evar-download-label-menu">&status4evar.download.label.label;</label>
|
||||
<menulist id="status4evar-download-label-menu" preference="status4evar-pref-download-label" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem value="0" label="&status4evar.option.dlcount;" />
|
||||
<menuitem value="1" label="&status4evar.option.dltime;" />
|
||||
<menuitem value="2" label="&status4evar.option.both;" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-tooltip-label" control="status4evar-download-tooltip-menu">&status4evar.download.tooltip.label;</label>
|
||||
<menulist id="status4evar-download-tooltip-menu" preference="status4evar-pref-download-tooltip" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem value="0" label="&status4evar.option.dlcount;" />
|
||||
<menuitem value="1" label="&status4evar.option.dltime;" />
|
||||
<menuitem value="2" label="&status4evar.option.both;" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-button-action-label" control="status4evar-download-button-action-menu">&status4evar.download.button.action.label;</label>
|
||||
<menulist id="status4evar-download-button-action-menu" preference="status4evar-pref-download-button-action" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem value="0" label="&status4evar.option.nothing;" />
|
||||
<menuitem value="1" label="&status4evar.option.firefoxdefault;" />
|
||||
<menuitem value="2" label="&status4evar.option.download.library;" />
|
||||
<menuitem value="3" label="&status4evar.option.download.tab;" />
|
||||
<menuitem value="4" label="&status4evar.option.download.thirdparty;" id="status4evar-download-button-action-menu-thirdparty" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-notify-timeout-label" control="status4evar-download-notify-timeout-value">&status4evar.download.notify.timeout.label;</label>
|
||||
<textbox id="status4evar-download-notify-timeout-value" preference="status4evar-pref-download-notify-timeout" type="number" size="3" />
|
||||
<label id="status4evar-download-notify-timeout-unit">&status4evar.unit.seconds;</label>
|
||||
</hbox>
|
||||
|
||||
<checkbox id="status4evar-download-notify-animate-check" preference="status4evar-pref-download-notify-animate" label="&status4evar.download.notify.animate.label;" />
|
||||
|
||||
<checkbox id="status4evar-download-progress-check" command="status4evar-command-download-progress" label="&status4evar.download.progress.label;" />
|
||||
|
||||
<vbox class="indent">
|
||||
<hbox align="center">
|
||||
<radiogroup id="status4evar-download-progress-radiogroup" preference="status4evar-pref-download-progress"
|
||||
onsyncfrompreference="return status4evarPrefs.downloadProgressSync();">
|
||||
<radio value="1" label="&status4evar.download.progress.average.label;" />
|
||||
<radio value="2" label="&status4evar.download.progress.max.label;" />
|
||||
<radio value="3" label="&status4evar.download.progress.min.label;" />
|
||||
</radiogroup>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-color-active-label" control="status4evar-download-color-active-picker">&status4evar.download.color.active.label;</label>
|
||||
<colorpicker id="status4evar-download-color-active-picker" preference="status4evar-pref-download-color-active" type="button" />
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-color-paused-label" control="status4evar-download-color-paused-picker">&status4evar.download.color.paused.label;</label>
|
||||
<colorpicker id="status4evar-download-color-paused-picker" preference="status4evar-pref-download-color-paused" type="button" />
|
||||
</hbox>
|
||||
</vbox>
|
||||
</prefpane>
|
||||
|
||||
<prefpane id="status4evar-pane-addonbar" label="&status4evar.pane.statusbar;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-addonbar-borderStyle" name="status4evar.addonbar.borderStyle" type="bool" />
|
||||
<preference id="status4evar-pref-addonbar-closeButton" name="status4evar.addonbar.closeButton" type="bool" />
|
||||
<preference id="status4evar-pref-addonbar-windowGripper" name="status4evar.addonbar.windowGripper" type="bool" />
|
||||
</preferences>
|
||||
|
||||
<checkbox id="status4evar-addonbar-borderStyle-check" preference="status4evar-pref-addonbar-borderStyle" label="&status4evar.addonbar.borderStyle;" />
|
||||
|
||||
<checkbox id="status4evar-addonbar-closeButton-check" preference="status4evar-pref-addonbar-closeButton" label="&status4evar.addonbar.closeButton;" />
|
||||
|
||||
<checkbox id="status4evar-addonbar-windowGripper-check" preference="status4evar-pref-addonbar-windowGripper" label="&status4evar.addonbar.windowGripper;" />
|
||||
</prefpane>
|
||||
|
||||
<prefpane id="status4evar-pane-advanced" label="&status4evar.pane.advanced;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-advanced-status-detectFullScreen" name="status4evar.advanced.status.detectFullScreen" type="bool" />
|
||||
<preference id="status4evar-pref-advanced-status-detectVideo" name="status4evar.advanced.status.detectVideo" type="bool" />
|
||||
<preference id="browser-pref-urlbar-trimming-enabled" name="browser.urlbar.trimURLs" type="bool" />
|
||||
</preferences>
|
||||
|
||||
<vbox flex="1">
|
||||
<groupbox id="status4evar-status-urlbar-builtin">
|
||||
<caption label="&status4evar.status.urlbar.firefox.builtin.caption;" />
|
||||
|
||||
<checkbox id="browser-urlbar-trimming-enabled-ckeck" preference="browser-pref-urlbar-trimming-enabled" label="&browser.urlbar.trimming.enabled.label;" />
|
||||
</groupbox>
|
||||
|
||||
<groupbox id="status4evar-advanced-status">
|
||||
<caption label="&status4evar.pane.status;" />
|
||||
|
||||
<checkbox id="status4evar-advanced-status-detectFullScreen-check" preference="status4evar-pref-advanced-status-detectFullScreen" label="&status4evar.advanced.status.detectFullScreen;" />
|
||||
<checkbox id="status4evar-advanced-status-detectVideo-check" preference="status4evar-pref-advanced-status-detectVideo" label="&status4evar.advanced.status.detectVideo;" />
|
||||
</groupbox>
|
||||
</vbox>
|
||||
</prefpane>
|
||||
</prefwindow>
|
||||
|
||||
218
application/palemoon/components/statusbar/content/tabbrowser.xml
Normal file
218
application/palemoon/components/statusbar/content/tabbrowser.xml
Normal file
|
|
@ -0,0 +1,218 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!-- This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
|
||||
|
||||
<bindings id="status4evar-bindings"
|
||||
xmlns="http://www.mozilla.org/xbl"
|
||||
xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
xmlns:xbl="http://www.mozilla.org/xbl">
|
||||
|
||||
<binding id="statuspanel" display="xul:hbox" extends="chrome://browser/content/tabbrowser.xml#statuspanel">
|
||||
<implementation>
|
||||
<!-- -->
|
||||
<!-- Inverted mirror handling -->
|
||||
<!-- -->
|
||||
|
||||
<field name="_invertMirror"><![CDATA[
|
||||
false
|
||||
]]></field>
|
||||
|
||||
<property name="invertMirror">
|
||||
<setter><![CDATA[
|
||||
this._invertMirror = val;
|
||||
this.mirror = this._isMirrored;
|
||||
return val;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return this._invertMirror;
|
||||
]]></getter>
|
||||
</property>
|
||||
|
||||
<!-- -->
|
||||
<!-- Mouse mirror handling -->
|
||||
<!-- -->
|
||||
|
||||
<field name="_mouseMirror"><![CDATA[
|
||||
true
|
||||
]]></field>
|
||||
|
||||
<field name="_mouseMirrorListen"><![CDATA[
|
||||
false
|
||||
]]></field>
|
||||
|
||||
<property name="mouseMirror">
|
||||
<setter><![CDATA[
|
||||
this._mouseMirror = val;
|
||||
this.setupMouseMirror(this.value);
|
||||
return val;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return this._mouseMirror;
|
||||
]]></getter>
|
||||
</property>
|
||||
|
||||
<method name="setupMouseMirror">
|
||||
<parameter name="val"/>
|
||||
<body><![CDATA[
|
||||
if(val && this._mouseMirror)
|
||||
{
|
||||
this._calcMouseTargetRect();
|
||||
if(!this._mouseMirrorListen)
|
||||
{
|
||||
MousePosTracker.addListener(this);
|
||||
this._mouseMirrorListen = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
this.mirror = false;
|
||||
if(this._mouseMirrorListen)
|
||||
{
|
||||
MousePosTracker.removeListener(this);
|
||||
this._mouseMirrorListen = false;
|
||||
}
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_calcMouseTargetRect">
|
||||
<body><![CDATA[
|
||||
let alignRight = false;
|
||||
let isRTL = (getComputedStyle(document.documentElement).direction == "rtl");
|
||||
if((this._invertMirror && !isRTL) || (!this._invertMirror && isRTL))
|
||||
{
|
||||
alignRight = true;
|
||||
}
|
||||
|
||||
let rect = this.getBoundingClientRect();
|
||||
this._mouseTargetRect =
|
||||
{
|
||||
top: rect.top,
|
||||
bottom: rect.bottom,
|
||||
left: ((alignRight) ? window.innerWidth - rect.width : 0),
|
||||
right: ((alignRight) ? window.innerWidth : rect.width)
|
||||
};
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="onMouseEnter">
|
||||
<body><![CDATA[
|
||||
this.mirror = true;
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="onMouseLeave">
|
||||
<body><![CDATA[
|
||||
this.mirror = false;
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<!-- -->
|
||||
<!-- Mirror handling -->
|
||||
<!-- -->
|
||||
|
||||
<field name="_isMirrored"><![CDATA[
|
||||
false
|
||||
]]></field>
|
||||
|
||||
<property name="mirror">
|
||||
<setter><![CDATA[
|
||||
this._isMirrored = val;
|
||||
if(this._invertMirror)
|
||||
{
|
||||
val = !val;
|
||||
}
|
||||
|
||||
this.setBooleanAttr("mirror", val);
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return this._isMirrored;
|
||||
]]></getter>
|
||||
</property>
|
||||
|
||||
<method name="_mirror">
|
||||
<body><![CDATA[
|
||||
this.mirror = !this._isMirrored;
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<!-- -->
|
||||
<!-- Value handling -->
|
||||
<!-- -->
|
||||
|
||||
<property name="label">
|
||||
<setter><![CDATA[
|
||||
if(window.caligon && window.caligon.status4evar)
|
||||
{
|
||||
window.caligon.status4evar.statusService.setStatusText(val);
|
||||
}
|
||||
return undefined;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
if(window.caligon && window.caligon.status4evar)
|
||||
{
|
||||
return window.caligon.status4evar.statusService.getStatusText();
|
||||
}
|
||||
return "";
|
||||
]]></getter>
|
||||
</property>
|
||||
|
||||
<property name="value">
|
||||
<setter><![CDATA[
|
||||
this.setValue(val);
|
||||
this.setupMouseMirror(val);
|
||||
return val;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return ((this.hasAttribute("inactive")) ? "" : this.getAttribute("label"));
|
||||
]]></getter>
|
||||
</property>
|
||||
|
||||
<method name="setValue">
|
||||
<parameter name="val"/>
|
||||
<body><![CDATA[
|
||||
if((this.getAttribute("type") || "").indexOf("network") > -1 && (this.getAttribute("previoustype") || "").indexOf("network") > -1)
|
||||
{
|
||||
this.style.minWidth = getComputedStyle(this).width;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.style.minWidth = "";
|
||||
}
|
||||
|
||||
if(val)
|
||||
{
|
||||
this.setAttribute("label", val);
|
||||
this.setBooleanAttr("inactive", false);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.setBooleanAttr("inactive", true);
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<!-- -->
|
||||
<!-- Helpers -->
|
||||
<!-- -->
|
||||
|
||||
<method name="setBooleanAttr">
|
||||
<parameter name="name"/>
|
||||
<parameter name="val"/>
|
||||
<body><![CDATA[
|
||||
if(val)
|
||||
{
|
||||
this.setAttribute(name, "true");
|
||||
}
|
||||
else
|
||||
{
|
||||
this.removeAttribute(name);
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
</implementation>
|
||||
</binding>
|
||||
</bindings>
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue