aboutsummaryrefslogtreecommitdiff
path: root/html
diff options
context:
space:
mode:
Diffstat (limited to 'html')
-rw-r--r--html/Ocean.std-theme/ocean.css46
-rw-r--r--html/haddock-util.js64
2 files changed, 65 insertions, 45 deletions
diff --git a/html/Ocean.std-theme/ocean.css b/html/Ocean.std-theme/ocean.css
index 74cb1b1b..0baa1443 100644
--- a/html/Ocean.std-theme/ocean.css
+++ b/html/Ocean.std-theme/ocean.css
@@ -281,8 +281,8 @@ div#style-menu-holder {
#table-of-contents {
float: right;
clear: right;
- background: rgb(239,238,209);
- border: 1px solid rgba(196,69,29,0.2);
+ background: #f9f8db;
+ border: 1px solid #d8d7ad;
padding: 0.5em 1em;
position: relative;
top: 0em;
@@ -317,7 +317,6 @@ div#style-menu-holder {
}
#synopsis .caption {
- text-align: right;
float: left;
width: 29px;
color: rgba(255,255,255,0);
@@ -328,23 +327,14 @@ div#style-menu-holder {
}
#synopsis p.caption.collapser {
- background: url(synopsis.png) no-repeat 0 -8px;
-}
-
-#synopsis p.caption.expander {
background: url(synopsis.png) no-repeat -64px -8px;
}
-#synopsis ul,
-#synopsis ul li.src {
- background-color: #f9f8db;
- white-space: nowrap;
+#synopsis p.caption.expander {
+ background: url(synopsis.png) no-repeat 0px -8px;
}
-#synopsis ul.collapser,
-#synopsis ul.expander {
- background-image: none;
- list-style: none;
+#synopsis ul {
height: 100%;
overflow: auto;
padding: 0.5em;
@@ -355,6 +345,14 @@ div#style-menu-holder {
overflow: hidden;
}
+#synopsis ul,
+#synopsis ul li.src {
+ background-color: #f9f8db;
+ white-space: nowrap;
+ list-style: none;
+ margin-left: 0;
+}
+
/* @end */
/* @group Main Content */
@@ -418,25 +416,11 @@ div#style-menu-holder {
border-top: 1px solid #ccc;
}
-/* @group Left Margin */
-
.subs, .doc {
/* use this selector for one level of indent */
padding-left: 2em;
}
-/* use these two for two levels of indent */
-/*
-#description .doc, #interface div.top {
- padding-left: 1.25em;
-}
-
-div.top .subs, div.top .doc {
- padding-left: 1.875em;
-}
-*/
-/* @end */
-
.arguments {
margin-top: -0.4em;
}
@@ -530,6 +514,10 @@ div.top .subs, div.top .doc {
margin: 0 0 0 2em;
}
+#module-list li {
+ clear: right;
+}
+
#module-list .package {
float: right;
}
diff --git a/html/haddock-util.js b/html/haddock-util.js
index c5bc6a8d..e9e4f64d 100644
--- a/html/haddock-util.js
+++ b/html/haddock-util.js
@@ -1,26 +1,58 @@
// Haddock JavaScript utilities
-function makeClassToggle(cOn, cOff)
+var rspace = /\s\s+/g,
+ rtrim = /^\s+|\s+$/g;
+
+function spaced(s) { return (" " + s + " ").replace(rspace, " "); }
+function trim(s) { return s.replace(rtrim, ""); }
+
+function hasClass(elem, value) {
+ var className = spaced(elem.className || "");
+ return className.indexOf( " " + value + " " ) >= 0;
+}
+
+function addClass(elem, value) {
+ var className = spaced(elem.className || "");
+ if ( className.indexOf( " " + value + " " ) < 0 ) {
+ elem.className = trim(className + " " + value);
+ }
+}
+
+function removeClass(elem, value) {
+ var className = spaced(elem.className || "");
+ className = className.replace(" " + value + " ", " ");
+ elem.className = trim(className);
+}
+
+function toggleClass(elem, valueOn, valueOff, bool) {
+ if (bool == null) { bool = ! hasClass(elem, valueOn); }
+ if (bool) {
+ removeClass(elem, valueOff);
+ addClass(elem, valueOn);
+ }
+ else {
+ removeClass(elem, valueOn);
+ addClass(elem, valueOff);
+ }
+ return bool;
+}
+
+
+function makeClassToggle(valueOn, valueOff)
{
- var rOn = new RegExp('\\b'+cOn+'\\b');
- var rOff = new RegExp('\\b'+cOff+'\\b');
-
- return function(e, a) {
- var c = e.className;
- if (a == null) { a = rOff.test(c); }
- if (a) { c = c.replace(rOff, cOn); }
- else { c = c.replace(rOn, cOff); }
- e.className = c;
+ return function(elem, bool) {
+ return toggleClass(elem, valueOn, valueOff, bool);
}
}
-toggleClassShow = makeClassToggle("show", "hide");
-toggleClassCollapser = makeClassToggle("collapser", "expander");
+toggleShow = makeClassToggle("show", "hide");
+toggleCollapser = makeClassToggle("collapser", "expander");
-function toggleSection(toggler,id)
+function toggleSection(id)
{
- toggleClassShow(document.getElementById(id))
- toggleClassCollapser(toggler);
+ var b = toggleShow(document.getElementById("section." + id))
+ toggleCollapser(document.getElementById("control." + id), b)
+ return b;
}
@@ -244,7 +276,7 @@ function resetStyle() {
function styleMenu(show) {
var m = document.getElementById('style-menu');
- toggleClassShow(m, show);
+ if (m) toggleClassShow(m, show);
}