|
From: <ha...@us...> - 2013-02-02 23:14:58
|
Revision: 1392
http://openautomation.svn.sourceforge.net/openautomation/?rev=1392&view=rev
Author: hausl
Date: 2013-02-02 23:14:52 +0000 (Sat, 02 Feb 2013)
Log Message:
-----------
changed shownavbar attribute of a page into 4 single attributes for top, bottom, left, right
Modified Paths:
--------------
CometVisu/trunk/visu/lib/templateengine.js
CometVisu/trunk/visu/structure/pure/page.js
CometVisu/trunk/visu/visu_config.xsd
CometVisu/trunk/visu/visu_config_metal.xml
Modified: CometVisu/trunk/visu/lib/templateengine.js
===================================================================
--- CometVisu/trunk/visu/lib/templateengine.js 2013-02-02 22:44:58 UTC (rev 1391)
+++ CometVisu/trunk/visu/lib/templateengine.js 2013-02-02 23:14:52 UTC (rev 1392)
@@ -1025,65 +1025,26 @@
};
/**
- * parse a string with up to four, space-separated values usage like css
- * settings, e.g width: 1px 2px 3px 4px (top-, right-, bottom-, left-width)
+ * update the visibility of top-navigation, footer and navbar for this page
*
- * @param value
- */
- this.parseTopRightBottomLeftString = function(value) {
- var parts = value.split(" ");
- if (parts.length == 4) {
- return {
- top : parts[0],
- right : parts[1],
- bottom : parts[2],
- left : parts[3]
- };
- } else if (parts.length == 3) {
- return {
- top : parts[0],
- right : parts[1],
- bottom : parts[2],
- left : parts[1]
- };
- } else if (parts.length == 2) {
- return {
- top : parts[0],
- right : parts[1],
- bottom : parts[0],
- left : parts[1]
- };
- } else if (parts.length == 1) {
- return {
- top : parts[0],
- right : parts[0],
- bottom : parts[0],
- left : parts[0]
- };
- } else
- return {
- top : '',
- right : '',
- bottom : '',
- left : ''
- };
- };
-
- /**
- * update the visibility ob top-navigation, footer and navbar for this page
- *
* @param page
*/
this.updatePageParts = function(page) {
// default values
var showtopnavigation = true;
var showfooter = true;
- var shownavbar = {
- top : "true",
- right : "true",
- bottom : "true",
- left : "true"
- };
+ var shownavbar = (page.data().shownavbar != undefined ? page.data().shownavbar : {
+ top : 'inherit',
+ bottom : 'inherit',
+ left : 'inherit',
+ right : 'inherit'
+ });
+ // set inherit for undefined
+ for (var pos in shownavbar) {
+ if (shownavbar[pos] == undefined) {
+ shownavbar[pos] = 'inherit';
+ }
+ }
if (page.data() != null) {
if (page.data().showtopnavigation != undefined) {
@@ -1112,46 +1073,44 @@
parentPage = templateEngine.getParentPage(parentPage);
}
}
- if (page.data().shownavbar != undefined) {
- shownavbar = thisPagePartsHandler.parseTopRightBottomLeftString(page.data().shownavbar);
- } else {
- // traverse up the page tree
- var inheritedShowNavbar = {
- top : 'inherit',
- right : 'inherit',
- bottom : 'inherit',
- left : 'inherit'
- };
- var parentPage = templateEngine.getParentPage(page);
- while (parentPage != null) {
+
+ // traverse up the page tree for shownavbar
+ var parentPage = templateEngine.getParentPage(page);
+ while (parentPage != null) {
+ // do we need to go further? Check for inheritance
+ var inherit = false;
+ for (var pos in shownavbar) {
+ if (shownavbar[pos] == 'inherit') {
+ inherit = true;
+ break;
+ }
+ }
+ if (inherit) {
if (parentPage.data().shownavbar != undefined) {
- var pageShowNavBar = thisPagePartsHandler.parseTopRightBottomLeftString(parentPage
- .data().shownavbar);
- for ( var pos in pageShowNavBar) {
- if (pageShowNavBar[pos] != 'inherit'
- && inheritedShowNavbar[pos] == 'inherit') {
- inheritedShowNavbar[pos] = pageShowNavBar[pos];
+ for (var pos in shownavbar) {
+ if (shownavbar[pos] == 'inherit') {
+ // set value of parent page
+ shownavbar[pos] = parentPage.data().shownavbar[pos];
+ if (shownavbar[pos] == undefined) {
+ shownavbar[pos] = 'inherit';
+ }
}
}
- if (inheritedShowNavbar.top != 'inherit'
- && inheritedShowNavbar.right != 'inherit'
- && inheritedShowNavbar.bottom != 'inherit'
- && inheritedShowNavbar.left != 'inherit') {
- // we are done
- break;
- }
}
- parentPage = templateEngine.getParentPage(parentPage);
+ } else {
+ // we are done
+ break;
}
- // set default values if not set otherwise
- for ( var pos in inheritedShowNavbar) {
- if (inheritedShowNavbar[pos] == 'inherit') {
- inheritedShowNavbar[pos] = shownavbar[pos];
- }
- }
- shownavbar = inheritedShowNavbar;
+ parentPage = templateEngine.getParentPage(parentPage);
}
}
+ // set default values for shownavbar if not set otherwise
+ for (var pos in shownavbar) {
+ if (shownavbar[pos] == undefined || shownavbar[pos] == 'inherit') {
+ shownavbar[pos] = true;
+ }
+ }
+
var resize = false;
if (showtopnavigation) {
if ($('#top').css("display") == "none") {
@@ -1185,16 +1144,15 @@
}
$.each([ 'Left', 'Top', 'Right', 'Bottom' ], function(index, value) {
var key = value.toLowerCase();
- if (shownavbar[key] == "true") {
+ if (shownavbar[key] == true) {
if ($('#navbar' + value).css("display") == "none") {
thisPagePartsHandler.fadeNavbar(value, "in");
thisPagePartsHandler.removeInactiveNavbars(page.attr('id'));
// resize=true;
}
- } else if (shownavbar[key] == "false") {
- // the loading class prevents any element from beeing disabled, we have
- // to
- // remove it
+ } else {
+ // the loading class prevents any element from being disabled, we have
+ // to remove it
$('#navbar' + value + '.loading').removeClass('loading');
if ($('#navbar' + value).css("display") != "none") {
thisPagePartsHandler.fadeNavbar(value, "out");
Modified: CometVisu/trunk/visu/structure/pure/page.js
===================================================================
--- CometVisu/trunk/visu/structure/pure/page.js 2013-02-02 22:44:58 UTC (rev 1391)
+++ CometVisu/trunk/visu/structure/pure/page.js 2013-02-02 23:14:52 UTC (rev 1392)
@@ -31,7 +31,10 @@
var backdrop = $p.attr('backdrop');
var showtopnavigation = $p.attr('showtopnavigation');
var showfooter = $p.attr('showfooter');
- var shownavbar = $p.attr('shownavbar');
+ var shownavbar_top = $p.attr('shownavbar-top');
+ var shownavbar_bottom = $p.attr('shownavbar-bottom');
+ var shownavbar_left = $p.attr('shownavbar-left');
+ var shownavbar_right = $p.attr('shownavbar-right');
if( $p.attr('flavour') ) flavour = $p.attr('flavour');// sub design choice
var wstyle = ''; // widget style
if( $p.attr('align') ) wstyle += 'text-align:' + $p.attr('align') + ';';
@@ -57,7 +60,12 @@
var subpage = $( '<div class="page" id="' + path + '"/>' );
subpage.data('showtopnavigation',showtopnavigation);
subpage.data('showfooter',showfooter);
- subpage.data('shownavbar',shownavbar);
+ subpage.data('shownavbar',{
+ top : shownavbar_top,
+ bottom : shownavbar_bottom,
+ left : shownavbar_left,
+ right : shownavbar_right
+ });
var $container = $( '<div class="clearfix" path="'+path+'" style="height:100%;position:relative;" />');
for( var addr in address ) $container.bind( addr, this.update );
var container=$container;
Modified: CometVisu/trunk/visu/visu_config.xsd
===================================================================
--- CometVisu/trunk/visu/visu_config.xsd 2013-02-02 22:44:58 UTC (rev 1391)
+++ CometVisu/trunk/visu/visu_config.xsd 2013-02-02 23:14:52 UTC (rev 1392)
@@ -424,7 +424,10 @@
</xsd:attribute>
<xsd:attribute name="showtopnavigation" type="xsd:boolean" use="optional" />
<xsd:attribute name="showfooter" type="xsd:boolean" use="optional" />
- <xsd:attribute name="shownavbar" type="xsd:string" use="optional" />
+ <xsd:attribute name="shownavbar-top" type="xsd:boolean" use="optional" />
+ <xsd:attribute name="shownavbar-bottom" type="xsd:boolean" use="optional" />
+ <xsd:attribute name="shownavbar-left" type="xsd:boolean" use="optional" />
+ <xsd:attribute name="shownavbar-right" type="xsd:boolean" use="optional" />
</xsd:complexType>
<xsd:complexType name="group">
Modified: CometVisu/trunk/visu/visu_config_metal.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_metal.xml 2013-02-02 22:44:58 UTC (rev 1391)
+++ CometVisu/trunk/visu/visu_config_metal.xml 2013-02-02 23:14:52 UTC (rev 1392)
@@ -60,7 +60,7 @@
</statusbar>
</meta>
<page name="Übersicht" showtopnavigation="false" showfooter="false"
- shownavbar="true false">
+ shownavbar-top="true">
<navbar position="top">
<pagejump target="Übersicht">
<layout colspan="0"/>
@@ -193,7 +193,7 @@
</slide>
</group>
</page>
- <page name="KNX" shownavbar="true" visible="false">
+ <page name="KNX" shownavbar-left="true" visible="false">
<navbar position="left" dynamic="true" width="200px">
<group name="Räume">
<pagejump target="Wohnzimmer" name="Wohnen">
@@ -424,7 +424,7 @@
<page name="Video" visible="false">
<text><label>Video Page</label></text>
</page>
- <page name="Audio" shownavbar="true" visible="false">
+ <page name="Audio" shownavbar-left="true" visible="false">
<navbar position="left" dynamic="true" width="200px">
<group name="Sonstiges">
<pagejump target="Audio">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|