details: http://www.bx.psu.edu/hg/galaxy/rev/3d4d44d7a275 changeset: 2500:3d4d44d7a275 user: James Taylor <james@jamestaylor.org> date: Fri Jul 24 16:14:46 2009 -0400 description: New (custom) CSS processor, supports nested rules, background sprites, selector mixins, et cetera. Some styles have been updated to use this. History images now use sprites. All images have been optomized with advpng and optipng. 53 file(s) affected in this change: lib/galaxy/web/framework/__init__.py lib/galaxy/web/framework/helpers/__init__.py static/june_2007_style/base.css.tmpl static/june_2007_style/blue/base.css static/june_2007_style/blue/base_bg.png static/june_2007_style/blue/button_bar_bg_light.png static/june_2007_style/blue/data_empty.png static/june_2007_style/blue/data_error.png static/june_2007_style/blue/data_ok.png static/june_2007_style/blue/data_queued.png static/june_2007_style/blue/done_message_icon.png static/june_2007_style/blue/error_large.png static/june_2007_style/blue/error_message_icon.png static/june_2007_style/blue/error_small.png static/june_2007_style/blue/footer_title_bg.png static/june_2007_style/blue/form_body_bg.png static/june_2007_style/blue/gray_bg.png static/june_2007_style/blue/hgrad.png static/june_2007_style/blue/hgrad_over.png static/june_2007_style/blue/history.css static/june_2007_style/blue/info_large.png static/june_2007_style/blue/info_message_icon.png static/june_2007_style/blue/info_small.png static/june_2007_style/blue/iphone.css static/june_2007_style/blue/layout_callout_top.png static/june_2007_style/blue/library.css static/june_2007_style/blue/masthead.css static/june_2007_style/blue/masthead_bg.png static/june_2007_style/blue/ok_large.png static/june_2007_style/blue/ok_small.png static/june_2007_style/blue/panel_header_bg.png static/june_2007_style/blue/panel_layout.css static/june_2007_style/blue/popupmenu_callout_top.png static/june_2007_style/blue/reset.css static/june_2007_style/blue/tiny_arror_right.png static/june_2007_style/blue/tiny_arrow_left.png static/june_2007_style/blue/tiny_arrow_right.png static/june_2007_style/blue/tool_menu.css static/june_2007_style/blue/wait_large.png static/june_2007_style/blue/wait_small.png static/june_2007_style/blue/warn_large.png static/june_2007_style/blue/warn_message_icon.png static/june_2007_style/blue/warn_small.png static/june_2007_style/blue/workflow_circle_drag.png static/june_2007_style/blue/workflow_circle_green.png static/june_2007_style/blue/workflow_circle_open.png static/june_2007_style/history.css.tmpl static/june_2007_style/make_style.py static/june_2007_style/panel_layout.css.tmpl static/june_2007_style/process_css.py templates/base_panels.mako templates/root/history.mako templates/root/history_common.mako diffs (1437 lines): diff -r 0564441c5043 -r 3d4d44d7a275 lib/galaxy/web/framework/__init__.py --- a/lib/galaxy/web/framework/__init__.py Fri Jul 24 15:13:11 2009 -0400 +++ b/lib/galaxy/web/framework/__init__.py Fri Jul 24 16:14:46 2009 -0400 @@ -14,8 +14,7 @@ pkg_resources.require( "simplejson" ) import simplejson -pkg_resources.require( "WebHelpers" ) -import webhelpers +import helpers pkg_resources.require( "PasteDeploy" ) from paste.deploy.converters import asbool @@ -567,19 +566,19 @@ return self.fill_template_mako( filename, **kwargs ) else: template = Template( file=os.path.join(self.app.config.template_path, filename), - searchList=[kwargs, self.template_context, dict(caller=self, t=self, h=webhelpers, util=util, request=self.request, response=self.response, app=self.app)] ) + searchList=[kwargs, self.template_context, dict(caller=self, t=self, h=helpers, util=util, request=self.request, response=self.response, app=self.app)] ) return str( template ) def fill_template_mako( self, filename, **kwargs ): template = self.webapp.mako_template_lookup.get_template( filename ) template.output_encoding = 'utf-8' - data = dict( caller=self, t=self, trans=self, h=webhelpers, util=util, request=self.request, response=self.response, app=self.app ) + data = dict( caller=self, t=self, trans=self, h=helpers, util=util, request=self.request, response=self.response, app=self.app ) data.update( self.template_context ) data.update( kwargs ) return template.render( **data ) def stream_template_mako( self, filename, **kwargs ): template = self.webapp.mako_template_lookup.get_template( filename ) template.output_encoding = 'utf-8' - data = dict( caller=self, t=self, trans=self, h=webhelpers, util=util, request=self.request, response=self.response, app=self.app ) + data = dict( caller=self, t=self, trans=self, h=helpers, util=util, request=self.request, response=self.response, app=self.app ) data.update( self.template_context ) data.update( kwargs ) ## return template.render( **data ) diff -r 0564441c5043 -r 3d4d44d7a275 lib/galaxy/web/framework/helpers/__init__.py --- a/lib/galaxy/web/framework/helpers/__init__.py Fri Jul 24 15:13:11 2009 -0400 +++ b/lib/galaxy/web/framework/helpers/__init__.py Fri Jul 24 16:14:46 2009 -0400 @@ -1,3 +1,6 @@ +import pkg_resources + +pkg_resources.require( "WebHelpers" ) from webhelpers import * from datetime import datetime @@ -9,4 +12,20 @@ if a: return b else: - return c \ No newline at end of file + return c + +# Quick helpers for static content + +def css( *args ): + """ + Take a list of stylesheet names (no extension) and return appropriate string + of link tags. + """ + return "\n".join( [ stylesheet_link_tag( "/static/style/" + name + ".css" ) for name in args ] ) + +def js( *args ): + """ + Take a list of javascript names (no extension) and return appropriate + string of script tags. + """ + return "\n".join( [ javascript_include_tag( "/static/scripts/" + name + ".js" ) for name in args ] ) \ No newline at end of file diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/base.css.tmpl --- a/static/june_2007_style/base.css.tmpl Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/base.css.tmpl Fri Jul 24 16:14:46 2009 -0400 @@ -1,8 +1,9 @@ -@import url( "reset.css" ); +## Font settings from YUI + verdana +body{font:13px/1.231 verdana,arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}select,input,button,textarea,button{font:99% verdana,arial,helvetica,clean,sans-serif;}table{font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;} +body{font-size:75%;} body { - font: 75% verdana, "Bitstream Vera Sans", geneva, arial, helvetica, helve, sans-serif; background: $base_bg_bottom; color: $base_text; background-image: url(base_bg.png); @@ -590,7 +591,7 @@ font-size: 80%; cursor: pointer; text-decoration: none; - color: #555 + color: #555; } .popup-arrow:hover { diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/base.css --- a/static/june_2007_style/blue/base.css Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/blue/base.css Fri Jul 24 16:14:46 2009 -0400 @@ -1,1 +1,101 @@ -@import url("reset.css");body{font:75% verdana,"Bitstream Vera Sans",geneva,arial,helvetica,helve,sans-serif;background:#FFF;color:#303030;background-image:url(base_bg.png);background-repeat:repeat-x;background-position:top;margin:10px;}img{border:0;}a:link,a:visited,a:active{color:#303030;}h1,h2,h3,h4{color:#023858;}hr{border:none;height:0;border-bottom:dotted #303030 1px;}div.toolForm{border:solid #d8b365 1px;}div.toolFormTitle{font-weight:bold;padding:5px;padding-left:10px;padding-right:10px;background:#d2c099;background-image:url(form_title_bg.png);background-repeat:repeat-x;background-position:top;border-bottom:solid #d8b365 1px;}div.toolParamHelp{color:#666;}div.toolParamHelp a{color:#666;}div.toolFormBody{background:#FFF;background-image:url(form_body_bg.png);background-repeat:repeat-x;background-position:top;padding:5px 0;}div.toolFormBody div.toolFormTitle{background:transparent;border:none;font-weight:bold;border-bottom:solid #d8b365 1px;margin-bottom:5px;}div.tool FormDisabled div.toolFormTitle{background:#eee;border-color:#999;}div.toolFormDisabled{border-color:#999;}div.toolHelpBody{width:100%;overflow:auto;}div.titleRow{font-weight:bold;border-bottom:dotted gray 1px;margin-bottom:.5em;padding-bottom:.25em;}div.form{border:solid #d8b365 1px;}div.form-title{font-weight:bold;padding:5px 10px;background:#d2c099;background-image:url(form_title_bg.png);background-repeat:repeat-x;background-position:top;border-bottom:solid #d8b365 1px;}div.form-body{padding:5px 0;}div.form-row{padding:5px 10px;}div.form-title-row{padding:5px 10px;}div.repeat-group-item{border-left:solid #d8b365 5px;margin-left:10px;margin-bottom:10px;}div.form-row-error{background:#FCC;}div.form-row label{font-weight:bold;display:block;margin-bottom:.2em;}div.form-row-input{float:left;width:300px;}div.form-row-input>input{max-width:300px;}div.form-row-error-message{width:300px;float:left;color:red;font-weight:bold;padding:3px 0 0 1em;}select,input,textarea{font:inherit;fo nt-size:115%;}select,textarea,input[type="text"],input[type="file"],input[type="password"]{-webkit-box-sizing:border-box;max-width:300px;}.errormessage,.warningmessage,.donemessage,.infomessage,.welcomeBlue,.welcomeRed,.screencastBox,.yellowbox,.redbox,.bluebox,.greenbox{padding:10px;padding-left:52px;min-height:32px;border:1px solid #A66;background-color:#FCC;background-image:url(error_message_icon.png);background-repeat:no-repeat;background-position:10px 10px;}.warningmessage{background-image:url(warn_message_icon.png);border-color:#AA6;background-color:#FFC;}.donemessage{background-image:url(done_message_icon.png);border-color:#6A6;background-color:#CFC;}.infomessage{background-image:url(info_message_icon.png);border-color:#66A;background-color:#CCF;}.welcomeBlue{padding-left:10px;border-color:#66A;background-color:#CCF;background-image:none;}.welcomeRed{padding-left:10px;border-color:#A66;background-color:#FCC;background-image:none;}.screencastBox{padding-left:10px;borde r-color:#AA6;background-color:#FFC;background-image:none;}.redbox{border:none;padding:10px;border-color:#000;background-color:#F66;background-image:none;border-right-width:1px;border-right-style:dotted;border-bottom-width:1px;border-bottom-style:dotted;margin-top:5px;min-height:32px;}.yellowbox{border:none;padding:10px;border-color:#000;background-color:#FC0;background-image:none;border-right-width:1px;border-right-style:dotted;border-bottom-width:1px;border-bottom-style:dotted;margin-top:5px;min-height:32px;}.bluebox{border:none;padding:10px;border-color:#000;background-color:#66F;background-image:none;border-right-width:1px;border-right-style:dotted;border-bottom-width:1px;border-bottom-style:dotted;margin-top:5px;color:#FFF;min-height:32px;}.greenbox{border:none;padding:10px;border-color:#000;background-color:#0C0;background-image:none;border-right-width:1px;border-right-style:dotted;border-bottom-width:1px;border-bottom-style:dotted;margin-top:5px;min-height:32px;}.redbo x li,.yellowbox li,.bluebox li,.greenbox li{list-style:disc;text-transform:none;list-style-position:inside;list-style-image:none;margin:3px;}.errormessagesmall,.warningmessagesmall,.donemessagesmall,.infomessagesmall{padding:5px;padding-left:25px;min-height:25px;border:1px solid #A66;background-color:#FCC;background-image:url(error_small.png);background-repeat:no-repeat;background-position:5px 5px;}.warningmessagesmall{background-image:url(warn_small.png);border-color:#AA6;background-color:#FFC;}.donemessagesmall{background-image:url(ok_small.png);border-color:#6A6;background-color:#CFC;}.infomessagesmall{background-image:url(info_small.png);border-color:#66A;background-color:#CCF;}.errormark,.warningmark,.donemark,.infomark,.ok_bgr,.err_bgr{padding-left:20px;min-height:15px;background:url(error_small.png) no-repeat;}.warningmark{background-image:url(warn_small.png);}.donemark{background-image:url(ok_small.png);}.infomark,.ok_bgr{background-image:url(info_small.png);}table.c olored{border-top:solid #d8b365 1px;border-bottom:solid #d8b365 1px;}table.colored td,table.colored th{text-align:left;padding:5px;}table.colored tr.header{background:#ebd9b2;background-image:url(form_title_bg.png);background-repeat:repeat-x;background-position:top;border-bottom:solid #d8b365 1px;font-weight:bold;}table.colored tr{background:white;}table.colored tr.odd_row{background:#DADFEF;}div.debug{margin:10px;padding:5px;background:#FF9;border:solid #FF3 1px;color:black;}div.odd_row{background:#DADFEF;}#footer{display:none;}td.panel-body{background:white;color:#303030;background:#C1C9E5 url(menu_bg.png) top repeat-x;}div.toolSectionPad{margin:0;padding:0;height:5px;font-size:0;}div.toolSectionDetailsInner{margin-left:5px;margin-right:5px;}div.toolSectionTitle{padding-bottom:0;font-weight:bold;}div.toolTitle{padding-top:5px;padding-bottom:5px;margin-left:16px;margin-right:10px;display:list-item;list-style:square outside;}span.toolParameterExpandableCollapsable{font-weigh t:bold;cursor:pointer;}ul.toolParameterExpandableCollapsable{list-style:none;}ul.manage-table-actions{float:right;margin-top:-2.5em;}ul.manage-table-actions li{display:block;float:left;margin-left:.5em;}.state-color-queued{border-color:#888;background:#EEE;}.state-color-ok{border-color:#6A6;background:#CFC;}.state-color-error{border-color:#A66;background:#FCC;}.state-color-running{border-color:#AA6;background:#FFC;}.state-fg-queued{color:#888;}.state-fg-ok{color:#6A6;}.state-fg-running{color:#AA6;}.state-fg-error{color:#A66;}.action-button{background:#eee;color:#333;text-decoration:none;font-size:95%;font-weight:bold;display:inline-block;cursor:pointer;padding:2px;border:solid #aaa 1px;padding-right:.5em;padding-left:.5em;-moz-border-radius:.5em;-webkit-border-radius:.5em;border-radius:.5em;user-select:none;-moz-user-select:none;-webkit-user-select:none;}.action-button>*{vertical-align:middle;}.action-button:hover{color:black;background:#ddd;}.action-button:active{color:whit e;background:#aaa;}div.popupmenu{display:none;background:#eee;color:#333;font-size:110%;font-weight:bold;font-style:normal;white-space:nowrap;position:absolute;z-index:20000;border:solid #aaa 1px;padding:3px 0;-moz-border-radius:.5em;-webkit-border-radius:.5em;border-radius:.5em;user-select:none;-moz-user-select:none;-webkit-user-select:none;}div.popupmenu-item{padding:3px 1em;cursor:pointer;}div.popupmenu-item:hover{background:#aaa;}.popup-arrow{font-size:80%;cursor:pointer;text-decoration:none;color:#555;}.popup-arrow:hover{color:black;}div.permissionContainer{padding-left:20px;}.grid-header{padding-bottom:1em;}.grid-header h2{margin:0;margin-bottom:.5em;}.grid-header .title{font-weight:bold;}.grid{padding-top:1em;border-collapse:collapse;width:100%;}.grid tbody td{border-top:solid #DDD 1px;border-bottom:solid #DDD 1px;padding:.5em 1em;}.grid tbody td:empty{padding:0;}.grid thead th{background:#ebd9b2;background-image:url(form_title_bg.png);background-repeat:repeat-x;backg round-position:top;border-top:solid #d8b365 1px;border-bottom:solid #d8b365 1px;padding:.5em 1em;text-align:left;}.grid tfoot td{background-color:#F8F8F8;border-top:solid #DDD 1px;border-bottom:solid #DDD 1px;padding:.5em 1em;}.grid .current{background-color:#EEF;} \ No newline at end of file +body{font:13px/1.231 verdana,arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;} +select,input,button,textarea,button{font:99% verdana,arial,helvetica,clean,sans-serif;} +table{font-size:inherit;font:100%;} +pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;} +body{font-size:75%;} +body{background:#FFFFFF;color:#303030;background-image:url(base_bg.png);background-repeat:repeat-x;background-position:top;margin:10px;} +img{border:0;} +a:link,a:visited,a:active{color:#303030;} +h1,h2,h3,h4{color:#023858;} +hr{border:none;height:0px;border-bottom:dotted #303030 1px;} +div.toolForm{border:solid #d8b365 1px;} +div.toolFormTitle{font-weight:bold;padding:5px;padding-left:10px;padding-right:10px;background:#d2c099;background-image:url(form_title_bg.png);background-repeat:repeat-x;background-position:top;border-bottom:solid #d8b365 1px;} +div.toolParamHelp{color:#666;} +div.toolParamHelp a{color:#666;} +div.toolFormBody{background:#FFFFFF;background-image:url(form_body_bg.png);background-repeat:repeat-x;background-position:top;padding:5px 0;} +div.toolFormBody div.toolFormTitle{background:transparent;border:none;font-weight:bold;border-bottom:solid #d8b365 1px;margin-bottom:5px;} +div.toolFormDisabled div.toolFormTitle{background:#eee;border-color:#999;} +div.toolFormDisabled{border-color:#999;} +div.toolHelp{} +div.toolHelpBody{width:100%;overflow:auto;} +div.titleRow{font-weight:bold;border-bottom:dotted gray 1px;margin-bottom:0.5em;padding-bottom:0.25em;} +div.form{border:solid #d8b365 1px;} +div.form-title{font-weight:bold;padding:5px 10px;background:#d2c099;background-image:url(form_title_bg.png);background-repeat:repeat-x;background-position:top;border-bottom:solid #d8b365 1px;} +div.form-body{padding:5px 0;} +div.form-row{padding:5px 10px;} +div.form-title-row{padding:5px 10px;} +div.repeat-group-item{border-left:solid #d8b365 5px;margin-left:10px;margin-bottom:10px;} +div.form-row-error{background:#FFCCCC;} +div.form-row label{font-weight:bold;display:block;margin-bottom:.2em;} +div.form-row-input{float:left;width:300px;} +div.form-row-input > input{max-width:300px;} +div.form-row-error-message{width:300px;float:left;color:red;font-weight:bold;padding:3px 0 0 1em;} +select,input,textarea{font:inherit;font-size:115%;} +select,textarea,input[type="text"],input[type="file"],input[type="password"]{-webkit-box-sizing:border-box;max-width:300px;} +.errormessage,.warningmessage,.donemessage,.infomessage,.welcomeBlue,.welcomeRed,.screencastBox,.yellowbox,.redbox,.bluebox,.greenbox{padding:10px;padding-left:52px;min-height:32px;border:1px solid #AA6666;background-color:#FFCCCC;background-image:url(error_message_icon.png);background-repeat:no-repeat;background-position:10px 10px;} +.warningmessage{background-image:url(warn_message_icon.png);border-color:#AAAA66;background-color:#FFFFCC;} +.donemessage{background-image:url(done_message_icon.png);border-color:#66AA66;background-color:#CCFFCC;} +.infomessage{background-image:url(info_message_icon.png);border-color:#6666AA;background-color:#CCCCFF;} +.welcomeBlue{padding-left:10px;border-color:#6666AA;background-color:#CCCCFF;background-image:none;} +.welcomeRed{padding-left:10px;border-color:#AA6666;background-color:#FFCCCC;background-image:none;} +.screencastBox{padding-left:10px;border-color:#AAAA66;background-color:#FFFFCC;background-image:none;} +.redbox{border:none;padding:10px;border-color:#000000;background-color:#FF6666;background-image:none;border-right-width:1px;border-right-style:dotted;border-bottom-width:1px;border-bottom-style:dotted;margin-top:5px;min-height:32px;} +.yellowbox{border:none;padding:10px;border-color:#000000;background-color:#FFCC00;background-image:none;border-right-width:1px;border-right-style:dotted;border-bottom-width:1px;border-bottom-style:dotted;margin-top:5px;min-height:32px;} +.bluebox{border:none;padding:10px;border-color:#000000;background-color:#6666FF;background-image:none;border-right-width:1px;border-right-style:dotted;border-bottom-width:1px;border-bottom-style:dotted;margin-top:5px;color:#FFFFFF;min-height:32px;} +.greenbox{border:none;padding:10px;border-color:#000000;background-color:#00CC00;background-image:none;border-right-width:1px;border-right-style:dotted;border-bottom-width:1px;border-bottom-style:dotted;margin-top:5px;min-height:32px;} +.redbox li,.yellowbox li,.bluebox li,.greenbox li{list-style:disc;text-transform:none;list-style-position:inside;list-style-image:none;margin:3px;} +.errormessagesmall,.warningmessagesmall,.donemessagesmall,.infomessagesmall{padding:5px;padding-left:25px;min-height:25px;border:1px solid #AA6666;background-color:#FFCCCC;background-image:url(error_small.png);background-repeat:no-repeat;background-position:5px 5px;} +.warningmessagesmall{background-image:url(warn_small.png);border-color:#AAAA66;background-color:#FFFFCC;} +.donemessagesmall{background-image:url(ok_small.png);border-color:#66AA66;background-color:#CCFFCC;} +.infomessagesmall{background-image:url(info_small.png);border-color:#6666AA;background-color:#CCCCFF;} +.errormark,.warningmark,.donemark,.infomark,.ok_bgr,.err_bgr{padding-left:20px;min-height:15px;background:url(error_small.png) no-repeat;} +.warningmark{background-image:url(warn_small.png);} +.donemark{background-image:url(ok_small.png);} +.infomark,.ok_bgr{background-image:url(info_small.png);} +table.colored{border-top:solid #d8b365 1px;border-bottom:solid #d8b365 1px;} +table.colored td,table.colored th{text-align:left;padding:5px;} +table.colored tr.header{background:#ebd9b2;background-image:url(form_title_bg.png);background-repeat:repeat-x;background-position:top;border-bottom:solid #d8b365 1px;font-weight:bold;} +table.colored tr{background:white;} +table.colored tr.odd_row{background:#DADFEF;} +div.debug{margin:10px;padding:5px;background:#FFFF99;border:solid #FFFF33 1px;color:black;} +div.odd_row{background:#DADFEF;} +#footer{display:none;} +td.panel-body{background:white;color:#303030;background:#C1C9E5 url(menu_bg.png) top repeat-x;} +div.toolSectionPad{margin:0;padding:0;height:5px;font-size:0px;} +div.toolSectionDetailsInner{margin-left:5px;margin-right:5px;} +div.toolSectionTitle{padding-bottom:0px;font-weight:bold;} +div.toolTitle{padding-top:5px;padding-bottom:5px;margin-left:16px;margin-right:10px;display:list-item;list-style:square outside;} +span.toolParameterExpandableCollapsable{font-weight:bold;cursor:pointer;} +ul.toolParameterExpandableCollapsable{list-style:none;} +ul.manage-table-actions{float:right;margin-top:-2.5em;} +ul.manage-table-actions li{display:block;float:left;margin-left:0.5em;} +.state-color-queued{border-color:#888888;background:#EEEEEE;} +.state-color-ok{border-color:#66AA66;background:#CCFFCC;} +.state-color-error{border-color:#AA6666;background:#FFCCCC;} +.state-color-running{border-color:#AAAA66;background:#FFFFCC;} +.state-fg-queued{color:#888888;} +.state-fg-ok{color:#66AA66;} +.state-fg-running{color:#AAAA66;} +.state-fg-error{color:#AA6666;} +.action-button{background:#eeeeee;color:#333;text-decoration:none;font-size:95%;font-weight:bold;display:inline-block;cursor:pointer;padding:2px;border:solid #aaaaaa 1px;padding-right:0.5em;padding-left:0.5em;-moz-border-radius:0.5em;-webkit-border-radius:0.5em;border-radius:0.5em;user-select:none;-moz-user-select:none;-webkit-user-select:none;} +.action-button > *{vertical-align:middle;} +.action-button:hover{color:black;background:#dddddd;} +.action-button:active{color:white;background:#aaaaaa;} +div.popupmenu{display:none;background:#eeeeee;color:#333;font-size:110%;font-weight:bold;font-style:normal;white-space:nowrap;position:absolute;z-index:20000;border:solid #aaaaaa 1px;padding:3px 0;-moz-border-radius:0.5em;-webkit-border-radius:0.5em;border-radius:0.5em;user-select:none;-moz-user-select:none;-webkit-user-select:none;} +div.popupmenu-item{padding:3px 1em;cursor:pointer;} +div.popupmenu-item:hover{background:#aaaaaa;} +.popup-arrow{font-size:80%;cursor:pointer;text-decoration:none;color:#555 +} + +.popup-arrow:hover { + color: black;} +div.permissionContainer{padding-left:20px;} +.grid-header{padding-bottom:1em;} +.grid-header h2{margin:0;margin-bottom:0.5em;} +.grid-header .title{font-weight:bold;} +.grid{padding-top:1em;border-collapse:collapse;width:100%;} +.grid tbody td{border-top:solid #DDDDDD 1px;border-bottom:solid #DDDDDD 1px;padding:0.5em 1em;} +.grid tbody td:empty{padding:0;} +.grid thead th{background:#ebd9b2;background-image:url(form_title_bg.png);background-repeat:repeat-x;background-position:top;border-top:solid #d8b365 1px;border-bottom:solid #d8b365 1px;padding:0.5em 1em;text-align:left;} +.grid tfoot td{background-color:#F8F8F8;border-top:solid #DDDDDD 1px;border-bottom:solid #DDDDDD 1px;padding:0.5em 1em;} +.grid .current{background-color:#EEEEFF;} diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/base_bg.png Binary file static/june_2007_style/blue/base_bg.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/button_bar_bg_light.png Binary file static/june_2007_style/blue/button_bar_bg_light.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/data_empty.png Binary file static/june_2007_style/blue/data_empty.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/data_error.png Binary file static/june_2007_style/blue/data_error.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/data_ok.png Binary file static/june_2007_style/blue/data_ok.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/data_queued.png Binary file static/june_2007_style/blue/data_queued.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/done_message_icon.png Binary file static/june_2007_style/blue/done_message_icon.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/error_large.png Binary file static/june_2007_style/blue/error_large.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/error_message_icon.png Binary file static/june_2007_style/blue/error_message_icon.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/error_small.png Binary file static/june_2007_style/blue/error_small.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/footer_title_bg.png Binary file static/june_2007_style/blue/footer_title_bg.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/form_body_bg.png Binary file static/june_2007_style/blue/form_body_bg.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/gray_bg.png Binary file static/june_2007_style/blue/gray_bg.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/hgrad.png Binary file static/june_2007_style/blue/hgrad.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/hgrad_over.png Binary file static/june_2007_style/blue/hgrad_over.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/history.css --- a/static/june_2007_style/blue/history.css Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/blue/history.css Fri Jul 24 16:14:46 2009 -0400 @@ -1,1 +1,31 @@ -body{background:#C1C9E5;color:#303030;background-image:url(menu_bg.png);background-repeat:repeat-x;background-position:top;margin:5px;border:0;padding:0;}a{color:#base_text;}div.historyLinks{padding:5px;margin-top:5px;margin-bottom:5px;padding-right:5px;padding-left:5px;margin-bottom:5px;}div.historyItem{margin-right:-5px;margin-top:5px;margin-bottom:5px;padding:5px;padding-right:11px;border:solid #888 1px;border-left:solid #888 5px;border-right:none;background:#EEE;background-image:url(gray_bg.png);background-repeat:repeat-x;background-position:top;}div.historyItem div.historyItem{margin-right:-11px;}div.historyItem-ok{border-color:#6A6;background:#CFC;}div.historyItem-error,div.historyItem-empty{border-color:#A66;background:#FCC;}div.historyItem-running{border-color:#AA6;background:#FFC;}div.historyItem-upload{border-color:#66A;background:#CCF;}div.historyItem-noPermission{filter:alpha(opacity=60);-moz-opacity:.60;opacity:.60;}div.historyItemBody div{padding-top:2px;}pre.p eek{background:white;color:black;width:100%;overflow:auto;}pre.peek th{color:white;background:#023858;} \ No newline at end of file +body{background:#C1C9E5;color:#303030;background-image:url(menu_bg.png);background-repeat:repeat-x;background-position:top;margin:5px;border:0;padding:0;} +a{color:#base_text;} +div.historyLinks{padding:5px;margin:5px 0 5px 0;} +div.historyItem{margin:5px -5px 5px 0px;padding:5px 11px 5px 5px;border:solid #888888 1px;border-left:solid #888888 5px;border-right:none;background:#EEEEEE;} +div.historyItem div.historyItemTitleBar{padding-left:20px;background-position:0 1px;background-repeat:no-repeat;} +div.historyItem div.historyItem{margin-right:-11px;} +div.historyItem-ok{border-color:#66AA66;background:#CCFFCC;} +div.historyItem-ok div.historyItemTitleBar{padding-left:0;} +div.historyItem-error{border-color:#AA6666;background:#FFCCCC;} +div.historyItem-error div.historyItemTitleBar{background:url(history-states.png) no-repeat 0px -0px;} +div.historyItem-empty{border-color:#AA6666;background:#FFCCCC;} +div.historyItem-empty div.historyItemTitleBar{background:url(history-states.png) no-repeat 0px -25px;} +div.historyItem-running{border-color:#AAAA66;background:#FFFFCC;} +div.historyItem-running div.historyItemTitleBar{background-image:url(data_running.gif);} +div.historyItem-upload{border-color:#6666AA;background:#CCCCFF;} +div.historyItem-upload div.historyItemTitleBar{background-image:url(data_upload.gif);} +div.historyItem-queued{background:#EEEEEE;} +div.historyItem-queued div.historyItemTitleBar{background:url(history-states.png) no-repeat 0px -50px;} +div.historyItem-noPermission{filter:alpha(opacity=60);-moz-opacity:.60;opacity:.60;} +div.historyItemTitleBar.spinner{background:url(data_running.gif) 0 1px no-repeat !important;padding-left:20px !important;} +div.historyItemButtons{float:right;} +.icon-button{width:16px;height:16px;display:block;float:left;margin-left:2px;text-indent:20px;} +.icon-button.display{background:url(history-buttons.png) no-repeat 0px -0px;} +.icon-button.display:hover{background:url(history-buttons.png) no-repeat 0px -26px;} +.icon-button.edit{background:url(history-buttons.png) no-repeat 0px -52px;} +.icon-button.edit:hover{background:url(history-buttons.png) no-repeat 0px -78px;} +.icon-button.delete{background:url(history-buttons.png) no-repeat 0px -104px;} +.icon-button.delete:hover{background:url(history-buttons.png) no-repeat 0px -130px;} +div.historyItemBody div{padding-top:2px;} +pre.peek{background:white;color:black;width:100%;overflow:auto;} +pre.peek th{color:white;background:#023858;} diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/info_large.png Binary file static/june_2007_style/blue/info_large.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/info_message_icon.png Binary file static/june_2007_style/blue/info_message_icon.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/info_small.png Binary file static/june_2007_style/blue/info_small.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/iphone.css --- a/static/june_2007_style/blue/iphone.css Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/blue/iphone.css Fri Jul 24 16:14:46 2009 -0400 @@ -1,1 +1,54 @@ -body{margin:0;font-family:Helvetica;background:#FFF;color:#000;overflow-x:hidden;-webkit-user-select:none;-webkit-text-size-adjust:none;}body>*:not(.toolbar){display:none;position:absolute;margin:0;padding:0;left:0;width:100%;min-height:372px;}body[orient="landscape"]>*:not(.toolbar){min-height:268px;}body>*[selected="true"]{display:block;}a[selected],a:active{background-color:#194fdb!important;background-image:url(../iui/listArrowSel.png),url(../iui/selection.png)!important;background-repeat:no-repeat,repeat-x;background-position:right center,left top;color:#FFF!important;}a[selected="progress"]{background-image:url(../iui/loading.gif),url(../iui/selection.png)!important;}body>.toolbar{position:relative;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;border-bottom:1px solid #2d3642;padding:10px;height:45px;background:url(../iui/toolbar.png) #6d84a2 repeat-x;}.toolbar>h1{position:absolute;overflow:hidden;left:50%;margin:1px 0 0 -75px;height:45p x;font-size:20px;width:150px;font-weight:bold;text-shadow:rgba(0,0,0,0.4) 0 -1px 0;text-align:center;text-overflow:ellipsis;white-space:nowrap;color:#FFF;}body[orient="landscape"]>.toolbar>h1{margin-left:-125px;width:250px;}body>.toolbar.masthead{background:#2C3143 repeat-x;}body>.toolbar.masthead>h1{left:0;margin-left:0;width:100%;}.button{position:absolute;overflow:hidden;top:8px;right:6px;margin:0;border-width:0 5px;padding:0 3px;width:auto;height:30px;line-height:30px;font-family:inherit;font-size:12px;font-weight:bold;color:#FFF;text-shadow:rgba(0,0,0,0.6) 0 -1px 0;text-overflow:ellipsis;text-decoration:none;white-space:nowrap;background:none;-webkit-border-image:url(../iui/toolButton.png) 0 5 0 5;}.blueButton{-webkit-border-image:url(../iui/blueButton.png) 0 5 0 5;border-width:0 5px;}.leftButton{left:6px;right:auto;}#backButton{display:none;left:6px;right:auto;padding:0;max-width:55px;border-width:0 8px 0 14px;-webkit-border-image:url(../iui/backButton.png) 0 8 0 14;}. whiteButton,.grayButton{display:block;border-width:0 12px;padding:10px;text-align:center;font-size:20px;font-weight:bold;text-decoration:inherit;color:inherit;}.whiteButton{-webkit-border-image:url(../iui/whiteButton.png) 0 12 0 12;text-shadow:rgba(255,255,255,0.7) 0 1px 0;}.grayButton{-webkit-border-image:url(../iui/grayButton.png) 0 12 0 12;color:#FFF;}body>ul>li{position:relative;margin:0;border-bottom:1px solid #E0E0E0;padding:8px 0 8px 10px;font-size:20px;font-weight:bold;list-style:none;}body>ul>li.group{position:relative;top:-1px;margin-bottom:-2px;border-top:1px solid #7d7d7d;border-bottom:1px solid #999;padding:1px 10px;background:url(../iui/listGroup.png) repeat-x;font-size:17px;font-weight:bold;text-shadow:rgba(0,0,0,0.4) 0 1px 0;color:#FFF;}body>ul>li.group:first-child{top:0;border-top:none;}body>ul>li>a{display:block;margin:-8px 0 -8px -10px;padding:8px 32px 8px 10px;text-decoration:none;color:inherit;background:url(../iui/listArrow.png) no-repeat right center;} a[target="_replace"]{box-sizing:border-box;-webkit-box-sizing:border-box;padding-top:25px;padding-bottom:25px;font-size:18px;color:cornflowerblue;background-color:#FFF;background-image:none;}body>.dialog{top:0;width:100%;min-height:417px;z-index:2;background:rgba(0,0,0,0.8);padding:0;text-align:right;}.dialog>fieldset{box-sizing:border-box;-webkit-box-sizing:border-box;width:100%;margin:0;border:none;border-top:1px solid #6d84a2;padding:10px 6px;background:url(../iui/toolbar.png) #7388a5 repeat-x;}.dialog>fieldset>h1{margin:0 10px 0 10px;padding:0;font-size:20px;font-weight:bold;color:#FFF;text-shadow:rgba(0,0,0,0.4) 0 -1px 0;text-align:center;}.dialog>fieldset>label{position:absolute;margin:16px 0 0 6px;font-size:14px;color:#999;}input:not(input[type|=radio]):not(input[type|=checkbox]){box-sizing:border-box;-webkit-box-sizing:border-box;width:100%;margin:8px 0 0 0;padding:6px 6px 6px 44px;font-size:16px;font-weight:normal;}body>.panel{box-sizing:border-box;-moz-box-sizing:b order-box;-webkit-box-sizing:border-box;padding:10px;background:#c8c8c8 url(../iui/pinstripes.png);}.panel>fieldset{position:relative;margin:0 0 20px 0;padding:0;background:#FFF;-webkit-border-radius:10px;-moz-border-radius:10px;border:1px solid #999;text-align:right;font-size:16px;}.row{position:relative;min-height:42px;border-bottom:1px solid #999;-webkit-border-radius:0;text-align:right;overflow:hidden;text-overflow:ellipsis;}fieldset>.row:last-child{border-bottom:none!important;}.row>input:not(input[type|=radio]):not(input[type|=checkbox]){box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;margin:0;border:none;padding:12px 10px 0 110px;height:42px;background:none;}.row>input[type|=radio],.row>input[type|=checkbox]{margin:7px 7px 0 0;height:25px;width:25px;}.row>label{position:absolute;margin:0 0 0 14px;line-height:42px;font-weight:bold;}.row>a{font-weight:bold;text-align:left;display:block;padding:8px 32px 8px 14px;text-decoration:none;color:i nherit;background:url(../iui/listArrow.png) no-repeat right center;}.row>.error{height:25px;text-align:left;font-size:14px;padding:0 0 0 110px;color:red;}.row>span{position:absolute;padding:12px 10px 0 110px;margin:0;}.row>.toggle{position:absolute;top:6px;right:6px;width:100px;height:28px;}.toggle{border:1px solid #888;-webkit-border-radius:6px;background:#FFF url(../iui/toggle.png) repeat-x;font-size:19px;font-weight:bold;line-height:30px;}.toggle[toggled="true"]{border:1px solid #143fae;background:#194fdb url(../iui/toggleOn.png) repeat-x;}.toggleOn{display:none;position:absolute;width:60px;text-align:center;left:0;top:0;color:#FFF;text-shadow:rgba(0,0,0,0.4) 0 -1px 0;}.toggleOff{position:absolute;width:60px;text-align:center;right:0;top:0;color:#666;}.toggle[toggled="true"]>.toggleOn{display:block;}.toggle[toggled="true"]>.toggleOff{display:none;}.thumb{position:absolute;top:-1px;left:-1px;width:40px;height:28px;border:1px solid #888;-webkit-border-radius:6px;background: #fff url(../iui/thumb.png) repeat-x;}.toggle[toggled="true"]>.thumb{left:auto;right:-1px;}.panel>h2{margin:0 0 8px 14px;font-size:inherit;font-weight:bold;color:#4d4d70;text-shadow:rgba(255,255,255,0.75) 2px 2px 0;}#preloader{display:none;background-image:url(loading.gif),url(selection.png),url(blueButton.png),url(listArrowSel.png),url(listGroup.png);}.state-color-queued{background:#EEE;}.state-color-ok{background:#CFC;}.state-color-error{background:#FCC;}.state-color-running{background:#FFC;} \ No newline at end of file +body{margin:0;font-family:Helvetica;background:#FFFFFF;color:#000000;overflow-x:hidden;-webkit-user-select:none;-webkit-text-size-adjust:none;} +body > *:not(.toolbar){display:none;position:absolute;margin:0;padding:0;left:0;width:100%;min-height:372px;} +body[orient="landscape"] > *:not(.toolbar){min-height:268px;} +body > *[selected="true"]{display:block;} +a[selected],a:active{background-color:#194fdb !important;background-image:url(../iui/listArrowSel.png), url(../iui/selection.png) !important;background-repeat:no-repeat, repeat-x;background-position:right center, left top;color:#FFFFFF !important;} +a[selected="progress"]{background-image:url(../iui/loading.gif), url(../iui/selection.png) !important;} +body > .toolbar{position:relative;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;border-bottom:1px solid #2d3642;padding:10px;height:45px;background:url(../iui/toolbar.png) #6d84a2 repeat-x;} +.toolbar > h1{position:absolute;overflow:hidden;left:50%;margin:1px 0 0 -75px;height:45px;font-size:20px;width:150px;font-weight:bold;text-shadow:rgba(0, 0, 0, 0.4) 0px -1px 0;text-align:center;text-overflow:ellipsis;white-space:nowrap;color:#FFFFFF;} +body[orient="landscape"] > .toolbar > h1{margin-left:-125px;width:250px;} +body > .toolbar.masthead{background:#2C3143 repeat-x;} +body > .toolbar.masthead > h1{left:0;margin-left:0;width:100%;} +.button{position:absolute;overflow:hidden;top:8px;right:6px;margin:0;border-width:0 5px;padding:0 3px;width:auto;height:30px;line-height:30px;font-family:inherit;font-size:12px;font-weight:bold;color:#FFFFFF;text-shadow:rgba(0, 0, 0, 0.6) 0px -1px 0;text-overflow:ellipsis;text-decoration:none;white-space:nowrap;background:none;-webkit-border-image:url(../iui/toolButton.png) 0 5 0 5;} +.blueButton{-webkit-border-image:url(../iui/blueButton.png) 0 5 0 5;border-width:0 5px;} +.leftButton{left:6px;right:auto;} +#backButton{display:none;left:6px;right:auto;padding:0;max-width:55px;border-width:0 8px 0 14px;-webkit-border-image:url(../iui/backButton.png) 0 8 0 14;} +.whiteButton,.grayButton{display:block;border-width:0 12px;padding:10px;text-align:center;font-size:20px;font-weight:bold;text-decoration:inherit;color:inherit;} +.whiteButton{-webkit-border-image:url(../iui/whiteButton.png) 0 12 0 12;text-shadow:rgba(255, 255, 255, 0.7) 0 1px 0;} +.grayButton{-webkit-border-image:url(../iui/grayButton.png) 0 12 0 12;color:#FFFFFF;} +body > ul > li{position:relative;margin:0;border-bottom:1px solid #E0E0E0;padding:8px 0 8px 10px;font-size:20px;font-weight:bold;list-style:none;} +body > ul > li.group{position:relative;top:-1px;margin-bottom:-2px;border-top:1px solid #7d7d7d;border-bottom:1px solid #999999;padding:1px 10px;background:url(../iui/listGroup.png) repeat-x;font-size:17px;font-weight:bold;text-shadow:rgba(0, 0, 0, 0.4) 0 1px 0;color:#FFFFFF;} +body > ul > li.group:first-child{top:0;border-top:none;} +body > ul > li > a{display:block;margin:-8px 0 -8px -10px;padding:8px 32px 8px 10px;text-decoration:none;color:inherit;background:url(../iui/listArrow.png) no-repeat right center;} +a[target="_replace"]{box-sizing:border-box;-webkit-box-sizing:border-box;padding-top:25px;padding-bottom:25px;font-size:18px;color:cornflowerblue;background-color:#FFFFFF;background-image:none;} +body > .dialog{top:0;width:100%;min-height:417px;z-index:2;background:rgba(0, 0, 0, 0.8);padding:0;text-align:right;} +.dialog > fieldset{box-sizing:border-box;-webkit-box-sizing:border-box;width:100%;margin:0;border:none;border-top:1px solid #6d84a2;padding:10px 6px;background:url(../iui/toolbar.png) #7388a5 repeat-x;} +.dialog > fieldset > h1{margin:0 10px 0 10px;padding:0;font-size:20px;font-weight:bold;color:#FFFFFF;text-shadow:rgba(0, 0, 0, 0.4) 0px -1px 0;text-align:center;} +.dialog > fieldset > label{position:absolute;margin:16px 0 0 6px;font-size:14px;color:#999999;} +input:not(input[type|=radio]):not(input[type|=checkbox]){box-sizing:border-box;-webkit-box-sizing:border-box;width:100%;margin:8px 0 0 0;padding:6px 6px 6px 44px;font-size:16px;font-weight:normal;} +body > .panel{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:10px;background:#c8c8c8 url(../iui/pinstripes.png);} +.panel > fieldset{position:relative;margin:0 0 20px 0;padding:0;background:#FFFFFF;-webkit-border-radius:10px;-moz-border-radius:10px;border:1px solid #999999;text-align:right;font-size:16px;} +.row{position:relative;min-height:42px;border-bottom:1px solid #999999;-webkit-border-radius:0;text-align:right;overflow:hidden;text-overflow:ellipsis;} +fieldset > .row:last-child{border-bottom:none !important;} +.row > input:not(input[type|=radio]):not(input[type|=checkbox]){box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;margin:0;border:none;padding:12px 10px 0 110px;height:42px;background:none;} +.row > input[type|=radio],.row > input[type|=checkbox]{margin:7px 7px 0 0;height:25px;width:25px;} +.row > label{position:absolute;margin:0 0 0 14px;line-height:42px;font-weight:bold;} +.row > a{font-weight:bold;text-align:left;display:block;padding:8px 32px 8px 14px;text-decoration:none;color:inherit;background:url(../iui/listArrow.png) no-repeat right center;} +.row > .error{height:25px;text-align:left;font-size:14px;padding:0 0 0 110px;color:red;} +.row > span{position:absolute;padding:12px 10px 0 110px;margin:0;} +.row > .toggle{position:absolute;top:6px;right:6px;width:100px;height:28px;} +.toggle{border:1px solid #888888;-webkit-border-radius:6px;background:#FFFFFF url(../iui/toggle.png) repeat-x;font-size:19px;font-weight:bold;line-height:30px;} +.toggle[toggled="true"]{border:1px solid #143fae;background:#194fdb url(../iui/toggleOn.png) repeat-x;} +.toggleOn{display:none;position:absolute;width:60px;text-align:center;left:0;top:0;color:#FFFFFF;text-shadow:rgba(0, 0, 0, 0.4) 0px -1px 0;} +.toggleOff{position:absolute;width:60px;text-align:center;right:0;top:0;color:#666666;} +.toggle[toggled="true"] > .toggleOn{display:block;} +.toggle[toggled="true"] > .toggleOff{display:none;} +.thumb{position:absolute;top:-1px;left:-1px;width:40px;height:28px;border:1px solid #888888;-webkit-border-radius:6px;background:#ffffff url(../iui/thumb.png) repeat-x;} +.toggle[toggled="true"] > .thumb{left:auto;right:-1px;} +.panel > h2{margin:0 0 8px 14px;font-size:inherit;font-weight:bold;color:#4d4d70;text-shadow:rgba(255, 255, 255, 0.75) 2px 2px 0;} +#preloader{display:none;background-image:url(loading.gif), url(selection.png), + url(blueButton.png), url(listArrowSel.png), url(listGroup.png);} +.state-color-queued{background:#EEEEEE;} +.state-color-ok{background:#CCFFCC;} +.state-color-error{background:#FFCCCC;} +.state-color-running{background:#FFFFCC;} diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/layout_callout_top.png Binary file static/june_2007_style/blue/layout_callout_top.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/library.css --- a/static/june_2007_style/blue/library.css Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/blue/library.css Fri Jul 24 16:14:46 2009 -0400 @@ -1,1 +1,15 @@ -.libraryRow{background-color:#d2c099;}.datasetHighlighted{background-color:#C1C9E5;}.libraryItemDeleted-True{font-style:italic;}div.historyItemBody{padding:4px 4px 2px 4px;}li.folderRow,li.datasetRow{border-top:solid 1px #ddd;}li.folderRow:hover,li.datasetRow:hover{background-color:#C1C9E5;}img.expanderIcon{padding-right:4px;}input.datasetCheckbox,li,ul{padding:0;margin:0;}.rowTitle{padding:2px;}ul{list-style:none;}.libraryTitle th{text-align:left;}pre.peek{background:white;color:black;width:100%;overflow:auto;}pre.peek th{color:white;background:#023858;}a.expandLink{text-decoration:none;}span.expandLink{width:100%;height:100%;display:block;} \ No newline at end of file +.libraryRow{background-color:#d2c099;} +.datasetHighlighted{background-color:#C1C9E5;} +.libraryItemDeleted-True{font-style:italic;} +div.historyItemBody{padding:4px 4px 2px 4px;} +li.folderRow,li.datasetRow{border-top:solid 1px #ddd;} +li.folderRow:hover,li.datasetRow:hover{background-color:#C1C9E5;} +img.expanderIcon{padding-right:4px;} +input.datasetCheckbox,li,ul{padding:0;margin:0;} +.rowTitle{padding:2px;} +ul{list-style:none;} +.libraryTitle th{text-align:left;} +pre.peek{background:white;color:black;width:100%;overflow:auto;} +pre.peek th{color:white;background:#023858;} +a.expandLink{text-decoration:none;} +span.expandLink{width:100%;height:100%;display:block;} diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/masthead.css --- a/static/june_2007_style/blue/masthead.css Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/blue/masthead.css Fri Jul 24 16:14:46 2009 -0400 @@ -1,1 +1,8 @@ -body{background:#2C3143 url(masthead_bg.png) bottom;color:#eee;padding:0;border:0;margin:3px;margin-right:5px;margin-left:5px;overflow:hidden;}div.pageTitle{font-size:175%;font-weight:bold;}div.pageTitle a:link,div.pageTitle a:visited,div.pageTitle a:active,div.pageTitle a:hover{text-decoration:none;}a:link,a:visited,a:active{color:#eee;}#tab-bar-bottom{z-index:-1;position:absolute;top:27px;left:0;width:100%;height:100%;background:#222532;}span.link-group{margin:0;padding:0;display:inline;padding-bottom:10px;margin-bottom:-10px;}span.link-group span{margin:0;padding:0;display:inline;}span.link-group span.active-link{background:#222532;padding-left:3px;padding-right:3px;margin-left:-3px;margin-right:-3px;padding-bottom:10px;margin-bottom:-10px;} \ No newline at end of file +body{background:#2C3143 url(masthead_bg.png) bottom;color:#eeeeee;padding:0;border:0;margin:3px;margin-right:5px;margin-left:5px;overflow:hidden;} +div.pageTitle{font-size:175%;font-weight:bold;} +div.pageTitle a:link,div.pageTitle a:visited,div.pageTitle a:active,div.pageTitle a:hover{text-decoration:none;} +a:link,a:visited,a:active{color:#eeeeee;} +#tab-bar-bottom{z-index:-1;position:absolute;top:27px;left:0;width:100%;height:100%;background:#222532;} +span.link-group{margin:0;padding:0;display:inline;padding-bottom:10px;margin-bottom:-10px;} +span.link-group span{margin:0;padding:0;display:inline;} +span.link-group span.active-link{background:#222532;padding-left:3px;padding-right:3px;margin-left:-3px;margin-right:-3px;padding-bottom:10px;margin-bottom:-10px;} diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/masthead_bg.png Binary file static/june_2007_style/blue/masthead_bg.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/ok_large.png Binary file static/june_2007_style/blue/ok_large.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/ok_small.png Binary file static/june_2007_style/blue/ok_small.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/panel_header_bg.png Binary file static/june_2007_style/blue/panel_header_bg.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/panel_layout.css --- a/static/june_2007_style/blue/panel_layout.css Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/blue/panel_layout.css Fri Jul 24 16:14:46 2009 -0400 @@ -1,1 +1,50 @@ -body,html{overflow:hidden;margin:0;padding:0;width:100%;height:100%;}body{font:75% verdana,"Bitstream Vera Sans",geneva,arial,helvetica,helve,sans-serif;background:#eee;}#background{position:absolute;background:#eee;z-index:-1;top:0;left:0;margin:0;padding:0;width:100%;height:100%;}#messagebox{position:absolute;top:33px;left:0;width:100%;height:24px!important;overflow:hidden;border-bottom:solid #999 1px;font-size:90%;}#left,#left-border,#center,#right-border,#right{position:absolute;top:39px;bottom:0;overflow:hidden;background:#fff;}#left,#center,#right{border-top:solid #999 1px;}#left-border,#right-border{background:#eee;border-left:solid #999 1px;border-right:solid #999 1px;padding-right:1px;padding-left:1px;width:5px;z-index:10000;}#left-border div,#right-border div{width:100%;height:100%;background-repeat:no-repeat;background-position:center center;position:absolute;width:5px;height:100%;}#left-border div,#right-border.hidden div{background-image:url(tiny_arrow_left.png) ;cursor:w-resize;}#left-border.hidden div,#right-border div{background-image:url(tiny_arrow_right.png);cursor:e-resize;}#left-border.hover div,#right-border.hover div{background-color:#AAE;}#left{left:0;width:250px;z-index:200;}#left-border{left:250px;}#center{left:259px;right:259px;overflow:hidden;z-index:1;}#right-border{right:250px;}#right{width:250px;right:0;z-index:200;}.unified-panel-header{height:2em;z-index:1000;background:#ccc;background-image:url(panel_header_bg.png);background-position:top center;background-repeat:repeat-x;border-bottom:solid #999 1px;margin:0;padding:0;padding-right:10px;padding-left:10px;color:#333;font-weight:bold;}.unified-panel-header-inner{padding-top:.45em;}.menu-bg{background:#C1C9E5 url(menu_bg.png) top repeat-x;}div.unified-panel-body{position:absolute;top:2em;bottom:0;width:100%;margin-top:1px;}.panel-header-button{color:#333;text-decoration:none;display:inline-block;cursor:pointer;margin:-1px;padding:1px;border:0;padding-right:.5em;pad ding-left:.5em;-moz-border-radius:.5em;-webkit-border-radius:.5em;border-radius:.5em;background:transparent;}.panel-header-button:hover{color:black;background:#aaa;}.panel-header-button:active{color:white;background:#aaa;}#overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:20000;}.dialog-box-container{position:relative;margin-top:80px;margin-right:auto;margin-left:auto;}.dialog-box-wrapper{position:relative;padding:1em;background-color:rgba(0,0,0,0.5);-moz-border-radius:1em;-webkit-border-radius:1em;}.dialog-box{border:solid #999 1px;background:white;min-width:230px;z-index:80000;}.dialog-box .body,.dialog-box .buttons{padding:5px;}.panel-error-message,.panel-warning-message,.panel-done-message,.panel-info-message{height:24px;line-height:24px;color:#303030;padding:0;padding-left:26px;background-color:#FCC;background-image:url(error_small.png);background-repeat:no-repeat;background-position:6px 50%;}.panel-warning-message{background-image:url(warn_small.png);b ackground-color:#FFC;}.panel-done-message{background-image:url(done_small.png);background-color:#CFC;}.panel-info-message{background-image:url(info_small.png);background-color:#CCF;}#masthead{position:absolute;top:0;left:0;width:100%;height:32px;background:#2C3143;color:#fff;border-bottom:solid #444 1px;z-index:15000;padding:0;}#masthead a{color:#eee;}#masthead .title{padding:3px 10px;font-size:175%;font-weight:bold;}#masthead a{text-decoration:none;}#masthead a:hover{text-decoration:underline;}.tab-group{margin:0;padding:0 10px;height:100%;white-space:nowrap;cursor:default;user-select:none;-moz-user-select:none;-webkit-user-select:none;}.tab-group .tab{background:#2C3143;position:relative;float:left;margin:0;padding:0 1em;height:32px;line-height:32px;text-align:left;}.tab-group .tab:hover>a{color:gold!important;}.tab-group .active{background:#010101;}.tab-group .tab .submenu{display:none;position:absolute;z-index:16000;left:0;top:32px;padding:1em;margin:-1em;padding-top:0;m argin-top:0;background-color:rgba(0,0,0,0.5);-moz-border-radius:0 0 1em 1em;-webkit-border-bottom-right-radius:1em;-webkit-border-bottom-left-radius:1em;}.tab-group .tab .submenu ul{display:block;margin:0;padding:0;list-style-type:none;background:#2C3143;}.tab-group .tab .submenu ul li{display:block;padding:0 1em;white-space:nowrap;} \ No newline at end of file +body{font:13px/1.231 verdana,arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;} +select,input,button,textarea,button{font:99% verdana,arial,helvetica,clean,sans-serif;} +table{font-size:inherit;font:100%;} +pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;} +body{font-size:75%;} +body,html{overflow:hidden;margin:0;padding:0;width:100%;height:100%;} +body{font:75% verdana, "Bitstream Vera Sans", geneva, arial, helvetica, helve, sans-serif;background:#eee;} +.unselectable{user-select:none;-moz-user-select:none;-webkit-user-select:none;} +#background{position:absolute;background:#eee;z-index:-1;top:0;left:0;margin:0;padding:0;width:100%;height:100%;} +#messagebox{position:absolute;top:33px;left:0;width:100%;height:24px !important;overflow:hidden;border-bottom:solid #999 1px;font-size:90%;} +#left,#left-border,#center,#right-border,#right{position:absolute;top:39px;bottom:0px;overflow:hidden;background:#fff;} +#left,#center,#right{border-top:solid #999 1px;} +#left-border,#right-border{background:#eeeeee;border-left:solid #999 1px;border-right:solid #999 1px;padding-right:1px;padding-left:1px;width:5px;z-index:10000;} +#left-border div,#right-border div{width:100%;height:100%;background-repeat:no-repeat;background-position:center center;position:absolute;width:5px;height:100%;} +#left-border div,#right-border.hidden div{background-image:url(tiny_arrow_left.png);cursor:w-resize;} +#left-border.hidden div,#right-border div{background-image:url(tiny_arrow_right.png);cursor:e-resize;} +#left-border.hover div,#right-border.hover div{background-color:#AAAAEE;} +#left{left:0px;width:250px;z-index:200;} +#left-border{left:250px;} +#center{left:259px;right:259px;overflow:hidden;z-index:1;} +#right-border{right:250px;} +#right{width:250px;right:0px;z-index:200;} +.unified-panel-header{height:2em;z-index:1000;background:#cccccc;background-image:url(panel_header_bg.png);background-position:top center;background-repeat:repeat-x;border-bottom:solid #999 1px;margin:0;padding:0;padding-right:10px;padding-left:10px;color:#333;font-weight:bold;} +.unified-panel-header-inner{padding-top:0.45em;} +.menu-bg{background:#C1C9E5 url(menu_bg.png) top repeat-x;} +div.unified-panel-body{position:absolute;top:2em;bottom:0;width:100%;margin-top:1px;} +.panel-header-button{color:#333;text-decoration:none;display:inline-block;cursor:pointer;margin:-1px;padding:1px;border:0px;padding-right:0.5em;padding-left:0.5em;-moz-border-radius:0.5em;-webkit-border-radius:0.5em;border-radius:0.5em;background:transparent;} +.panel-header-button:hover{color:black;background:#aaaaaa;} +.panel-header-button:active{color:white;background:#aaaaaa;} +#overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:20000;} +.dialog-box-container{position:relative;margin-top:80px;margin-right:auto;margin-left:auto;} +.dialog-box-wrapper{position:relative;padding:1em;background-color:rgba(0,0,0,0.5);-moz-border-radius:1em;-webkit-border-radius:1em;} +.dialog-box{border:solid #999 1px;background:white;min-width:230px;z-index:80000;} +.dialog-box .body,.dialog-box .buttons{padding:5px;} +.panel-error-message,.panel-warning-message,.panel-done-message,.panel-info-message{height:24px;line-height:24px;color:#303030;padding:0px;padding-left:26px;background-color:#FFCCCC;background-image:url(error_small.png);background-repeat:no-repeat;background-position:6px 50%;} +.panel-warning-message{background-image:url(warn_small.png);background-color:#FFFFCC;} +.panel-done-message{background-image:url(done_small.png);background-color:#CCFFCC;} +.panel-info-message{background-image:url(info_small.png);background-color:#CCCCFF;} +#masthead{position:absolute;top:0;left:0;width:100%;height:32px;background:#2C3143;color:#fff;border-bottom:solid #444 1px;z-index:15000;padding:0;} +#masthead a{color:#eeeeee;} +#masthead .title{padding:3px 10px;font-size:175%;font-weight:bold;} +#masthead a{text-decoration:none;} +#masthead a:hover{text-decoration:underline;} +.tab-group{margin:0;padding:0 10px;height:100%;white-space:nowrap;cursor:default;background:transparent;} +.tab-group .tab{background:#2C3143;position:relative;float:left;margin:0;padding:0 1em;height:32px;line-height:32px;text-align:left;} +.tab-group .tab .submenu{display:none;position:absolute;z-index:16000;left:0;top:32px;padding:1em;margin:-1em;padding-top:0;margin-top:0;background-color:rgba(0,0,0,0.5);-moz-border-radius:0 0 1em 1em;-webkit-border-bottom-right-radius:1em;-webkit-border-bottom-left-radius:1em;} +.tab-group .tab .submenu ul{display:block;margin:0;padding:0;list-style-type:none;background:#2C3143;} +.tab-group .tab .submenu ul li{display:block;padding:0 1em;white-space:nowrap;} +.tab-group .tab:hover > a{color:gold !important;} +.tab-group .active{background:rgb(1,1,1);} diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/popupmenu_callout_top.png Binary file static/june_2007_style/blue/popupmenu_callout_top.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/reset.css --- a/static/june_2007_style/blue/reset.css Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/blue/reset.css Fri Jul 24 16:14:46 2009 -0400 @@ -1,1 +1,4 @@ -body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif;}table{font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;} \ No newline at end of file +body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;} +select,input,button,textarea{font:99% arial,helvetica,clean,sans-serif;} +table{font-size:inherit;font:100%;} +pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;} diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/tiny_arror_right.png Binary file static/june_2007_style/blue/tiny_arror_right.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/tiny_arrow_left.png Binary file static/june_2007_style/blue/tiny_arrow_left.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/tiny_arrow_right.png Binary file static/june_2007_style/blue/tiny_arrow_right.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/tool_menu.css --- a/static/june_2007_style/blue/tool_menu.css Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/blue/tool_menu.css Fri Jul 24 16:14:46 2009 -0400 @@ -1,1 +1,9 @@ -body{background:white;color:#303030;background:#C1C9E5 url(menu_bg.png) top repeat-x;margin:5px;margin-right:10px;margin-left:10px;}hr{border:none;height:0;margin-top:0;}div.toolSectionPad{margin:0;padding:0;height:5px;font-size:0;}div.toolSectionDetailsInner{margin-left:5px;margin-right:5px;}div.toolSectionTitle{font-weight:bold;}div.toolPanelLabel{padding-top:10px;padding-bottom:5px;font-weight:bold;color:gray;text-transform:uppercase;}div.toolTitle{padding-top:5px;padding-bottom:5px;margin-left:16px;margin-right:10px;display:list-item;list-style:square outside;}div.toolSectionBody div.toolPanelLabel{padding-top:5px;padding-bottom:5px;margin-left:16px;margin-right:10px;display:list-item;list-style:none outside;}div.toolTitleNoSection{padding-bottom:0;} \ No newline at end of file +body{background:white;color:#303030;background:#C1C9E5 url(menu_bg.png) top repeat-x;margin:5px;margin-right:10px;margin-left:10px;} +hr{border:none;height:0px;margin-top:0px;} +div.toolSectionPad{margin:0;padding:0;height:5px;font-size:0px;} +div.toolSectionDetailsInner{margin-left:5px;margin-right:5px;} +div.toolSectionTitle{font-weight:bold;} +div.toolPanelLabel{padding-top:10px;padding-bottom:5px;font-weight:bold;color:gray;text-transform:uppercase;} +div.toolTitle{padding-top:5px;padding-bottom:5px;margin-left:16px;margin-right:10px;display:list-item;list-style:square outside;} +div.toolSectionBody div.toolPanelLabel{padding-top:5px;padding-bottom:5px;margin-left:16px;margin-right:10px;display:list-item;list-style:none outside;} +div.toolTitleNoSection{padding-bottom:0px;} diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/wait_large.png Binary file static/june_2007_style/blue/wait_large.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/wait_small.png Binary file static/june_2007_style/blue/wait_small.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/warn_large.png Binary file static/june_2007_style/blue/warn_large.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/warn_message_icon.png Binary file static/june_2007_style/blue/warn_message_icon.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/warn_small.png Binary file static/june_2007_style/blue/warn_small.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/workflow_circle_drag.png Binary file static/june_2007_style/blue/workflow_circle_drag.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/workflow_circle_green.png Binary file static/june_2007_style/blue/workflow_circle_green.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/blue/workflow_circle_open.png Binary file static/june_2007_style/blue/workflow_circle_open.png has changed diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/history.css.tmpl --- a/static/june_2007_style/history.css.tmpl Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/history.css.tmpl Fri Jul 24 16:14:46 2009 -0400 @@ -1,5 +1,4 @@ -body -{ +body { background: $menu_bg_over; color: $base_text; background-image: url(menu_bg.png); @@ -10,108 +9,154 @@ padding: 0; } -a -{ - color: #base_text; +a { + color: $base_text; } -div.historyLinks -{ +## Control links at top of history +div.historyLinks { padding: 5px; - margin-top: 5px; - margin-bottom: 5px; - padding-right: 5px; - padding-left: 5px; - margin-bottom: 5px; + margin: 5px 0 5px 0; } -div.historyItem -{ - margin-right: -5px; - margin-top: 5px; - margin-bottom: 5px; - padding: 5px; - padding-right: 11px; - +## Default history item appearend +div.historyItem { + margin: 5px -5px 5px 0px; + padding: 5px 11px 5px 5px; border: solid $history_queued_border 1px; border-left: solid $history_queued_border 5px; border-right: none; background: $history_queued_bg; - background-image: url(gray_bg.png); - background-repeat: repeat-x; - background-position: top; + div.historyItemTitleBar { + padding-left: 20px; + background-position: 0 1px; + background-repeat: no-repeat; + } } -div.historyItem div.historyItem -{ +## Nested history items +div.historyItem div.historyItem { margin-right: -11px; } -div.historyItem-ok -{ +## Change background/border color depending on state +div.historyItem-ok { border-color: $history_ok_border; background: $history_ok_bg; - /* - background-image: url(ok_bg.png); - background-repeat: repeat-x; - background-position: top; - */ + div.historyItemTitleBar { + padding-left: 0; + } +} +div.historyItem-error { + border-color: $history_error_border; + background: $history_error_bg; + div.historyItemTitleBar { + -sprite-group: history-states; + -sprite-image: data_error.png; + } } -div.historyItem-error, div.historyItem-empty -{ +div.historyItem-empty { border-color: $history_error_border; background: $history_error_bg; - /* - background-image: url(error_bg.png); - background-repeat: repeat-x; - background-position: top; - */ + div.historyItemTitleBar { + -sprite-group: history-states; + -sprite-image: data_empty.png; + } } -div.historyItem-running -{ +div.historyItem-running { border-color: $history_running_border; background: $history_running_bg; - /* - background-image: url(warn_bg.png); - background-repeat: repeat-x; - background-position: top; - */ + div.historyItemTitleBar { + background-image: url(data_running.gif); + } } -div.historyItem-upload -{ +div.historyItem-upload { border-color: $history_upload_border; background: $history_upload_bg; + div.historyItemTitleBar { + background-image: url(data_upload.gif); + } } -div.historyItem-noPermission -{ +div.historyItem-queued { + background: $history_queued_bg; + div.historyItemTitleBar { + -sprite-group: history-states; + -sprite-image: data_queued.png; + } +} + +div.historyItem-noPermission { filter: alpha(opacity=60); -moz-opacity: .60; opacity: .60; } -div.historyItem-queued -{ +## Special case for showing the spinner but not changing the background +div.historyItemTitleBar.spinner { + background: url(data_running.gif) 0 1px no-repeat !important; + padding-left: 20px !important; } -div.historyItemBody div -{ +## Buttons +div.historyItemButtons { + float: right; +} + +.icon-button { + width: 16px; + height: 16px; + display: block; + float: left; + margin-left: 2px; + ## Allow alt text for screen readers + text-indent: 20px; +} + +.icon-button.display { + -sprite-group: history-buttons; + -sprite-image: eye_icon.png; +} + +.icon-button.display:hover { + -sprite-group: history-buttons; + -sprite-image: eye_icon_dark.png; +} + +.icon-button.edit { + -sprite-group: history-buttons; + -sprite-image: pencil_icon.png; +} + +.icon-button.edit:hover { + -sprite-group: history-buttons; + -sprite-image: pencil_icon_dark.png; +} + +.icon-button.delete { + -sprite-group: history-buttons; + -sprite-image: delete_icon.png; +} + +.icon-button.delete:hover { + -sprite-group: history-buttons; + -sprite-image: delete_icon_dark.png; +} + +div.historyItemBody div { padding-top: 2px; } -pre.peek -{ +pre.peek { background: white; color: black; width: 100%; overflow: auto; + th { + color: white; + background: $peek_table_header; + } } - -pre.peek th -{ - color: white; - background: $peek_table_header; -} diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/make_style.py --- a/static/june_2007_style/make_style.py Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/make_style.py Fri Jul 24 16:14:46 2009 -0400 @@ -57,33 +57,15 @@ # History icons ( "ok_small.png", "history_ok_bg", "data_ok.png" ), ( "error_small.png", "history_error_bg", "data_error.png" ), - ( "wait_small.png", "history_queued_bg", "data_queued.png" ) ] + ( "wait_small.png", "history_queued_bg", "data_queued.png" ), +] vars, out_dir = sys.argv[1:] -context = dict() -for line in open( vars ): - if line.startswith( '#' ): - continue - key, value = line.rstrip("\r\n").split( '=' ) - if value.startswith( '"' ) and value.endswith( '"' ): - value = value[1:-1] - context[key] = value - for input, output in templates: print input ,"->", output - out_fname = os.path.join( out_dir, output ) - temp_file = tempfile.NamedTemporaryFile() - # Write processed template to temporary file - print "Processing template..." - temp_file.write( str( Template( file=input, searchList=[context] ) ) ) - temp_file.flush() - # Compress CSS with YUI - print "Compressing..." - subprocess.call( - "java -jar ../../scripts/yuicompressor.jar --type css %s -o %s" % ( temp_file.name, out_fname ), - shell = True ) + subprocess.call( "./process_css.py %s %s < %s > %s" % ( vars, out_dir, input, os.path.join( out_dir, output ) ), shell=True ) """ diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/panel_layout.css.tmpl --- a/static/june_2007_style/panel_layout.css.tmpl Fri Jul 24 15:13:11 2009 -0400 +++ b/static/june_2007_style/panel_layout.css.tmpl Fri Jul 24 16:14:46 2009 -0400 @@ -1,26 +1,28 @@ -#set $unselectable = """ - user-select: none; - -moz-user-select: none; - -webkit-user-select: none; -""" +## Font settings from YUI + verdana +body{font:13px/1.231 verdana,arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}select,input,button,textarea,button{font:99% verdana,arial,helvetica,clean,sans-serif;}table{font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;} +body{font-size:75%;} -## Rules -body, html -{ +body, html { overflow: hidden; margin: 0; padding: 0; width: 100%; height: 100%; } -body -{ + +body { font: 75% verdana, "Bitstream Vera Sans", geneva, arial, helvetica, helve, sans-serif; background: ${layout_bg}; } -#background -{ + +.unselectable { + user-select: none; + -moz-user-select: none; + -webkit-user-select: none; +} + +#background { position: absolute; background: ${layout_bg}; z-index: -1; @@ -32,8 +34,7 @@ height: 100%; } -#messagebox -{ +#messagebox { position:absolute; top:33px; left:0; @@ -44,30 +45,25 @@ font-size: 90%; } -#left, #left-border, #center, #right-border, #right -{ +#left, #left-border, #center, #right-border, #right { position: absolute; top: 39px; bottom: 0px; overflow: hidden; background: #fff; } -#left, #center, #right -{ +#left, #center, #right { border-top: solid ${layout_border} 1px; } -#left-border, #right-border -{ +#left-border, #right-border { background: #eeeeee; border-left: solid ${layout_border} 1px; border-right: solid ${layout_border} 1px; padding-right: 1px; padding-left: 1px; width: 5px; - z-index: 10000; -} -#left-border div, #right-border div -{ + z-index: 10000; } +#left-border div, #right-border div { width: 100%; height: 100%; background-repeat: no-repeat; @@ -76,43 +72,35 @@ width: 5px; height: 100%; } -#left-border div, #right-border.hidden div -{ +#left-border div, #right-border.hidden div { background-image: url(tiny_arrow_left.png); cursor: w-resize; } -#left-border.hidden div, #right-border div -{ +#left-border.hidden div, #right-border div { background-image: url(tiny_arrow_right.png); cursor: e-resize; } -#left-border.hover div, #right-border.hover div -{ +#left-border.hover div, #right-border.hover div { background-color: ${layout_hover}; } -#left -{ +#left { left: 0px; width: 250px; z-index: 200; } -#left-border -{ +#left-border { left: 250px; } -#center -{ +#center { left:259px; right: 259px; overflow: hidden; z-index: 1; } -#right-border -{ +#right-border { right: 250px; } -#right -{ +#right { width: 250px; right: 0px; z-index: 200; @@ -240,7 +228,7 @@ background-color: $info_message_bg; } -## ---- Masthead styles ---- +## Masthead #masthead { @@ -280,66 +268,65 @@ ## Tabs -.tab-group -{ +.tab-group { + margin: 0; padding: 0 10px; height: 100%; white-space: nowrap; cursor: default; - ${unselectable} + background: transparent; + + .tab { + + background: ${masthead_bg}; + position: relative; + float: left; + margin: 0; + padding: 0 1em; + height: 32px; + line-height: 32px; + text-align: left; + + .submenu { + + display: none; + position: absolute; + z-index: 16000; + left: 0; + top: 32px; + padding: 1em; + margin: -1em; + padding-top: 0; + margin-top: 0; + background-color: rgba(0,0,0,0.5); + -moz-border-radius: 0 0 1em 1em; + -webkit-border-bottom-right-radius: 1em; + -webkit-border-bottom-left-radius: 1em; + + ul { + + display: block; + margin: 0; + padding: 0; + list-style-type: none; + background: ${masthead_bg}; + + li { + + display: block; + padding: 0 1em; + white-space: nowrap; + } + } + } + } + + .tab:hover > a { + color: gold !important; + } + + .active { + background: rgb(1,1,1); + } } - -.tab-group .tab -{ - background: ${masthead_bg}; - position: relative; - float: left; - margin: 0; - padding: 0 1em; - height: 32px; - line-height: 32px; - text-align: left; -} - -.tab-group .tab:hover > a -{ - color: gold !important; -} - -.tab-group .active -{ - background: rgb(1,1,1); -} - -.tab-group .tab .submenu { - display: none; - position: absolute; - z-index: 16000; - left: 0; - top: 32px; - padding: 1em; - margin: -1em; - padding-top: 0; - margin-top: 0; - background-color: rgba(0,0,0,0.5); - -moz-border-radius: 0 0 1em 1em; - -webkit-border-bottom-right-radius: 1em; - -webkit-border-bottom-left-radius: 1em; -} - -.tab-group .tab .submenu ul -{ - display: block; - margin: 0; - padding: 0; - list-style-type: none; - background: ${masthead_bg}; -} - -.tab-group .tab .submenu ul li -{ - display: block; - padding: 0 1em; - white-space: nowrap; -} diff -r 0564441c5043 -r 3d4d44d7a275 static/june_2007_style/process_css.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/static/june_2007_style/process_css.py Fri Jul 24 16:14:46 2009 -0400 @@ -0,0 +1,236 @@ +#!/usr/bin/env python + +""" +CSS processor for Galaxy style sheets. Supports the following features: + +- Nested rule definition +- Mixins +- Variable substitution in values + +""" + +import sys, string, os.path +from pyparsing import * +from galaxy.util.odict import odict +import Image + +def cross_lists(*sets): + """ + Return the cross product of the arguments + """ + wheels = map(iter, sets) + digits = [it.next() for it in wheels] + while True: + yield digits[:] + for i in range(len(digits)-1, -1, -1): + try: + digits[i] = wheels[i].next() + break + except StopIteration: + wheels[i] = iter(sets[i]) + digits[i] = wheels[i].next() + else: + break + +def build_stylesheet_parser(): + """ + Returns a PyParsing parser object for CSS + """ + + # Forward declerations for recursion + rule = Forward() + + # Structural syntax, supressed from parser output + lbrace = Literal("{").suppress() + rbrace = Literal("}").suppress() + colon = Literal(":").suppress() + semi = Literal(";").suppress() + + ident = Word( alphas + "_", alphanums + "_-" ) + + # Properties + prop_name = Word( alphas + "_-*", alphanums + "_-" ) + prop_value = CharsNotIn( ";" ) # expand this as needed + property_def = Group( prop_name + colon + prop_value + semi ).setResultsName( "property_def" ) + + # Selectors + # Just match anything that looks like a selector, including element, class, + # id, attribute, and pseudoclass. Attributes are not handled properly (spaces, + # and even newlines in the quoted string are legal). + simple_selector = Word( alphanums + ".#*:()[]|=\"'_-" ) + combinator = Literal( ">" ) | Literal( "+" ) + selector = Group( simple_selector + ZeroOrMore( Optional( combinator ) + simple_selector ) ) + selectors = Group( delimitedList( selector ) ) + + selector_mixin = Group( selector + semi ).setResultsName( "selector_mixin" ) + + # Rules + rule << Group( selectors + + lbrace + + Group( ZeroOrMore( property_def | rule | selector_mixin ) ) + + rbrace ).setResultsName( "rule" ) + + # A whole stylesheet + stylesheet = ZeroOrMore( rule ) + + # C-style comments should be ignored, as should "##" comments + stylesheet.ignore( cStyleComment ) + stylesheet.ignore( "##" + restOfLine ) + + return stylesheet + +stylesheet_parser = build_stylesheet_parser() + +class CSSProcessor( object ): + + def process( self, file, out, variables, image_dir ): + # Build parse tree + results = stylesheet_parser.parseFile( sys.stdin, parseAll=True ) + # Expand rules (elimimate recursion and resolve mixins) + rules = self.expand_rules( results ) + # Expand variables (inplace) + self.expand_variables( rules, variables ) + # Do sprites + self.make_sprites( rules, image_dir ) + # Print + self.print_rules( rules, out ) + + def expand_rules( self, parse_results ): + mixins = {} + rules = [] + # Visitor for recursively expanding rules + def visitor( r, selector_prefixes ): + # Concatenate combinations and build list of expanded selectors + selectors = [ " ".join( s ) for s in r[0] ] + full_selector_list = selector_prefixes + [selectors] + full_selectors = [] + for l in cross_lists( *full_selector_list ): + full_selectors.append( " ".join( l ) ) + # Separate properties from recursively defined rules + properties = [] + children = [] + for dec in r[1]: + type = dec.getName() + if type == "property_def": + properties.append( dec ) + elif type == "selector_mixin": + properties.extend( mixins[dec[0][0]] ) + else: + children.append( dec ) + rules.append( ( full_selectors, properties ) ) + # Save by name for mixins (not smart enough to combine rules!) + for s in full_selectors: + mixins[ s ] = properties; + # Visit children + for child in children: + visitor( child, full_selector_list ) + # Call at top level + for p in parse_results: + visitor( p, [] ) + # Return the list of expanded rules + return rules + + def expand_variables( self, rules, context ): + for selectors, properties in rules: + for p in properties: + p[1] = string.Template( p[1] ).substitute( context ).strip() + + def make_sprites( self, rules, image_dir ): + + pad = 10 + + class SpriteGroup(): + def __init__( self, name ): + self.name = name + self.offset = 0 + self.sprites = odict() + def add_or_get_sprite( self, fname ): + if fname in self.sprites: + return self.sprites[fname] + else: + sprite = self.sprites[fname] = Sprite( fname, self.offset ) + self.offset += sprite.image.size[1] + pad + return sprite + + class Sprite(): + def __init__( self, fname, offset ): + self.fname = fname + self.image = Image.open( os.path.join( image_dir, fname ) ) + self.offset = offset + + sprite_groups = {} + + for i in range( len( rules ) ): + properties = rules[i][1] + new_properties = [] + # Find sprite properties (and remove them). Last takes precedence + sprite_group_name = None + sprite_filename = None + for name, value in properties: + if name == "-sprite-group": + sprite_group_name = value + elif name == "-sprite-image": + sprite_filename = value + else: + new_properties.append( ( name, value ) ) + # If a sprite filename was found, deal with it... + if sprite_group_name and sprite_filename: + if sprite_group_name not in sprite_groups: + sprite_groups[sprite_group_name] = SpriteGroup( sprite_group_name ) + sprite_group = sprite_groups[sprite_group_name] + sprite = sprite_group.add_or_get_sprite( sprite_filename ) + new_properties.append( ( "background", "url(%s.png) no-repeat 0px -%dpx" % ( sprite_group.name, sprite.offset ) ) ) + # Save changed properties + rules[i] = ( rules[i][0], new_properties ) + + # Generate new images + for group in sprite_groups.itervalues(): + w = 0 + h = 0 + for sprite in group.sprites.itervalues(): + sw, sh = sprite.image.size + w = max( w, sw ) + h += sh + pad + master = Image.new( mode='RGBA', size=(w, h), color=(0,0,0,0) ) + offset = 0 + for sprite in group.sprites.itervalues(): + master.paste( sprite.image, (0,offset) ) + offset += sprite.image.size[1] + pad + master.save( os.path.join( image_dir, group.name + ".png" ) ) + + def print_rules( self, rules, file ): + for selectors, properties in rules: + file.write( ",".join( selectors ) ) + file.write( "{" ) + for name, value in properties: + file.write( "%s:%s;" % ( name, value ) ) + file.write( "}\n" ) + +def main(): + + # Read variable definitions from a (sorta) ini file + context = dict() + for line in open( sys.argv[1] ): + if line.startswith( '#' ): + continue + key, value = line.rstrip("\r\n").split( '=' ) + if value.startswith( '"' ) and value.endswith( '"' ): + value = value[1:-1] + context[key] = value + + image_dir = sys.argv[2] + + try: + + processor = CSSProcessor() + processor.process( sys.stdin, sys.stdout, context, image_dir ) + + except ParseException, e: + + print >> sys.stderr, "Error:", e + print >> sys.stderr, e.markInputline() + sys.exit( 1 ) + + +if __name__ == "__main__": + main() diff -r 0564441c5043 -r 3d4d44d7a275 templates/base_panels.mako --- a/templates/base_panels.mako Fri Jul 24 15:13:11 2009 -0400 +++ b/templates/base_panels.mako Fri Jul 24 16:14:46 2009 -0400 @@ -20,7 +20,7 @@ ## Default stylesheets <%def name="stylesheets()"> - <link rel="stylesheet" type="text/css" href="${h.url_for('/static/style/reset.css')}" /> + ## <link rel="stylesheet" type="text/css" href="${h.url_for('/static/style/reset.css')}" /> <link rel="stylesheet" type="text/css" href="${h.url_for('/static/style/panel_layout.css')}" /> <style type="text/css"> #center { @@ -287,6 +287,7 @@ </head> <body scroll="no" class="${self.body_class}"> + <div id="everything" style="position: absolute; width: 100%; height: 100%; min-width: 960px; min-height: 400px;"> ## Background displays first <div id="background"></div> ## Layer iframes over backgrounds @@ -316,6 +317,7 @@ ${self.right_panel()} </div> %endif + </div> ## Allow other body level elements </body> ## Scripts can be loaded later since they progressively add features to diff -r 0564441c5043 -r 3d4d44d7a275 templates/root/history.mako --- a/templates/root/history.mako Fri Jul 24 15:13:11 2009 -0400 +++ b/templates/root/history.mako Fri Jul 24 16:14:46 2009 -0400 @@ -13,17 +13,10 @@ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Pragma" content="no-cache"> -<link href="${h.url_for('/static/style/base.css')}" rel="stylesheet" type="text/css" /> -<link href="${h.url_for('/static/style/history.css')}" rel="stylesheet" type="text/css" /> -## <!--[if lt IE 7]> -## <script defer type="text/javascript" src="/static/scripts/ie_pngfix.js"></script> -## <![endif]--> - -<script type="text/javascript" src="${h.url_for('/static/scripts/jquery.js')}"></script> -<script type="text/javascript" src="${h.url_for('/static/scripts/jquery.cookie.js')}"></script> -<script type="text/javascript" src="${h.url_for('/static/scripts/cookie_set.js')}"></script> - +${h.css( "base", "history" )} +${h.js( "jquery", "jquery.cookie", "cookie_set" )} + <script type="text/javascript"> $( document ).ready( function() { initShowHide(); @@ -86,7 +79,7 @@ //' Functionized so AJAX'd datasets can call them // Get shown/hidden state from cookie function initShowHide() { - $( "div.historyItemBody" ).hide(); + // $( "div.historyItemBody" ).hide(); // Load saved state and show as neccesary var state = new CookieSet( "galaxy.history.expand_state" ); for ( id in state.store ) { @@ -128,10 +121,10 @@ return false; }); // Delete link - $(this).find( "a.historyItemDelete" ).each( function() { + $(this).find( "div.historyItemButtons > .delete" ).each( function() { var data_id = this.id.split( "-" )[1]; $(this).click( function() { - $( '#progress-' + data_id ).show(); + $( '#historyItem-' + data_id + "> div.historyItemTitleBar" ).addClass( "spinner" ); $.ajax({ url: "${h.url_for( action='delete_async', id='XXX' )}".replace( 'XXX', data_id ), error: function() { alert( "Delete failed" ) }, @@ -157,7 +150,7 @@ $(this).find( "a.historyItemUndelete" ).each( function() { var data_id = this.id.split( "-" )[1]; $(this).click( function() { - $( '#progress-' + data_id ).show(); + $( '#historyItem-' + data_id + " > div.historyItemTitleBar" ).addClass( "spinner" ); $.ajax({ url: "${h.url_for( controller='dataset', action='undelete_async', id='XXX' )}".replace( 'XXX', data_id ), error: function() { alert( "Undelete failed" ) }, @@ -228,24 +221,19 @@ }; </script> -<![if gte IE 7]> -<script type="text/javascript"> - $( document ).ready( function() { - // Add rollover effect to any image with a 'rollover' attribute - preload_images = {} - $( "img[rollover]" ).each( function() { - var r = $(this).attr('rollover'); - var s = $(this).attr('src'); - preload_images[r] = true; - $(this).hover( - function() { $(this).attr( 'src', r ) }, - function() { $(this).attr( 'src', s ) } - ) - }) - for ( r in preload_images ) { $( "<img>" ).attr( "src", r ) } - }) -</script> -<![endif]> +<style> +.historyItemBody { + display: none; +} +</style> + +<noscript> +<style> +.historyItemBody { + display: block; +} +</style> +</noscript> </head> @@ -259,7 +247,7 @@ </div> <div id="history-name-area" class="historyLinks" style="color: gray; font-weight: bold;"> - <div style="float: right"><a id="history-rename" target="galaxy_main" href="${h.url_for( controller='history', action='rename' )}"><img src="${h.url_for('/static/images/pencil_icon.png')}"></a></div> + <div style="float: right"><a id="history-rename" title="Rename" class="icon-button edit" target="galaxy_main" href="${h.url_for( controller='history', action='rename' )}"></a></div> <div id="history-name">${history.name}</div> </div> diff -r 0564441c5043 -r 3d4d44d7a275 templates/root/history_common.mako --- a/templates/root/history_common.mako Fri Jul 24 15:13:11 2009 -0400 +++ b/templates/root/history_common.mako Fri Jul 24 16:14:46 2009 -0400 @@ -18,29 +18,21 @@ <strong>This dataset has been deleted. Click <a href="${h.url_for( controller='dataset', action='undelete', id=data.id )}" class="historyItemUndelete" id="historyItemUndeleter-${data.id}" target="galaxy_history">here</a> to undelete.</strong> </div> %endif + ## Header row for history items (name, state, action buttons) - <div style="overflow: hidden;" class="historyItemTitleBar"> - <div style="float: left; padding-right: 3px;"> - <div style='display: none;' id="progress-${data.id}"> - <img src="${h.url_for('/static/style/data_running.gif')}" border="0" align="middle" > - </div> - %if data_state == 'running': - <div><img src="${h.url_for('/static/style/data_running.gif')}" border="0" align="middle"></div> - %elif data_state == 'upload': - <div><img src="${h.url_for('/static/style/data_upload.gif')}" border="0" align="middle"></div> - %elif data_state != 'ok': - <div><img src="${h.url_for( "/static/style/data_%s.png" % data_state )}" border="0" align="middle"></div> - %endif - </div> - <div style="float: right;"> + <div style="overflow: hidden;" class="historyItemTitleBar"> + <div class="historyItemButtons"> %if data_state == "upload": - <img src="${h.url_for('/static/images/eye_icon_grey.png')}" width='16' height='16' alt='display data' title='display data' class='displayButton' border='0'> - <img src="${h.url_for('/static/images/pencil_icon_grey.png')}" width='16' height='16' alt='edit attributes' title='edit attributes' class='editButton' border='0'> + ## TODO: Make these CSS, just adding a "disabled" class to the normal + ## links should be enough. However the number of datasets being uploaded + ## at a time is usually small so the impact of these images is also small. + <img src="${h.url_for('/static/images/eye_icon_grey.png')}" width='16' height='16' alt='display data' title='display data' class='button display' border='0'> + <img src="${h.url_for('/static/images/pencil_icon_grey.png')}" width='16' height='16' alt='edit attributes' title='edit attributes' class='button edit' border='0'> %else: - <a href="${h.url_for( controller='dataset', dataset_id=data.id, action='display', filename='index')}" target="galaxy_main"><img src="${h.url_for('/static/images/eye_icon.png')}" rollover="${h.url_for('/static/images/eye_icon_dark.png')}" width='16' height='16' alt='display data' title='display data' class='displayButton' border='0'></a> - <a href="${h.url_for( controller='root', action='edit', id=data.id )}" target="galaxy_main"><img src="${h.url_for('/static/images/pencil_icon.png')}" rollover="${h.url_for('/static/images/pencil_icon_dark.png')}" width='16' height='16' alt='edit attributes' title='edit attributes' class='editButton' border='0'></a> + <a class="icon-button display" title="display data" href="${h.url_for( controller='dataset', dataset_id=data.id, action='display', filename='index')}" target="galaxy_main"></a> + <a class="icon-button edit" title="edit attributes" href="${h.url_for( controller='root', action='edit', id=data.id )}" target="galaxy_main"></a> %endif - <a href="${h.url_for( action='delete', id=data.id, show_deleted_on_refresh=show_deleted_on_refresh )}" class="historyItemDelete" id="historyItemDeleter-${data.id}"><img src="${h.url_for('/static/images/delete_icon.png')}" rollover="${h.url_for('/static/images/delete_icon_dark.png')}" width='16' height='16' alt='delete' class='deleteButton' border='0'></a> + <a class="icon-button delete" title="delete" href="${h.url_for( action='delete', id=data.id, show_deleted_on_refresh=show_deleted_on_refresh )}" id="historyItemDeleter-${data.id}"></a> </div> <span class="historyItemTitle"><b>${hid}: ${data.display_name()}</b></span> </div>