Implement HTML radio button in XBL (bug 112715). r=pavlov, sr=ben, a=brendan.

git-svn-id: svn://10.0.0.236/trunk@117045 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
bryner%netscape.com
2002-03-21 09:16:17 +00:00
parent 4933a8ee1e
commit 6c323b9e34
12 changed files with 286 additions and 6 deletions

View File

@@ -0,0 +1,53 @@
<?xml version="1.0"?>
<!-- ***** 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 code.
-
- The Initial Developer of the Original Code is
- Netscape Communications Corporation.
- Portions created by the Initial Developer are Copyright (C) 2001
- the Initial Developer. All Rights Reserved.
-
- Contributor(s):
- Brian Ryner <bryner@netscape.com>
-
- 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 MPL, indicate your
- decision by deleting the provisions above and replace them with the notice
- and other provisions required by the LGPL or the GPL. 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 MPL, the GPL or the LGPL.
-
- ***** END LICENSE BLOCK ***** -->
<bindings id="radioBindings"
xmlns="http://www.mozilla.org/xbl"
xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<binding id="radio">
<content>
<xul:hbox class="input-radio-check-box2" flex="1">
<xul:image class="input-radio-check"/>
</xul:hbox>
</content>
</binding>
</bindings>

View File

@@ -84,9 +84,9 @@ xul|*.select-menupopup {
display:-moz-popup!important;
}
input[type="checkbox"] {
-moz-binding: url("chrome://forms/content/checkbox.xml#checkbox");
display: -moz-box;
input[type="checkbox"],
input[type="radio"] {
display: -moz-inline-box;
margin: 3px 3px 3px 4px;
/* override these values from the input rule */
@@ -101,6 +101,14 @@ input[type="checkbox"] {
-moz-box-sizing: border-box;
}
input[type="checkbox"] {
-moz-binding: url("chrome://forms/content/checkbox.xml#checkbox");
}
input[type="radio"] {
-moz-binding: url("chrome://forms/content/radio.xml#radio");
}
button {
-moz-binding: url("chrome://forms/content/button.xml#button");
-moz-box-sizing: border-box;

View File

@@ -4,16 +4,20 @@ forms.jar:
content/forms/select.xml (content/select.xml)
content/forms/checkbox.xml (content/checkbox.xml)
content/forms/button.xml (content/button.xml)
content/forms/radio.xml (content/radio.xml)
skin/classic/forms/button.css (skin/button.css)
skin/classic/forms/checkbox.css (skin/checkbox.css)
skin/classic/forms/contents.rdf (skin/contents.rdf)
skin/classic/forms/forms.css (skin/forms.css)
skin/classic/forms/radio.css (skin/radio.css)
skin/classic/forms/select.css (skin/select.css)
skin/classic/forms/select-dropdown.css (skin/select-dropdown.css)
skin/classic/forms/arrow-dn-dis.gif (skin/arrow-dn-dis.gif)
skin/classic/forms/arrow-dn.gif (skin/arrow-dn.gif)
skin/classic/forms/cbox-check-dis.gif (skin/cbox-check-dis.gif)
skin/classic/forms/cbox-check.gif (skin/cbox-check.gif)
skin/classic/forms/radio-check-dis.gif (skin/radio-check-dis.gif)
skin/classic/forms/radio-check.gif (skin/radio-check.gif)
en-US.jar:
locale/en-US/forms/contents.rdf (locale/en-US/contents.rdf)

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 B

View File

@@ -0,0 +1,75 @@
/*
* The contents of this file are subject to the Netscape 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/NPL/
*
* 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 Communicator client code, released
* March 31, 1998.
*
* The Initial Developer of the Original Code is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998-1999 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
*/
/* ===== radio.css ===================================================
== Styles used by the XUL radio element.
======================================================================= */
@namespace url(http://www.w3.org/1999/xhtml);
/* ..... disabled state ..... */
input[type="radio"][disabled="true"] {
background-color: -moz-Dialog;
}
/* ::::: checkmark image ::::: */
input[type="radio"] {
/* -moz-appearance: radio; */
margin: 1px 0px;
border-top: 1px solid ThreeDShadow;
border-right: 1px solid ThreeDHighlight;
border-bottom: 1px solid ThreeDHighlight;
border-left: 1px solid ThreeDShadow;
-moz-border-radius: 50%;
width: 12px;
height: 12px;
background-color: -moz-Field;
}
.input-radio-check-box2 {
border-top: 1px solid ThreeDDarkShadow;
border-right: 1px solid ThreeDLightShadow;
border-bottom: 1px solid ThreeDLightShadow;
border-left: 1px solid ThreeDDarkShadow;
-moz-border-radius: 50%;
padding: 2px;
width: 4px;
height: 4px;
list-style-image: none;
}
input[type="radio"]:hover:active {
background-color: -moz-Dialog;
}
/* ..... selected state ..... */
input[type="radio"]:checked > .input-radio-check-box2 {
list-style-image: url("chrome://forms/skin/radio-check.gif");
}
input[type="radio"][disabled="true"]:checked {
list-style-image: url("chrome://forms/skin/radio-check-dis.gif") !important
}

View File

@@ -0,0 +1,53 @@
<?xml version="1.0"?>
<!-- ***** 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 code.
-
- The Initial Developer of the Original Code is
- Netscape Communications Corporation.
- Portions created by the Initial Developer are Copyright (C) 2001
- the Initial Developer. All Rights Reserved.
-
- Contributor(s):
- Brian Ryner <bryner@netscape.com>
-
- 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 MPL, indicate your
- decision by deleting the provisions above and replace them with the notice
- and other provisions required by the LGPL or the GPL. 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 MPL, the GPL or the LGPL.
-
- ***** END LICENSE BLOCK ***** -->
<bindings id="radioBindings"
xmlns="http://www.mozilla.org/xbl"
xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<binding id="radio">
<content>
<xul:hbox class="input-radio-check-box2" flex="1">
<xul:image class="input-radio-check"/>
</xul:hbox>
</content>
</binding>
</bindings>

View File

@@ -84,9 +84,9 @@ xul|*.select-menupopup {
display:-moz-popup!important;
}
input[type="checkbox"] {
-moz-binding: url("chrome://forms/content/checkbox.xml#checkbox");
display: -moz-box;
input[type="checkbox"],
input[type="radio"] {
display: -moz-inline-box;
margin: 3px 3px 3px 4px;
/* override these values from the input rule */
@@ -101,6 +101,14 @@ input[type="checkbox"] {
-moz-box-sizing: border-box;
}
input[type="checkbox"] {
-moz-binding: url("chrome://forms/content/checkbox.xml#checkbox");
}
input[type="radio"] {
-moz-binding: url("chrome://forms/content/radio.xml#radio");
}
button {
-moz-binding: url("chrome://forms/content/button.xml#button");
-moz-box-sizing: border-box;

View File

@@ -4,16 +4,20 @@ forms.jar:
content/forms/select.xml (content/select.xml)
content/forms/checkbox.xml (content/checkbox.xml)
content/forms/button.xml (content/button.xml)
content/forms/radio.xml (content/radio.xml)
skin/classic/forms/button.css (skin/button.css)
skin/classic/forms/checkbox.css (skin/checkbox.css)
skin/classic/forms/contents.rdf (skin/contents.rdf)
skin/classic/forms/forms.css (skin/forms.css)
skin/classic/forms/radio.css (skin/radio.css)
skin/classic/forms/select.css (skin/select.css)
skin/classic/forms/select-dropdown.css (skin/select-dropdown.css)
skin/classic/forms/arrow-dn-dis.gif (skin/arrow-dn-dis.gif)
skin/classic/forms/arrow-dn.gif (skin/arrow-dn.gif)
skin/classic/forms/cbox-check-dis.gif (skin/cbox-check-dis.gif)
skin/classic/forms/cbox-check.gif (skin/cbox-check.gif)
skin/classic/forms/radio-check-dis.gif (skin/radio-check-dis.gif)
skin/classic/forms/radio-check.gif (skin/radio-check.gif)
en-US.jar:
locale/en-US/forms/contents.rdf (locale/en-US/contents.rdf)

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 B

View File

@@ -0,0 +1,75 @@
/*
* The contents of this file are subject to the Netscape 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/NPL/
*
* 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 Communicator client code, released
* March 31, 1998.
*
* The Initial Developer of the Original Code is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998-1999 Netscape Communications Corporation. All
* Rights Reserved.
*
* Contributor(s):
*
*/
/* ===== radio.css ===================================================
== Styles used by the XUL radio element.
======================================================================= */
@namespace url(http://www.w3.org/1999/xhtml);
/* ..... disabled state ..... */
input[type="radio"][disabled="true"] {
background-color: -moz-Dialog;
}
/* ::::: checkmark image ::::: */
input[type="radio"] {
/* -moz-appearance: radio; */
margin: 1px 0px;
border-top: 1px solid ThreeDShadow;
border-right: 1px solid ThreeDHighlight;
border-bottom: 1px solid ThreeDHighlight;
border-left: 1px solid ThreeDShadow;
-moz-border-radius: 50%;
width: 12px;
height: 12px;
background-color: -moz-Field;
}
.input-radio-check-box2 {
border-top: 1px solid ThreeDDarkShadow;
border-right: 1px solid ThreeDLightShadow;
border-bottom: 1px solid ThreeDLightShadow;
border-left: 1px solid ThreeDDarkShadow;
-moz-border-radius: 50%;
padding: 2px;
width: 4px;
height: 4px;
list-style-image: none;
}
input[type="radio"]:hover:active {
background-color: -moz-Dialog;
}
/* ..... selected state ..... */
input[type="radio"]:checked > .input-radio-check-box2 {
list-style-image: url("chrome://forms/skin/radio-check.gif");
}
input[type="radio"][disabled="true"]:checked {
list-style-image: url("chrome://forms/skin/radio-check-dis.gif") !important
}