initial locationbar commit

This commit is contained in:
Doug Bell 2010-04-09 17:57:23 -05:00
parent a79f81346a
commit a7598482c5
3 changed files with 99 additions and 9 deletions

View file

@ -16,6 +16,9 @@ sub BUILDARGS {
return { session => $session, @args };
}
# Use the template data located in our DATA block
my $tdata = do { local $/ = undef; <WebGUI::Admin::DATA> };
#----------------------------------------------------------------------
sub getAdminPluginTemplateVars {
@ -175,6 +178,12 @@ sub www_view {
$var->{viewUrl} = $url->page;
# All this needs to be template attachments
$style->setLink( $url->extras('yui/build/button/assets/skins/sam/button.css'), {type=>"text/css",rel=>"stylesheet"});
$style->setLink( $url->extras('yui/build/menu/assets/skins/sam/menu.css'), {type=>"text/css",rel=>"stylesheet"});
$style->setLink( $url->extras('yui/build/tabview/assets/skins/sam/tabview.css'), {type=>"text/css",rel=>"stylesheet"});
$style->setLink( $url->extras('macro/AdminBar/slidePanel.css'), {type=>'text/css', rel=>'stylesheet'});
$style->setLink( $url->extras('admin/admin.css'), { type=>'text/css', rel=>'stylesheet'} );
$style->setScript($url->extras('yui/build/yahoo-dom-event/yahoo-dom-event.js'), {type=>'text/javascript'});
$style->setScript($url->extras('yui/build/utilities/utilities.js'), {type=>'text/javascript'});
$style->setScript($url->extras('accordion/accordion.js'), {type=>'text/javascript'});
@ -184,14 +193,8 @@ sub www_view {
$style->setScript($url->extras('yui/build/container/container_core-min.js'), {type=>"text/javascript"});
$style->setScript($url->extras('yui/build/menu/menu-min.js'), {type=>"text/javascript"});
$style->setScript($url->extras('yui/build/button/button-min.js'), {type=>"text/javascript"});
$style->setLink( $url->extras('yui/build/button/assets/skins/sam/button.css'), {type=>"text/css",rel=>"stylesheet"});
$style->setLink( $url->extras('yui/build/menu/assets/skins/sam/menu.css'), {type=>"text/css",rel=>"stylesheet"});
$style->setLink( $url->extras('yui/build/tabview/assets/skins/sam/tabview.css'), {type=>"text/css",rel=>"stylesheet"});
$style->setLink($url->extras('macro/AdminBar/slidePanel.css'), {type=>'text/css', rel=>'stylesheet'});
$style->setLink( $url->extras('admin/admin.css'), { type=>'text/css', rel=>'stylesheet'} );
# Use the template in our __DATA__ block
my $tdata = do { local $/ = undef; <WebGUI::Admin::DATA> };
my $tmpl = WebGUI::Asset::Template::HTMLTemplate->new( $session );
# Use the blank style
@ -237,7 +240,19 @@ __DATA__
<li class="selected"><a href="#tab1"><em>View</em></a></li>
<li><a href="#tab2"><em>Tree</em></a></li>
</ul>
<div id="locationBar"></div>
<div id="locationBar">
<span id="left">
<input type="button" id="backButton" value="&lt;" /><input type="button" id="forwardButton" value="&gt;" />
</span>
<div id="location">
<input type="text" id="locationUrl" value="/current/url" />
<span id="locationTitle">Current Title</span>
</div>
<span id="right">
<input type="button" id="searchButton" value="S" /><input type="button" id="homeButton" value="H" />
</span>
<div id="search"></div>
</div>
<div class="yui-content">
<div id="viewTab"><iframe src="<tmpl_var viewUrl>" name="view" style="width: 100%; height: 80%"></iframe></div>
<div id="treeTab"><p>Tab Two Content</p></div>
@ -251,5 +266,9 @@ __DATA__
YAHOO.util.Event.onDOMReady( function() {
var myTabs = new YAHOO.widget.TabView("tabs");
var bar = new WebGUI.Admin.LocationBar("locationBar");
window.admin = {
"bar" : bar,
"tabs" : myTabs
};
} );
</script>

View file

@ -1,6 +1,7 @@
#wrapper {
margin-left: 160px; /* move out of the adminbar's way */
min-width: 850px; /* min width for 1024x browsers */
}
#versionTag {
@ -26,7 +27,66 @@
}
#locationBar {
position: relative;
height: 2em;
padding: 5px 0;
background: url( /extras/admin/locationbar-back.png );
}
#locationBar .yui-button {
margin: auto 2px;
}
#locationBar .yui-button button,
#locationBar .yui-button a,
#locationBar .yui-button a:visited
{
padding: 2px 5px;
line-height: 1.5;
min-height: 1.5em;
}
#locationBar #left {
position: absolute;
width: 8%;
top: 5px;
left: 0;
}
#locationBar #right {
position: absolute;
width: 8%;
top: 5px;
right: 0;
}
#locationBar #location {
position: relative;
margin: auto 7%;
width: 83%;
height: 80%;
border: 1px solid #333;
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
}
#locationBar #locationUrl {
width: 99%;
height: 90%;
border: none;
font: 14px Verdana, sans-serif;
}
#locationBar #locationTitle {
display: block;
position: absolute;
top: 3px;
right: 0px;
height: 90%;
margin-right: 5px;
font: 14px Verdana, sans-serif;
text-align: right;
}
#tabs {

View file

@ -6,7 +6,7 @@ if ( typeof WebGUI == "undefined" ) {
WebGUI.Admin = {};
WebGUI.Admin.LocationBar = (function(){
// Public stuff
return function (id) {
@ -17,7 +17,18 @@ WebGUI.Admin.LocationBar = (function(){
var _element = document.getElementById( self.id );
function _init () {
_element.appendChild( document.createTextNode( "Location Bar" ) );
var back = new YAHOO.widget.Button( "backButton", {
label : '<img src="' + getWebguiProperty("extrasURL") + 'icon/arrow_left.png" />'
} );
var forward = new YAHOO.widget.Button( "forwardButton", {
label : '<img src="' + getWebguiProperty("extrasURL") + 'icon/arrow_right.png" />'
} );
var search = new YAHOO.widget.Button( "searchButton", {
label : '<img src="' + getWebguiProperty("extrasURL") + 'icon/magnifier.png" />'
} );
var home = new YAHOO.widget.Button( "homeButton", {
label : '<img src="' + getWebguiProperty("extrasURL") + 'icon/house.png" />'
} );
}
_init();