@ -1,21 +1,23 @@ |
||||
#content { position: relative ; } |
||||
|
||||
#content .tabbed-page { border-bottom: 1px solid #aaa ; } |
||||
#content .tab-strip { padding: 0 0.5em ; } |
||||
#content .tab-strip .tab { margin-top: -1px ; z-index: 5 ; border-radius: 0 0 5px 5px ; } |
||||
#content .tabbed-page { border-bottom: 1px solid #aaa ; background: white ; } |
||||
#content .tabbed-page .wrapper { flex-grow: 1 ; } |
||||
#content .tab-strip { height: 20px ; padding: 0 5px 2px 5px ; font-size: 12px ; } |
||||
#content .tab-strip .tab { height: 14px ; margin-top: -1px ; padding: 2px 6px ; z-index: 5 ; border-radius: 0 0 5px 5px ; } |
||||
#content .tab-strip .tab { background: #f0f0f0 ; color: #808080 ; } |
||||
#content .tab-strip .tab.active { background: white ; color: #444 ; border-top: none ; } |
||||
|
||||
#content .content-doc iframe { position: absolute ; width: 100% ; height: calc(100% - 40px) ; border: none ; } |
||||
#content .content-doc { height: 100% ; } |
||||
#content .content-doc iframe { width: 100% ; height: 100% ; border: none ; } |
||||
#content .content-doc .disabled { margin-top: 1em ; text-align: center ; font-style: italic ; color: #888 ; } |
||||
|
||||
#growls-br { max-height: 40% ;} |
||||
.growl-footnote { background: #f0f0d0 ; border: 1px solid #ccc ; color: black ; width: 120px ; } |
||||
.growl-footnote { background: #f0f0d0 ; border: 1px solid #ccc ; width: 120px ; } |
||||
/* FUDGE! We would like to set the opacity to 1 on :hover, but it breaks the click handler!?!? :wtf: */ |
||||
.growl-footnote { opacity: 1 ; } |
||||
.growl-footnote .footnote { margin-top: 10px ; height: 100% ; display: flex ; flex-direction: column ; } |
||||
.growl-footnote .footnote { margin-top: 10px ; display: flex ; flex-direction: column ; } |
||||
.growl-footnote .footnote:first-of-type { margin-top: 0 ; } |
||||
.growl-footnote .header { font-weight: bold ; } |
||||
.growl-footnote .header .footnote-id { font-size: 90% ; font-style: italic ; color: #666 ; } |
||||
.growl-footnote .growl-message { height: 100% ; display: flex ; flex-direction: column ; } |
||||
.growl-footnote .growl-message .content { flex-grow: 1 ; overflow-y: auto ; padding: 0 5px 5px 5px ; text-align: justify ; } |
||||
.growl-footnote .growl-message { height: 100% ; overflow-y: auto ; display: flex ; flex-direction: column ; } |
||||
.growl-footnote .growl-message .content { flex-grow: 1 ; padding: 0 5px 0 5px ; text-align: justify ; } |
||||
.growl-footnote .growl-message p { margin-top: 4px ; } |
||||
|
@ -1,6 +1,15 @@ |
||||
#main-app { width: 100% ; height: 100% ; display: flex ; } |
||||
|
||||
/* splitter */ |
||||
#nav { min-width: 350px ; } |
||||
#nav { min-width: 410px ; } |
||||
#content { flex-grow: 1 ; min-width: 500px ; } |
||||
#main-app .gutter.gutter-horizontal { cursor: ew-resize ; background: #ccc ; } |
||||
|
||||
#watermark { |
||||
position: absolute ; right: -25px ; bottom: 2px; |
||||
width: 200px ; height: 200px ; |
||||
background: url(../images/watermark.png) left bottom no-repeat ; background-size: 100% ; |
||||
transform: scaleX(-1) ; |
||||
opacity: 0 ; z-index: -99 ; |
||||
transition: opacity 10s ; |
||||
} |
||||
|
@ -1,4 +1,4 @@ |
||||
#nav { margin: 0 5px ; position: relative ; } |
||||
#nav { position: relative ; } |
||||
#nav .no-chapters { font-style: italic ; color: #888 ; } |
||||
|
||||
#nav .tab-strip { border-top: 1px solid #aaa ; padding: 5px 5px ; } |
||||
#nav .tabbed-page[data-tabid="chapters"] .wrapper { overflow-y: auto ; } |
||||
|
@ -1,17 +1,33 @@ |
||||
#nav .tabbed-page[data-tabid='search'] .wrapper { |
||||
display: flex ; flex-direction: column ; |
||||
overflow-y: none ; |
||||
overflow-y: hidden ; |
||||
} |
||||
#nav .tab-strip { margin-top: 5px ; padding: 2px 5px 5px 5px ; } |
||||
#nav .tab-strip .tab img { border: 1px solid transparent ; } |
||||
#nav .tab-strip .tab img:active { border: 1px solid #888 ; border-radius: 5px ; } |
||||
|
||||
/* search box */ |
||||
#search-box { display: flex ; flex-direction: column ; padding: 1px ; margin-bottom: 8px ; } |
||||
#search-box { |
||||
height: 71px ; flex-shrink: 0 ; position: relative ; |
||||
background-image: url(../images/header-bgd.png), url(../images/header-bgd-edge.png) ; |
||||
background-repeat: no-repeat, repeat-x; |
||||
padding: 1px ; |
||||
} |
||||
#search-box .content { |
||||
position: absolute ; top: 10px ; left: 90px ; right: 5px ; |
||||
display: flex ; flex-direction: column ; |
||||
font-size: 90% ; |
||||
} |
||||
#search-box .row { display: flex ; } |
||||
#search-box input#query-string { margin-right: 5px ; flex-grow: 1 ; } |
||||
#search-box span.label { display: inline-block ; width: 70px ; margin-right: 3px ; font-weight: bold ; text-align: right ; } |
||||
#search-box input#query-string { margin-right: 5px ; flex-grow: 1 ; height: 16px ; } |
||||
#search-box button.submit { width: 18px ; height: 18px ; background: #fff no-repeat center/80% url(../images/search.png) ; } |
||||
#search-box .sr-filters { margin-top: 4px ; font-size: 80% ; } |
||||
#search-box .sr-filters input[type="checkbox"] { margin: 0 2px 0 6px ; } |
||||
#search-box .sr-count { flex-grow: 1 ; text-align: right ; font-style: italic ; color: #888 ; } |
||||
#search-box .sr-filters input[type="checkbox"] { margin-right: 2px ; } |
||||
#search-box .sr-filters label { margin-right: 6px ; } |
||||
#search-box .sr-count { position: absolute ; bottom: 18px ; right: 2px ; font-size: 60% ; font-style: italic ; color: #444 ; } |
||||
|
||||
/* search results */ |
||||
#search-results { height: 100% ; overflow-y: auto ; } |
||||
#search-results .no-results { font-style: italic ; color: #666 ; } |
||||
#search-results { flex-grow: 1 ; overflow-y: auto ; } |
||||
#search-results .no-results { padding: 10px ; font-style: italic ; color: #666 ; } |
||||
#search-results .error .pre { font-family: monospace ; margin: 0.25em 0 0 0.5em ; } |
||||
|
@ -1,5 +1,6 @@ |
||||
.tabbed-pages { display: flex ; flex-direction: column ; height: 100% ; } |
||||
.tabbed-pages .tabbed-page { height: calc(100% - 35px) ; display: flex ; flex-direction: column ; } |
||||
.tabbed-pages .tabbed-page .wrapper { flex-grow: 1 ; margin: 5px 0 2px 0 ; height: calc(100% - 10px) ; overflow-y: auto ; } |
||||
.tabbed-pages .tabbed-page { flex-grow: 1 ; overflow-y: hidden ; display: flex ; flex-direction: column ; } |
||||
.tabbed-pages .tab-strip { height: 24px ; display: flex ; font-size: 10pt ; font-style: italic ; } |
||||
.tabbed-pages .tab-strip .tab { border: 1px solid #aaa ; padding: 2px 5px ; margin-right: 5px ; } |
||||
.tabbed-pages .tab-strip .tab { border: 1px solid #aaa ; padding: 2px 5px ; margin-right: 5px ; cursor: pointer ; } |
||||
.tabbed-pages .tab-strip.images .tab { border: none ; padding: 0 ; } |
||||
.tabbed-pages .tab-strip.images .tab img { height: 22px ; } |
||||
|
@ -0,0 +1,13 @@ |
||||
.chapter-a { border: 1px solid #ecc2b0 !important ; } |
||||
.chapter-b { border: 1px solid #3ca838 !important ; } |
||||
.chapter-c { border: 1px solid #05b0e2 !important ; } |
||||
.chapter-d { border: 1px solid #949b9e !important ; } |
||||
.chapter-e { border: 1px solid #9ad0e9 !important ; } |
||||
.chapter-f { border: 1px solid #b4965f !important ; } |
||||
.chapter-g { border: 1px solid #c6cf21 !important ; } |
||||
.chapter-j { border: 1px solid #6e7723 !important ; } |
||||
.chapter-w { border: 1px solid #ad965d !important ; } |
||||
|
||||
.chapter-o { border: 1px solid #e20000 !important ; } |
||||
.chapter-p { border: 1px solid #696a65 !important ; } |
||||
.chapter-t { border: 1px solid #eea63b !important ; } |
@ -0,0 +1,204 @@ |
||||
/*jslint browser: true*/ |
||||
/*jslint jquery: true*/ |
||||
|
||||
/* |
||||
* jQuery Hotkeys Plugin |
||||
* Copyright 2010, John Resig |
||||
* Dual licensed under the MIT or GPL Version 2 licenses. |
||||
* |
||||
* Based upon the plugin by Tzury Bar Yochay: |
||||
* https://github.com/tzuryby/jquery.hotkeys
|
||||
* |
||||
* Original idea by: |
||||
* Binny V A, http://www.openjs.com/scripts/events/keyboard_shortcuts/
|
||||
*/ |
||||
|
||||
/* |
||||
* One small change is: now keys are passed by object { keys: '...' } |
||||
* Might be useful, when you want to pass some other data to your handler |
||||
*/ |
||||
|
||||
(function(jQuery) { |
||||
|
||||
jQuery.hotkeys = { |
||||
version: "0.2.0", |
||||
|
||||
specialKeys: { |
||||
8: "backspace", |
||||
9: "tab", |
||||
10: "return", |
||||
13: "return", |
||||
16: "shift", |
||||
17: "ctrl", |
||||
18: "alt", |
||||
19: "pause", |
||||
20: "capslock", |
||||
27: "esc", |
||||
32: "space", |
||||
33: "pageup", |
||||
34: "pagedown", |
||||
35: "end", |
||||
36: "home", |
||||
37: "left", |
||||
38: "up", |
||||
39: "right", |
||||
40: "down", |
||||
45: "insert", |
||||
46: "del", |
||||
59: ";", |
||||
61: "=", |
||||
96: "0", |
||||
97: "1", |
||||
98: "2", |
||||
99: "3", |
||||
100: "4", |
||||
101: "5", |
||||
102: "6", |
||||
103: "7", |
||||
104: "8", |
||||
105: "9", |
||||
106: "*", |
||||
107: "+", |
||||
109: "-", |
||||
110: ".", |
||||
111: "/", |
||||
112: "f1", |
||||
113: "f2", |
||||
114: "f3", |
||||
115: "f4", |
||||
116: "f5", |
||||
117: "f6", |
||||
118: "f7", |
||||
119: "f8", |
||||
120: "f9", |
||||
121: "f10", |
||||
122: "f11", |
||||
123: "f12", |
||||
144: "numlock", |
||||
145: "scroll", |
||||
173: "-", |
||||
186: ";", |
||||
187: "=", |
||||
188: ",", |
||||
189: "-", |
||||
190: ".", |
||||
191: "/", |
||||
192: "`", |
||||
219: "[", |
||||
220: "\\", |
||||
221: "]", |
||||
222: "'" |
||||
}, |
||||
|
||||
shiftNums: { |
||||
"`": "~", |
||||
"1": "!", |
||||
"2": "@", |
||||
"3": "#", |
||||
"4": "$", |
||||
"5": "%", |
||||
"6": "^", |
||||
"7": "&", |
||||
"8": "*", |
||||
"9": "(", |
||||
"0": ")", |
||||
"-": "_", |
||||
"=": "+", |
||||
";": ": ", |
||||
"'": "\"", |
||||
",": "<", |
||||
".": ">", |
||||
"/": "?", |
||||
"\\": "|" |
||||
}, |
||||
|
||||
// excludes: button, checkbox, file, hidden, image, password, radio, reset, search, submit, url
|
||||
textAcceptingInputTypes: [ |
||||
"text", "password", "number", "email", "url", "range", "date", "month", "week", "time", "datetime", |
||||
"datetime-local", "search", "color", "tel"], |
||||
|
||||
// default input types not to bind to unless bound directly
|
||||
textInputTypes: /textarea|input|select/i, |
||||
|
||||
options: { |
||||
filterInputAcceptingElements: true, |
||||
filterTextInputs: true, |
||||
filterContentEditable: true |
||||
} |
||||
}; |
||||
|
||||
function keyHandler(handleObj) { |
||||
if (typeof handleObj.data === "string") { |
||||
handleObj.data = { |
||||
keys: handleObj.data |
||||
}; |
||||
} |
||||
|
||||
// Only care when a possible input has been specified
|
||||
if (!handleObj.data || !handleObj.data.keys || typeof handleObj.data.keys !== "string") { |
||||
return; |
||||
} |
||||
|
||||
var origHandler = handleObj.handler, |
||||
keys = handleObj.data.keys.toLowerCase().split(" "); |
||||
|
||||
handleObj.handler = function(event) { |
||||
// Don't fire in text-accepting inputs that we didn't directly bind to
|
||||
if (this !== event.target && |
||||
(jQuery.hotkeys.options.filterInputAcceptingElements && |
||||
jQuery.hotkeys.textInputTypes.test(event.target.nodeName) || |
||||
(jQuery.hotkeys.options.filterContentEditable && jQuery(event.target).attr('contenteditable')) || |
||||
(jQuery.hotkeys.options.filterTextInputs && |
||||
jQuery.inArray(event.target.type, jQuery.hotkeys.textAcceptingInputTypes) > -1))) { |
||||
return; |
||||
} |
||||
|
||||
var special = event.type !== "keypress" && jQuery.hotkeys.specialKeys[event.which], |
||||
character = String.fromCharCode(event.which).toLowerCase(), |
||||
modif = "", |
||||
possible = {}; |
||||
|
||||
jQuery.each(["alt", "ctrl", "shift"], function(index, specialKey) { |
||||
|
||||
if (event[specialKey + 'Key'] && special !== specialKey) { |
||||
modif += specialKey + '+'; |
||||
} |
||||
}); |
||||
|
||||
// metaKey is triggered off ctrlKey erronously
|
||||
if (event.metaKey && !event.ctrlKey && special !== "meta") { |
||||
modif += "meta+"; |
||||
} |
||||
|
||||
if (event.metaKey && special !== "meta" && modif.indexOf("alt+ctrl+shift+") > -1) { |
||||
modif = modif.replace("alt+ctrl+shift+", "hyper+"); |
||||
} |
||||
|
||||
if (special) { |
||||
possible[modif + special] = true; |
||||
} |
||||
else { |
||||
possible[modif + character] = true; |
||||
possible[modif + jQuery.hotkeys.shiftNums[character]] = true; |
||||
|
||||
// "$" can be triggered as "Shift+4" or "Shift+$" or just "$"
|
||||
if (modif === "shift+") { |
||||
possible[jQuery.hotkeys.shiftNums[character]] = true; |
||||
} |
||||
} |
||||
|
||||
for (var i = 0, l = keys.length; i < l; i++) { |
||||
if (possible[keys[i]]) { |
||||
return origHandler.apply(this, arguments); |
||||
} |
||||
} |
||||
}; |
||||
} |
||||
|
||||
jQuery.each(["keydown", "keyup", "keypress"], function() { |
||||
jQuery.event.special[this] = { |
||||
add: keyHandler |
||||
}; |
||||
}); |
||||
|
||||
})(jQuery || this.jQuery || window.jQuery); |
After Width: | Height: | Size: 371 B |
After Width: | Height: | Size: 445 B |
After Width: | Height: | Size: 382 B |
After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 4.0 KiB |
After Width: | Height: | Size: 459 B |
After Width: | Height: | Size: 23 KiB |
@ -0,0 +1,8 @@ |
||||
http://dabuttonfactory.com |
||||
|
||||
Calibri ; bold ; size=24 ; padding=16/4 |
||||
rounded rectangle ; radius=5 |
||||
bgd=simple gradient ; 4f88e6/2566d2 |
||||
border=1 ; 1d4edf |
||||
|
||||
inactive: unicolored ; #75a0e7 |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 2.8 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 2.4 KiB |
After Width: | Height: | Size: 2.6 KiB |
After Width: | Height: | Size: 4.0 KiB |
After Width: | Height: | Size: 622 KiB |