updates for loader
This commit is contained in:
parent
13501e2da8
commit
7430ef1023
10 changed files with 429 additions and 192 deletions
384
source/css/OxUI.classic.css
Normal file
384
source/css/OxUI.classic.css
Normal file
|
|
@ -0,0 +1,384 @@
|
|||
body.OxThemeClassic {
|
||||
background: rgb(240, 240, 240);
|
||||
}
|
||||
.OxThemeClassic div {
|
||||
color: rgb(16, 16, 16);
|
||||
}
|
||||
.OxThemeClassic .OxHighlight {
|
||||
background: rgb(255, 255, 0);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Bars
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeClassic .OxBar.OxHorizontal {
|
||||
//background: -moz-linear-gradient(top, rgb(192, 192, 192), rgb(160, 160, 160));
|
||||
//background: -webkit-gradient(linear, left top, left bottom, from(rgb(192, 192, 192)), to(rgb(160, 160, 160)));
|
||||
background: -moz-linear-gradient(top, rgb(224, 224, 224), rgb(192, 192, 192));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(224, 224, 224)), to(rgb(192, 192, 192)));
|
||||
}
|
||||
.OxThemeClassic .OxBar.OxMainMenu {
|
||||
background: -moz-linear-gradient(top, rgb(224, 224, 224), rgb(192, 192, 192));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(224, 224, 224)), to(rgb(192, 192, 192)));
|
||||
}
|
||||
.OxThemeClassic .OxResizebar > .OxLine {
|
||||
background-color: rgb(208, 208, 208);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Dialog
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeClassic .OxDialog {
|
||||
-moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.75);
|
||||
-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.75);
|
||||
}
|
||||
|
||||
.OxThemeClassic .OxDialog .OxBar {
|
||||
//background: -moz-linear-gradient(top, rgba(208, 208, 208, 0.96), rgba(176, 176, 176, 0.96));
|
||||
//background: -webkit-gradient(linear, left top, left bottom, from(rgba(208, 208, 208, 0.96)), to(rgba(176, 176, 176, 0.96)));
|
||||
background: -moz-linear-gradient(top, rgba(224, 224, 224, 0.96), rgba(192, 192, 192, 0.96));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgba(224, 224, 224, 0.96)), to(rgba(192, 192, 192, 0.96)));
|
||||
}
|
||||
|
||||
.OxThemeClassic .OxDialog .OxContent {
|
||||
//background: rgba(224, 224, 224, 0.96);
|
||||
background: rgba(208, 208, 208, 0.96);
|
||||
}
|
||||
|
||||
.OxThemeClassic .OxDialog .OxTitle {
|
||||
color: rgb(48, 48, 48);
|
||||
}
|
||||
|
||||
.OxThemeClassic .OxLayer {
|
||||
background: rgb(255, 255, 255);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Forms
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeClassic .OxButton,
|
||||
.OxThemeClassic input.OxCheckbox,
|
||||
.OxThemeClassic input.OxInput,
|
||||
.OxThemeClassic textarea,
|
||||
.OxThemeClassic .OxLabel,
|
||||
.OxThemeClassic .OxTrack {
|
||||
border: 1px solid rgb(176, 176, 176);
|
||||
//border: 1px solid rgb(160, 160, 160);
|
||||
color: rgb(64, 64, 64);
|
||||
}
|
||||
.OxThemeClassic .OxSelect {
|
||||
border: 1px solid rgb(176, 176, 176);
|
||||
}
|
||||
.OxThemeClassic .OxSelect > .OxTitle {
|
||||
color: rgb(64, 64, 64);
|
||||
}
|
||||
.OxThemeClassic .OxInputLabel {
|
||||
color: rgb(64, 64, 64);
|
||||
}
|
||||
.OxThemeClassic .OxButton,
|
||||
.OxThemeClassic div.OxInput,
|
||||
.OxThemeClassic .OxSelect {
|
||||
//background: -moz-linear-gradient(left top, left bottom, from(rgb(192, 192, 192)), to(rgb(160, 160, 160)));
|
||||
//background: -webkit-gradient(linear, left top, left bottom, from(rgb(192, 192, 192)), to(rgb(160, 160, 160)));
|
||||
background: -moz-linear-gradient(top, rgb(224, 224, 224), rgb(192, 192, 192));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(224, 224, 224)), to(rgb(192, 192, 192)));
|
||||
}
|
||||
.OxThemeClassic .OxButton:active {
|
||||
//background: rgb(160, 160, 160);
|
||||
background: rgb(192, 192, 192);
|
||||
color: rgb(48, 48, 48);
|
||||
}
|
||||
.OxThemeClassic .OxCheckbox:active {
|
||||
background: -moz-linear-gradient(top, rgb(192, 192, 192), rgb(240, 240, 240));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(192, 192, 192)), to(rgb(240, 240, 240)));
|
||||
}
|
||||
.OxThemeClassic .OxButton:focus {
|
||||
-moz-box-shadow: 0 0 2px rgb(128, 128, 128);
|
||||
-webkit-box-shadow: 0 2 4px rgb(128, 128, 128);
|
||||
}
|
||||
.OxThemeClassic .OxButton.OxDisabled {
|
||||
background: rgb(192, 192, 192);
|
||||
color: rgb(128, 128, 128);
|
||||
}
|
||||
|
||||
.OxThemeClassic .OxButton.OxSelected,
|
||||
.OxThemeClassic .OxSelect.OxSelected {
|
||||
background: -moz-linear-gradient(top, rgb(160, 160, 160), rgb(192, 192, 192));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(160, 160, 160)), to(rgb(192, 192, 192)));
|
||||
//background: -moz-linear-gradient(top, rgb(128, 128, 128), rgb(160, 160, 160) 10%, rgb(192, 192, 192));
|
||||
//background: -webkit-gradient(linear, left top, left bottom, from(rgb(128, 128, 128)), color-stop(0.1, rgb(160, 160, 160)), to(rgb(192, 192, 192)));
|
||||
color: rgb(32, 32, 32);
|
||||
}
|
||||
.OxThemeClassic .OxButton.OxTab.OxSelected {
|
||||
border-bottom: 1px solid rgb(192, 192, 192);
|
||||
}
|
||||
|
||||
.OxThemeClassic .OxFormMessage {
|
||||
color: rgb(192, 64, 64);
|
||||
}
|
||||
|
||||
.OxThemeClassic .OxLabel.OxDisabled {
|
||||
color: rgb(128, 128, 128);
|
||||
}
|
||||
|
||||
|
||||
.OxThemeClassic input.OxCheckbox,
|
||||
.OxThemeClassic input.OxInput,
|
||||
.OxThemeClassic .OxTrack {
|
||||
//background: -moz-linear-gradient(top, rgb(224, 224, 224), rgb(255, 255, 255));
|
||||
//background: -webkit-gradient(linear, left top, left bottom, from(rgb(224, 224, 224)), to(rgb(255, 255, 255)));
|
||||
background: -moz-linear-gradient(top, rgb(208, 208, 208), rgb(255, 255, 255));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(208, 208, 208)), to(rgb(255, 255, 255)));
|
||||
}
|
||||
.OxThemeClassic .OxInput:focus {
|
||||
//border: 1px solid rgb(160, 160, 160);
|
||||
//-moz-box-shadow: 0 0 2px rgb(128, 128, 128);
|
||||
//-webkit-box-shadow: 0 0 2px rgb(128, 128, 128);
|
||||
}
|
||||
.OxThemeClassic div.OxInput.OxFocus,
|
||||
.OxThemeClassic .OxSelect.OxFocus {
|
||||
-moz-box-shadow: 0 0 2px rgb(128, 128, 128);
|
||||
-webkit-box-shadow: 0 0 2px rgb(128, 128, 128);
|
||||
}
|
||||
|
||||
.OxThemeClassic .OxInput.OxPlaceholder {
|
||||
color: rgb(160, 160, 160)
|
||||
}
|
||||
|
||||
.OxThemeClassic .OxLabel {
|
||||
background: rgb(208, 208, 208);
|
||||
}
|
||||
|
||||
.OxThemeClassic input.OxCheckbox.OxDisabled,
|
||||
.OxThemeClassic input.OxInput:disabled {
|
||||
background: rgb(224, 224, 224);
|
||||
}
|
||||
|
||||
.OxThemeClassic textarea {
|
||||
background: rgb(240, 240, 240);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Lists
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeClassic .OxIconList .OxItem img.OxLoading {
|
||||
border-color: rgb(208, 208, 208);
|
||||
background: -moz-linear-gradient(top, rgb(255, 255, 255), rgb(224, 224, 224));
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgb(255, 255, 255)), color-stop(1, rgb(224, 224, 224)));
|
||||
}
|
||||
.OxThemeClassic .OxIconList .OxItem.OxSelected > .OxIcon img {
|
||||
border-color: rgb(160, 160, 160);
|
||||
-moz-box-shadow: 0 0 4px rgba(160, 160, 160, 1);
|
||||
-webkit-box-shadow: 0 0 4px rgba(160, 160, 160, 1);
|
||||
}
|
||||
.OxThemeClassic .OxIconList.OxFocus .OxItem.OxSelected > .OxIcon img {
|
||||
border-color: rgb(128, 128, 128);
|
||||
-moz-box-shadow: 0 0 4px rgba(128, 128, 128, 1);
|
||||
-webkit-box-shadow: 0 0 4px rgba(128, 128, 128, 1);
|
||||
}
|
||||
.OxThemeClassic .OxIconList .OxItem > .OxReflection > div {
|
||||
background: -moz-linear-gradient(top, rgba(240, 240, 240, 0.75), rgba(240, 240, 240, 1));
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(240, 240, 240, 0.75)), color-stop(1, rgba(240, 240, 240, 1)));
|
||||
}
|
||||
.OxThemeClassic .OxIconList .OxItem > .OxText > div {
|
||||
text-shadow: rgb(255, 255, 255) 1px 1px 0;
|
||||
}
|
||||
.OxThemeClassic .OxIconList .OxItem.OxSelected > .OxText > div {
|
||||
border-color: rgb(160, 160, 160);
|
||||
background: rgba(160, 160, 160, 0.5);
|
||||
-moz-box-shadow: 0 0 4px rgba(160, 160, 160, 1);
|
||||
-webkit-box-shadow: 0 0 4px rgba(160, 160, 160, 1);
|
||||
}
|
||||
.OxThemeClassic .OxIconList.OxFocus .OxItem.OxSelected > .OxText > div {
|
||||
border-color: rgb(128, 128, 128);
|
||||
background: rgba(128, 128, 128, 0.5);
|
||||
-moz-box-shadow: 0 0 4px rgba(128, 128, 128, 1);
|
||||
-webkit-box-shadow: 0 0 4px rgba(128, 128, 128, 1);
|
||||
}
|
||||
.OxThemeClassic .OxIconList .OxItem > .OxText > div > .OxInfo {
|
||||
color: rgb(128, 128, 128);
|
||||
}
|
||||
|
||||
|
||||
.OxThemeClassic .OxTextList .OxItem .OxCell {
|
||||
border-right-color: rgb(224, 224, 224);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxItem:nth-child(odd) {
|
||||
background: rgb(242, 242, 242);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxItem:nth-child(even) {
|
||||
background: rgb(238, 238, 238);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxItem.OxSelected:nth-child(odd) {
|
||||
background: rgb(226, 226, 226);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxItem.OxSelected:nth-child(even) {
|
||||
background: rgb(222, 222, 222);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxFocus .OxItem.OxSelected:nth-child(odd) {
|
||||
background: rgb(210, 210, 210);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxFocus .OxItem.OxSelected:nth-child(even) {
|
||||
background: rgb(206, 206, 206);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxBar {
|
||||
background: -moz-linear-gradient(top, rgb(240, 240, 240), rgb(208, 208, 208));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(240, 240, 240)), to(rgb(208, 208, 208)));
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxBar .OxSelected {
|
||||
background: -moz-linear-gradient(top, rgb(224, 224, 224), rgb(192, 192, 192));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(224, 224, 224)), to(rgb(192, 192, 192)));
|
||||
//color: rgb(0, 0, 0);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxBar .OxOrder {
|
||||
color: rgb(0, 0, 0);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxBar .OxResize .OxCenter {
|
||||
background: rgb(192, 192, 192);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxBar .OxSelect {
|
||||
border-color: rgb(192, 192, 192);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxBody .OxItem .OxCell {
|
||||
border-color: rgb(232, 232, 232);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxItem.OxSelected .OxCell {
|
||||
border-color: rgb(216, 216, 216);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxFocus .OxItem.OxSelected .OxCell {
|
||||
border-color: rgb(200, 200, 200);
|
||||
color: rgb(0, 0, 0);
|
||||
}
|
||||
.OxThemeClassic .OxTextList .OxBody .OxItem .OxLine {
|
||||
background: rgb(232, 232, 232);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Menus
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeClassic .OxMainMenu > .OxTitle.OxSelected {
|
||||
background: -moz-linear-gradient(top, rgb(208, 208, 208), rgb(176, 176, 176));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(208, 208, 208)), to(rgb(176, 176, 176)));
|
||||
}
|
||||
|
||||
.OxThemeClassic .OxMenu {
|
||||
-moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.75);
|
||||
-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.75);
|
||||
}
|
||||
.OxThemeClassic .OxMenu .OxBottom,
|
||||
.OxThemeClassic .OxMenu .OxItem,
|
||||
.OxThemeClassic .OxMenu .OxScrollbar,
|
||||
.OxThemeClassic .OxMenu .OxSpace,
|
||||
.OxThemeClassic .OxMenu .OxTop {
|
||||
background: rgba(208, 208, 208, 0.96);
|
||||
}
|
||||
.OxThemeClassic .OxMenu .OxItem.OxSelected,
|
||||
.OxThemeClassic .OxMenu .OxLine,
|
||||
.OxThemeClassic .OxMenu .OxScrollbar.OxSelected {
|
||||
background: rgba(192, 192, 192, 0.96);
|
||||
}
|
||||
.OxThemeClassic .OxMenu .OxItem.OxDisabled .OxCell {
|
||||
color: rgb(160, 160, 160);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Requests
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Scrollbars
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeClassic ::-webkit-scrollbar:horizontal {
|
||||
border-top: 1px solid rgb(176, 176, 176);
|
||||
border-bottom: 1px solid rgb(176, 176, 176);
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(224, 224, 224)), to(rgb(192, 192, 192)));
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar:vertical {
|
||||
border-left: 1px solid rgb(176, 176, 176);
|
||||
border-right: 1px solid rgb(176, 176, 176);
|
||||
background: -webkit-gradient(linear, left top, right top, from(rgb(224, 224, 224)), to(rgb(192, 192, 192)));
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-button:horizontal:decrement {
|
||||
background: url(../png/ox.ui.classic/scrollbarHorizontalDecrement.png);
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-button:horizontal:increment {
|
||||
background: url(../png/ox.ui.classic/scrollbarHorizontalIncrement.png);
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-button:vertical:decrement {
|
||||
background: url(../png/ox.ui.classic/scrollbarVerticalDecrement.png);
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-button:vertical:increment {
|
||||
background: url(../png/ox.ui.classic/scrollbarVerticalIncrement.png);
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-corner {
|
||||
border-right: 1px solid rgb(176, 176, 176);
|
||||
border-bottom: 1px solid rgb(176, 176, 176);
|
||||
background: -webkit-gradient(linear, left top, right bottom, from(rgb(224, 224, 224)), to(rgb(160, 160, 160)));
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-thumb {
|
||||
border: 1px solid rgb(176, 176, 176);
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-thumb:horizontal {
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(224, 224, 224)), to(rgb(192, 192, 192)));
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-thumb:vertical {
|
||||
background: -webkit-gradient(linear, left top, right top, from(rgb(224, 224, 224)), to(rgb(192, 192, 192)));
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-track {
|
||||
border: 1px solid rgb(176, 176, 176);
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-track:horizontal {
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(224, 224, 224)), to(rgb(255, 255, 255)));
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar-track:vertical {
|
||||
background: -webkit-gradient(linear, left top, right top, from(rgb(224, 224, 224)), to(rgb(255, 255, 255)));
|
||||
}
|
||||
.OxThemeClassic ::-webkit-scrollbar:active,
|
||||
.OxThemeClassic ::-webkit-scrollbar-thumb:active {
|
||||
background: rgb(208, 208, 208);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Video
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeClassic .OxVideoPlayer {
|
||||
background: rgb(255, 255, 255);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Miscellaneous
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeClassic .OxTooltip {
|
||||
border: 1px solid rgba(128, 128, 128, 0.96);
|
||||
background: rgba(255, 255, 255, 0.96);
|
||||
color: rgba(128, 128, 128, 1);
|
||||
-moz-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
|
||||
-webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
|
||||
}
|
||||
1663
source/css/OxUI.css
Normal file
1663
source/css/OxUI.css
Normal file
File diff suppressed because it is too large
Load diff
37
source/css/OxUI.future.css
Normal file
37
source/css/OxUI.future.css
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
body.OxThemeFuture {
|
||||
background: rgb(240, 240, 240);
|
||||
}
|
||||
|
||||
/*
|
||||
--------------------------------------------------------------------------------
|
||||
input
|
||||
--------------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
.OxThemeFuture .OxButton,
|
||||
.OxThemeFuture .OxInput {
|
||||
border: 1px solid rgb(128, 128, 128);
|
||||
color: rgb(64, 64, 64);
|
||||
}
|
||||
.OxThemeFuture .OxButton {
|
||||
background: -moz-linear-gradient(left top, left bottom, from(rgb(224, 224, 224)), to(rgb(192, 192, 192)));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(224, 224, 224)), to(rgb(192, 192, 192)));
|
||||
}
|
||||
.OxThemeFuture .OxButton:active {
|
||||
background: rgb(208, 208, 208);
|
||||
}
|
||||
.OxThemeFuture .OxInput {
|
||||
//border-top-color: rgb(96, 96, 96);
|
||||
//border-right-color: rgb(128, 128, 128);
|
||||
//border-bottom-color: rgb(160, 160, 160);
|
||||
//border-left-color: rgb(128, 128, 128);
|
||||
background: -moz-linear-gradient(left top, left bottom, from(rgb(224, 224, 224)), to(rgb(255, 255, 255)));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(224, 224, 224)), to(rgb(255, 255, 255)));
|
||||
}
|
||||
.OxThemeFuture .OxInput:focus {
|
||||
-moz-box-shadow: 0 0 4px rgb(128, 128, 128);
|
||||
-webkit-box-shadow: 0 0 4px rgb(128, 128, 128);
|
||||
}
|
||||
.OxThemeFuture .OxInput.OxPlaceholder {
|
||||
color: rgb(160, 160, 160)
|
||||
}
|
||||
401
source/css/OxUI.modern.css
Normal file
401
source/css/OxUI.modern.css
Normal file
|
|
@ -0,0 +1,401 @@
|
|||
body.OxThemeModern {
|
||||
background: rgb(16, 16, 16);
|
||||
}
|
||||
.OxThemeModern div {
|
||||
color: rgb(240, 240, 240);
|
||||
}
|
||||
.OxThemeModern .OxHighlight {
|
||||
//background: rgb(255, 255, 0);
|
||||
//font-weight: bold;
|
||||
//color: rgb(0, 0, 0);
|
||||
color: rgb(255, 255, 0);
|
||||
}
|
||||
.OxThemeModern .OxBright {
|
||||
color: rgb(255, 255, 255);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Bars
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeModern .OxBar.OxHorizontal {
|
||||
//background: -moz-linear-gradient(left top, left bottom, from(rgb(96, 96, 96)), to(rgb(64, 64, 64)));
|
||||
//background: -webkit-gradient(linear, left top, left bottom, from(rgb(96, 96, 96)), to(rgb(64, 64, 64)));
|
||||
background: -moz-linear-gradient(top, rgb(64, 64, 64), rgb(32, 32, 32));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(64, 64, 64)), to(rgb(32, 32, 32)));
|
||||
}
|
||||
|
||||
.OxThemeModern .OxResizebar > .OxLine {
|
||||
background-color: rgb(48, 48, 48);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Calendar
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeModern .OxCalendar .OxTimeline > div.odd {
|
||||
background: -moz-linear-gradient(top, rgb(64, 64, 64), rgb(32, 32, 32));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(64, 64, 64)), to(rgb(16, 16, 16)));
|
||||
}
|
||||
|
||||
.OxThemeModern .OxCalendar .OxTimeline > div.even {
|
||||
background: -moz-linear-gradient(top, rgb(48, 48, 48), rgb(24, 24, 24));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(48, 48, 48)), to(rgb(16, 16, 16)));
|
||||
}
|
||||
|
||||
.OxThemeModern .OxCalendar .OxBackground > div.even {
|
||||
background: rgb(16, 16, 16);
|
||||
}
|
||||
.OxThemeModern .OxCalendar .OxBackground > div.odd {
|
||||
//background: rgb(20, 20, 20);
|
||||
background: rgb(24, 24, 24);
|
||||
}
|
||||
.OxThemeModern .OxCalendar .OxBackground > div.line {
|
||||
background: rgb(32, 32, 32);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Dialog
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeModern .OxDialog {
|
||||
-moz-box-shadow: 0 0 8px rgba(0, 0, 0, 1);
|
||||
-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 1);
|
||||
}
|
||||
|
||||
.OxThemeModern .OxDialog .OxBar {
|
||||
background: -moz-linear-gradient(top, rgba(64, 64, 64, 0.96), rgba(32, 32, 32, 0.96));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgba(64, 64, 64, 0.96)), to(rgba(32, 32, 32, 0.96)));
|
||||
}
|
||||
|
||||
.OxThemeModern .OxDialog .OxContent {
|
||||
background: rgba(48, 48, 48, 0.96);
|
||||
}
|
||||
|
||||
.OxThemeModern .OxLayer {
|
||||
background: rgb(0, 0, 0);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Forms
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
/*
|
||||
.OxThemeModern .OxInput::-selection {
|
||||
background: rgb(80, 80, 80);
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
.OxThemeModern input.OxCheckbox,
|
||||
.OxThemeModern input.OxInput,
|
||||
.OxThemeModern textarea,
|
||||
.OxThemeModern .OxButton,
|
||||
.OxThemeModern .OxLabel,
|
||||
.OxThemeModern .OxTrack {
|
||||
//border: 1px solid rgb(80, 80, 80);
|
||||
border: 1px solid rgb(48, 48, 48);
|
||||
color: rgb(192, 192, 192);
|
||||
}
|
||||
.OxThemeModern .OxSelect {
|
||||
border: 1px solid rgb(48, 48, 48);
|
||||
}
|
||||
.OxThemeModern .OxSelect > .OxTitle {
|
||||
color: rgb(192, 192, 192);
|
||||
}
|
||||
.OxThemeModern .OxInputLabel {
|
||||
color: rgb(192, 192, 192);
|
||||
}
|
||||
.OxThemeModern .OxButton,
|
||||
.OxThemeModern div.OxInput,
|
||||
.OxThemeModern .OxSelect {
|
||||
background: -moz-linear-gradient(top, rgb(96, 96, 96), rgb(64, 64, 64));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(96, 96, 96)), to(rgb(64, 64, 64)));
|
||||
//background: -moz-linear-gradient(left top, left bottom, from(rgb(64, 64, 64)), to(rgb(32, 32, 32)));
|
||||
//background: -webkit-gradient(linear, left top, left bottom, from(rgb(64, 64, 64)), to(rgb(32, 32, 32)));
|
||||
}
|
||||
.OxThemeModern .OxButton:active {
|
||||
background: rgb(80, 80, 80);
|
||||
//background: rgb(64, 64, 64);
|
||||
}
|
||||
.OxThemeModern .OxCheckbox:active {
|
||||
background: -moz-linear-gradient(top, rgb(16, 16, 16), rgb(48, 48, 48));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(16, 16, 16)), to(rgb(48, 48, 48)));
|
||||
}
|
||||
|
||||
.OxThemeModern .OxButton.OxDisabled {
|
||||
background: rgb(80, 80, 80);
|
||||
color: rgb(128, 128, 128);
|
||||
}
|
||||
.OxThemeModern .OxButton.OxSelected,
|
||||
.OxThemeModern .OxSelect.OxSelected,
|
||||
.OxThemeModern .OxCollapsePanel > .OxBar > .OxExtras > .OxSelect.OxSelected {
|
||||
//background: -moz-linear-gradient(left top, left bottom, from(rgb(80, 80, 80)), to(rgb(112, 112, 112)));
|
||||
//background: -webkit-gradient(linear, left top, left bottom, from(rgb(80, 80, 80)), to(rgb(112, 112, 112)));
|
||||
background: -moz-linear-gradient(top, rgb(0, 0, 0), rgb(32, 32, 32) 10%, rgb(64, 64, 64));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(0, 0, 0)), color-stop(0.1, rgb(32, 32, 32)), to(rgb(64, 64, 64)));
|
||||
color: rgb(224, 224, 224);
|
||||
}
|
||||
.OxThemeModern .OxButton.OxTab.OxSelected {
|
||||
border-bottom: 1px solid rgb(64, 64, 64);
|
||||
}
|
||||
.OxThemeModern .OxFormMessage {
|
||||
color: rgb(255, 64, 64);
|
||||
}
|
||||
|
||||
.OxThemeModern .OxLabel.OxDisabled {
|
||||
color: rgb(128, 128, 128);
|
||||
}
|
||||
|
||||
.OxThemeModern input.OxCheckbox,
|
||||
.OxThemeModern input.OxInput,
|
||||
.OxThemeModern .OxTrack {
|
||||
background: -moz-linear-gradient(top, rgb(0, 0, 0), rgb(32, 32, 32));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(0, 0, 0)), to(rgb(32, 32, 32)));
|
||||
}
|
||||
.OxThemeModern div.OxInput.OxFocus,
|
||||
.OxThemeModern .OxSelect.OxFocus {
|
||||
//border: 1px solid rgb(80, 80, 80);
|
||||
-moz-box-shadow: 0 0 2px rgb(128, 128, 128);
|
||||
-webkit-box-shadow: 0 0 2px rgb(128, 128, 128);
|
||||
}
|
||||
.OxThemeModern div.OxInput.OxFocus > .OxInputLabel {
|
||||
border-color: rgb(80, 80, 80);
|
||||
}
|
||||
.OxThemeModern .OxInput.OxPlaceholder {
|
||||
color: rgb(96, 96, 96)
|
||||
}
|
||||
.OxThemeModern .OxLabel {
|
||||
border: 1px solid rgb(48, 48, 48);
|
||||
background: rgb(80, 80, 80);
|
||||
color: rgb(192, 192, 192);
|
||||
}
|
||||
|
||||
.OxThemeModern input.OxCheckbox.OxDisabled,
|
||||
.OxThemeModern input.OxInput:disabled {
|
||||
background: rgb(16, 16, 16);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Lists
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeModern .OxIconList .OxItem img.OxLoading {
|
||||
border-color: rgb(48, 48, 48);
|
||||
background: -moz-linear-gradient(top, rgb(32, 32, 32), rgb(0, 0, 0));
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgb(32, 32, 32)), color-stop(1, rgb(0, 0, 0)));
|
||||
}
|
||||
.OxThemeModern .OxIconList .OxItem.OxSelected > .OxIcon img {
|
||||
border-color: rgb(96, 96, 96);
|
||||
-moz-box-shadow: 0 0 4px rgba(96, 96, 96, 1);
|
||||
-webkit-box-shadow: 0 0 4px rgba(96, 96, 96, 1);
|
||||
}
|
||||
.OxThemeModern .OxIconList.OxFocus .OxItem.OxSelected > .OxIcon img {
|
||||
border-color: rgb(128, 128, 128);
|
||||
-moz-box-shadow: 0 0 4px rgba(128, 128, 128, 1);
|
||||
-webkit-box-shadow: 0 0 4px rgba(128, 128, 128, 1);
|
||||
}
|
||||
.OxThemeModern .OxIconList .OxItem > .OxReflection > div {
|
||||
background: -moz-linear-gradient(top, rgba(16, 16, 16, 0.75), rgba(16, 16, 16, 1));
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(16, 16, 16, 0.75)), color-stop(1, rgba(16, 16, 16, 1)));
|
||||
}
|
||||
.OxThemeModern .OxIconList .OxItem > .OxText > div {
|
||||
text-shadow: rgb(0, 0, 0) 1px 1px 0;
|
||||
}
|
||||
.OxThemeModern .OxIconList .OxItem.OxSelected > .OxText > div {
|
||||
border-color: rgb(96, 96, 96);
|
||||
background: rgba(96, 96, 96, 0.5);
|
||||
-moz-box-shadow: 0 0 4px rgba(96, 96, 96, 1);
|
||||
-webkit-box-shadow: 0 0 4px rgba(96, 96, 96, 1);
|
||||
}
|
||||
.OxThemeModern .OxIconList.OxFocus .OxItem.OxSelected > .OxText > div {
|
||||
border-color: rgb(128, 128, 128);
|
||||
background: rgba(128, 128, 128, 0.5);
|
||||
-moz-box-shadow: 0 0 4px rgba(128, 128, 128, 1);
|
||||
-webkit-box-shadow: 0 0 4px rgba(128, 128, 128, 1);
|
||||
}
|
||||
.OxThemeModern .OxIconList .OxItem > .OxText > div > .OxInfo {
|
||||
color: rgb(128, 128, 128);
|
||||
}
|
||||
|
||||
|
||||
.OxThemeModern .OxTextList .OxItem .OxCell {
|
||||
border-right-color: rgb(32, 32, 32);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxItem:nth-child(odd) {
|
||||
background: rgb(14, 14, 14);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxItem:nth-child(even) {
|
||||
background: rgb(18, 18, 18);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxItem.OxSelected:nth-child(odd) {
|
||||
background: rgb(46, 46, 46);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxItem.OxSelected:nth-child(even) {
|
||||
background: rgb(50, 50, 50);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxFocus .OxItem.OxSelected:nth-child(odd) {
|
||||
background: rgb(62, 62, 62);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxFocus .OxItem.OxSelected:nth-child(even) {
|
||||
background: rgb(66, 66, 66);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxBar .OxSelected {
|
||||
background: -moz-linear-gradient(top, rgb(80, 80, 80), rgb(48, 48, 48));
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgb(80, 80, 80)), color-stop(1, rgb(48, 48, 48)));
|
||||
color: rgb(255, 255, 255);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxBar .OxOrder {
|
||||
color: rgb(255, 255, 255);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxBar .OxResize .OxCenter {
|
||||
background: rgb(24, 24, 24);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxBar .OxSelect {
|
||||
border-color: rgb(24, 24, 24);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxBody .OxItem .OxCell {
|
||||
border-right-color: rgb(24, 24, 24);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxItem.OxSelected .OxCell {
|
||||
border-right-color: rgb(40, 40, 40);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxFocus .OxItem.OxSelected .OxCell {
|
||||
border-right-color: rgb(72, 72, 72);
|
||||
color: rgb(255, 255, 255);
|
||||
}
|
||||
.OxThemeModern .OxTextList .OxBody .OxItem .OxLine {
|
||||
background: rgb(24, 24, 24);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Menus
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeModern .OxMainMenu > .OxTitle.OxSelected {
|
||||
background: -moz-linear-gradient(top, rgb(80, 80, 80), rgb(48, 48, 48));
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(80, 80, 80)), to(rgb(48, 48, 48)));
|
||||
}
|
||||
|
||||
.OxThemeModern .OxMenu {
|
||||
-moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.75);
|
||||
-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.75);
|
||||
}
|
||||
.OxThemeModern .OxMenu .OxBottom,
|
||||
.OxThemeModern .OxMenu .OxItem,
|
||||
.OxThemeModern .OxMenu .OxScrollbar,
|
||||
.OxThemeModern .OxMenu .OxSpace,
|
||||
.OxThemeModern .OxMenu .OxTop {
|
||||
background: rgba(48, 48, 48, 0.96);
|
||||
}
|
||||
.OxThemeModern .OxMenu .OxItem.OxSelected,
|
||||
.OxThemeModern .OxMenu .OxLine,
|
||||
.OxThemeModern .OxMenu .OxScrollbar.OxSelected {
|
||||
background: rgba(64, 64, 64, 0.96);
|
||||
}
|
||||
.OxThemeModern .OxMenu .OxItem.OxDisabled .OxCell {
|
||||
color: rgb(128, 128, 128);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Scrollbars
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeModern ::-webkit-scrollbar:horizontal {
|
||||
border-top: 1px solid rgb(48, 48, 48);
|
||||
border-bottom: 1px solid rgb(48, 48, 48);
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(96, 96, 96)), to(rgb(64, 64, 64)));
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar:vertical {
|
||||
border-left: 1px solid rgb(48, 48, 48);
|
||||
border-right: 1px solid rgb(48, 48, 48);
|
||||
background: -webkit-gradient(linear, left top, right top, from(rgb(96, 96, 96)), to(rgb(64, 64, 64)));
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-button:horizontal:decrement {
|
||||
background: url(../png/ox.ui.modern/scrollbarHorizontalDecrement.png);
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-button:horizontal:increment {
|
||||
background: url(../png/ox.ui.modern/scrollbarHorizontalIncrement.png);
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-button:vertical:decrement {
|
||||
background: url(../png/ox.ui.modern/scrollbarVerticalDecrement.png);
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-button:vertical:increment {
|
||||
background: url(../png/ox.ui.modern/scrollbarVerticalIncrement.png);
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-corner {
|
||||
border-right: 1px solid rgb(48, 48, 48);
|
||||
border-bottom: 1px solid rgb(48, 48, 48);
|
||||
background: -webkit-gradient(linear, left top, right bottom, from(rgb(96, 96, 96)), to(rgb(32, 32, 32)));
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-thumb {
|
||||
border: 1px solid rgb(48, 48, 48);
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-thumb:horizontal {
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(96, 96, 96)), to(rgb(64, 64, 64)));
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-thumb:vertical {
|
||||
background: -webkit-gradient(linear, left top, right top, from(rgb(96, 96, 96)), to(rgb(64, 64, 64)));
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-track {
|
||||
border: 1px solid rgb(32, 32, 32);
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-track:horizontal {
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(rgb(0, 0, 0)), to(rgb(32, 32, 32)));
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar-track:vertical {
|
||||
background: -webkit-gradient(linear, left top, right top, from(rgb(0, 0, 0)), to(rgb(32, 32, 32)));
|
||||
}
|
||||
.OxThemeModern ::-webkit-scrollbar:active,
|
||||
.OxThemeModern ::-webkit-scrollbar-thumb:active {
|
||||
background: rgb(64, 64, 64);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Video
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeModern .OxAnnotation {
|
||||
border-color: rgb(48, 48, 48);
|
||||
}
|
||||
.OxThemeModern .OxAnnotation.OxSelected {
|
||||
background: rgb(48, 48, 48);
|
||||
}
|
||||
|
||||
.OxThemeModern .OxVideoPlayer {
|
||||
background: rgb(0, 0, 0);
|
||||
}
|
||||
|
||||
/*
|
||||
================================================================================
|
||||
Miscellaneous
|
||||
================================================================================
|
||||
*/
|
||||
|
||||
.OxThemeModern .OxTooltip {
|
||||
border: 1px solid rgba(128, 128, 128, 0.96);
|
||||
background: rgba(0, 0, 0, 0.96);
|
||||
color: rgba(128, 128, 128, 1);
|
||||
-moz-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
|
||||
-webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
|
||||
}
|
||||
|
|
@ -926,7 +926,7 @@ Ox.getDateInWeek = function(date, weekday, utc) {
|
|||
return date;
|
||||
}
|
||||
|
||||
Ox.getDayOfTheYear = function(date) {
|
||||
Ox.getDayOfTheYear = function(date, utc) {
|
||||
/*
|
||||
>>> Ox.getDayOfTheYear(new Date("12/31/2000"))
|
||||
366
|
||||
|
|
|
|||
|
|
@ -1,208 +1,433 @@
|
|||
//vim: et:ts=4:sw=4:sts=4:ft=js
|
||||
|
||||
/*
|
||||
OxUI Loader
|
||||
|
||||
Provides function Ox.UI([options], callback) that fires when
|
||||
OxUI.css, Ox.js und jquery.js have loaded
|
||||
all images have loaded
|
||||
the DOM is ready
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
||||
var path = Array.prototype.slice.apply(
|
||||
var files = ['css/OxUI.css', 'js/Ox.js', 'js/jquery.js'],
|
||||
path = Array.prototype.slice.apply(
|
||||
document.getElementsByTagName('script')
|
||||
).filter(function(script) {
|
||||
return /OxUI\.js$/(script.src);
|
||||
})[0].src.replace('OxUI.js', ''),
|
||||
scripts = [
|
||||
{ready: typeof Ox != 'undefined', src: 'Ox.js'},
|
||||
{ready: typeof $ != 'undefined', src: 'jquery.js'}
|
||||
],
|
||||
uiCallback,
|
||||
ready = false,
|
||||
readyCallbacks = [];
|
||||
).filter(function(element) {
|
||||
return /OxUI\.js$/(element.src);
|
||||
})[0].src.replace('js/OxUI.js', ''),
|
||||
head = document.getElementsByTagName('head')[0],
|
||||
oxUICallback = function() {},
|
||||
oxUIFunction = function(options, callback) {
|
||||
var defaults = {
|
||||
// 'classic', 'modern', 'verbose' or anything falsy
|
||||
display: 'classic'
|
||||
};
|
||||
oxUICallback = arguments.length == 2 ? callback : options;
|
||||
oxUIOptions = arguments.length == 2 && options ? options : {};
|
||||
},
|
||||
oxUIOptions = {},
|
||||
documentReady = false,
|
||||
documentReadyCallbacks = [];
|
||||
|
||||
files.forEach(function(file, i) {
|
||||
files[i] = {
|
||||
ready: isIncluded(file),
|
||||
src: file
|
||||
};
|
||||
});
|
||||
|
||||
Ox = typeof Ox != 'undefined' ? Ox : function() {};
|
||||
Ox.UI = function(callback) {
|
||||
uiCallback = callback;
|
||||
};
|
||||
Ox.UI = oxUIFunction;
|
||||
|
||||
scripts.forEach(function(script) {
|
||||
var element;
|
||||
if (!script.ready) {
|
||||
element = document.createElement('script');
|
||||
element.src = path + script.src;
|
||||
element.type = 'text/javascript';
|
||||
element.onload = function() {
|
||||
script.ready = true;
|
||||
waitForDocument();
|
||||
waitForFiles();
|
||||
|
||||
files.forEach(function(file) {
|
||||
var element,
|
||||
isCSS = isFileType(file.src, 'css');
|
||||
if (!file.ready) {
|
||||
element = document.createElement(isCSS ? 'link' : 'script');
|
||||
element[isCSS ? 'href' : 'src'] = path + file.src;
|
||||
element.type = isCSS ? 'text/css' : 'text/javascript';
|
||||
if (isCSS) {
|
||||
element.rel = 'stylesheet';
|
||||
waitForCSS();
|
||||
} else {
|
||||
element.onload = onload;
|
||||
}
|
||||
head.appendChild(element);
|
||||
}
|
||||
function onload() {
|
||||
file.ready = true;
|
||||
console.log(file.src, 'ready')
|
||||
if (file.src == 'js/Ox.js') {
|
||||
Ox.UI = oxUIFunction;
|
||||
}
|
||||
waitForFiles();
|
||||
}
|
||||
function waitForCSS() {
|
||||
try {
|
||||
element.sheet.cssRule;
|
||||
onload();
|
||||
};
|
||||
document.getElementsByTagName('head')[0].appendChild(element);
|
||||
} catch(e) {
|
||||
setTimeout(waitForCSS, 25);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
onload();
|
||||
function isFileType(src, type) {
|
||||
return new RegExp('\.' + type + '$')(src);
|
||||
}
|
||||
|
||||
function onload() {
|
||||
if (scripts.map(function(script) {
|
||||
return script.ready;
|
||||
function isIncluded(src) {
|
||||
var isCSS = isFileType(src);
|
||||
return Array.prototype.slice.apply(
|
||||
document.getElementsByTagName(isCSS ? 'link' : 'script')
|
||||
).map(function(element) {
|
||||
return element[isCSS ? 'href' : 'src'] == path + src;
|
||||
}).reduce(function(prev, curr) {
|
||||
return prev || curr;
|
||||
}, false);
|
||||
}
|
||||
|
||||
function waitForDocument() {
|
||||
document.addEventListener('DOMContentLoaded', onload, false);
|
||||
function onload() {
|
||||
console.log('DOMContentLoaded')
|
||||
document.removeEventListener('DOMContentLoaded', onload, false);
|
||||
bootOxUI();
|
||||
}
|
||||
}
|
||||
|
||||
function waitForFiles() {
|
||||
files.map(function(file) {
|
||||
return file.ready;
|
||||
}).reduce(function(pre, cur) {
|
||||
return pre && cur;
|
||||
})) {
|
||||
}) && loadOxUI();
|
||||
}
|
||||
|
||||
Ox.UI = {};
|
||||
Ox.UI.ready = function(callback) {
|
||||
if (!ready) {
|
||||
readyCallbacks.push(callback);
|
||||
} else {
|
||||
callback();
|
||||
function bootOxUI() {
|
||||
|
||||
var body = element('body'),
|
||||
css = {
|
||||
position: 'absolute',
|
||||
left: 0,
|
||||
top: 0,
|
||||
right: 0,
|
||||
bottom: 0,
|
||||
margin: 'auto',
|
||||
MozUserSelect: 'none',
|
||||
WebkitUserSelect: 'none'
|
||||
},
|
||||
div = element('<div>')
|
||||
.css({
|
||||
position: 'absolute',
|
||||
left: 0,
|
||||
top: 0,
|
||||
right: 0,
|
||||
bottom: 0,
|
||||
background: 'rgb(240, 240, 240)',
|
||||
opacity: 1,
|
||||
zIndex: 1000
|
||||
})
|
||||
.appendTo(body),
|
||||
userAgents = [
|
||||
{name: 'Chrome', url: 'http://www.google.com/chrome/'},
|
||||
{name: 'Firefox', url: 'http://www.mozilla.org/firefox/'},
|
||||
{name: 'Safari', url: 'http://www.apple.com/safari/'}
|
||||
];
|
||||
|
||||
getUserAgent() ? start() : stop();
|
||||
|
||||
function getUserAgent() {
|
||||
var userAgent = '';
|
||||
userAgents.forEach(function(v) {
|
||||
if (navigator.userAgent.indexOf(v.name) > -1) {
|
||||
userAgent = v.name;
|
||||
}
|
||||
};
|
||||
|
||||
$(function() {
|
||||
Ox.UI.$body = $('body');
|
||||
Ox.UI.$document = $(document);
|
||||
Ox.UI.$head = $('head');
|
||||
Ox.UI.$window = $(window);
|
||||
ready = true;
|
||||
readyCallbacks.forEach(function(callback) {
|
||||
callback();
|
||||
});
|
||||
});
|
||||
|
||||
Ox.UI.elements = {};
|
||||
Ox.UI.DEFAULT_THEME = 'classic';
|
||||
Ox.UI.DIMENSIONS = {
|
||||
horizontal: ['width', 'height'],
|
||||
vertical: ['height', 'width']
|
||||
};
|
||||
Ox.UI.EDGES = {
|
||||
horizontal: ['left', 'right', 'top', 'bottom'],
|
||||
vertical: ['top', 'bottom', 'left', 'right']
|
||||
};
|
||||
Ox.UI.getImagePath = function(filename) {
|
||||
// fixme: not the best idea to do this here
|
||||
if (filename == 'symbolPlay.svg') {
|
||||
filename = 'symbolRight.svg';
|
||||
}
|
||||
return Ox.UI.PATH + filename.split('.').pop() +
|
||||
'/ox.ui.' + Ox.UI.theme() + '/' + filename;
|
||||
};
|
||||
|
||||
Ox.UI.PATH = $('script[src*="OxUI.js"]')
|
||||
.attr('src').replace('js/OxUI.js', '');
|
||||
Ox.UI.SCROLLBAR_SIZE = $.browser.mozilla ? 16 : 12;
|
||||
// fixme: the follwing should be deprecated
|
||||
Ox.UI.theme = function() {
|
||||
var theme;
|
||||
Ox.forEach(Ox.UI.$body.attr('class').split(' '), function(v) {
|
||||
if (Ox.startsWith(v, 'OxTheme')) {
|
||||
theme = v.replace('OxTheme', '').toLowerCase();
|
||||
return false;
|
||||
}
|
||||
});
|
||||
return theme || Ox.UI.DEFAULT_THEME; // fixme: shouldn't be neccessary
|
||||
};
|
||||
Ox.UI.getBarSize = function(size) {
|
||||
var sizes = {
|
||||
small: 20,
|
||||
medium: 24,
|
||||
large: 28
|
||||
};
|
||||
return sizes[size];
|
||||
};
|
||||
Ox.UI.symbols = {
|
||||
alt: '\u2325',
|
||||
apple: '\uF8FF',
|
||||
arrow_down: '\u2193',
|
||||
arrow_left: '\u2190',
|
||||
arrow_right: '\u2192',
|
||||
arrow_up: '\u2191',
|
||||
backspace: '\u232B',
|
||||
backup: '\u2707',
|
||||
ballot: '\u2717',
|
||||
black_star: '\u2605',
|
||||
burn: '\u2622',
|
||||
caps_lock: '\u21EA',
|
||||
check: '\u2713',
|
||||
//clear: '\u2327',
|
||||
clear: '\u00D7',
|
||||
click: '\uF803',
|
||||
close: '\u2715',
|
||||
command: '\u2318',
|
||||
control: '\u2303',
|
||||
cut: '\u2702',
|
||||
'delete': '\u2326',
|
||||
diamond: '\u25C6',
|
||||
edit: '\uF802',
|
||||
eject: '\u23CF',
|
||||
escape: '\u238B',
|
||||
end: '\u2198',
|
||||
enter: '\u2324',
|
||||
fly: '\u2708',
|
||||
gear: '\u2699',
|
||||
home: '\u2196',
|
||||
info: '\u24D8',
|
||||
navigate: '\u2388',
|
||||
option: '\u2387',
|
||||
page_up: '\u21DE',
|
||||
page_down: '\u21DF',
|
||||
redo: '\u21BA',
|
||||
'return': '\u21A9',
|
||||
//select: '\u21D5',
|
||||
select: '\u25BE',
|
||||
shift: '\u21E7',
|
||||
sound: '\u266B',
|
||||
space: '\u2423',
|
||||
tab: '\u21E5',
|
||||
trash: '\u267A',
|
||||
triangle_down: '\u25BC',
|
||||
triangle_left: '\u25C0',
|
||||
triangle_right: '\u25BA',
|
||||
triangle_up: '\u25B2',
|
||||
undo: '\u21BB',
|
||||
voltage: '\u26A1',
|
||||
warning: '\u26A0',
|
||||
white_star: '\u2606'
|
||||
};
|
||||
Ox.IMAGE_CACHE = [];
|
||||
$.getJSON(Ox.UI.PATH + 'json/OxUI.json', function(data) {
|
||||
|
||||
function loadImage(src) {
|
||||
var dfd = new $.Deferred();
|
||||
var image = new Image();
|
||||
image.onload = function() {
|
||||
dfd.resolve();
|
||||
};
|
||||
image.src = Ox.UI.PATH + src;
|
||||
Ox.IMAGE_CACHE.push(src);
|
||||
return dfd.promise();
|
||||
}
|
||||
|
||||
function loadScript(src) {
|
||||
// jQuery doesn't work here, does some unwanted magic
|
||||
var dfd = new $.Deferred();
|
||||
var script = document.createElement('script');
|
||||
script.onload = function() {
|
||||
dfd.resolve();
|
||||
};
|
||||
script.src = Ox.UI.PATH + src;
|
||||
script.type = 'text/javascript';
|
||||
document.getElementsByTagName('head')[0].appendChild(script);
|
||||
return dfd.promise();
|
||||
}
|
||||
|
||||
var $head = $('head'),
|
||||
promises = [];
|
||||
// fixme: find a better way to not wait for flags
|
||||
data = data.filter(function(image) {
|
||||
return !Ox.startsWith(image, 'svg/ox.map/');
|
||||
});
|
||||
data.forEach(function(src) {
|
||||
if (/\.js$/(src)) {
|
||||
promises.push(loadScript(src));
|
||||
} else {
|
||||
promises.push(loadImage(src));
|
||||
}
|
||||
});
|
||||
$.when.apply(null, promises)
|
||||
.done(uiCallback || []);
|
||||
});
|
||||
|
||||
return userAgent;
|
||||
}
|
||||
|
||||
|
||||
function element(str) {
|
||||
// Generic HTML Element Object (mimics jQuery)
|
||||
return {
|
||||
0: str[0] == '<' ?
|
||||
document.createElement(str.substr(1, str.length - 2)) :
|
||||
document.getElementsByTagName(str)[0],
|
||||
addClass: function(str) {
|
||||
this[0].className = str;
|
||||
return this;
|
||||
},
|
||||
append: function(element) {
|
||||
this[0].appendChild(element[0]);
|
||||
return this;
|
||||
},
|
||||
appendTo: function(element) {
|
||||
element[0].appendChild(this[0]);
|
||||
return this;
|
||||
},
|
||||
attr: function(obj) {
|
||||
for (var key in obj) {
|
||||
this[0].setAttribute(key, obj[key]);
|
||||
}
|
||||
return this;
|
||||
},
|
||||
css: function(obj) {
|
||||
for (var key in obj) {
|
||||
this[0].style[key] = obj[key];
|
||||
}
|
||||
return this;
|
||||
},
|
||||
html: function(str) {
|
||||
this[0].innerHTML = str;
|
||||
return this;
|
||||
},
|
||||
mousedown: function(fn) {
|
||||
this[0].onmousedown = fn;
|
||||
return this;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function start() {
|
||||
var image = new Image(),
|
||||
src = path + 'svg/ox.ui.classic/symbolLoading.svg';
|
||||
image.onload = function() {
|
||||
element('<img>')
|
||||
.attr({
|
||||
src: src
|
||||
})
|
||||
.css(css)
|
||||
.css({
|
||||
width: '32px',
|
||||
height: '32px'
|
||||
})
|
||||
.mousedown(function(e) {
|
||||
e.preventDefault()
|
||||
})
|
||||
.appendTo(div);
|
||||
};
|
||||
image.src = src;
|
||||
}
|
||||
|
||||
function stop() {
|
||||
var counter = 0;
|
||||
userAgents.forEach(function(userAgent) {
|
||||
var image = new Image();
|
||||
userAgent.src = path + 'png/ox.ui/browser' + userAgent.name + '128.png';
|
||||
image.onload = function() {
|
||||
++counter == userAgents.length && loaded();
|
||||
}
|
||||
image.src = userAgent.src;
|
||||
});
|
||||
function loaded() {
|
||||
var box = element('<div>')
|
||||
.css(css)
|
||||
.appendTo(div);
|
||||
userAgents.forEach(function(userAgent, i) {
|
||||
var link = element('<a>')
|
||||
.attr({
|
||||
href: userAgents[name],
|
||||
title: name
|
||||
})
|
||||
.css({
|
||||
position: 'absolute',
|
||||
left: (i * 72) + 'px',
|
||||
width: '72px',
|
||||
height: '72px',
|
||||
})
|
||||
.appendTo(box);
|
||||
element('<img>')
|
||||
.css(css)
|
||||
.css({
|
||||
width: '64px',
|
||||
height: '64px',
|
||||
border: 0,
|
||||
cursor: 'pointer'
|
||||
})
|
||||
.mousedown(function(e) {
|
||||
e.preventDefault();
|
||||
})
|
||||
.appendTo(link);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function loadOxUI() {
|
||||
|
||||
Ox.UI = {};
|
||||
Ox.UI.ready = function(callback) {
|
||||
if (!documentReady) {
|
||||
documentReadyCallbacks.push(callback);
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
|
||||
$.getJSON(path + 'json/OxUI.json', function(data) {
|
||||
|
||||
var $head = $('head'),
|
||||
promises = [waitForDocument()];
|
||||
// fixme: find a better way to not wait for flags
|
||||
data = data.filter(function(image) {
|
||||
return !Ox.startsWith(image, 'svg/ox.map/');
|
||||
});
|
||||
data.forEach(function(src) {
|
||||
promises.push(loadFile(src));
|
||||
});
|
||||
$.when.apply(null, promises)
|
||||
.then(function() {
|
||||
var $div = Ox.UI.$body.find('div');
|
||||
Ox.UI.$body.find('img').remove();
|
||||
$div.animate({
|
||||
opacity: 0
|
||||
}, 1000, function() {
|
||||
$div.remove();
|
||||
});
|
||||
oxUICallback();
|
||||
})
|
||||
.fail(function() {
|
||||
throw new Error('File not found.');
|
||||
});
|
||||
|
||||
function loadFile(src) {
|
||||
var dfd = new $.Deferred(),
|
||||
isJS = isFileType(src, 'js'),
|
||||
element = isJS ? document.createElement('script') : new Image();
|
||||
element.onload = dfd.resolve;
|
||||
element.src = path + src;
|
||||
if (isJS) {
|
||||
element.type = 'text/javascript';
|
||||
head.appendChild(element)
|
||||
} else {
|
||||
// need to keep a reference to keep image in cache
|
||||
Ox.UI.IMAGE_CACHE.push(src);
|
||||
}
|
||||
return dfd.promise();
|
||||
}
|
||||
|
||||
function waitForDocument() {
|
||||
var dfd = new $.Deferred();
|
||||
$(function() {
|
||||
Ox.UI.$body = $('body');
|
||||
Ox.UI.$document = $(document);
|
||||
Ox.UI.$head = $('head');
|
||||
Ox.UI.$window = $(window);
|
||||
documentReady = true;
|
||||
documentReadyCallbacks.forEach(function(callback) {
|
||||
callback();
|
||||
});
|
||||
dfd.resolve();
|
||||
});
|
||||
return dfd.promise();
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
Ox.UI.elements = {};
|
||||
Ox.UI.DEFAULT_THEME = 'classic';
|
||||
Ox.UI.DIMENSIONS = {
|
||||
horizontal: ['width', 'height'],
|
||||
vertical: ['height', 'width']
|
||||
};
|
||||
Ox.UI.EDGES = {
|
||||
horizontal: ['left', 'right', 'top', 'bottom'],
|
||||
vertical: ['top', 'bottom', 'left', 'right']
|
||||
};
|
||||
Ox.UI.getImagePath = function(filename) {
|
||||
// fixme: not the best idea to do this here
|
||||
if (filename == 'symbolPlay.svg') {
|
||||
filename = 'symbolRight.svg';
|
||||
}
|
||||
return Ox.UI.PATH + filename.split('.').pop() +
|
||||
'/ox.ui.' + Ox.UI.theme() + '/' + filename;
|
||||
};
|
||||
Ox.UI.IMAGE_CACHE = [];
|
||||
Ox.UI.PATH = $('script[src*="OxUI.js"]')
|
||||
.attr('src').replace('js/OxUI.js', '');
|
||||
Ox.UI.SCROLLBAR_SIZE = $.browser.mozilla ? 16 : 12;
|
||||
// fixme: the follwing should be deprecated
|
||||
Ox.UI.theme = function() {
|
||||
var theme;
|
||||
Ox.forEach(Ox.UI.$body.attr('class').split(' '), function(v) {
|
||||
if (Ox.startsWith(v, 'OxTheme')) {
|
||||
theme = v.replace('OxTheme', '').toLowerCase();
|
||||
return false;
|
||||
}
|
||||
});
|
||||
return theme || Ox.UI.DEFAULT_THEME; // fixme: shouldn't be neccessary
|
||||
};
|
||||
Ox.UI.getBarSize = function(size) {
|
||||
var sizes = {
|
||||
small: 20,
|
||||
medium: 24,
|
||||
large: 28
|
||||
};
|
||||
return sizes[size];
|
||||
};
|
||||
Ox.UI.symbols = {
|
||||
alt: '\u2325',
|
||||
apple: '\uF8FF',
|
||||
arrow_down: '\u2193',
|
||||
arrow_left: '\u2190',
|
||||
arrow_right: '\u2192',
|
||||
arrow_up: '\u2191',
|
||||
backspace: '\u232B',
|
||||
backup: '\u2707',
|
||||
ballot: '\u2717',
|
||||
black_star: '\u2605',
|
||||
burn: '\u2622',
|
||||
caps_lock: '\u21EA',
|
||||
check: '\u2713',
|
||||
//clear: '\u2327',
|
||||
clear: '\u00D7',
|
||||
click: '\uF803',
|
||||
close: '\u2715',
|
||||
command: '\u2318',
|
||||
control: '\u2303',
|
||||
cut: '\u2702',
|
||||
'delete': '\u2326',
|
||||
diamond: '\u25C6',
|
||||
edit: '\uF802',
|
||||
eject: '\u23CF',
|
||||
escape: '\u238B',
|
||||
end: '\u2198',
|
||||
enter: '\u2324',
|
||||
fly: '\u2708',
|
||||
gear: '\u2699',
|
||||
home: '\u2196',
|
||||
info: '\u24D8',
|
||||
navigate: '\u2388',
|
||||
option: '\u2387',
|
||||
page_up: '\u21DE',
|
||||
page_down: '\u21DF',
|
||||
redo: '\u21BA',
|
||||
'return': '\u21A9',
|
||||
//select: '\u21D5',
|
||||
select: '\u25BE',
|
||||
shift: '\u21E7',
|
||||
sound: '\u266B',
|
||||
space: '\u2423',
|
||||
tab: '\u21E5',
|
||||
trash: '\u267A',
|
||||
triangle_down: '\u25BC',
|
||||
triangle_left: '\u25C0',
|
||||
triangle_right: '\u25BA',
|
||||
triangle_up: '\u25B2',
|
||||
undo: '\u21BB',
|
||||
voltage: '\u26A1',
|
||||
warning: '\u26A0',
|
||||
white_star: '\u2606'
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
}());
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue