RGL Browser: mostly cosmetic improvements

This commit is contained in:
john.j.camilleri
2013-07-24 15:03:48 +00:00
parent 68226a2354
commit 206f8db3e8
5 changed files with 6237 additions and 50 deletions

View File

@@ -8,12 +8,12 @@
<meta name="viewport" content="width=device-width">
<link rel="shortcut icon" href="icon.png" type="image/png">
<link rel="stylesheet" href="google-code-prettify/prettify-gf.css">
<link rel="stylesheet" href="http://layout.jquery-dev.net/lib/css/layout-default-latest.css" />
<link rel="stylesheet" href="layout-default-latest.css" />
<link rel="stylesheet" href="style.css">
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/ui/1.10.3/jquery-ui.min.js"></script>
<script type="text/javascript" src="http://layout.jquery-dev.net/lib/js/jquery.layout-latest.js"></script>
<script type="text/javascript" src="jquery.layout-latest.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('body').layout({
@@ -39,12 +39,6 @@
<div class="ui-layout-center">
<div id="tabbar">
Module: <span id="module_name">...</span>
<a class="tab scope" href="#scope">scope</a>
<a class="tab code" href="#code">code</a>
</div>
<div id="scope" class="panel scope">
<div id="controls">
<input type="text" id="search" />
@@ -117,9 +111,19 @@
<header>
<img src="../../../doc/Logos/gf0.png" alt="" />
<h1 title="...or GFRGLSB as we like to call it">GF Resource Grammar Library Source Browser</h1>
<a class="tab api" href="#api">API</a>
<a class="tab help" href="#help">Help</a>
<a href="http://www.grammaticalframework.org/lib/doc/synopsis.html" target="_blank">Synopsis...</a>
<div id="tabbar">
<span class="module">
Module: <span id="module_name">...</span>
<a class="tab scope" href="#scope">scope</a>
<a class="tab code" href="#code">code</a>
</span>
<a class="tab api" href="#api">API</a>
<a class="tab help" href="#help">Help</a>
<a class="synopsis" href="http://www.grammaticalframework.org/lib/doc/synopsis.html" target="_blank">Synopsis</a>
</div>
</header>
<footer id="footer">

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,224 @@
/*
* Default Layout Theme
*
* Created for jquery.layout
*
* Copyright (c) 2010
* Fabrizio Balliano (http://www.fabrizioballiano.net)
* Kevin Dalman (http://allpro.net)
*
* Dual licensed under the GPL (http://www.gnu.org/licenses/gpl.html)
* and MIT (http://www.opensource.org/licenses/mit-license.php) licenses.
*
* Last Updated: 2010-02-10
* NOTE: For best code readability, view this with a fixed-space font and tabs equal to 4-chars
*/
/*
* DEFAULT FONT
* Just to make demo-pages look better - not actually relevant to Layout!
*/
body {
font-family: Geneva, Arial, Helvetica, sans-serif;
font-size: 100%;
*font-size: 80%;
}
/*
* PANES & CONTENT-DIVs
*/
.ui-layout-pane { /* all 'panes' */
background: #FFF;
border: 1px solid #BBB;
padding: 10px;
overflow: auto;
/* DO NOT add scrolling (or padding) to 'panes' that have a content-div,
otherwise you may get double-scrollbars - on the pane AND on the content-div
- use ui-layout-wrapper class if pane has a content-div
- use ui-layout-container if pane has an inner-layout
*/
}
/* (scrolling) content-div inside pane allows for fixed header(s) and/or footer(s) */
.ui-layout-content {
padding: 10px;
position: relative; /* contain floated or positioned elements */
overflow: auto; /* add scrolling to content-div */
}
/*
* UTILITY CLASSES
* Must come AFTER pane-class above so will override
* These classes are NOT auto-generated and are NOT used by Layout
*/
.layout-child-container,
.layout-content-container {
padding: 0;
overflow: hidden;
}
.layout-child-container {
border: 0; /* remove border because inner-layout-panes probably have borders */
}
.layout-scroll {
overflow: auto;
}
.layout-hide {
display: none;
}
/*
* RESIZER-BARS
*/
.ui-layout-resizer { /* all 'resizer-bars' */
background: #DDD;
border: 1px solid #BBB;
border-width: 0;
}
.ui-layout-resizer-drag { /* REAL resizer while resize in progress */
}
.ui-layout-resizer-hover { /* affects both open and closed states */
}
/* NOTE: It looks best when 'hover' and 'dragging' are set to the same color,
otherwise color shifts while dragging when bar can't keep up with mouse */
.ui-layout-resizer-open-hover , /* hover-color to 'resize' */
.ui-layout-resizer-dragging { /* resizer beging 'dragging' */
background: #C4E1A4;
}
.ui-layout-resizer-dragging { /* CLONED resizer being dragged */
border: 1px solid #BBB;
}
.ui-layout-resizer-north-dragging,
.ui-layout-resizer-south-dragging {
border-width: 1px 0;
}
.ui-layout-resizer-west-dragging,
.ui-layout-resizer-east-dragging {
border-width: 0 1px;
}
/* NOTE: Add a 'dragging-limit' color to provide visual feedback when resizer hits min/max size limits */
.ui-layout-resizer-dragging-limit { /* CLONED resizer at min or max size-limit */
background: #E1A4A4; /* red */
}
.ui-layout-resizer-closed-hover { /* hover-color to 'slide open' */
background: #EBD5AA;
}
.ui-layout-resizer-sliding { /* resizer when pane is 'slid open' */
opacity: .10; /* show only a slight shadow */
filter: alpha(opacity=10);
}
.ui-layout-resizer-sliding-hover { /* sliding resizer - hover */
opacity: 1.00; /* on-hover, show the resizer-bar normally */
filter: alpha(opacity=100);
}
/* sliding resizer - add 'outside-border' to resizer on-hover
* this sample illustrates how to target specific panes and states */
.ui-layout-resizer-north-sliding-hover { border-bottom-width: 1px; }
.ui-layout-resizer-south-sliding-hover { border-top-width: 1px; }
.ui-layout-resizer-west-sliding-hover { border-right-width: 1px; }
.ui-layout-resizer-east-sliding-hover { border-left-width: 1px; }
/*
* TOGGLER-BUTTONS
*/
.ui-layout-toggler {
border: 1px solid #BBB; /* match pane-border */
background-color: #BBB;
}
.ui-layout-resizer-hover .ui-layout-toggler {
opacity: .60;
filter: alpha(opacity=60);
}
.ui-layout-toggler-hover , /* need when NOT resizable */
.ui-layout-resizer-hover .ui-layout-toggler-hover { /* need specificity when IS resizable */
background-color: #FC6;
opacity: 1.00;
filter: alpha(opacity=100);
}
.ui-layout-toggler-north ,
.ui-layout-toggler-south {
border-width: 0 1px; /* left/right borders */
}
.ui-layout-toggler-west ,
.ui-layout-toggler-east {
border-width: 1px 0; /* top/bottom borders */
}
/* hide the toggler-button when the pane is 'slid open' */
.ui-layout-resizer-sliding .ui-layout-toggler {
display: none;
}
/*
* style the text we put INSIDE the togglers
*/
.ui-layout-toggler .content {
color: #666;
font-size: 12px;
font-weight: bold;
width: 100%;
padding-bottom: 0.35ex; /* to 'vertically center' text inside text-span */
}
/*
* PANE-MASKS
* these styles are hard-coded on mask elems, but are also
* included here as !important to ensure will overrides any generic styles
*/
.ui-layout-mask {
border: none !important;
padding: 0 !important;
margin: 0 !important;
overflow: hidden !important;
position: absolute !important;
opacity: 0 !important;
filter: Alpha(Opacity="0") !important;
}
.ui-layout-mask-inside-pane { /* masks always inside pane EXCEPT when pane is an iframe */
top: 0 !important;
left: 0 !important;
width: 100% !important;
height: 100% !important;
}
div.ui-layout-mask {} /* standard mask for iframes */
iframe.ui-layout-mask {} /* extra mask for objects/applets */
/*
* Default printing styles
*/
@media print {
/*
* Unless you want to print the layout as it appears onscreen,
* these html/body styles are needed to allow the content to 'flow'
*/
html {
height: auto !important;
overflow: visible !important;
}
body.ui-layout-container {
position: static !important;
top: auto !important;
bottom: auto !important;
left: auto !important;
right: auto !important;
/* only IE6 has container width & height set by Layout */
_width: auto !important;
_height: auto !important;
}
.ui-layout-resizer, .ui-layout-toggler {
display: none !important;
}
/*
* Default pane print styles disables positioning, borders and backgrounds.
* You can modify these styles however it suit your needs.
*/
.ui-layout-pane {
border: none !important;
background: transparent !important;
position: relative !important;
top: auto !important;
bottom: auto !important;
left: auto !important;
right: auto !important;
width: auto !important;
height: auto !important;
overflow: visible !important;
}
}

View File

@@ -148,15 +148,17 @@ function Thing() {
t.initModules(lang);
}
// obj can be just a plain selector or a jQuery object
this.showPanel = function(obj, callback){
// hash should be "#code"
this.showPanel = function(hash, callback){
t.showLoading();
setTimeout(function(){
$(".panel:visible").hide();
$(obj).show(0, callback);
$("a.tab").removeClass('active');
$("a.tab[href='"+hash+"']").addClass('active');
$(hash).show(0, callback);
t.updateScopeCount();
t.hideLoading();
}, 500); // this ensures the loading displays
}, 200); // this ensures the loading displays
}
this.getPanel = function() {
return $('.panel:visible').first();
@@ -176,7 +178,7 @@ function Thing() {
t.showPanel(panel);
return false;
});
t.showPanel(".panel:first");
t.showPanel("#scope");
// Load the index file and populate language & module lists
$.ajax({
@@ -313,33 +315,34 @@ function Thing() {
// Which modules do we include for API?
this.apiModules = [
// api
"Constructors",
"Syntax",
"Constructors", "Cat", "Structural", "Combinators",
// abstract
"Adjective",
"Adverb",
"Backward",
"Cat",
"Common",
"Compatibility",
"Conjunction",
"Extra",
"Grammar",
"Idiom",
"Lang",
"Lexicon",
"Noun",
"Numeral",
"NumeralTransfer",
"Phrase",
"Question",
"Relative",
"Sentence",
"Structural",
"Symbol",
"Tense",
"Text",
"Transfer",
"Verb",
// "Adjective",
// "Adverb",
// "Backward",
// "Cat",
// "Common",
// "Compatibility",
// "Conjunction",
// "Extra",
// "Grammar",
// "Idiom",
// "Lang",
// "Lexicon",
// "Noun",
// "Numeral",
// "NumeralTransfer",
// "Phrase",
// "Question",
// "Relative",
// "Sentence",
// "Structural",
// "Symbol",
// "Tense",
// "Text",
// "Transfer",
// "Verb",
];
this.initAPI = function() {
t.showLoading();

View File

@@ -4,7 +4,7 @@
*/
body {
background-color: white;
background: url('http://cloud.grammaticalframework.org/minibar/brushed-metal.png') #ddd;
margin:0;
font: 13px sans-serif;
}
@@ -28,11 +28,17 @@ header h1 {
}
.ui-layout-north {
background:#ddd;
background:none;
border:none;
}
.ui-layout-resizer-north {
}
.ui-layout-resizer {
background:none;
}
.ui-layout-toggler {
background:#999;
}
.ui-layout-center,
.ui-layout-west {
@@ -51,12 +57,17 @@ header h1 {
}
#tabbar {
border-bottom: 1px dotted #ccc;
padding-bottom: 5px;
display:inline-block;
}
#tabbar .module {
border-left: 1px dotted #333;
border-right: 1px dotted #333;
padding:0.5em 0.2em 0.5em 1em;
margin-right:0.7em;
}
#module_name {
font-weight: bold;
margin-right: 2em;
margin-right:0.7em;
}
.tab {
cursor:pointer;
@@ -75,11 +86,14 @@ header h1 {
.tab:hover {
background: #666;
}
.tab.active {
background: #222;
}
#loading {
position: fixed;
top: 10px;
left: 46%;
right: 10px;
white-space: nowrap;
padding: 0.5em 1em;
border: 1px solid #F0C36D;
@@ -97,6 +111,11 @@ header h1 {
}
.help {
}
a.synopsis {
background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAVklEQVR4Xn3PgQkAMQhDUXfqTu7kTtkpd5RA8AInfArtQ2iRXFWT2QedAfttj2FsPIOE1eCOlEuoWWjgzYaB/IkeGOrxXhqB+uA9Bfcm0lAZuh+YIeAD+cAqSz4kCMUAAAAASUVORK5CYII=') center right no-repeat;
padding-right:14px;
}
input#search {
font-family:monospace;
width:25em;
@@ -105,9 +124,7 @@ input#search {
}
.panel {
padding:10px 5px;
}
.panel.code,
.panel.api,
.panel.help {