|
From: <ma...@us...> - 2010-11-29 22:23:26
|
Revision: 177
http://openautomation.svn.sourceforge.net/openautomation/?rev=177&view=rev
Author: mayerch
Date: 2010-11-29 21:47:35 +0000 (Mon, 29 Nov 2010)
Log Message:
-----------
New Feature: user settable status bar (i.e. footer)
Modified Paths:
--------------
CometVisu/trunk/visu/edit_config.html
CometVisu/trunk/visu/index.html
CometVisu/trunk/visu/lib/templateengine.js
CometVisu/trunk/visu/visu_config.xml
Modified: CometVisu/trunk/visu/edit_config.html
===================================================================
--- CometVisu/trunk/visu/edit_config.html 2010-11-29 20:56:06 UTC (rev 176)
+++ CometVisu/trunk/visu/edit_config.html 2010-11-29 21:47:35 UTC (rev 177)
@@ -31,10 +31,7 @@
</div>
<div id="bottom" class="loading">
<hr />
- <div class="footer">
- <img src="icon/comet_64_ff8000.png" alt="CometVisu" />
- by <a href="http://www.cometvisu.org/">ComeVisu.org</a> - <a href="edit_config.html">Reload</a>
- - <a href=".">normal Mode</a>
+ <div class="footer"></div>
</div>
</div>
Modified: CometVisu/trunk/visu/index.html
===================================================================
--- CometVisu/trunk/visu/index.html 2010-11-29 20:56:06 UTC (rev 176)
+++ CometVisu/trunk/visu/index.html 2010-11-29 21:47:35 UTC (rev 177)
@@ -27,10 +27,7 @@
</div>
<div id="bottom" class="loading">
<hr />
- <div class="footer">
- <img src="icon/comet_64_000000.png" alt="CometVisu" />
- by <a href="http://www.cometvisu.org/">CometVisu.org</a> - <a href=".">Reload</a>
- - <a href="edit_config.html">Edit</a>
+ <div class="footer"></div>
</div>
</div>
<div id="loading" style="text-align: center; width: 200px; height: 30px; margin: auto;">
Modified: CometVisu/trunk/visu/lib/templateengine.js
===================================================================
--- CometVisu/trunk/visu/lib/templateengine.js 2010-11-29 20:56:06 UTC (rev 176)
+++ CometVisu/trunk/visu/lib/templateengine.js 2010-11-29 21:47:35 UTC (rev 177)
@@ -169,8 +169,6 @@
var design = $( 'pages', xml ).attr('design');
$( 'head' ).append( '<link rel="stylesheet" type="text/css" href="designs/' + design + '/basic.css" />' );
$( 'head' ).append( '<link rel="stylesheet" type="text/css" href="designs/' + design + '/mobile.css" media="only screen and (max-device-width: 480px)" />' );
- // adapt width for pages to show
- handleResize();
// start with the plugins
$( 'meta > plugins plugin', xml ).each( function(i){
@@ -210,6 +208,22 @@
});
});
+ // then the status bar
+ $( 'meta > statusbar status', xml ).each( function(i){
+ var type = $(this).attr('type');
+ var condition = $(this).attr('condition');
+ var sPath = window.location.pathname;
+ var sPage = sPath.substring(sPath.lastIndexOf('/') + 1);
+ var editMode = 'edit_config.html' == sPage;
+ if( editMode && '!edit' == condition ) return;
+ if( !editMode && 'edit' == condition ) return;
+ //$('.footer').append( $(this.textContent) );
+ $('.footer').html( $('.footer').html() + this.textContent );
+ });
+
+ // adapt width for pages to show
+ handleResize();
+
// and now setup the pages
var page = $( 'pages > page', xml )[0]; // only one page element allowed...
Modified: CometVisu/trunk/visu/visu_config.xml
===================================================================
--- CometVisu/trunk/visu/visu_config.xml 2010-11-29 20:56:06 UTC (rev 176)
+++ CometVisu/trunk/visu/visu_config.xml 2010-11-29 21:47:35 UTC (rev 177)
@@ -2,7 +2,7 @@
<pages design="pure">
<meta>
<plugins>
- <plugin name="colorChooser" />
+ <plugin name="colorchooser" />
</plugins>
<mappings>
<mapping name="OpenClose">
@@ -34,6 +34,24 @@
<entry range_min="0" range_max="100">red</entry>
</styling>
</stylings>
+ <statusbar>
+ <status type="html">
+ <![CDATA[
+ <img src="icon/comet_64_ff8000.png" alt="CometVisu" /> by <a href="http://www.cometvisu.org/">CometVisu.org</a>
+ - <a href=".">Reload</a>
+ ]]>
+ </status>
+ <status type="html" condition="!edit">
+ <![CDATA[
+ - <a href="edit_config.html">Edit</a>
+ ]]>
+ </status>
+ <status type="html" condition="edit">
+ <![CDATA[
+ - <a href=".">normal Mode</a>
+ ]]>
+ </status>
+ </statusbar>
</meta>
<page name="Übersicht" flavour="orange">
<text align="center">Willkommen bei der CometVisu!</text>
@@ -50,7 +68,7 @@
<info address="12/4/250" datatype="9" styling="BluePurpleRed">Slide Info</info>
<info address="12/4/250" datatype="9" styling="BluePurpleRed" mapping="Sign">Slide Info</info>
<designtoggle>Change design</designtoggle>
- <colorChooser address_r="1/2/59" address_g="1/2/60" address_b="1/2/61" datatype="5.001">A colorChooser</colorChooser>
+ <colorchooser address_r="1/2/59" address_g="1/2/60" address_b="1/2/61" datatype="5.001">A colorChooser</colorchooser>
<info address="1/2/59" datatype="5.001" >R</info>
<info address="1/2/60" datatype="5.001" >G</info>
<info address="1/2/61" datatype="5.001" >B</info>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <net...@us...> - 2010-12-05 12:19:37
|
Revision: 185
http://openautomation.svn.sourceforge.net/openautomation/?rev=185&view=rev
Author: netzkind
Date: 2010-12-05 12:19:31 +0000 (Sun, 05 Dec 2010)
Log Message:
-----------
added lib/compatibility.js to allow non-firebugged browsers to work with svn-state and "console.log" et al
Modified Paths:
--------------
CometVisu/trunk/visu/edit_config.html
CometVisu/trunk/visu/index.html
Added Paths:
-----------
CometVisu/trunk/visu/lib/compatibility.js
Modified: CometVisu/trunk/visu/edit_config.html
===================================================================
--- CometVisu/trunk/visu/edit_config.html 2010-12-04 22:43:47 UTC (rev 184)
+++ CometVisu/trunk/visu/edit_config.html 2010-12-05 12:19:31 UTC (rev 185)
@@ -6,6 +6,7 @@
<title>Visu - Editor-Modus</title>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" type="text/css" href="edit/style_edit.css" />
+ <script src="lib/compatibility.js" type="text/javascript"></script>
<script src="lib/jquery.js" type="text/javascript"></script>
<script src="lib/jquery-ui.js" type="text/javascript"></script>
<script src="lib/scrollable.js" type="text/javascript"></script>
Modified: CometVisu/trunk/visu/index.html
===================================================================
--- CometVisu/trunk/visu/index.html 2010-12-04 22:43:47 UTC (rev 184)
+++ CometVisu/trunk/visu/index.html 2010-12-05 12:19:31 UTC (rev 185)
@@ -5,6 +5,7 @@
<head>
<title>CometVisu-Client</title>
<meta name="viewport" content="width=device-width, initial-scale=1" />
+ <script src="lib/compatibility.js" type="text/javascript"></script>
<script src="lib/jquery.js" type="text/javascript"></script>
<script src="lib/jquery-ui.js" type="text/javascript"></script>
<script src="lib/scrollable.js" type="text/javascript"></script>
Added: CometVisu/trunk/visu/lib/compatibility.js
===================================================================
--- CometVisu/trunk/visu/lib/compatibility.js (rev 0)
+++ CometVisu/trunk/visu/lib/compatibility.js 2010-12-05 12:19:31 UTC (rev 185)
@@ -0,0 +1,5 @@
+
+if (typeof (console) == "undefined") {
+ console = {};
+ console.log = console.debug = console.info = console.warn = console.error = function() {}
+}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <net...@us...> - 2010-12-10 20:44:55
|
Revision: 190
http://openautomation.svn.sourceforge.net/openautomation/?rev=190&view=rev
Author: netzkind
Date: 2010-12-10 20:44:49 +0000 (Fri, 10 Dec 2010)
Log Message:
-----------
- removed "unknown" from type-list in editor
- changed inclusion of plugins at runtime so they can be debugged with firebug et al.
Modified Paths:
--------------
CometVisu/trunk/visu/edit/visuconfig_edit.js
CometVisu/trunk/visu/lib/templateengine.js
Modified: CometVisu/trunk/visu/edit/visuconfig_edit.js
===================================================================
--- CometVisu/trunk/visu/edit/visuconfig_edit.js 2010-12-09 22:27:13 UTC (rev 189)
+++ CometVisu/trunk/visu/edit/visuconfig_edit.js 2010-12-10 20:44:49 UTC (rev 190)
@@ -100,6 +100,10 @@
var options = {};
$("#addMaster").find("select#add_type").empty();
jQuery.each(design.creators, function (index, e) {
+ if (index == "unknown") {
+ // "unknown" is not a good choice for a new widget :)
+ return;
+ }
$("#addMaster").find("select#add_type").append(
$("<option />").attr("value", index).html(index)
);
Modified: CometVisu/trunk/visu/lib/templateengine.js
===================================================================
--- CometVisu/trunk/visu/lib/templateengine.js 2010-12-09 22:27:13 UTC (rev 189)
+++ CometVisu/trunk/visu/lib/templateengine.js 2010-12-10 20:44:49 UTC (rev 190)
@@ -101,7 +101,7 @@
$(document).ready(function() {
// get the data once the page was loaded
$.ajaxSetup({cache: false});
- window.setTimeout("$.get( 'visu_config" + configSuffix + ".xml', setup_page );", 200);
+ window.setTimeout("$.get( 'visu_config" + configSuffix + ".xml', parseXML );", 200);
// disable text selection - it's annoying on a touch screen!
if($.browser.mozilla)
@@ -161,8 +161,7 @@
}
$( window ).bind( 'resize', handleResize );
-function setup_page( xml )
-{
+function parseXML(xml) {
// erst mal den Cache für AJAX-Requests wieder aktivieren
$.ajaxSetup({cache: true});
@@ -171,9 +170,33 @@
$( 'head' ).append( '<link rel="stylesheet" type="text/css" href="designs/' + design + '/mobile.css" media="only screen and (max-device-width: 480px)" />' );
// start with the plugins
+ var pluginsToLoad = 0;
$( 'meta > plugins plugin', xml ).each( function(i){
+ pluginsToLoad += 1;
var name = $(this).attr('name');
- $( 'head' ).append( '<script src="plugins/' + name + '/structure_plugin.js" type="text/javascript"></script>' );
+ var html_doc = document.getElementsByTagName('body')[0];
+ js = document.createElement('script');
+ js.setAttribute('type', 'text/javascript');
+ js.setAttribute('src', 'plugins/' + name + '/structure_plugin.js');
+ html_doc.appendChild(js);
+
+ js.onreadystatechange = function () {
+ if (js.readyState == 'complete') {
+ pluginsToLoad -= 1;
+ if (pluginsToLoad <= 0) {
+ setup_page(xml);
+ }
+ }
+ }
+
+ js.onload = function () {
+ pluginsToLoad -= 1;
+ if (pluginsToLoad <= 0) {
+ setup_page(xml);
+ }
+ }
+ return false;
+
} );
// then the mappings
@@ -224,10 +247,19 @@
// adapt width for pages to show
handleResize();
+ if (pluginsToLoad <= 0) {
+ setup_page(xml);
+ }
+
+
+}
+
+function setup_page( xml )
+{
// and now setup the pages
var page = $( 'pages > page', xml )[0]; // only one page element allowed...
- create_pages( page, '0' );
+ create_pages(page, '0');
// setup the scrollable
main_scroll = $('#main').scrollable({keyboard: false, touch: false}).data('scrollable');
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-11 15:41:14
|
Revision: 198
http://openautomation.svn.sourceforge.net/openautomation/?rev=198&view=rev
Author: mayerch
Date: 2010-12-11 15:41:08 +0000 (Sat, 11 Dec 2010)
Log Message:
-----------
Change value update from class parsing to subscriber modell
(Tracker ID 3134594)
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/lib/templateengine.js
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-11 13:38:03 UTC (rev 197)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-11 15:41:08 UTC (rev 198)
@@ -125,9 +125,10 @@
'datatype': $(page).attr('datatype'),
'mapping' : $(page).attr('mapping'),
'styling' : $(page).attr('styling')
- } ) );
+ } ).bind('_'+$(page).attr('address'), this.update ) );
return ret_val;
},
+ update: defaultUpdate,
attributes: {
address: {type: "address", required: true},
datatype: {type: "datatype", required: true},
@@ -163,10 +164,16 @@
'max' : max,
'step' : step,
'type' : 'dim'
- }).slider({step:step,min:min,max:max, animate: true,start:slideStart,change:slideChange});//slide:slideAction});
-
+ }).bind('_'+$(page).attr('address'), this.update )
+ .slider({step:step,min:min,max:max, animate: true,start:slideStart,change:slideChange}/*slide:slideAction}*/);
return ret_val;
- },
+ },
+ update: function(e,d) {
+ var element = $(this);
+ var value = decodeDPT( d, element.data('datatype') );
+ element.data( 'value', value );
+ element.slider('value', value);
+ },
attributes: {
address: {type: "address", required: true},
datatype: {type: "datatype", required: true},
@@ -201,9 +208,16 @@
'mapping' : $(page).attr('mapping'),
'styling' : $(page).attr('styling'),
'type' : 'toggle'
- } ).bind('click',switchAction) );
+ } ).bind('click',switchAction)
+ .bind('_'+$(page).attr('address'), this.update ) );
return ret_val;
},
+ update: function(e,d) {
+ var element = $(this);
+ var value = defaultUpdate( e, d, element );
+ element.removeClass( value == '0' ? 'switchPressed' : 'switchUnpressed' );
+ element.addClass( value == '0' ? 'switchUnpressed' : 'switchPressed' );
+ },
attributes: {
address: {type: "address", required: true},
datatype: {type: "datatype", required: true},
@@ -513,4 +527,37 @@
}
return { x: 0, y: 0 }; // sanity return
+}
+
+
+function defaultUpdate( e, data, passedElement )
+{
+ var element = passedElement || $(this);
+ var value = decodeDPT( data, element.data('datatype') );
+ element.data( 'value', value );
+ element.find('.value').text( map( value, element ) );
+
+ var styling = element.data('styling');
+ if( styling && stylings[styling] && (stylings[styling][value] || stylings[styling]['range']) )
+ {
+ if( stylings[styling]['range'] ) value = parseFloat( value );
+ element.removeClass();
+ if( stylings[styling][value] )
+ {
+ element.addClass( 'actor ' + stylings[styling][value] );
+ } else {
+ var range = stylings[styling]['range'];
+ var not_found = true;
+ for( var min in range )
+ {
+ if( min > value ) continue;
+ if( range[min][0] < value ) continue; // check max
+ element.addClass( 'actor ' + range[min][1] );
+ not_found = false;
+ break;
+ }
+ if( not_found ) element.addClass( 'actor' );
+ }
+ }
+ return value;
}
\ No newline at end of file
Modified: CometVisu/trunk/visu/lib/templateengine.js
===================================================================
--- CometVisu/trunk/visu/lib/templateengine.js 2010-12-11 13:38:03 UTC (rev 197)
+++ CometVisu/trunk/visu/lib/templateengine.js 2010-12-11 15:41:08 UTC (rev 198)
@@ -30,48 +30,7 @@
{
for( key in json )
{
- var GA = 'GA' + key.split('/').join('_');
- var elements = $( '.' + GA );
- for( i = 0; i < elements.length; i++ )
- {
- var element = $( elements[i] );
- var value = decodeDPT( json[key], element.data('datatype') );
- element.data( 'value', value );
- $('.value', element).text( map( value, element ) );
-
- var styling = element.data('styling');
- if( styling && stylings[styling] && (stylings[styling][value] || stylings[styling]['range']) )
- {
- if( stylings[styling]['range'] ) value = parseFloat( value );
- element.removeClass();
- if( stylings[styling][value] )
- {
- element.addClass( 'actor ' + GA + ' ' + stylings[styling][value] );
- } else {
- var range = stylings[styling]['range'];
- var not_found = true;
- for( var min in range )
- {
- if( min > value ) continue;
- if( range[min][0] < value ) continue; // check max
- element.addClass( 'actor ' + GA + ' ' + range[min][1] );
- not_found = false;
- break;
- }
- if( not_found ) element.addClass( 'actor ' + GA );
- }
- }
- switch( element.data( 'type' ) )
- {
- case 'toggle':
- element.removeClass( value == '0' ? 'switchPressed' : 'switchUnpressed' );
- element.addClass( value == '0' ? 'switchUnpressed' : 'switchPressed' );
- break;
- case 'slide':
- case 'dim':
- element.slider( 'value', value ); // only update when necessary
- }
- }
+ $.event.trigger( '_' + key, json[key] );
}
}
visu.user = 'demo_user'; // example for setting a user
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-12 12:00:40
|
Revision: 204
http://openautomation.svn.sourceforge.net/openautomation/?rev=204&view=rev
Author: mayerch
Date: 2010-12-12 12:00:34 +0000 (Sun, 12 Dec 2010)
Log Message:
-----------
Clean up a bit after the change to message passing updates - no need for "GA..." in the element classes any more
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 11:31:28 UTC (rev 203)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 12:00:34 UTC (rev 204)
@@ -115,7 +115,7 @@
ret_val.addClass( 'info' );
var label = '<div class="label">' + page.textContent + '</div>';
ga_list.push( $(page).attr('address') );
- var actor = '<div class="actor GA' + $(page).attr('address').split('/').join('_') + '">';
+ var actor = '<div class="actor">';
if( $(page).attr('pre') ) actor += '<div>' + $(page).attr('pre') + '</div>';
actor += '<div class="value">-</div>';
if( $(page).attr('post') ) actor += '<div>' + $(page).attr('post') + '</div>';
@@ -149,7 +149,7 @@
ret_val.addClass( 'dim' );
var label = '<div class="label">' + page.textContent + '</div>';
ga_list.push( $(page).attr('address') );
- var actor = $('<div class="actor GA' + $(page).attr('address').split('/').join('_') + '" />');
+ var actor = $('<div class="actor">');
ret_val.append( label ).append( actor );
var min = parseFloat( $(page).attr('min') || 0 );
var max = parseFloat( $(page).attr('max') || 100 );
@@ -197,7 +197,7 @@
var label = '<div class="label">' + page.textContent + '</div>';
var response_address = $(page).attr('response_address');
ga_list.push( response_address );
- var actor = '<div class="actor GA' + response_address.split('/').join('_') + ' switchUnpressed">';
+ var actor = '<div class="actor switchUnpressed">';
if( $(page).attr('pre') ) actor += $(page).attr('pre');
actor += '<div class="value">-</div>';
if( $(page).attr('post') ) actor += $(page).attr('post');
Modified: CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js
===================================================================
--- CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js 2010-12-12 11:31:28 UTC (rev 203)
+++ CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js 2010-12-12 12:00:34 UTC (rev 204)
@@ -27,9 +27,9 @@
var label = '<div class="label">' + page.textContent + '</div>';
var actor = '<div class="actor">';
actor += '</div>';
- var a_r = $(page).attr('address_r');
- var a_g = $(page).attr('address_g');
- var a_b = $(page).attr('address_b');
+ var a_r = $(page).attr('address_r'); ga_list.push( a_r );
+ var a_g = $(page).attr('address_g'); ga_list.push( a_g );
+ var a_b = $(page).attr('address_b'); ga_list.push( a_b );
var datatype = $(page).attr('datatype');
ret_val.append(label)
.append($(actor)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-12 13:09:35
|
Revision: 205
http://openautomation.svn.sourceforge.net/openautomation/?rev=205&view=rev
Author: mayerch
Date: 2010-12-12 13:09:28 +0000 (Sun, 12 Dec 2010)
Log Message:
-----------
Changed defaul config to (nearly) empty file, so that the user can easily create his own.
But also create a new demo config (based on the existing one) to show the user all available widgets and give an example of how to use them.
Also use the recently introduced status bar feature to link them together.
Modified Paths:
--------------
CometVisu/trunk/visu/visu_config.xml
Added Paths:
-----------
CometVisu/trunk/visu/visu_config_demo.xml
Modified: CometVisu/trunk/visu/visu_config.xml
===================================================================
--- CometVisu/trunk/visu/visu_config.xml 2010-12-12 12:00:34 UTC (rev 204)
+++ CometVisu/trunk/visu/visu_config.xml 2010-12-12 13:09:28 UTC (rev 205)
@@ -1,156 +1,31 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<pages design="pure"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="visu_config.xsd">
+<pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" design="pure" xsi:noNamespaceSchemaLocation="visu_config.xsd">
<meta>
<plugins>
- <plugin name="colorchooser" />
</plugins>
<mappings>
- <mapping name="OpenClose">
- <entry value="0">zu</entry>
- <entry value="1">offen</entry>
- </mapping>
- <mapping name="OnOff">
- <entry value="0">Aus</entry>
- <entry value="1">An</entry>
- </mapping>
- <mapping name="Sign">
- <entry range_min="-1e99" range_max="0">Negativ</entry>
- <entry value="0">Null</entry>
- <entry range_min="0" range_max="1e99">Positiv</entry>
- </mapping>
</mappings>
<stylings>
- <styling name="RedGreen">
- <entry value="0">red</entry>
- <entry value="1">green</entry>
- </styling>
- <styling name="GreenRed">
- <entry value="0">green</entry>
- <entry value="1">red</entry>
- </styling>
- <styling name="BluePurpleRed">
- <entry range_min="-100" range_max="0" >blue</entry>
- <entry value="0" >purple</entry>
- <entry range_min="0" range_max="100">red</entry>
- </styling>
</stylings>
<statusbar>
- <status type="html">
- <![CDATA[
+ <status type="html"><![CDATA[
<img src="icon/comet_64_ff8000.png" alt="CometVisu" /> by <a href="http://www.cometvisu.org/">CometVisu.org</a>
- <a href=".">Reload</a>
- ]]>
- </status>
- <status type="html" condition="!edit">
- <![CDATA[
+ - <a href="?config=demo">Widget Demo</a>
+ ]]></status>
+ <status type="html" condition="!edit"><![CDATA[
- <a href="edit_config.html">Edit</a>
- ]]>
- </status>
- <status type="html" condition="edit">
- <![CDATA[
+ ]]></status>
+ <status type="html" condition="edit"><![CDATA[
- <a href=".">normal Mode</a>
- ]]>
- </status>
- <status type="html">
- <![CDATA[
+ ]]></status>
+ <status type="html"><![CDATA[
- <a href="check_config.php">Check Config</a>
- ]]>
- </status>
+ ]]></status>
</statusbar>
</meta>
- <page name="Übersicht" flavour="orange">
- <text align="center">Willkommen bei der CometVisu!</text>
- <toggle address="1/0/2" datatype="1.001" response_address="1/0/2" mapping="OnOff" styling="RedGreen" >Terrase Licht</toggle>
- <trigger address="1/0/2" datatype="1.001" value="0" mapping="OnOff">Terrase Licht 0</trigger>
- <trigger address="1/0/2" datatype="1.001" value="1" mapping="OnOff">Terrase Licht 1</trigger>
- <trigger address="2/2/5" datatype="5.001" value="0" >Rolladen Licht 0</trigger>
- <trigger address="2/2/5" datatype="5.001" value="100" >Rolladen Licht 100</trigger>
- <switch address="1/0/50" datatype="1.001" response_address="1/4/50" mapping="OnOff">Schalt Schiebetüre Licht</switch>
- <break />
- <dim address="1/2/51" datatype="5.010" response_address="1/3/51" response_datatype="5.010">Dim Esstisch</dim>
- <shade address="2/4/5" datatype="5.001">Rollladen links</shade>
- <slide address="12/4/250" datatype="9" min="-18" max="26">Slide</slide>
- <info address="12/4/250" datatype="9" styling="BluePurpleRed">Slide Info</info>
- <info address="12/4/250" datatype="9" styling="BluePurpleRed" mapping="Sign">Slide Info</info>
- <designtoggle>Change design</designtoggle>
- <colorchooser address_r="1/2/59" address_g="1/2/60" address_b="1/2/61" datatype="5.001">A colorChooser</colorchooser>
- <info address="1/2/59" datatype="5.001" >R</info>
- <info address="1/2/60" datatype="5.001" >G</info>
- <info address="1/2/61" datatype="5.001" >B</info>
+ <page name="Overview">
<line />
- <image src="icon/comet_128_ff8000.png" >Ein Bild</image>
- <image src="icon/comet_128_ff8000.png" />
- <image src="icon/comet_128_ff8000.png" width="500px" height="46px" />
- <image src="http://www.e-zeeinternet.com/count.php?page=546016&style=default&nbdigits=9&reloads=1" refresh="10" >Update every 10 sec</image>
- <break />
- <image src="http://www.yr.no/place/Germany/Bavaria/Holzkirchen~2899676/meteogram.png" refresh="1800" />
- <line />
- <page name="iframe Test">
- <iframe src="http://www.cometvisu.org" width="500px" height="500px"></iframe>
- </page>
- <info address="1/0/41" datatype="1.000" mapping="OnOff">Treppenlicht</info>
- <page name="Fenster Kontakte" flavour="blue">
- <info address="4/3/10" datatype="1" mapping="OpenClose" styling="GreenRed">Bad EG Reed Fenster</info>
- <info address="4/3/20" datatype="1.001" mapping="OpenClose" styling="GreenRed">WC Reed Fenster</info>
- <info address="4/3/30" datatype="1" mapping="OpenClose" styling="GreenRed">Schlafen Reed Fenster links</info>
- <info address="4/3/31" datatype="1.001" mapping="OpenClose" styling="GreenRed">Schlafen Reed Fenster rechts</info>
- <info address="4/3/32" datatype="1.001" mapping="OpenClose" styling="GreenRed">Schlafen Reed Tuere</info>
- <info address="4/3/40" datatype="1.001" mapping="OpenClose" styling="GreenRed">Kueche Reed Fenster</info>
- <info address="4/3/50" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Tuere Essen</info>
- <info address="4/3/51" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Schiebetuere</info>
- <info address="4/3/52" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Tuere Mitte</info>
- <info address="4/3/53" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Doppeltuere links</info>
- <info address="4/3/54" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Doppeltuere rechts</info>
- <info address="4/3/70" datatype="1.001" mapping="OpenClose" styling="GreenRed">Diele EG Reed Tuere</info>
- <info address="4/3/71" datatype="1.001" pre="!" mapping="OpenClose" styling="GreenRed">Diele EG Reed Riegel</info>
- <info address="4/3/110" datatype="1.001" mapping="OpenClose" styling="GreenRed">Diele UG Reed Tuere</info>
- <info address="4/3/111" datatype="1.001" pre="!" mapping="OpenClose" styling="GreenRed">Diele UG Reed Riegel</info>
- <info address="4/3/120" datatype="1.001" mapping="OpenClose" styling="GreenRed">Bad UG Reed Fenster</info>
- <info address="4/3/130" datatype="1.001" mapping="OpenClose" styling="GreenRed">Hobby1 Reed Fenster</info>
- <info address="4/3/140" datatype="1.001" mapping="OpenClose">Hobby2 Reed Fenster</info>
- <info address="4/3/200" datatype="1.001" mapping="OnOff">Klingel</info>
- <info address="4/3/210" datatype="1.001">Lueftung Filter</info>
- <info address="4/3/250" datatype="1.001" mapping="OnOff">Rauchmelder</info>
- </page>
- <page name="Temperaturen" flavour="red">
- <info address="4/0/10" datatype="9.001" pre="ca. " post=" °C">Bad EG Boden Temperatur</info>
- <info address="4/0/11" datatype="9.001" pre="ca. " post=" °C">Bad EG Luft Temperatur</info>
- <info address="4/0/15" datatype="9.001" pre="ca. " post=" °C">Bad EG Dusche Temperatur</info>
- <info address="4/2/10" datatype="5.001" post=" %">Bad EG Luftfeuchte</info>
- <info address="4/0/20" datatype="9.001" pre="ca. " post=" °C">WC Temperatur</info>
- <info address="4/0/30" datatype="9.001" pre="ca. " post=" °C">Schlafzimmer Temperatur</info>
- <info address="4/0/50" datatype="9.001" pre="ca. " post=" °C">Wohnzimmer Temperatur</info>
- <info address="4/0/60" datatype="9.001" pre="ca. " post=" °C">Diele EG Temperatur</info>
- <info address="4/0/110" datatype="9.001" pre="ca. " post=" °C">Diele UG Temperatur</info>
- <info address="4/0/120" datatype="9.001" pre="ca. " post=" °C">Bad UG Boden Temperatur</info>
- <info address="4/0/121" datatype="9.001" pre="ca. " post=" °C">Bad UG Luft Temperatur</info>
- <info address="4/2/120" datatype="5.001" post=" %">Bad UG Luftfeuchte</info>
- <info address="4/0/130" datatype="9.001" pre="ca. " post=" °C">Hobby 1 Temperatur</info>
- <info address="4/0/140" datatype="9.001" pre="ca. " post=" °C">Hobby 2 Temperatur</info>
- <line />
- <info address="4/0/0" datatype="9.001" pre="ca. " post=" °C">Außen Temperatur</info>
- <info address="4/2/0" datatype="5.001" post=" %">Außen Luftfeuchte</info>
- <info address="4/0/200" datatype="9.001" pre="ca. " post=" °C">HK Vorlauf Temperatur</info>
- <info address="4/0/201" datatype="9.001" pre="ca. " post=" °C">HK Rücklauf Temperatur</info>
- <info address="4/0/204" datatype="9.001" pre="ca. " post=" °C">Zirkulation Temperatur</info>
- <info address="4/0/202" datatype="9.001" pre="ca. " post=" °C">Warmwasser Temperatur</info>
- <info address="4/0/203" datatype="9.001" pre="ca. " post=" °C">Kaltwasser Temperatur</info>
- <info address="4/0/205" datatype="9.001" pre="ca. " post=" °C">Warmwasser UG Temperatur</info>
- </page>
- <page name="Rollläden" flavour="green">
- <shade address="2/4/0" datatype="5.001">Rollladen Bad</shade>
- <shade address="2/4/1" datatype="5.001">Rollladen Schlafen Fenster</shade>
- <shade address="2/4/2" datatype="5.001">Rollladen Schlafen Türe</shade>
- <shade address="2/4/3" datatype="5.001">Rollladen Küche</shade>
- <shade address="2/4/4" datatype="5.001">Rollladen Seitentüre</shade>
- <shade address="2/4/5" datatype="5.001">Rollladen PSK Türe</shade>
- <shade address="2/4/6" datatype="5.001">Rollladen Zwischentüre</shade>
- <shade address="2/4/7" datatype="5.001">Rollladen Doppeltüre</shade>
- <line />
- <shade address="2/4/8" datatype="5.001">Rollladen Hobby 1</shade>
- <shade address="2/4/9" datatype="5.001">Rollladen Hobby 2</shade>
- </page>
+ <text align="center">Welcome to the CometVisu!</text>
</page>
</pages>
Added: CometVisu/trunk/visu/visu_config_demo.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_demo.xml (rev 0)
+++ CometVisu/trunk/visu/visu_config_demo.xml 2010-12-12 13:09:28 UTC (rev 205)
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" design="pure" xsi:noNamespaceSchemaLocation="visu_config.xsd">
+ <meta>
+ <plugins>
+ <plugin name="colorchooser"/>
+ <plugin name="diagram"/>
+ </plugins>
+ <mappings>
+ <mapping name="OpenClose">
+ <entry value="0">zu</entry>
+ <entry value="1">offen</entry>
+ </mapping>
+ <mapping name="OnOff">
+ <entry value="0">Aus</entry>
+ <entry value="1">An</entry>
+ </mapping>
+ <mapping name="Sign">
+ <entry range_min="-1e99" range_max="0">Negativ</entry>
+ <entry value="0">Null</entry>
+ <entry range_min="0" range_max="1e99">Positiv</entry>
+ </mapping>
+ </mappings>
+ <stylings>
+ <styling name="RedGreen">
+ <entry value="0">red</entry>
+ <entry value="1">green</entry>
+ </styling>
+ <styling name="GreenRed">
+ <entry value="0">green</entry>
+ <entry value="1">red</entry>
+ </styling>
+ <styling name="BluePurpleRed">
+ <entry range_min="-100" range_max="0">blue</entry>
+ <entry value="0">purple</entry>
+ <entry range_min="0" range_max="100">red</entry>
+ </styling>
+ </stylings>
+ <statusbar>
+ <status type="html"><![CDATA[
+ <img src="icon/comet_64_ff8000.png" alt="CometVisu" /> by <a href="http://www.cometvisu.org/">CometVisu.org</a>
+ - <a href=".">Reload</a>
+ ]]></status>
+ <status type="html" condition="!edit"><![CDATA[
+ - <a href="edit_config.html">Edit</a>
+ ]]></status>
+ <status type="html" condition="edit"><![CDATA[
+ - <a href=".">normal Mode</a>
+ ]]></status>
+ <status type="html"><![CDATA[
+ - <a href="check_config.php">Check Config</a>
+ ]]></status>
+ </statusbar>
+ </meta>
+ <page name="Übersicht">
+ <text align="center">Willkommen bei der CometVisu!</text>
+ <toggle address="1/0/2" datatype="1.001" response_address="1/0/2" mapping="OnOff" styling="RedGreen">Terrase Licht</toggle>
+ <trigger address="1/0/2" datatype="1.001" value="0" mapping="OnOff">Terrase Licht 0</trigger>
+ <trigger address="1/0/2" datatype="1.001" value="1" mapping="OnOff">Terrase Licht 1</trigger>
+ <trigger address="2/2/5" datatype="5.001" value="0">Rolladen Licht 0</trigger>
+ <trigger address="2/2/5" datatype="5.001" value="100">Rolladen Licht 100</trigger>
+ <switch address="1/0/50" datatype="1.001" response_address="1/4/50" mapping="OnOff">Schalt Schiebetüre Licht</switch>
+ <break/>
+ <dim address="1/2/51" datatype="5.010" response_address="1/3/51" response_datatype="5.010">Dim Esstisch</dim>
+ <shade address="2/4/5" datatype="5.001">Rollladen links</shade>
+ <slide address="12/4/250" datatype="9" min="-18" max="26">Slide</slide>
+ <info address="12/4/250" datatype="9" styling="BluePurpleRed">Slide Info</info>
+ <info address="12/4/250" datatype="9" styling="BluePurpleRed" mapping="Sign">Slide Info</info>
+ <designtoggle>Change design</designtoggle>
+ <colorchooser address_r="1/2/59" address_g="1/2/60" address_b="1/2/61" datatype="5.001">A colorChooser</colorchooser>
+ <info address="1/2/59" datatype="5.001">R</info>
+ <info address="1/2/60" datatype="5.001">G</info>
+ <info address="1/2/61" datatype="5.001">B</info>
+ <slide address="1/2/59" datatype="5.001">R</slide>
+ <line/>
+ <image src="icon/comet_128_ff8000.png">Ein Bild</image>
+ <image src="icon/comet_128_ff8000.png"/>
+ <image src="icon/comet_128_ff8000.png" width="500px" height="46px"/>
+ <image src="http://www.e-zeeinternet.com/count.php?page=546016&style=default&nbdigits=9&reloads=1" refresh="10">Update every 10 sec</image>
+ <break/>
+ <image src="http://www.yr.no/place/Germany/Bavaria/Holzkirchen~2899676/meteogram.png" refresh="1800"/>
+ <line/>
+ <page name="iframe Test">
+ <iframe src="http://www.cometvisu.org" width="500px" height="500px"/>
+ </page>
+ <info address="1/0/41" datatype="1.000" mapping="OnOff">Treppenlicht</info>
+ <page name="Fenster Kontakte">
+ <info address="4/3/10" datatype="1" mapping="OpenClose" styling="GreenRed">Bad EG Reed Fenster</info>
+ <info address="4/3/20" datatype="1.001" mapping="OpenClose" styling="GreenRed">WC Reed Fenster</info>
+ <info address="4/3/30" datatype="1" mapping="OpenClose" styling="GreenRed">Schlafen Reed Fenster links</info>
+ <info address="4/3/31" datatype="1.001" mapping="OpenClose" styling="GreenRed">Schlafen Reed Fenster rechts</info>
+ <info address="4/3/32" datatype="1.001" mapping="OpenClose" styling="GreenRed">Schlafen Reed Tuere</info>
+ <info address="4/3/40" datatype="1.001" mapping="OpenClose" styling="GreenRed">Kueche Reed Fenster</info>
+ <info address="4/3/50" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Tuere Essen</info>
+ <info address="4/3/51" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Schiebetuere</info>
+ <info address="4/3/52" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Tuere Mitte</info>
+ <info address="4/3/53" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Doppeltuere links</info>
+ <info address="4/3/54" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Doppeltuere rechts</info>
+ <info address="4/3/70" datatype="1.001" mapping="OpenClose" styling="GreenRed">Diele EG Reed Tuere</info>
+ <info address="4/3/71" datatype="1.001" pre="!" mapping="OpenClose" styling="GreenRed">Diele EG Reed Riegel</info>
+ <info address="4/3/110" datatype="1.001" mapping="OpenClose" styling="GreenRed">Diele UG Reed Tuere</info>
+ <info address="4/3/111" datatype="1.001" pre="!" mapping="OpenClose" styling="GreenRed">Diele UG Reed Riegel</info>
+ <info address="4/3/120" datatype="1.001" mapping="OpenClose" styling="GreenRed">Bad UG Reed Fenster</info>
+ <info address="4/3/130" datatype="1.001" mapping="OpenClose" styling="GreenRed">Hobby1 Reed Fenster</info>
+ <info address="4/3/140" datatype="1.001" mapping="OpenClose">Hobby2 Reed Fenster</info>
+ <info address="4/3/200" datatype="1.001" mapping="OnOff">Klingel</info>
+ <info address="4/3/210" datatype="1.001">Lueftung Filter</info>
+ <info address="4/3/250" datatype="1.001" mapping="OnOff">Rauchmelder</info>
+ </page>
+ <page name="Temperaturen">
+ <info address="4/0/10" datatype="9.001" pre="ca. " post=" °C">Bad EG Boden Temperatur</info>
+ <info address="4/0/11" datatype="9.001" pre="ca. " post=" °C">Bad EG Luft Temperatur</info>
+ <info address="4/0/15" datatype="9.001" pre="ca. " post=" °C">Bad EG Dusche Temperatur</info>
+ <info address="4/2/10" datatype="5.001" post=" %">Bad EG Luftfeuchte</info>
+ <info address="4/0/20" datatype="9.001" pre="ca. " post=" °C">WC Temperatur</info>
+ <info address="4/0/30" datatype="9.001" pre="ca. " post=" °C">Schlafzimmer Temperatur</info>
+ <info address="4/0/50" datatype="9.001" pre="ca. " post=" °C">Wohnzimmer Temperatur</info>
+ <info address="4/0/60" datatype="9.001" pre="ca. " post=" °C">Diele EG Temperatur</info>
+ <info address="4/0/110" datatype="9.001" pre="ca. " post=" °C">Diele UG Temperatur</info>
+ <info address="4/0/120" datatype="9.001" pre="ca. " post=" °C">Bad UG Boden Temperatur</info>
+ <info address="4/0/121" datatype="9.001" pre="ca. " post=" °C">Bad UG Luft Temperatur</info>
+ <info address="4/2/120" datatype="5.001" post=" %">Bad UG Luftfeuchte</info>
+ <info address="4/0/130" datatype="9.001" pre="ca. " post=" °C">Hobby 1 Temperatur</info>
+ <info address="4/0/140" datatype="9.001" pre="ca. " post=" °C">Hobby 2 Temperatur</info>
+ <line/>
+ <info address="4/0/0" datatype="9.001" pre="ca. " post=" °C">Außen Temperatur</info>
+ <info address="4/2/0" datatype="5.001" post=" %">Außen Luftfeuchte</info>
+ <info address="4/0/200" datatype="9.001" pre="ca. " post=" °C">HK Vorlauf Temperatur</info>
+ <info address="4/0/201" datatype="9.001" pre="ca. " post=" °C">HK Rücklauf Temperatur</info>
+ <info address="4/0/204" datatype="9.001" pre="ca. " post=" °C">Zirkulation Temperatur</info>
+ <info address="4/0/202" datatype="9.001" pre="ca. " post=" °C">Warmwasser Temperatur</info>
+ <info address="4/0/203" datatype="9.001" pre="ca. " post=" °C">Kaltwasser Temperatur</info>
+ <info address="4/0/205" datatype="9.001" pre="ca. " post=" °C">Warmwasser UG Temperatur</info>
+ </page>
+ <page name="Rollläden">
+ <shade address="2/4/0" datatype="5.001">Rollladen Bad</shade>
+ <shade address="2/4/1" datatype="5.001">Rollladen Schlafen Fenster</shade>
+ <shade address="2/4/2" datatype="5.001">Rollladen Schlafen Türe</shade>
+ <shade address="2/4/3" datatype="5.001">Rollladen Küche</shade>
+ <shade address="2/4/4" datatype="5.001">Rollladen Seitentüre</shade>
+ <shade address="2/4/5" datatype="5.001">Rollladen PSK Türe</shade>
+ <shade address="2/4/6" datatype="5.001">Rollladen Zwischentüre</shade>
+ <shade address="2/4/7" datatype="5.001">Rollladen Doppeltüre</shade>
+ <line/>
+ <shade address="2/4/8" datatype="5.001">Rollladen Hobby 1</shade>
+ <shade address="2/4/9" datatype="5.001">Rollladen Hobby 2</shade>
+ </page>
+ <diagram_popup undefined="DALI Strom L1" rrd="200_DALI_Linie_1_Strom" unit="mA" series="day" refresh="300">DALI Strom L1</diagram_popup>
+ </page>
+</pages>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-12 16:47:02
|
Revision: 209
http://openautomation.svn.sourceforge.net/openautomation/?rev=209&view=rev
Author: mayerch
Date: 2010-12-12 16:46:55 +0000 (Sun, 12 Dec 2010)
Log Message:
-----------
Moved switch and trigger to new config syntax
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/lib/templateengine.js
CometVisu/trunk/visu/visu_config_demo.xml
CometVisu/trunk/visu/visu_config_neu.xml
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 15:48:46 UTC (rev 208)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 16:46:55 UTC (rev 209)
@@ -119,7 +119,7 @@
var src = this.getAttribute('src');
var transform = this.getAttribute('transform');
ga_list.push( src )
- address[ '_' + src ] = transform;
+ address[ '_' + src ] = [transform];
});
var actor = '<div class="actor">';
if( $p.attr('pre') ) actor += '<div>' + $p.attr('pre') + '</div>';
@@ -190,86 +190,110 @@
content: {type: "string", required: true}
});
- this.addCreator("switch", {
- create: function( page, path ) {
- var ret_val = $('<div class="widget" />');
- ret_val.addClass( 'switch' );
- var label = '<div class="label">' + page.textContent + '</div>';
- var response_address = $(page).attr('response_address');
- ga_list.push( response_address );
- var actor = '<div class="actor switchUnpressed">';
- if( $(page).attr('pre') ) actor += $(page).attr('pre');
- actor += '<div class="value">-</div>';
- if( $(page).attr('post') ) actor += $(page).attr('post');
- actor += '</div>';
- ret_val.append( label ).append( $(actor).data( {
- 'GA': $(page).attr('address'),
- 'datatype': $(page).attr('datatype'),
- 'mapping' : $(page).attr('mapping'),
- 'styling' : $(page).attr('styling'),
- 'type' : 'toggle'
- } ).bind('click',switchAction)
- .bind('_'+$(page).attr('address'), this.update ) );
- return ret_val;
- },
- update: function(e,d) {
- var element = $(this);
- var value = defaultUpdate( e, d, element );
- element.removeClass( value == '0' ? 'switchPressed' : 'switchUnpressed' );
- element.addClass( value == '0' ? 'switchUnpressed' : 'switchPressed' );
- },
- attributes: {
- address: {type: "address", required: true},
- datatype: {type: "datatype", required: true},
- response_address: {type: "address", required: true},
- response_datatype: {type: "datatype", required: true},
- pre: {type: "string", required: false},
- post: {type: "string", required: false},
- mapping: {type: "mapping", required: false},
- styling: {type: "styling", required: false}
- },
- content: {type: "string", required: true}
+ this.addCreator('switch', {
+ create: function( page, path ) {
+ var $p = $(page);
+ var ret_val = $('<div class="widget switch" />');
+ var labelElement = $p.find('label')[0];
+ var label = labelElement ? '<div class="label">' + labelElement.textContent + '</div>' : '';
+ var address = {};
+ $p.find('address').each( function(){
+ var src = this.getAttribute('src');
+ var transform = this.getAttribute('transform');
+ var readonly = this.getAttribute('readonly');
+ ga_list.push( src )
+ address[ '_' + src ] = [ transform, readonly=='true' ];
+ });
+ var actor = '<div class="actor switchUnpressed">';
+ if( $p.attr('pre') ) actor += $p.attr('pre');
+ actor += '<div class="value">-</div>';
+ if( $p.attr('post') ) actor += $p.attr('post');
+ actor += '</div>';
+ var $actor = $(actor).data( {
+ 'address' : address,
+ 'mapping' : $p.attr('mapping'),
+ 'styling' : $p.attr('styling'),
+ 'type' : 'switch'
+ } ).bind( 'click', this.action );
+ for( var addr in address ) $actor.bind( addr, this.update );
+ ret_val.append( label ).append( $actor );
+ return ret_val;
+ },
+ update: function(e,d) {
+ var element = $(this);
+ var value = defaultUpdate( e, d, element );
+ element.removeClass( value == '0' ? 'switchPressed' : 'switchUnpressed' );
+ element.addClass( value == '0' ? 'switchUnpressed' : 'switchPressed' );
+ },
+ action: function() {
+ var data = $(this).data();
+ for( var addr in data.address )
+ {
+ if( data.address[addr][1] == true ) continue; // skip read only
+ visu.write( addr.substr(1), data.value=='1' ? '0' : '1', data.address[addr][0].substr(4) );
+ }
+ },
+ attributes: {
+ pre: { type: 'string' , required: false },
+ post: { type: 'string' , required: false },
+ mapping: { type: 'mapping' , required: false },
+ styling: { type: 'styling' , required: false }
+ },
+ content: { type: 'string', required: true }
});
- this.addCreator("toggle", this.getCreator("switch"));
-
- this.addCreator("trigger", {
- create: function( page, path ) {
- var value = $(page).attr('value') ? $(page).attr('value') : 0;
- var ret_val = $('<div class="widget" />');
- ret_val.addClass( 'switch' );
- var label = '<div class="label">' + page.textContent + '</div>';
- var address = $(page).attr('address');
- var actor = '<div class="actor switchUnpressed">';
- if( $(page).attr('pre') ) actor += $(page).attr('pre');
- var map = $(page).attr('mapping');
- if( mappings[map] && mappings[map][value] )
- actor += '<div class="value">' + mappings[map][value] + '</div>';
- else
- actor += '<div class="value">' + value + '</div>';
- if( $(page).attr('post') ) actor += $(page).attr('post');
- actor += '</div>';
- ret_val.append( label ).append( $(actor).data( {
- 'GA' : $(page).attr('address'),
- 'datatype': $(page).attr('datatype'),
- 'mapping' : $(page).attr('mapping'),
- 'styling' : $(page).attr('styling'),
- 'type' : 'trigger',
- 'sendValue': value
- } ).bind('click',triggerAction) );
-
- return ret_val;
- },
- attributes: {
- address: {type: "address", required: true},
- datatype: {type: "datatype", required: true},
- value: {type: "string", required: true},
- pre: {type: "string", required: false},
- post: {type: "string", required: false},
- mapping: {type: "mapping", required: false},
- styling: {type: "styling", required: false}
- },
- content: {type: "string", required: true}
+ this.addCreator('trigger', {
+ create: function( page, path ) {
+ var $p = $(page);
+ var value = $p.attr('value') ? $p.attr('value') : 0;
+ var ret_val = $('<div class="widget switch" />');
+ var labelElement = $p.find('label')[0];
+ var label = labelElement ? '<div class="label">' + labelElement.textContent + '</div>' : '';
+ var address = {};
+ $p.find('address').each( function(){
+ var src = this.getAttribute('src');
+ var transform = this.getAttribute('transform');
+ var readonly = this.getAttribute('readonly');
+ ga_list.push( src )
+ address[ '_' + src ] = [ transform, readonly=='true' ];
+ });
+ var actor = '<div class="actor switchUnpressed">';
+ if( $p.attr('pre') ) actor += $p.attr('pre');
+ var map = $p.attr('mapping');
+ if( mappings[map] && mappings[map][value] )
+ actor += '<div class="value">' + mappings[map][value] + '</div>';
+ else
+ actor += '<div class="value">' + value + '</div>';
+ if( $p.attr('post') ) actor += $p.attr('post');
+ actor += '</div>';
+ var $actor = $(actor).data( {
+ 'address' : address,
+ 'mapping' : $(page).attr('mapping'),
+ 'styling' : $(page).attr('styling'),
+ 'type' : 'trigger',
+ 'sendValue': value
+ } ).bind( 'click', this.action );
+ ret_val.append( label ).append( $actor );
+ return ret_val;
+ },
+ action: function() {
+ var data = $(this).data();
+ for( var addr in data.address )
+ {
+ if( data.address[addr][1] == true ) continue; // skip read only
+ visu.write( addr.substr(1), data.sendValue, data.address[addr][0].substr(4) );
+ }
+ },
+ attributes: {
+ address: { type: 'address' , required: true },
+ datatype: { type: 'datatype', required: true },
+ value: { type: 'string' , required: true },
+ pre: { type: 'string' , required: false },
+ post: { type: 'string' , required: false },
+ mapping: { type: 'mapping' , required: false },
+ styling: { type: 'styling' , required: false }
+ },
+ content: { type: 'string' , required: true }
});
this.addCreator("image", {
@@ -428,12 +452,6 @@
this.addPopup('warning', $.extend(true, {}, this.getPopup('unknown')) );
this.addPopup('error' , $.extend(true, {}, this.getPopup('unknown')) ) ;
- this.switchAction = function() {
- var data = $(this).data();
- // alert( data.GA + ' = ' + data.value );
- visu.write( data.GA, data.value=='1' ? '0' : '1', data.datatype );
- }
-
this.slideAction = function(event,ui) {
//alert(ui.value);
var now = new Date().getTime();
@@ -542,7 +560,7 @@
var element = passedElement || $(this);
//var datatype = element.data().address[ e.type ];
//var value = decodeDPT( data, element.data('datatype') );
- var value = transform( data, element.data().address[ e.type ] );
+ var value = transform( data, element.data().address[ e.type ][0] );
element.data( 'value', value );
element.find('.value').text( map( value, element ) );
Modified: CometVisu/trunk/visu/lib/templateengine.js
===================================================================
--- CometVisu/trunk/visu/lib/templateengine.js 2010-12-12 15:48:46 UTC (rev 208)
+++ CometVisu/trunk/visu/lib/templateengine.js 2010-12-12 16:46:55 UTC (rev 209)
@@ -313,18 +313,6 @@
/* FIXME - Question: should this belong to the VisuDesign object so that it */
/* is possible to overload?!? */
/****************************************************************************/
-function switchAction()
-{
- var data = $(this).data();
- visu.write( data.GA, data.value=='1' ? '0' : '1', data.datatype );
-}
-
-function triggerAction()
-{
- var data = $(this).data();
- visu.write( data.GA, data.sendValue, data.datatype );
-}
-
function refreshAction( target, src )
{
target.src = src + '&' + new Date().getTime();
Modified: CometVisu/trunk/visu/visu_config_demo.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_demo.xml 2010-12-12 15:48:46 UTC (rev 208)
+++ CometVisu/trunk/visu/visu_config_demo.xml 2010-12-12 16:46:55 UTC (rev 209)
@@ -38,7 +38,8 @@
<statusbar>
<status type="html"><![CDATA[
<img src="icon/comet_64_ff8000.png" alt="CometVisu" /> by <a href="http://www.cometvisu.org/">CometVisu.org</a>
- - <a href=".">Reload</a>
+ - <a href=".?config=demo">Reload</a>
+ - <a href=".">Default Config</a>
]]></status>
<status type="html" condition="!edit"><![CDATA[
- <a href="edit_config.html">Edit</a>
@@ -52,7 +53,7 @@
</statusbar>
</meta>
<page name="Übersicht">
- <text align="center">Willkommen bei der CometVisu!</text>
+ <text align="center">CometVisu widget demo</text>
<toggle address="1/0/2" datatype="1.001" response_address="1/0/2" mapping="OnOff" styling="RedGreen">Terrase Licht</toggle>
<trigger address="1/0/2" datatype="1.001" value="0" mapping="OnOff">Terrase Licht 0</trigger>
<trigger address="1/0/2" datatype="1.001" value="1" mapping="OnOff">Terrase Licht 1</trigger>
Modified: CometVisu/trunk/visu/visu_config_neu.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_neu.xml 2010-12-12 15:48:46 UTC (rev 208)
+++ CometVisu/trunk/visu/visu_config_neu.xml 2010-12-12 16:46:55 UTC (rev 209)
@@ -61,6 +61,20 @@
<address src="12/4/250" transform="DPT:9" />
<address src="12/4/251" transform="DPT:9.001" />
</info>
+ <switch mapping="OnOff" styling="RedGreen">
+ <label>Terrase Licht</label>
+ <address src="1/0/2" transform="DPT:1.001" />
+ <address src="12/4/253" transform="DPT:9.001" readonly="true" />
+ </switch>
+ <break />
+ <trigger value="0" mapping="OnOff">
+ <label>Terrase Licht 0</label>
+ <address src="1/0/2" transform="DPT:1.001" />
+ </trigger>
+ <trigger value="1" mapping="OnOff">
+ <label>Terrase Licht 1</label>
+ <address src="1/0/2" transform="DPT:1.001" />
+ </trigger>
<line />
<designtoggle>Change design</designtoggle>
</page>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-12 16:56:18
|
Revision: 210
http://openautomation.svn.sourceforge.net/openautomation/?rev=210&view=rev
Author: mayerch
Date: 2010-12-12 16:56:12 +0000 (Sun, 12 Dec 2010)
Log Message:
-----------
updated page and iframe widget
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/visu_config_neu.xml
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 16:46:55 UTC (rev 209)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 16:56:12 UTC (rev 210)
@@ -50,28 +50,28 @@
* The creators object contians all widgets creators and their mappin to the
* XML config file tags
*/
- this.addCreator("page", {
- create: function( page, path ) {
- var ret_val = $('<div class="widget" />');
- var style = ( '0' != path ) ? 'display:none' : '';
- var name = $(page).attr('name'); //path += '_' + name;
- var type = $(page).attr('type'); //text, 2d or 3d
- ret_val.addClass( 'link' ).addClass("pagelink");
- ret_val.append( '<a href="javascript:scrollToPage(\''+path+'\')">' + name + '</a>' );
- var childs = $(page).children();
- var container = $( '<div class="clearfix"/>' );
-
- container.append( '<h1>' + name + '</h1>' );
- $( childs ).each( function(i){
- container.append( create_pages(childs[i], path + '_' + i ) );
- } );
- $('#pages').prepend( $( '<div class="page" id="' + path + '" style="'+style+';"/>' ).append(container) );
- return ret_val;
- },
- attributes: {
- name: {type: "string", required: true}
- },
- content: true
+ this.addCreator('page', {
+ create: function( page, path ) {
+ var $p = $(page);
+ var ret_val = $('<div class="widget" />');
+ var style = ( '0' != path ) ? 'display:none' : '';
+ var name = $p.attr('name');
+ var type = $p.attr('type'); //text, 2d or 3d
+ ret_val.addClass( 'link' ).addClass('pagelink');
+ ret_val.append( '<a href="javascript:scrollToPage(\''+path+'\')">' + name + '</a>' );
+ var childs = $p.children();
+ var container = $( '<div class="clearfix"/>' );
+ container.append( '<h1>' + name + '</h1>' );
+ $( childs ).each( function(i){
+ container.append( create_pages(childs[i], path + '_' + i ) );
+ } );
+ $('#pages').prepend( $( '<div class="page" id="' + path + '" style="'+style+';"/>' ).append(container) );
+ return ret_val;
+ },
+ attributes: {
+ name: { type: 'string', required: true }
+ },
+ content: true
});
this.addCreator('line', {
@@ -346,25 +346,26 @@
content: {type: "string", required: true}
});
- this.addCreator("iframe", {
- create: function( page, path ) {
- var ret_val = $('<div class="widget" />');
- ret_val.addClass( 'iframe' );
- ret_val.append( '<div class="label">' + page.textContent + '</div>' );
- var style = '';
- if( $(page).attr('width') ) style += 'width:' + $(page).attr('width') + ';';
- if( $(page).attr('height') ) style += 'height:' + $(page).attr('height') + ';';
- if( style != '' ) style = 'style="' + style + '"';
- var actor = '<div class="actor"><iframe src="' +$(page).attr('src') + '" ' + style + '></iframe></div>';
- ret_val.append( $(actor) ); // abuse "each" to call in context...
- return ret_val;
- },
- attributes: {
- src: {type: "uri", required: true},
- width: {type: "string", required: false},
- height: {type: "string", required: false}
- },
- content: {type: "string", required: false}
+ this.addCreator('iframe', {
+ create: function( page, path ) {
+ var $p = $(page);
+ var ret_val = $('<div class="widget" />');
+ ret_val.addClass( 'iframe' );
+ ret_val.append( '<div class="label">' + page.textContent + '</div>' );
+ var style = '';
+ if( $p.attr('width' ) ) style += 'width:' + $p.attr('width' ) + ';';
+ if( $p.attr('height') ) style += 'height:' + $p.attr('height') + ';';
+ if( style != '' ) style = 'style="' + style + '"';
+ var actor = '<div class="actor"><iframe src="' +$p.attr('src') + '" ' + style + '></iframe></div>';
+ ret_val.append( $(actor) ); // abuse "each" to call in context...
+ return ret_val;
+ },
+ attributes: {
+ src: { type: 'uri' , required: true },
+ width: { type: 'string', required: false },
+ height: { type: 'string', required: false }
+ },
+ content: { type: 'string', required: false }
});
this.addCreator('unknown', {
Modified: CometVisu/trunk/visu/visu_config_neu.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_neu.xml 2010-12-12 16:46:55 UTC (rev 209)
+++ CometVisu/trunk/visu/visu_config_neu.xml 2010-12-12 16:56:12 UTC (rev 210)
@@ -77,5 +77,8 @@
</trigger>
<line />
<designtoggle>Change design</designtoggle>
+ <page name="iframe Test">
+ <iframe src="http://www.cometvisu.org" width="500px" height="500px"/>
+ </page>
</page>
</pages>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-12 17:06:08
|
Revision: 211
http://openautomation.svn.sourceforge.net/openautomation/?rev=211&view=rev
Author: mayerch
Date: 2010-12-12 17:06:01 +0000 (Sun, 12 Dec 2010)
Log Message:
-----------
updated image and video element
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/visu_config_neu.xml
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 16:56:12 UTC (rev 210)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 17:06:01 UTC (rev 211)
@@ -46,10 +46,10 @@
return this.popups[name];
}
- /**
- * The creators object contians all widgets creators and their mappin to the
- * XML config file tags
- */
+ /**
+ * The creators object contians all widgets creators and their mapping to the
+ * XML config file tags
+ */
this.addCreator('page', {
create: function( page, path ) {
var $p = $(page);
@@ -296,54 +296,56 @@
content: { type: 'string' , required: true }
});
- this.addCreator("image", {
- create: function( page, path ) {
- var ret_val = $('<div class="widget" />');
- ret_val.addClass( 'image' );
- ret_val.append( '<div class="label">' + page.textContent + '</div>' );
- var style = '';
- if( $(page).attr('width') ) style += 'width:' + $(page).attr('width') + ';';
- if( $(page).attr('height') ) style += 'height:' + $(page).attr('height') + ';';
- if( style != '' ) style = 'style="' + style + '"';
- var actor = '<div class="actor"><img src="' +$(page).attr('src') + '" ' + style + ' /></div>';
- var refresh = $(page).attr('refresh') ? $(page).attr('refresh')*1000 : 0;
- ret_val.append( $(actor).data( {
- 'refresh': refresh
- } ).each(setupRefreshAction) ); // abuse "each" to call in context...
- return ret_val;
- },
- attributes: {
- src: {type: "uri", required: true},
- width: {type: "string", required: false},
- height: {type: "string", required: false},
- refresh: {type: "numeric", required: false}
- },
- content: {type: "string", required: false}
+ this.addCreator('image', {
+ create: function( page, path ) {
+ var $p = $(page);
+ var ret_val = $('<div class="widget image" />');
+ var labelElement = $p.find('label')[0];
+ ret_val.append( labelElement ? '<div class="label">' + labelElement.textContent + '</div>' : '' );
+ var style = '';
+ if( $p.attr('width' ) ) style += 'width:' + $p.attr('width' ) + ';';
+ if( $p.attr('height') ) style += 'height:' + $p.attr('height') + ';';
+ if( style != '' ) style = 'style="' + style + '"';
+ var actor = '<div class="actor"><img src="' +$p.attr('src') + '" ' + style + ' /></div>';
+ var refresh = $p.attr('refresh') ? $p.attr('refresh')*1000 : 0;
+ ret_val.append( $(actor).data( {
+ 'refresh': refresh
+ } ).each(setupRefreshAction) ); // abuse "each" to call in context...
+ return ret_val;
+ },
+ attributes: {
+ src: { type: 'uri' , required: true },
+ width: { type: 'string' , required: false },
+ height: { type: 'string' , required: false },
+ refresh: { type: 'numeric', required: false }
+ },
+ content: { type: 'string', required: false }
});
- this.addCreator("video", {
- create: function( page, path ) {
- var ret_val = $('<div class="widget" />');
- ret_val.addClass( 'video' );
- ret_val.append( '<div class="label">' + page.textContent + '</div>' );
- var style = '';
- if( $(page).attr('width') ) style += 'width:' + $(page).attr('width') + ';';
- if( $(page).attr('height') ) style += 'height:' + $(page).attr('height') + ';';
- if( style != '' ) style = 'style="' + style + '"';
- var actor = '<div class="actor"><video src="' +$(page).attr('src') + '" ' + style + ' controls="controls" /></div>';
- var refresh = $(page).attr('refresh') ? $(page).attr('refresh')*1000 : 0;
- ret_val.append( $(actor).data( {
- 'refresh': refresh
- } ).each(setupRefreshAction) ); // abuse "each" to call in context...
- return ret_val;
- },
- attributes: {
- src: {type: "uri", required: true},
- width: {type: "string", required: false},
- height: {type: "string", required: false},
- refresh: {type: "numeric", required: false}
- },
- content: {type: "string", required: true}
+ this.addCreator('video', {
+ create: function( page, path ) {
+ var $p = $(page);
+ var ret_val = $('<div class="widget video" />');
+ var labelElement = $p.find('label')[0];
+ ret_val.append( labelElement ? '<div class="label">' + labelElement.textContent + '</div>' : '' );
+ var style = '';
+ if( $p.attr('width' ) ) style += 'width:' + $p.attr('width' ) + ';';
+ if( $p.attr('height') ) style += 'height:' + $p.attr('height') + ';';
+ if( style != '' ) style = 'style="' + style + '"';
+ var actor = '<div class="actor"><video src="' +$p.attr('src') + '" ' + style + ' controls="controls" /></div>';
+ var refresh = $p.attr('refresh') ? $p.attr('refresh')*1000 : 0;
+ ret_val.append( $(actor).data( {
+ 'refresh': refresh
+ } ).each(setupRefreshAction) ); // abuse "each" to call in context...
+ return ret_val;
+ },
+ attributes: {
+ src: { type: 'uri' , required: true },
+ width: { type: 'string' , required: false },
+ height: { type: 'string' , required: false },
+ refresh: { type: 'numeric', required: false }
+ },
+ content: { type: 'string', required: true }
});
this.addCreator('iframe', {
Modified: CometVisu/trunk/visu/visu_config_neu.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_neu.xml 2010-12-12 16:56:12 UTC (rev 210)
+++ CometVisu/trunk/visu/visu_config_neu.xml 2010-12-12 17:06:01 UTC (rev 211)
@@ -76,6 +76,10 @@
<address src="1/0/2" transform="DPT:1.001" />
</trigger>
<line />
+ <image src="icon/comet_128_ff8000.png" width="500px" height="46px"/>
+ <image src="http://www.e-zeeinternet.com/count.php?page=546016&style=default&nbdigits=9&reloads=1" refresh="10">
+ <label>Update every 10 sec</label>
+ </image>
<designtoggle>Change design</designtoggle>
<page name="iframe Test">
<iframe src="http://www.cometvisu.org" width="500px" height="500px"/>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-12 19:26:26
|
Revision: 212
http://openautomation.svn.sourceforge.net/openautomation/?rev=212&view=rev
Author: mayerch
Date: 2010-12-12 19:26:20 +0000 (Sun, 12 Dec 2010)
Log Message:
-----------
Initial transfer of slider - the structure should be ready now, although the slider itself still isn't perfect.
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/lib/templateengine.js
CometVisu/trunk/visu/visu_config_neu.xml
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 17:06:01 UTC (rev 211)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 19:26:20 UTC (rev 212)
@@ -145,49 +145,93 @@
content: { type: 'string' , required: true }
});
- this.addCreator("slide", {
- create: function( page, path ) {
- var ret_val = $('<div class="widget" />');
- ret_val.addClass( 'dim' );
- var label = '<div class="label">' + page.textContent + '</div>';
- ga_list.push( $(page).attr('address') );
- var actor = $('<div class="actor">');
- ret_val.append( label ).append( actor );
- var min = parseFloat( $(page).attr('min') || 0 );
- var max = parseFloat( $(page).attr('max') || 100 );
- var step = parseFloat( $(page).attr('step') || 0.5 );
- ret_val.find('.actor').data( {
- 'events': $(actor).data( 'events' ),
- 'GA': $(page).attr('address'),
- 'datatype': $(page).attr('datatype'),
- 'mapping' : $(page).attr('mapping'),
- 'styling' : $(page).attr('styling'),
- 'min' : min,
- 'max' : max,
- 'step' : step,
- 'type' : 'dim'
- }).bind('_'+$(page).attr('address'), this.update )
- .slider({step:step,min:min,max:max, animate: true,start:slideStart,change:slideChange}/*slide:slideAction}*/);
- return ret_val;
- },
- update: function(e,d) {
- var element = $(this);
- var value = decodeDPT( d, element.data('datatype') );
- element.data( 'value', value );
- element.slider('value', value);
- },
- attributes: {
- address: {type: "address", required: true},
- datatype: {type: "datatype", required: true},
- response_address: {type: "address", required: true},
- response_datatype: {type: "datatype", required: true},
- min: {type: "numeric", required: false},
- max: {type: "numeric", required: false},
- step: {type: "numeric", required: false},
- mapping: {type: "mapping", required: false},
- styling: {type: "styling", required: false}
- },
- content: {type: "string", required: true}
+ this.addCreator('slide', {
+ create: function( page, path ) {
+ var $p = $(page);
+ var ret_val = $('<div class="widget slide" />');
+ var labelElement = $p.find('label')[0];
+ var label = labelElement ? '<div class="label">' + labelElement.textContent + '</div>' : '';
+ var address = {};
+ $p.find('address').each( function(){
+ var src = this.getAttribute('src');
+ var transform = this.getAttribute('transform');
+ ga_list.push( src )
+ address[ '_' + src ] = [transform];
+ });
+ var actor = $('<div class="actor">');
+// ret_val.append( label ).append( actor );
+ var min = parseFloat( $p.attr('min') || 0 );
+ var max = parseFloat( $p.attr('max') || 100 );
+ var step = parseFloat( $p.attr('step') || 0.5 );
+// ret_val.find('.actor').data( {
+ var $actor = $(actor).data({
+ 'events': $(actor).data( 'events' ),
+ 'address' : address,
+ 'mapping' : $p.attr('mapping'),
+ 'styling' : $p.attr('styling'),
+ 'min' : min,
+ 'max' : max,
+ 'step' : step,
+ 'type' : 'dim'
+ });//.bind('_'+$(page).attr('address'), this.update )
+ //.slider({step:step,min:min,max:max, animate: true,start:slideStart,change:slideChange}/*slide:slideAction}*/);
+ for( var addr in address ) $actor.bind( addr, this.update );
+ $actor.slider({
+ step: step,
+ min: min,
+ max: max,
+ animate: true,
+ start: this.slideStart,
+ change: this.slideChange
+ }/*slide:slideAction}*/);
+ ret_val.append( label ).append( $actor );
+ return ret_val;
+ },
+ update: function( e, data ) {
+ var element = $(this);
+ var value = transform( data, element.data().address[ e.type ][0] );
+ element.data( 'value', value );
+ element.slider('value', value);
+ },
+/**
+ * Start a thread that regularily sends the silder position to the bus
+ */
+slideStart:function(event,ui)
+{
+ console.log('start');
+ var actor = $( '.actor', $(this).parent() );
+ actor.data( 'updateFn', setInterval( function(){
+ var data = actor.data();
+ for( var addr in data.address )
+ {
+ if( data.address[addr][1] == true ) continue; // skip read only
+ visu.write( addr.substr(1), ui.value, data.address[addr][0].substr(4) );
+ }
+ }, 250 ) ); // update KNX every 250 ms
+},
+/**
+ * Delete the update thread and send the final value of the slider to the bus
+ */
+slideChange:function(event,ui)
+{
+ console.log('change');
+ var data = $(this).data();
+ clearInterval( data.updateFn, ui.value);
+ if( data.value != ui.value )
+ for( var addr in data.address )
+ {
+ if( data.address[addr][1] == true ) continue; // skip read only
+ visu.write( addr.substr(1), ui.value, data.address[addr][0].substr(4) );
+ }
+},
+ attributes: {
+ min: { type: 'numeric', required: false },
+ max: { type: 'numeric', required: false },
+ step: { type: 'numeric', required: false },
+ mapping: { type: 'mapping', required: false },
+ styling: { type: 'styling', required: false }
+ },
+ content: { type: 'string', required: true }
});
this.addCreator('switch', {
Modified: CometVisu/trunk/visu/lib/templateengine.js
===================================================================
--- CometVisu/trunk/visu/lib/templateengine.js 2010-12-12 17:06:01 UTC (rev 211)
+++ CometVisu/trunk/visu/lib/templateengine.js 2010-12-12 19:26:20 UTC (rev 212)
@@ -327,36 +327,4 @@
if( src.indexOf('?') < 0 ) src += '?';
$(this).data('interval', setInterval( function(){refreshAction(target, src);}, refresh ) );
}
-}
-
-/**
- * The update thread to send the slider position to the bus
- */
-function slideUpdate(actor)
-{
- var data = actor.data();
- visu.write( data.GA, actor.slider('value'), data.datatype );
-}
-
-/**
- * Start a thread that regularily sends the silder position to the bus
- */
-function slideStart(event,ui)
-{
- var actor = $( '.actor', $(this).parent() );
- actor.data( 'updateFn', setInterval( function(){slideUpdate(actor);}, 250 ) ); // update KNX every 250 ms
-}
-
-/**
- * Delete the update thread and send the final value of the slider to the bus
- */
-function slideChange(event,ui)
-{
- var data = $( '.actor', $(this).parent() ).data();
- var actor = $( '.actor', $(this).parent() );
-
- clearInterval( data.updateFn, ui.value);
-
- if( data.value != ui.value )
- visu.write( data.GA, ui.value, data.datatype );
-}
+}
\ No newline at end of file
Modified: CometVisu/trunk/visu/visu_config_neu.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_neu.xml 2010-12-12 17:06:01 UTC (rev 211)
+++ CometVisu/trunk/visu/visu_config_neu.xml 2010-12-12 19:26:20 UTC (rev 212)
@@ -66,6 +66,10 @@
<address src="1/0/2" transform="DPT:1.001" />
<address src="12/4/253" transform="DPT:9.001" readonly="true" />
</switch>
+ <slide min="-18" max="26">
+ <label>Slide</label>
+ <address src="12/4/250" transform="DPT:9" />
+ </slide>
<break />
<trigger value="0" mapping="OnOff">
<label>Terrase Licht 0</label>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-12 20:22:16
|
Revision: 214
http://openautomation.svn.sourceforge.net/openautomation/?rev=214&view=rev
Author: mayerch
Date: 2010-12-12 20:22:10 +0000 (Sun, 12 Dec 2010)
Log Message:
-----------
Handle unknown element types gracefully (again)
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/lib/templateengine.js
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 19:45:28 UTC (rev 213)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 20:22:10 UTC (rev 214)
@@ -403,7 +403,7 @@
if( $p.attr('height') ) style += 'height:' + $p.attr('height') + ';';
if( style != '' ) style = 'style="' + style + '"';
var actor = '<div class="actor"><iframe src="' +$p.attr('src') + '" ' + style + '></iframe></div>';
- ret_val.append( $(actor) ); // abuse "each" to call in context...
+ ret_val.append( $(actor) );
return ret_val;
},
attributes: {
@@ -417,7 +417,7 @@
this.addCreator('unknown', {
create: function( page, path ) {
var ret_val = $('<div class="widget" />');
- ret_val.append( '<pre>' + page.textContent + '</pre>' );
+ ret_val.append( '<pre>unknown: ' + page.nodeName + '</pre>' );
return ret_val;
},
attributes: {
Modified: CometVisu/trunk/visu/lib/templateengine.js
===================================================================
--- CometVisu/trunk/visu/lib/templateengine.js 2010-12-12 19:45:28 UTC (rev 213)
+++ CometVisu/trunk/visu/lib/templateengine.js 2010-12-12 20:22:10 UTC (rev 214)
@@ -233,7 +233,9 @@
function create_pages( page, path )
{
var retval;
- retval = design.creators[ page.nodeName ].create( page, path );
+ retval = (design.creators[ page.nodeName ]) ?
+ design.creators[ page.nodeName ].create( page, path ) :
+ design.creators[ 'unknown' ].create( page, path ) ;
node = $(page).get(0);
var attributes = {};
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-13 20:42:40
|
Revision: 216
http://openautomation.svn.sourceforge.net/openautomation/?rev=216&view=rev
Author: mayerch
Date: 2010-12-13 20:42:34 +0000 (Mon, 13 Dec 2010)
Log Message:
-----------
Changed address-element structure from using the src attribute to it's textContent
E.g.
<address src="12/4/250" transform="DPT:9" />
becomes
<address transform="DPT:9">12/4/250</address>
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js
CometVisu/trunk/visu/visu_config_neu.xml
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-12 21:33:55 UTC (rev 215)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-13 20:42:34 UTC (rev 216)
@@ -116,7 +116,7 @@
var label = labelElement ? '<div class="label">' + labelElement.textContent + '</div>' : '';
var address = {};
$p.find('address').each( function(){
- var src = this.getAttribute('src');
+ var src = this.textContent;
var transform = this.getAttribute('transform');
ga_list.push( src )
address[ '_' + src ] = [transform];
@@ -153,7 +153,7 @@
var label = labelElement ? '<div class="label">' + labelElement.textContent + '</div>' : '';
var address = {};
$p.find('address').each( function(){
- var src = this.getAttribute('src');
+ var src = this.textContent;
var transform = this.getAttribute('transform');
ga_list.push( src )
address[ '_' + src ] = [transform];
@@ -242,7 +242,7 @@
var label = labelElement ? '<div class="label">' + labelElement.textContent + '</div>' : '';
var address = {};
$p.find('address').each( function(){
- var src = this.getAttribute('src');
+ var src = this.textContent;
var transform = this.getAttribute('transform');
var readonly = this.getAttribute('readonly');
ga_list.push( src )
@@ -295,7 +295,7 @@
var label = labelElement ? '<div class="label">' + labelElement.textContent + '</div>' : '';
var address = {};
$p.find('address').each( function(){
- var src = this.getAttribute('src');
+ var src = this.textContent;
var transform = this.getAttribute('transform');
var readonly = this.getAttribute('readonly');
ga_list.push( src )
Modified: CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js
===================================================================
--- CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js 2010-12-12 21:33:55 UTC (rev 215)
+++ CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js 2010-12-13 20:42:34 UTC (rev 216)
@@ -30,11 +30,11 @@
var label = labelElement ? '<div class="label">' + labelElement.textContent + '</div>' : '';
var address = {};
$p.find('address').each( function(){
- var src = this.getAttribute('src');
+ var src = this.textContent;
var transform = this.getAttribute('transform');
var color = this.getAttribute('color' );
var readonly = this.getAttribute('readonly' );
- ga_list.push( src )
+ ga_list.push( src );
address[ '_' + src ] = [ transform, color, readonly=='true' ];
});
Modified: CometVisu/trunk/visu/visu_config_neu.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_neu.xml 2010-12-12 21:33:55 UTC (rev 215)
+++ CometVisu/trunk/visu/visu_config_neu.xml 2010-12-13 20:42:34 UTC (rev 216)
@@ -58,26 +58,26 @@
<text align="center">CometVisu format neu</text>
<info styling="BluePurpleRed">
<label>Slide Info</label>
- <address src="12/4/250" transform="DPT:9" />
- <address src="12/4/251" transform="DPT:9.001" />
+ <address transform="DPT:9">12/4/250</address>
+ <address transform="DPT:9.001">12/4/251</address>
</info>
<switch mapping="OnOff" styling="RedGreen">
<label>Terrase Licht</label>
- <address src="1/0/2" transform="DPT:1.001" />
- <address src="12/4/253" transform="DPT:9.001" readonly="true" />
+ <address transform="DPT:1.001">1/0/2</address>
+ <address transform="DPT:9.001" readonly="true">12/4/253</address>
</switch>
<slide min="-18" max="26">
<label>Slide</label>
- <address src="12/4/250" transform="DPT:9" />
+ <address transform="DPT:9">12/4/250</address>
</slide>
<break />
<trigger value="0" mapping="OnOff">
<label>Terrase Licht 0</label>
- <address src="1/0/2" transform="DPT:1.001" />
+ <address transform="DPT:1.001">1/0/2</address>
</trigger>
<trigger value="1" mapping="OnOff">
<label>Terrase Licht 1</label>
- <address src="1/0/2" transform="DPT:1.001" />
+ <address transform="DPT:1.001">1/0/2</address>
</trigger>
<line />
<image src="icon/comet_128_ff8000.png" width="500px" height="46px"/>
@@ -90,13 +90,13 @@
</page>
<colorchooser>
<label>A colorChooser</label>
- <address src="1/2/59" transform="DPT:5.001" color="r" />
- <address src="1/2/60" transform="DPT:5.001" color="g" />
- <address src="1/2/61" transform="DPT:5.001" color="b" />
+ <address transform="DPT:5.001" color="r">1/2/59</address>
+ <address transform="DPT:5.001" color="g">1/2/60</address>
+ <address transform="DPT:5.001" color="b">1/2/61</address>
</colorchooser>
- <info><label>R</label><address src="1/2/59" transform="DPT:5.001" /></info>
- <info><label>G</label><address src="1/2/60" transform="DPT:5.001" /></info>
- <info><label>B</label><address src="1/2/61" transform="DPT:5.001" /></info>
- <slide><label>B</label><address src="1/2/61" transform="DPT:5.001" /></slide>
+ <info><label>R</label><address transform="DPT:5.001">1/2/59</address></info>
+ <info><label>G</label><address transform="DPT:5.001">1/2/60</address></info>
+ <info><label>B</label><address transform="DPT:5.001">1/2/61</address></info>
+ <slide><label>B</label><address transform="DPT:5.001">1/2/61</address></slide>
</page>
</pages>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-23 22:55:03
|
Revision: 226
http://openautomation.svn.sourceforge.net/openautomation/?rev=226&view=rev
Author: mayerch
Date: 2010-12-23 22:54:57 +0000 (Thu, 23 Dec 2010)
Log Message:
-----------
Change from decodeDPT to the new transform
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/lib/knx_decode.js
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-23 22:39:04 UTC (rev 225)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-23 22:54:57 UTC (rev 226)
@@ -603,14 +603,12 @@
*/
function transform( raw, type )
{
- return decodeDPT( raw, type.substr(4) ); // filter away the 'DPT:'
+ return Transform[type].decode( raw );
}
function defaultUpdate( e, data, passedElement )
{
var element = passedElement || $(this);
- //var datatype = element.data().address[ e.type ];
- //var value = decodeDPT( data, element.data('datatype') );
var value = transform( data, element.data().address[ e.type ][0] );
element.data( 'value', value );
element.find('.value').text( map( value, element ) );
Modified: CometVisu/trunk/visu/lib/knx_decode.js
===================================================================
--- CometVisu/trunk/visu/lib/knx_decode.js 2010-12-23 22:39:04 UTC (rev 225)
+++ CometVisu/trunk/visu/lib/knx_decode.js 2010-12-23 22:54:57 UTC (rev 226)
@@ -15,6 +15,8 @@
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
+/* now obsolete
+
function formatInt(number,minlen)
{
var result="";
@@ -121,3 +123,4 @@
}
}
+*/
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-27 22:53:38
|
Revision: 231
http://openautomation.svn.sourceforge.net/openautomation/?rev=231&view=rev
Author: mayerch
Date: 2010-12-27 22:53:32 +0000 (Mon, 27 Dec 2010)
Log Message:
-----------
Send raw values and bring the CometVisu client back to spec (i.e. don't send the DPT anymore)
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/lib/cometvisu-client.js
CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-27 22:51:16 UTC (rev 230)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-27 22:53:32 UTC (rev 231)
@@ -209,7 +209,8 @@
{
data.value = actor.slider('value');
if( data.address[addr][1] == true ) continue; // skip read only
- visu.write( addr.substr(1), data.value, data.address[addr][0].substr(4) );
+ //visu.write( addr.substr(1), data.value, data.address[addr][0].substr(4) );
+ visu.write( addr.substr(1), Transform[data.address[addr][0]].encode( data.value ) );
}
}, 250 ) ); // update KNX every 250 ms
},
@@ -225,7 +226,8 @@
{
console.log('change send');
if( data.address[addr][1] == true ) continue; // skip read only
- visu.write( addr.substr(1), ui.value, data.address[addr][0].substr(4) );
+ //visu.write( addr.substr(1), ui.value, data.address[addr][0].substr(4) );
+ visu.write( addr.substr(1), Transform[data.address[addr][0]].encode( ui.value ) );
}
},
attributes: {
@@ -278,7 +280,8 @@
for( var addr in data.address )
{
if( data.address[addr][1] == true ) continue; // skip read only
- visu.write( addr.substr(1), data.value=='1' ? '0' : '1', data.address[addr][0].substr(4) );
+// visu.write( addr.substr(1), data.value=='1' ? '0' : '1', data.address[addr][0].substr(4) );
+ visu.write( addr.substr(1), Transform[data.address[addr][0]].encode( data.value ) );
}
},
attributes: {
@@ -329,7 +332,7 @@
for( var addr in data.address )
{
if( data.address[addr][1] == true ) continue; // skip read only
- visu.write( addr.substr(1), data.sendValue, data.address[addr][0].substr(4) );
+ visu.write( addr.substr(1), Transform[data.address[addr][0]].encode( data.sendValue ) );
}
},
attributes: {
Modified: CometVisu/trunk/visu/lib/cometvisu-client.js
===================================================================
--- CometVisu/trunk/visu/lib/cometvisu-client.js 2010-12-27 22:51:16 UTC (rev 230)
+++ CometVisu/trunk/visu/lib/cometvisu-client.js 2010-12-27 22:53:32 UTC (rev 231)
@@ -144,16 +144,10 @@
/**
* This function sends a value
*/
- this.write = function( address, value, datatype ) // FIXME datatype not in spec!!!
+ this.write = function( address, value )
{
- //var request = {};
- //request.a = address; // FIXME the spec allows multiple addresses
- //request.v = value;
-var request = 'a=' + address + '&v=' + value;
-datatype = datatype.split('.');
-request += '&d=' + datatype[0]; // FIXME datatype not in spec!!!
+ var request = 'a=' + address + '&v=' + value;
$.ajax( {url:this.urlPrefix + 'w',dataType: 'json',context:this,data:request} );
-//alert( 'write to "' + address + '" value "' + value + '"' );
}
};
Modified: CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js
===================================================================
--- CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js 2010-12-27 22:51:16 UTC (rev 230)
+++ CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js 2010-12-27 22:53:32 UTC (rev 231)
@@ -50,22 +50,25 @@
'type' : 'colorChooser'
})
.farbtastic( function(color){
- var r = parseInt(color.substring(1, 3), 16) * 100 / 255;
- var g = parseInt(color.substring(3, 5), 16) * 100 / 255;
- var b = parseInt(color.substring(5, 7), 16) * 100 / 255;
+ var r = parseInt(color.substring(1, 3), 16) * 100 / 255.0;
+ var g = parseInt(color.substring(3, 5), 16) * 100 / 255.0;
+ var b = parseInt(color.substring(5, 7), 16) * 100 / 255.0;
for( var addr in address )
{
if( address[addr][2] == true ) continue; // skip read only
switch( address[addr][1] )
{
case 'r':
- visu.write( addr.substr(1), r, address[addr][0].substr(4) );
+ //visu.write( addr.substr(1), r, address[addr][0].substr(4) );
+ visu.write( addr.substr(1), Transform[address[addr][0]].encode( r ) );
break;
case 'g':
- visu.write( addr.substr(1), g, address[addr][0].substr(4) );
+ //visu.write( addr.substr(1), g, address[addr][0].substr(4) );
+ visu.write( addr.substr(1), Transform[address[addr][0]].encode( g ) );
break;
case 'b':
- visu.write( addr.substr(1), b, address[addr][0].substr(4) );
+ //visu.write( addr.substr(1), b, address[addr][0].substr(4) );
+ visu.write( addr.substr(1), Transform[address[addr][0]].encode( b ) );
break;
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2010-12-27 23:55:03
|
Revision: 233
http://openautomation.svn.sourceforge.net/openautomation/?rev=233&view=rev
Author: mayerch
Date: 2010-12-27 23:54:56 +0000 (Mon, 27 Dec 2010)
Log Message:
-----------
Added ability to set precision for displaying float values
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/visu_config_neu.xml
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-27 23:12:29 UTC (rev 232)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2010-12-27 23:54:56 UTC (rev 233)
@@ -127,9 +127,10 @@
if( $p.attr('post') ) actor += '<div>' + $p.attr('post') + '</div>';
actor += '</div>';
var $actor = $(actor).data({
- 'address' : address,
- 'mapping' : $p.attr('mapping'),
- 'styling' : $p.attr('styling')
+ 'address' : address,
+ 'precision': $p.attr('precision'),
+ 'mapping' : $p.attr('mapping'),
+ 'styling' : $p.attr('styling')
});
for( var addr in address ) $actor.bind( addr, this.update );
ret_val.append( label ).append( $actor );
@@ -137,10 +138,11 @@
},
update: defaultUpdate,
attributes: {
- pre: { type: 'string' , required: false },
- post: { type: 'string' , required: false },
- mapping: { type: 'mapping', required: false },
- styling: { type: 'styling', required: false }
+ pre: { type: 'string' , required: false },
+ post: { type: 'string' , required: false },
+ precision: { type: 'precision', required: false },
+ mapping: { type: 'mapping' , required: false },
+ styling: { type: 'styling' , required: false }
},
content: { type: 'string' , required: true }
});
@@ -612,6 +614,8 @@
{
var element = passedElement || $(this);
var value = transform( data, element.data().address[ e.type ][0] );
+ if( element.data( 'precision' ) )
+ value = Number( value ).toPrecision( element.data( 'precision' ) );
element.data( 'value', value );
element.find('.value').text( map( value, element ) );
Modified: CometVisu/trunk/visu/visu_config_neu.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_neu.xml 2010-12-27 23:12:29 UTC (rev 232)
+++ CometVisu/trunk/visu/visu_config_neu.xml 2010-12-27 23:54:56 UTC (rev 233)
@@ -92,11 +92,11 @@
<address transform="DPT:5.001" color="g">1/2/60</address>
<address transform="DPT:5.001" color="b">1/2/61</address>
</colorchooser>
- <info><label>R</label><address transform="DPT:5.001">1/2/59</address></info>
+ <info precision="4"><label>R</label><address transform="DPT:5.001">1/2/59</address></info>
<slide><label>R</label><address transform="DPT:5.001">1/2/59</address></slide>
- <info><label>G</label><address transform="DPT:5.001">1/2/60</address></info>
+ <info precision="4"><label>G</label><address transform="DPT:5.001">1/2/60</address></info>
<slide><label>G</label><address transform="DPT:5.001">1/2/60</address></slide>
- <info><label>B</label><address transform="DPT:5.001">1/2/61</address></info>
+ <info precision="4"><label>B</label><address transform="DPT:5.001">1/2/61</address></info>
<slide><label>B</label><address transform="DPT:5.001">1/2/61</address></slide>
<diagram_popup undefined="DALI Strom L1" rrd="200_DALI_Linie_1_Strom" unit="mA" series="day" refresh="300">DALI Strom L1</diagram_popup>
</page>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-01-01 14:31:31
|
Revision: 237
http://openautomation.svn.sourceforge.net/openautomation/?rev=237&view=rev
Author: mayerch
Date: 2011-01-01 14:31:24 +0000 (Sat, 01 Jan 2011)
Log Message:
-----------
Cleaned up the tranforms
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2010-12-28 22:07:57 UTC (rev 236)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2011-01-01 14:31:24 UTC (rev 237)
@@ -117,9 +117,8 @@
var address = {};
$p.find('address').each( function(){
var src = this.textContent;
- var transform = this.getAttribute('transform');
ga_list.push( src )
- address[ '_' + src ] = [transform];
+ address[ '_' + src ] = [ this.getAttribute('transform') ];
});
var actor = '<div class="actor">';
if( $p.attr('pre') ) actor += '<div>' + $p.attr('pre') + '</div>';
@@ -156,9 +155,8 @@
var address = {};
$p.find('address').each( function(){
var src = this.textContent;
- var transform = this.getAttribute('transform');
ga_list.push( src )
- address[ '_' + src ] = [transform];
+ address[ '_' + src ] = [ this.getAttribute('transform') ];
});
var actor = $('<div class="actor">');
// ret_val.append( label ).append( actor );
@@ -191,7 +189,7 @@
},
update: function( e, data ) {
var element = $(this);
- var value = transform( data, element.data().address[ e.type ][0] );
+ var value = Transform[ element.data().address[ e.type ][0] ].decode( data );
if( element.data( 'value' ) != value )
{
element.data( 'value', value );
@@ -281,7 +279,6 @@
for( var addr in data.address )
{
if( data.address[addr][1] == true ) continue; // skip read only
-// visu.write( addr.substr(1), data.value=='1' ? '0' : '1', data.address[addr][0].substr(4) );
visu.write( addr.substr(1), Transform[data.address[addr][0]].encode( data.value ) );
}
},
@@ -602,18 +599,10 @@
return { x: 0, y: 0 }; // sanity return
}
-/**
- * temporary function till the transformation framework is implemented
- */
-function transform( raw, type )
-{
- return Transform[type].decode( raw );
-}
-
function defaultUpdate( e, data, passedElement )
{
var element = passedElement || $(this);
- var value = transform( data, element.data().address[ e.type ][0] );
+ var value = Transform[ element.data().address[ e.type ][0] ].decode( data );
if( element.data( 'precision' ) )
value = Number( value ).toPrecision( element.data( 'precision' ) );
element.data( 'value', value );
Modified: CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js
===================================================================
--- CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js 2010-12-28 22:07:57 UTC (rev 236)
+++ CometVisu/trunk/visu/plugins/colorchooser/structure_plugin.js 2011-01-01 14:31:24 UTC (rev 237)
@@ -101,7 +101,7 @@
},
update_r: function( e, data ) {
var element = $(this);
- var value = transform( data, element.data().address[ e.type ][0] );
+ var value = Transform[ element.data().address[ e.type ][0] ].decode( data );
element.data( 'value_r', value );
function toHex( x ) { var r = parseInt( x ).toString(16); return r.length == 1 ? '0'+r : r; }
var color = jQuery.farbtastic( element ).color || '#000000';
@@ -112,7 +112,7 @@
},
update_g: function( e, data ) {
var element = $(this);
- var value = transform( data, element.data().address[ e.type ][0] );
+ var value = Transform[ element.data().address[ e.type ][0] ].decode( data );
element.data( 'value_g', value );
function toHex( x ) { var r = parseInt( x ).toString(16); return r.length == 1 ? '0'+r : r; }
var color = jQuery.farbtastic( element ).color || '#000000';
@@ -123,7 +123,7 @@
},
update_b: function( e, data ) {
var element = $(this);
- var value = transform( data, element.data().address[ e.type ][0] );
+ var value = Transform[ element.data().address[ e.type ][0] ].decode( data );
element.data( 'value_b', value );
function toHex( x ) { var r = parseInt( x ).toString(16); return r.length == 1 ? '0'+r : r; }
var color = jQuery.farbtastic( element ).color || '#000000';
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-01-02 21:21:02
|
Revision: 242
http://openautomation.svn.sourceforge.net/openautomation/?rev=242&view=rev
Author: mayerch
Date: 2011-01-02 21:20:56 +0000 (Sun, 02 Jan 2011)
Log Message:
-----------
Fix handling of readonly in the slide widget
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/visu_config_neu.xml
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2011-01-02 21:07:28 UTC (rev 241)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2011-01-02 21:20:56 UTC (rev 242)
@@ -155,8 +155,10 @@
var address = {};
$p.find('address').each( function(){
var src = this.textContent;
+ var transform = this.getAttribute('transform');
+ var readonly = this.getAttribute('readonly');
ga_list.push( src )
- address[ '_' + src ] = [ this.getAttribute('transform') ];
+ address[ '_' + src ] = [ transform, readonly=='true' ];
});
var actor = $('<div class="actor">');
var min = parseFloat( $p.attr('min') || 0 );
Modified: CometVisu/trunk/visu/visu_config_neu.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_neu.xml 2011-01-02 21:07:28 UTC (rev 241)
+++ CometVisu/trunk/visu/visu_config_neu.xml 2011-01-02 21:20:56 UTC (rev 242)
@@ -67,6 +67,7 @@
<slide min="-18" max="26">
<label>Slide</label>
<address transform="DPT:9">12/4/250</address>
+ <address transform="DPT:9.001" readonly="true">12/4/253</address>
</slide>
<break />
<trigger value="0" mapping="OnOff">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-02-06 18:27:16
|
Revision: 285
http://openautomation.svn.sourceforge.net/openautomation/?rev=285&view=rev
Author: mayerch
Date: 2011-02-06 18:27:09 +0000 (Sun, 06 Feb 2011)
Log Message:
-----------
Moved the content of the "neu" config to the "demo" config as the transition to the new format is done now
Modified Paths:
--------------
CometVisu/trunk/visu/visu_config_demo.xml
Removed Paths:
-------------
CometVisu/trunk/visu/visu_config_neu.xml
Modified: CometVisu/trunk/visu/visu_config_demo.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_demo.xml 2011-02-06 18:04:14 UTC (rev 284)
+++ CometVisu/trunk/visu/visu_config_demo.xml 2011-02-06 18:27:09 UTC (rev 285)
@@ -38,7 +38,7 @@
<statusbar>
<status type="html"><![CDATA[
<img src="icon/comet_64_ff8000.png" alt="CometVisu" /> by <a href="http://www.cometvisu.org/">CometVisu.org</a>
- - <a href=".?config=demo">Reload</a>
+ - <a href=".?config=neu">Reload</a>
- <a href=".">Default Config</a>
]]></status>
<status type="html" condition="!edit"><![CDATA[
@@ -53,98 +53,52 @@
</statusbar>
</meta>
<page name="Übersicht">
- <text align="center">CometVisu widget demo</text>
- <toggle address="1/0/2" datatype="1.001" response_address="1/0/2" mapping="OnOff" styling="RedGreen">Terrase Licht</toggle>
- <trigger address="1/0/2" datatype="1.001" value="0" mapping="OnOff">Terrase Licht 0</trigger>
- <trigger address="1/0/2" datatype="1.001" value="1" mapping="OnOff">Terrase Licht 1</trigger>
- <trigger address="2/2/5" datatype="5.001" value="0">Rolladen Licht 0</trigger>
- <trigger address="2/2/5" datatype="5.001" value="100">Rolladen Licht 100</trigger>
- <switch address="1/0/50" datatype="1.001" response_address="1/4/50" mapping="OnOff">Schalt Schiebetüre Licht</switch>
- <break/>
- <dim address="1/2/51" datatype="5.010" response_address="1/3/51" response_datatype="5.010">Dim Esstisch</dim>
- <shade address="2/4/5" datatype="5.001">Rollladen links</shade>
- <slide address="12/4/250" datatype="9" min="-18" max="26">Slide</slide>
- <info address="12/4/250" datatype="9" styling="BluePurpleRed">Slide Info</info>
- <info address="12/4/250" datatype="9" styling="BluePurpleRed" mapping="Sign">Slide Info</info>
- <designtoggle>Change design</designtoggle>
- <colorchooser address_r="1/2/59" address_g="1/2/60" address_b="1/2/61" datatype="5.001">A colorChooser</colorchooser>
- <info address="1/2/59" datatype="5.001">R</info>
- <info address="1/2/60" datatype="5.001">G</info>
- <info address="1/2/61" datatype="5.001">B</info>
- <slide address="1/2/59" datatype="5.001">R</slide>
- <line/>
- <image src="icon/comet_128_ff8000.png">Ein Bild</image>
- <image src="icon/comet_128_ff8000.png"/>
+ <text align="center">CometVisu format neu</text>
+ <info styling="BluePurpleRed">
+ <label>Slide Info</label>
+ <address transform="DPT:9">12/4/250</address>
+ <address transform="DPT:9.001">12/4/251</address>
+ </info>
+ <switch mapping="OnOff" styling="RedGreen">
+ <label>Terrase Licht</label>
+ <address transform="DPT:1.001">1/0/2</address>
+ <address transform="DPT:9.001" readonly="true">12/4/253</address>
+ </switch>
+ <slide min="-18" max="26">
+ <label>Slide</label>
+ <address transform="DPT:9">12/4/250</address>
+ <address transform="DPT:9.001" readonly="true">12/4/253</address>
+ </slide>
+ <break />
+ <trigger value="0" mapping="OnOff">
+ <label>Terrase Licht 0</label>
+ <address transform="DPT:1.001">1/0/2</address>
+ </trigger>
+ <trigger value="1" mapping="OnOff">
+ <label>Terrase Licht 1</label>
+ <address transform="DPT:1.001">1/0/2</address>
+ </trigger>
+ <line />
<image src="icon/comet_128_ff8000.png" width="500px" height="46px"/>
- <image src="http://www.e-zeeinternet.com/count.php?page=546016&style=default&nbdigits=9&reloads=1" refresh="10">Update every 10 sec</image>
- <break/>
- <image src="http://www.yr.no/place/Germany/Bavaria/Holzkirchen~2899676/meteogram.png" refresh="1800"/>
- <line/>
+ <image src="http://www.e-zeeinternet.com/count.php?page=546016&style=default&nbdigits=9&reloads=1" refresh="10">
+ <label>Update every 10 sec</label>
+ </image>
+ <designtoggle>Change design</designtoggle>
<page name="iframe Test">
<iframe src="http://www.cometvisu.org" width="500px" height="500px"/>
</page>
- <info address="1/0/41" datatype="1.000" mapping="OnOff">Treppenlicht</info>
- <page name="Fenster Kontakte">
- <info address="4/3/10" datatype="1" mapping="OpenClose" styling="GreenRed">Bad EG Reed Fenster</info>
- <info address="4/3/20" datatype="1.001" mapping="OpenClose" styling="GreenRed">WC Reed Fenster</info>
- <info address="4/3/30" datatype="1" mapping="OpenClose" styling="GreenRed">Schlafen Reed Fenster links</info>
- <info address="4/3/31" datatype="1.001" mapping="OpenClose" styling="GreenRed">Schlafen Reed Fenster rechts</info>
- <info address="4/3/32" datatype="1.001" mapping="OpenClose" styling="GreenRed">Schlafen Reed Tuere</info>
- <info address="4/3/40" datatype="1.001" mapping="OpenClose" styling="GreenRed">Kueche Reed Fenster</info>
- <info address="4/3/50" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Tuere Essen</info>
- <info address="4/3/51" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Schiebetuere</info>
- <info address="4/3/52" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Tuere Mitte</info>
- <info address="4/3/53" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Doppeltuere links</info>
- <info address="4/3/54" datatype="1.001" mapping="OpenClose" styling="GreenRed">Wohnzimmer Reed Doppeltuere rechts</info>
- <info address="4/3/70" datatype="1.001" mapping="OpenClose" styling="GreenRed">Diele EG Reed Tuere</info>
- <info address="4/3/71" datatype="1.001" pre="!" mapping="OpenClose" styling="GreenRed">Diele EG Reed Riegel</info>
- <info address="4/3/110" datatype="1.001" mapping="OpenClose" styling="GreenRed">Diele UG Reed Tuere</info>
- <info address="4/3/111" datatype="1.001" pre="!" mapping="OpenClose" styling="GreenRed">Diele UG Reed Riegel</info>
- <info address="4/3/120" datatype="1.001" mapping="OpenClose" styling="GreenRed">Bad UG Reed Fenster</info>
- <info address="4/3/130" datatype="1.001" mapping="OpenClose" styling="GreenRed">Hobby1 Reed Fenster</info>
- <info address="4/3/140" datatype="1.001" mapping="OpenClose">Hobby2 Reed Fenster</info>
- <info address="4/3/200" datatype="1.001" mapping="OnOff">Klingel</info>
- <info address="4/3/210" datatype="1.001">Lueftung Filter</info>
- <info address="4/3/250" datatype="1.001" mapping="OnOff">Rauchmelder</info>
- </page>
- <page name="Temperaturen">
- <info address="4/0/10" datatype="9.001" pre="ca. " post=" °C">Bad EG Boden Temperatur</info>
- <info address="4/0/11" datatype="9.001" pre="ca. " post=" °C">Bad EG Luft Temperatur</info>
- <info address="4/0/15" datatype="9.001" pre="ca. " post=" °C">Bad EG Dusche Temperatur</info>
- <info address="4/2/10" datatype="5.001" post=" %">Bad EG Luftfeuchte</info>
- <info address="4/0/20" datatype="9.001" pre="ca. " post=" °C">WC Temperatur</info>
- <info address="4/0/30" datatype="9.001" pre="ca. " post=" °C">Schlafzimmer Temperatur</info>
- <info address="4/0/50" datatype="9.001" pre="ca. " post=" °C">Wohnzimmer Temperatur</info>
- <info address="4/0/60" datatype="9.001" pre="ca. " post=" °C">Diele EG Temperatur</info>
- <info address="4/0/110" datatype="9.001" pre="ca. " post=" °C">Diele UG Temperatur</info>
- <info address="4/0/120" datatype="9.001" pre="ca. " post=" °C">Bad UG Boden Temperatur</info>
- <info address="4/0/121" datatype="9.001" pre="ca. " post=" °C">Bad UG Luft Temperatur</info>
- <info address="4/2/120" datatype="5.001" post=" %">Bad UG Luftfeuchte</info>
- <info address="4/0/130" datatype="9.001" pre="ca. " post=" °C">Hobby 1 Temperatur</info>
- <info address="4/0/140" datatype="9.001" pre="ca. " post=" °C">Hobby 2 Temperatur</info>
- <line/>
- <info address="4/0/0" datatype="9.001" pre="ca. " post=" °C">Außen Temperatur</info>
- <info address="4/2/0" datatype="5.001" post=" %">Außen Luftfeuchte</info>
- <info address="4/0/200" datatype="9.001" pre="ca. " post=" °C">HK Vorlauf Temperatur</info>
- <info address="4/0/201" datatype="9.001" pre="ca. " post=" °C">HK Rücklauf Temperatur</info>
- <info address="4/0/204" datatype="9.001" pre="ca. " post=" °C">Zirkulation Temperatur</info>
- <info address="4/0/202" datatype="9.001" pre="ca. " post=" °C">Warmwasser Temperatur</info>
- <info address="4/0/203" datatype="9.001" pre="ca. " post=" °C">Kaltwasser Temperatur</info>
- <info address="4/0/205" datatype="9.001" pre="ca. " post=" °C">Warmwasser UG Temperatur</info>
- </page>
- <page name="Rollläden">
- <shade address="2/4/0" datatype="5.001">Rollladen Bad</shade>
- <shade address="2/4/1" datatype="5.001">Rollladen Schlafen Fenster</shade>
- <shade address="2/4/2" datatype="5.001">Rollladen Schlafen Türe</shade>
- <shade address="2/4/3" datatype="5.001">Rollladen Küche</shade>
- <shade address="2/4/4" datatype="5.001">Rollladen Seitentüre</shade>
- <shade address="2/4/5" datatype="5.001">Rollladen PSK Türe</shade>
- <shade address="2/4/6" datatype="5.001">Rollladen Zwischentüre</shade>
- <shade address="2/4/7" datatype="5.001">Rollladen Doppeltüre</shade>
- <line/>
- <shade address="2/4/8" datatype="5.001">Rollladen Hobby 1</shade>
- <shade address="2/4/9" datatype="5.001">Rollladen Hobby 2</shade>
- </page>
+ <colorchooser>
+ <label>A colorChooser</label>
+ <address transform="DPT:5.001" color="r">1/2/59</address>
+ <address transform="DPT:5.001" color="g">1/2/60</address>
+ <address transform="DPT:5.001" color="b">1/2/61</address>
+ </colorchooser>
+ <info precision="4"><label>R</label><address transform="DPT:5.001">1/2/59</address></info>
+ <slide><label>R</label><address transform="DPT:5.001">1/2/59</address></slide>
+ <info precision="4"><label>G</label><address transform="DPT:5.001">1/2/60</address></info>
+ <slide><label>G</label><address transform="DPT:5.001">1/2/60</address></slide>
+ <info precision="4"><label>B</label><address transform="DPT:5.001">1/2/61</address></info>
+ <slide><label>B</label><address transform="DPT:5.001">1/2/61</address></slide>
<diagram_popup undefined="DALI Strom L1" rrd="200_DALI_Linie_1_Strom" unit="mA" series="day" refresh="300">DALI Strom L1</diagram_popup>
</page>
</pages>
Deleted: CometVisu/trunk/visu/visu_config_neu.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_neu.xml 2011-02-06 18:04:14 UTC (rev 284)
+++ CometVisu/trunk/visu/visu_config_neu.xml 2011-02-06 18:27:09 UTC (rev 285)
@@ -1,104 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" design="pure" xsi:noNamespaceSchemaLocation="visu_config.xsd">
- <meta>
- <plugins>
- <plugin name="colorchooser"/>
- <plugin name="diagram"/>
- </plugins>
- <mappings>
- <mapping name="OpenClose">
- <entry value="0">zu</entry>
- <entry value="1">offen</entry>
- </mapping>
- <mapping name="OnOff">
- <entry value="0">Aus</entry>
- <entry value="1">An</entry>
- </mapping>
- <mapping name="Sign">
- <entry range_min="-1e99" range_max="0">Negativ</entry>
- <entry value="0">Null</entry>
- <entry range_min="0" range_max="1e99">Positiv</entry>
- </mapping>
- </mappings>
- <stylings>
- <styling name="RedGreen">
- <entry value="0">red</entry>
- <entry value="1">green</entry>
- </styling>
- <styling name="GreenRed">
- <entry value="0">green</entry>
- <entry value="1">red</entry>
- </styling>
- <styling name="BluePurpleRed">
- <entry range_min="-100" range_max="0">blue</entry>
- <entry value="0">purple</entry>
- <entry range_min="0" range_max="100">red</entry>
- </styling>
- </stylings>
- <statusbar>
- <status type="html"><![CDATA[
- <img src="icon/comet_64_ff8000.png" alt="CometVisu" /> by <a href="http://www.cometvisu.org/">CometVisu.org</a>
- - <a href=".?config=neu">Reload</a>
- - <a href=".">Default Config</a>
- ]]></status>
- <status type="html" condition="!edit"><![CDATA[
- - <a href="edit_config.html">Edit</a>
- ]]></status>
- <status type="html" condition="edit"><![CDATA[
- - <a href=".">normal Mode</a>
- ]]></status>
- <status type="html"><![CDATA[
- - <a href="check_config.php">Check Config</a>
- ]]></status>
- </statusbar>
- </meta>
- <page name="Übersicht">
- <text align="center">CometVisu format neu</text>
- <info styling="BluePurpleRed">
- <label>Slide Info</label>
- <address transform="DPT:9">12/4/250</address>
- <address transform="DPT:9.001">12/4/251</address>
- </info>
- <switch mapping="OnOff" styling="RedGreen">
- <label>Terrase Licht</label>
- <address transform="DPT:1.001">1/0/2</address>
- <address transform="DPT:9.001" readonly="true">12/4/253</address>
- </switch>
- <slide min="-18" max="26">
- <label>Slide</label>
- <address transform="DPT:9">12/4/250</address>
- <address transform="DPT:9.001" readonly="true">12/4/253</address>
- </slide>
- <break />
- <trigger value="0" mapping="OnOff">
- <label>Terrase Licht 0</label>
- <address transform="DPT:1.001">1/0/2</address>
- </trigger>
- <trigger value="1" mapping="OnOff">
- <label>Terrase Licht 1</label>
- <address transform="DPT:1.001">1/0/2</address>
- </trigger>
- <line />
- <image src="icon/comet_128_ff8000.png" width="500px" height="46px"/>
- <image src="http://www.e-zeeinternet.com/count.php?page=546016&style=default&nbdigits=9&reloads=1" refresh="10">
- <label>Update every 10 sec</label>
- </image>
- <designtoggle>Change design</designtoggle>
- <page name="iframe Test">
- <iframe src="http://www.cometvisu.org" width="500px" height="500px"/>
- </page>
- <colorchooser>
- <label>A colorChooser</label>
- <address transform="DPT:5.001" color="r">1/2/59</address>
- <address transform="DPT:5.001" color="g">1/2/60</address>
- <address transform="DPT:5.001" color="b">1/2/61</address>
- </colorchooser>
- <info precision="4"><label>R</label><address transform="DPT:5.001">1/2/59</address></info>
- <slide><label>R</label><address transform="DPT:5.001">1/2/59</address></slide>
- <info precision="4"><label>G</label><address transform="DPT:5.001">1/2/60</address></info>
- <slide><label>G</label><address transform="DPT:5.001">1/2/60</address></slide>
- <info precision="4"><label>B</label><address transform="DPT:5.001">1/2/61</address></info>
- <slide><label>B</label><address transform="DPT:5.001">1/2/61</address></slide>
- <diagram_popup undefined="DALI Strom L1" rrd="200_DALI_Linie_1_Strom" unit="mA" series="day" refresh="300">DALI Strom L1</diagram_popup>
- </page>
-</pages>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <net...@us...> - 2011-02-11 22:06:18
|
Revision: 291
http://openautomation.svn.sourceforge.net/openautomation/?rev=291&view=rev
Author: netzkind
Date: 2011-02-11 22:06:12 +0000 (Fri, 11 Feb 2011)
Log Message:
-----------
added "list" as valid attribute-type, see plugins/diagram/structure_plugin.js for an example of how to use it
Modified Paths:
--------------
CometVisu/trunk/visu/edit/visuconfig_edit.js
CometVisu/trunk/visu/plugins/diagram/structure_plugin.js
Modified: CometVisu/trunk/visu/edit/visuconfig_edit.js
===================================================================
--- CometVisu/trunk/visu/edit/visuconfig_edit.js 2011-02-11 21:58:58 UTC (rev 290)
+++ CometVisu/trunk/visu/edit/visuconfig_edit.js 2011-02-11 22:06:12 UTC (rev 291)
@@ -497,6 +497,19 @@
break;
case "datatype":
break;
+ case "list":
+ $input.append($("<select id=\"add_" + index + "\" />")
+ .append($("<option />").attr("value", "").html("-")));
+ jQuery.each(e.list, function (i, val) {
+ $input.find("select#add_" + index).append($("<option />").attr("value", i).html(val));
+ });
+
+ if (typeof values._attributes != "undefined"
+ && typeof values._attributes[index] != "undefined") {
+ $input.find("option[value=" + values._attributes[index] + "]").attr("selected", "selected");
+ }
+
+ break;
default:
$input.append($("<input type=\"text\" id=\"add_" + index + "\" />"));
Modified: CometVisu/trunk/visu/plugins/diagram/structure_plugin.js
===================================================================
--- CometVisu/trunk/visu/plugins/diagram/structure_plugin.js 2011-02-11 21:58:58 UTC (rev 290)
+++ CometVisu/trunk/visu/plugins/diagram/structure_plugin.js 2011-02-11 22:06:12 UTC (rev 291)
@@ -63,7 +63,7 @@
width: {type: "string", required: false},
height: {type: "string", required: false},
unit: {type: "string", required: false},
- series: {type: "string", required: false},
+ series: {type: "list", required: false, list: {day: "day", week: "week", month: "month", year: "year"}},
refresh: {type: "numeric", required: false}
},
content: {type: "string", required: true}
@@ -122,7 +122,7 @@
attributes: {
rrd: {type: "string", required: true},
unit: {type: "string", required: false},
- series: {type: "string", required: false},
+ series: {type: "list", required: false, list: {day: "day", week: "week", month: "month", year: "year"}},
refresh: {type: "numeric", required: false}
},
content: {type: "string", required: true}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-02-13 16:55:27
|
Revision: 295
http://openautomation.svn.sourceforge.net/openautomation/?rev=295&view=rev
Author: mayerch
Date: 2011-02-13 16:55:20 +0000 (Sun, 13 Feb 2011)
Log Message:
-----------
New Feature: The footer entries containing an href attribute can be automatically extended by the current config-file information or by all search parameters.
Modified Paths:
--------------
CometVisu/trunk/visu/lib/templateengine.js
CometVisu/trunk/visu/visu_config.xml
CometVisu/trunk/visu/visu_config_demo.xml
Modified: CometVisu/trunk/visu/lib/templateengine.js
===================================================================
--- CometVisu/trunk/visu/lib/templateengine.js 2011-02-13 13:16:42 UTC (rev 294)
+++ CometVisu/trunk/visu/lib/templateengine.js 2011-02-13 16:55:20 UTC (rev 295)
@@ -198,13 +198,26 @@
$( 'meta > statusbar status', xml ).each( function(i){
var type = $(this).attr('type');
var condition = $(this).attr('condition');
+ var extend = $(this).attr('hrefextend');
var sPath = window.location.pathname;
var sPage = sPath.substring(sPath.lastIndexOf('/') + 1);
var editMode = 'edit_config.html' == sPage;
if( editMode && '!edit' == condition ) return;
if( !editMode && 'edit' == condition ) return;
- //$('.footer').append( $(this.textContent) );
- $('.footer').html( $('.footer').html() + this.textContent );
+ var text = this.textContent;
+ switch( extend )
+ {
+ case 'all': // append all parameters
+ var search = window.location.search.replace( /\$/g, '$$$$' );
+ text = text.replace( /(href="[^"]*)(")/g, '$1' + search + '$2' );
+ break;
+ case 'config': // append config file info
+ var search = window.location.search.replace( /\$/g, '$$$$' );
+ search = search.replace( /.*(config=[^&]*).*|.*/, '?$1' );
+ text = text.replace( /(href="[^"]*)(")/g, '$1' + search + '$2' );
+ break;
+ }
+ $('.footer').html( $('.footer').html() + text );
});
// adapt width for pages to show
Modified: CometVisu/trunk/visu/visu_config.xml
===================================================================
--- CometVisu/trunk/visu/visu_config.xml 2011-02-13 13:16:42 UTC (rev 294)
+++ CometVisu/trunk/visu/visu_config.xml 2011-02-13 16:55:20 UTC (rev 295)
@@ -13,10 +13,10 @@
- <a href=".">Reload</a>
- <a href="?config=demo">Widget Demo</a>
]]></status>
- <status type="html" condition="!edit"><![CDATA[
+ <status type="html" condition="!edit" hrefextend="config"><![CDATA[
- <a href="edit_config.html">Edit</a>
]]></status>
- <status type="html" condition="edit"><![CDATA[
+ <status type="html" condition="edit" hrefextend="all"><![CDATA[
- <a href=".">normal Mode</a>
]]></status>
<status type="html"><![CDATA[
@@ -25,7 +25,8 @@
</statusbar>
</meta>
<page name="Overview">
- <line />
+ <line/>
<text align="center">Welcome to the CometVisu!</text>
+ <line/>
</page>
</pages>
Modified: CometVisu/trunk/visu/visu_config_demo.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_demo.xml 2011-02-13 13:16:42 UTC (rev 294)
+++ CometVisu/trunk/visu/visu_config_demo.xml 2011-02-13 16:55:20 UTC (rev 295)
@@ -38,13 +38,13 @@
<statusbar>
<status type="html"><![CDATA[
<img src="icon/comet_64_ff8000.png" alt="CometVisu" /> by <a href="http://www.cometvisu.org/">CometVisu.org</a>
- - <a href=".?config=neu">Reload</a>
+ - <a href=".?config=demo">Reload</a>
- <a href=".">Default Config</a>
]]></status>
- <status type="html" condition="!edit"><![CDATA[
+ <status type="html" condition="!edit" hrefextend="config"><![CDATA[
- <a href="edit_config.html">Edit</a>
]]></status>
- <status type="html" condition="edit"><![CDATA[
+ <status type="html" condition="edit" hrefextend="all"><![CDATA[
- <a href=".">normal Mode</a>
]]></status>
<status type="html"><![CDATA[
@@ -69,7 +69,7 @@
<address transform="DPT:9">12/4/250</address>
<address transform="DPT:9.001" readonly="true">12/4/253</address>
</slide>
- <break />
+ <break/>
<trigger value="0" mapping="OnOff">
<label>Terrase Licht 0</label>
<address transform="DPT:1.001">1/0/2</address>
@@ -78,7 +78,7 @@
<label>Terrase Licht 1</label>
<address transform="DPT:1.001">1/0/2</address>
</trigger>
- <line />
+ <line/>
<image src="icon/comet_128_ff8000.png" width="500px" height="46px"/>
<image src="http://www.e-zeeinternet.com/count.php?page=546016&style=default&nbdigits=9&reloads=1" refresh="10">
<label>Update every 10 sec</label>
@@ -88,17 +88,36 @@
<iframe src="http://www.cometvisu.org" width="500px" height="500px"/>
</page>
<colorchooser>
- <label>A colorChooser</label>
- <address transform="DPT:5.001" color="r">1/2/59</address>
- <address transform="DPT:5.001" color="g">1/2/60</address>
- <address transform="DPT:5.001" color="b">1/2/61</address>
+ A colorChooser
+ 1/2/59
+ 1/2/60
+ 1/2/61
</colorchooser>
- <info precision="4"><label>R</label><address transform="DPT:5.001">1/2/59</address></info>
- <slide><label>R</label><address transform="DPT:5.001">1/2/59</address></slide>
- <info precision="4"><label>G</label><address transform="DPT:5.001">1/2/60</address></info>
- <slide><label>G</label><address transform="DPT:5.001">1/2/60</address></slide>
- <info precision="4"><label>B</label><address transform="DPT:5.001">1/2/61</address></info>
- <slide><label>B</label><address transform="DPT:5.001">1/2/61</address></slide>
- <diagram_popup undefined="DALI Strom L1" rrd="200_DALI_Linie_1_Strom" unit="mA" series="day" refresh="300">DALI Strom L1</diagram_popup>
+ <info precision="4">
+ <label>R</label>
+ <address transform="DPT:5.001">1/2/59</address>
+ </info>
+ <slide>
+ <label>R</label>
+ <address transform="DPT:5.001">1/2/59</address>
+ </slide>
+ <info precision="4">
+ <label>G</label>
+ <address transform="DPT:5.001">1/2/60</address>
+ </info>
+ <slide>
+ <label>G</label>
+ <address transform="DPT:5.001">1/2/60</address>
+ </slide>
+ <info precision="4">
+ <label>B</label>
+ <address transform="DPT:5.001">1/2/61</address>
+ </info>
+ <slide>
+ <label>B</label>
+ <address transform="DPT:5.001">1/2/61</address>
+ </slide>
+ <diagram_popup rrd="200_DALI_Linie_1_Strom" unit="mA" series="day" refresh="300">DALI Strom L1</diagram_popup>
+ <diagram_inline rrd="200_DALI_Linie_1_Strom" width="600" height="400"/>
</page>
</pages>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-02-20 21:11:06
|
Revision: 302
http://openautomation.svn.sourceforge.net/openautomation/?rev=302&view=rev
Author: mayerch
Date: 2011-02-20 21:10:59 +0000 (Sun, 20 Feb 2011)
Log Message:
-----------
- Changed info widget from "precision" to "format", i.e. now it's possible to use printf syntax to format the displayed value in an info widget.
- Added example of the use of the Konnex HVAC mode (this might be later changed to a more specialized version)
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/visu_config_demo.xml
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2011-02-20 20:57:45 UTC (rev 301)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2011-02-20 21:10:59 UTC (rev 302)
@@ -137,7 +137,7 @@
actor += '</div>';
var $actor = $(actor).data({
'address' : address,
- 'precision': $p.attr('precision'),
+ 'format' : $p.attr('format'),
'mapping' : $p.attr('mapping'),
'styling' : $p.attr('styling')
});
@@ -149,7 +149,7 @@
attributes: {
pre: { type: 'string', required: false },
post: { type: 'string', required: false },
- precision: { type: 'precision', required: false },
+ format: { type: 'format', required: false },
mapping: { type: 'mapping', required: false },
styling: { type: 'styling', required: false }
},
@@ -751,6 +751,8 @@
var value = Transform[ element.data().address[ e.type ][0] ].decode( data );
if( element.data( 'precision' ) )
value = Number( value ).toPrecision( element.data( 'precision' ) );
+ if( element.data( 'format' ) )
+ value = sprintf( element.data( 'format' ), value );
element.data( 'value', value );
element.find('.value').text( map( value, element ) );
Modified: CometVisu/trunk/visu/visu_config_demo.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_demo.xml 2011-02-20 20:57:45 UTC (rev 301)
+++ CometVisu/trunk/visu/visu_config_demo.xml 2011-02-20 21:10:59 UTC (rev 302)
@@ -82,6 +82,10 @@
<label>Multitrigger - Szenenaufruf</label>
<address transform="DPT:5.010" readonly="false" type="">11/2/50</address>
</multitrigger>
+ <multitrigger button1label="Auto" button1value="auto" button2label="Komfort" button2value="comfort" button3label="Standy By" button3value="standby" button4label="Economy" button4value="economy">
+ <label>KONNEX Betriebsart</label>
+ <address transform="DPT:20.102" readonly="false" type="">3/1/50</address>
+ </multitrigger>
<line/>
<image src="icon/comet_128_ff8000.png" width="500px" height="46px"/>
<image src="http://www.e-zeeinternet.com/count.php?page=546016&style=default&nbdigits=9&reloads=1" refresh="10">
@@ -97,7 +101,7 @@
1/2/60
1/2/61
</colorchooser>
- <info precision="4">
+ <info format="%.2f">
<label>R</label>
<address transform="DPT:5.001" type="">1/2/59</address>
</info>
@@ -105,7 +109,7 @@
<label>R</label>
<address transform="DPT:5.001" type="">1/2/59</address>
</slide>
- <info precision="4">
+ <info format="%.2f">
<label>G</label>
<address transform="DPT:5.001" type="">1/2/60</address>
</info>
@@ -113,7 +117,7 @@
<label>G</label>
<address transform="DPT:5.001" type="">1/2/60</address>
</slide>
- <info precision="4">
+ <info format="%.2f">
<label>B</label>
<address transform="DPT:5.001" type="">1/2/61</address>
</info>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-02-22 21:44:48
|
Revision: 303
http://openautomation.svn.sourceforge.net/openautomation/?rev=303&view=rev
Author: mayerch
Date: 2011-02-22 21:44:41 +0000 (Tue, 22 Feb 2011)
Log Message:
-----------
Changed disabling of text selection (which is annoying on a touch device) from JavaScript to CSS3.
This will fix a problem on Chromium where the editor didn't work as the all mousedowns were disabled.
Modified Paths:
--------------
CometVisu/trunk/visu/designs/pure/basic.css
CometVisu/trunk/visu/lib/templateengine.js
Modified: CometVisu/trunk/visu/designs/pure/basic.css
===================================================================
--- CometVisu/trunk/visu/designs/pure/basic.css 2011-02-20 21:10:59 UTC (rev 302)
+++ CometVisu/trunk/visu/designs/pure/basic.css 2011-02-22 21:44:41 UTC (rev 303)
@@ -7,6 +7,10 @@
font-size: 6mm;
overflow: hidden;
margin:0;
+ -moz-user-select: none;
+ -khtml-user-select: none;
+ -webkit-user-select: none;
+ user-select: none;
}
h1
Modified: CometVisu/trunk/visu/lib/templateengine.js
===================================================================
--- CometVisu/trunk/visu/lib/templateengine.js 2011-02-20 21:10:59 UTC (rev 302)
+++ CometVisu/trunk/visu/lib/templateengine.js 2011-02-22 21:44:41 UTC (rev 303)
@@ -68,6 +68,8 @@
window.setTimeout("$.get( 'visu_config" + configSuffix + ".xml', parseXML );", 200);
// disable text selection - it's annoying on a touch screen!
+ /*
+ * Now in the CSS!
if($.browser.mozilla)
{//Firefox
$('body').css('MozUserSelect','none');
@@ -76,6 +78,7 @@
} else {//Opera, etc.
$(document).mousedown(function(){return false;});
}
+ */
} );
$(window).unload(function() {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <net...@us...> - 2011-02-24 12:01:31
|
Revision: 304
http://openautomation.svn.sourceforge.net/openautomation/?rev=304&view=rev
Author: netzkind
Date: 2011-02-24 12:01:21 +0000 (Thu, 24 Feb 2011)
Log Message:
-----------
allow for tooltips in popup-diagrams (all designs); tooltips can be enabled via the editor for each diagram; format of timestamp is "toLocale"; tooltipped diagrams can be clicked without closing them
Modified Paths:
--------------
CometVisu/trunk/visu/designs/discreet/basic.css
CometVisu/trunk/visu/designs/discreet_sand/basic.css
CometVisu/trunk/visu/designs/discreet_slim/basic.css
CometVisu/trunk/visu/designs/pure/basic.css
CometVisu/trunk/visu/plugins/diagram/structure_plugin.js
Modified: CometVisu/trunk/visu/designs/discreet/basic.css
===================================================================
--- CometVisu/trunk/visu/designs/discreet/basic.css 2011-02-22 21:44:41 UTC (rev 303)
+++ CometVisu/trunk/visu/designs/discreet/basic.css 2011-02-24 12:01:21 UTC (rev 304)
@@ -360,4 +360,13 @@
.diagram_preview {
width: 240px;
height: 2em;
+}
+
+#diagramTooltip {
+ z-index: 1000;
+ color: black;
+ border: 1px solid #fdd;
+ padding: 2px;
+ background-color: #fee;
+ opacity: 0.80;
}
\ No newline at end of file
Modified: CometVisu/trunk/visu/designs/discreet_sand/basic.css
===================================================================
--- CometVisu/trunk/visu/designs/discreet_sand/basic.css 2011-02-22 21:44:41 UTC (rev 303)
+++ CometVisu/trunk/visu/designs/discreet_sand/basic.css 2011-02-24 12:01:21 UTC (rev 304)
@@ -365,4 +365,13 @@
.tickLabel {
color: #453420;
+}
+
+#diagramTooltip {
+ z-index: 1000;
+ color: black;
+ border: 1px solid #fdd;
+ padding: 2px;
+ background-color: #fee;
+ opacity: 0.80;
}
\ No newline at end of file
Modified: CometVisu/trunk/visu/designs/discreet_slim/basic.css
===================================================================
--- CometVisu/trunk/visu/designs/discreet_slim/basic.css 2011-02-22 21:44:41 UTC (rev 303)
+++ CometVisu/trunk/visu/designs/discreet_slim/basic.css 2011-02-24 12:01:21 UTC (rev 304)
@@ -349,4 +349,13 @@
.diagram_preview {
width: 100%;
height: 2em;
+}
+
+#diagramTooltip {
+ z-index: 1000;
+ color: black;
+ border: 1px solid #fdd;
+ padding: 2px;
+ background-color: #fee;
+ opacity: 0.80;
}
\ No newline at end of file
Modified: CometVisu/trunk/visu/designs/pure/basic.css
===================================================================
--- CometVisu/trunk/visu/designs/pure/basic.css 2011-02-22 21:44:41 UTC (rev 303)
+++ CometVisu/trunk/visu/designs/pure/basic.css 2011-02-24 12:01:21 UTC (rev 304)
@@ -311,4 +311,13 @@
.clickable {
cursor: pointer;
+}
+
+#diagramTooltip {
+ z-index: 1000;
+ color: black;
+ border: 1px solid #fdd;
+ padding: 2px;
+ background-color: #fee;
+ opacity: 0.80;
}
\ No newline at end of file
Modified: CometVisu/trunk/visu/plugins/diagram/structure_plugin.js
===================================================================
--- CometVisu/trunk/visu/plugins/diagram/structure_plugin.js 2011-02-22 21:44:41 UTC (rev 303)
+++ CometVisu/trunk/visu/plugins/diagram/structure_plugin.js 2011-02-24 12:01:21 UTC (rev 304)
@@ -103,15 +103,54 @@
diagram.data("refresh", $p.attr("refresh"));
var bDiagram = $("<div class=\"diagram\" id=\"" + id + "_big\"/>");
-
+
diagram.addClass("clickable");
+ var data = jQuery.extend({}, diagram.data());
diagram.bind("click", function() {
- bDiagram.data(jQuery.extend({}, diagram.data()));
+ bDiagram.data(data);
bDiagram.css({height: "90%"});
+
showPopup("unknown", {title: page.textContent, content: bDiagram});
bDiagram.parent("div").css({height: "100%", width: "90%", margin: "auto"}); // define parent as 100%!
- refreshDiagram(bDiagram, {yaxis: {labelWidth: null}});
+
+ var bDiagramOpts = {yaxis: {labelWidth: null}};
+ if ($p.attr("tooltip") == "true") {
+ // if we want to display a tooltip, we need to listen to the event
+ var previousPoint = null;
+ jQuery(bDiagram).bind("plothover", function (event, pos, item) {
+ jQuery("#x").text(pos.x.toFixed(2));
+ jQuery("#y").text(pos.y.toFixed(2));
+
+ if (item) {
+ if (previousPoint != item.datapoint) {
+ previousPoint = item.datapoint;
+
+ $("#diagramTooltip").remove();
+ var x = item.datapoint[0],
+ y = item.datapoint[1].toFixed(2);
+
+ var dte = new Date(x);
+
+ showDiagramTooltip(item.pageX, item.pageY,
+ dte.toLocaleString() + ": " + y + jQuery(this).data("unit"));
+ }
+ }
+ else {
+ $("#diagramTooltip").remove();
+ previousPoint = null;
+ }
+
+ })
+ .bind("click", function(event) {
+ // don't let the popup know about the click, or it will close on touch-displays
+ event.stopPropagation();
+ });
+
+ bDiagramOpts = jQuery.extend(bDiagramOpts, {grid: {hoverable: true, clickable: true} });
+ }
+
+ refreshDiagram(bDiagram, bDiagramOpts);
return false;
});
@@ -123,7 +162,8 @@
rrd: {type: "string", required: true},
unit: {type: "string", required: false},
series: {type: "list", required: false, list: {day: "1 day", week: "1 week", month: "1 month", year: "1 year"}},
- refresh: {type: "numeric", required: false}
+ refresh: {type: "numeric", required: false},
+ tooltip: {type: "list", required: false, list: {true: "yes", false: "no"}},
},
content: {type: "string", required: true}
});
@@ -132,6 +172,16 @@
data: $("<span class='link'><a href='#' /></a>").find("a").css("color")
};
+function showDiagramTooltip(x, y, contents) {
+ $('<div id="diagramTooltip">' + contents + '</div>').css( {
+ position: 'absolute',
+ display: 'none',
+ top: y + 5,
+ left: x + 5,
+ }).appendTo("body").fadeIn(200);
+}
+
+
function refreshDiagram(diagram, flotoptions, data) {
var diagram = $(diagram);
var config = jQuery.extend(true, {series: diagram.data("series")}, data || {});
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-02-27 17:17:07
|
Revision: 307
http://openautomation.svn.sourceforge.net/openautomation/?rev=307&view=rev
Author: mayerch
Date: 2011-02-27 17:17:00 +0000 (Sun, 27 Feb 2011)
Log Message:
-----------
New Feature: flavours for pages
Modified Paths:
--------------
CometVisu/trunk/visu/designs/pure/basic.css
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/lib/templateengine.js
CometVisu/trunk/visu/visu_config_demo.xml
Modified: CometVisu/trunk/visu/designs/pure/basic.css
===================================================================
--- CometVisu/trunk/visu/designs/pure/basic.css 2011-02-27 15:58:17 UTC (rev 306)
+++ CometVisu/trunk/visu/designs/pure/basic.css 2011-02-27 17:17:00 UTC (rev 307)
@@ -320,4 +320,74 @@
padding: 2px;
background-color: #fee;
opacity: 0.80;
-}
\ No newline at end of file
+}
+
+/*****************************************************************************/
+/* The definition of the flavours - overwrite the generic settings */
+/*****************************************************************************/
+
+.flavour_black hr
+{
+ background-color: #000000;
+}
+
+.flavour_black .link a
+{
+ color: #000000;
+}
+
+.flavour_white hr
+{
+ background-color: #ffffff;
+}
+.flavour_white .link a
+{
+ color: #ffffff;
+}
+
+.flavour_antimony hr
+{
+ background-color: #00ddff;
+}
+
+.flavour_antimony .link a
+{
+ color: #00ddff;
+}
+
+.flavour_boron hr
+{
+ background-color: #00ff11;
+}
+.flavour_boron .link a
+{
+ color: #00ff11;
+}
+
+.flavour_lithium hr
+{
+ background-color: #ff0000;
+}
+.flavour_lithium .link a
+{
+ color: #ff0000;
+}
+
+.flavour_potassium hr
+{
+ background-color: #d00055;
+}
+.flavour_potassium .link a
+{
+ color: #d00055;
+}
+
+.flavour_sodium hr
+{
+ background-color: #ff8000;
+}
+.flavour_sodium .link a
+{
+ color: #ff8000;
+}
+
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2011-02-27 15:58:17 UTC (rev 306)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2011-02-27 17:17:00 UTC (rev 307)
@@ -51,13 +51,13 @@
* XML config file tags
*/
this.addCreator('page', {
- create: function( page, path ) {
+ create: function( page, path, flavour ) {
var $p = $(page);
var ret_val = $('<div class="widget" />');
var pstyle = ( '0' != path ) ? 'display:none;' : ''; // subPage style
var name = $p.attr('name');
var type = $p.attr('type'); //text, 2d or 3d
- var flavour = $p.attr('flavour'); // sub design choice
+ 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') + ';';
if( wstyle != '' ) wstyle = 'style="' + wstyle + '"';
@@ -67,9 +67,12 @@
var container = $( '<div class="clearfix"/>' );
container.append( '<h1>' + name + '</h1>' );
$( childs ).each( function(i){
- container.append( create_pages(childs[i], path + '_' + i ) );
+ container.append( create_pages( childs[i], path + '_' + i, flavour ) );
} );
- $('#pages').prepend( $( '<div class="page" id="' + path + '" style="'+pstyle+';"/>' ).append(container) );
+ var subpage = $( '<div class="page" id="' + path + '" style="'+pstyle+';"/>' );
+ subpage.append(container);
+ if( flavour ) subpage.addClass( 'flavour_' + flavour );
+ $('#pages').prepend( subpage );
return ret_val;
},
attributes: {
Modified: CometVisu/trunk/visu/lib/templateengine.js
===================================================================
--- CometVisu/trunk/visu/lib/templateengine.js 2011-02-27 15:58:17 UTC (rev 306)
+++ CometVisu/trunk/visu/lib/templateengine.js 2011-02-27 17:17:00 UTC (rev 307)
@@ -252,10 +252,10 @@
$("#pages").triggerHandler("done");
}
-function create_pages( page, path ) {
+function create_pages( page, path, flavour ) {
var creator = design.getCreator(page.nodeName);
- var retval = creator.create(page, path);
+ var retval = creator.create(page, path, flavour);
node = $(page).get(0);
var attributes = {};
Modified: CometVisu/trunk/visu/visu_config_demo.xml
===================================================================
--- CometVisu/trunk/visu/visu_config_demo.xml 2011-02-27 15:58:17 UTC (rev 306)
+++ CometVisu/trunk/visu/visu_config_demo.xml 2011-02-27 17:17:00 UTC (rev 307)
@@ -19,6 +19,13 @@
<entry value="0">Null</entry>
<entry range_min="0" range_max="1e99">Positiv</entry>
</mapping>
+ <mapping name="KonnexHVAC">
+ <entry value="auto">Auto</entry>
+ <entry value="comfort">Komfort</entry>
+ <entry value="standby">Stand By</entry>
+ <entry value="economy">Economy</entry>
+ <entry value="building_protection">Haus-Schutz</entry>
+ </mapping>
</mappings>
<stylings>
<styling name="RedGreen">
@@ -86,6 +93,10 @@
<label>KONNEX Betriebsart</label>
<address transform="DPT:20.102" readonly="false" type="">3/1/50</address>
</multitrigger>
+ <info mapping="KonnexHVAC">
+ <label>Betriebsart</label>
+ <address transform="DPT:20.102" type="">3/1/50</address>
+ </info>
<line/>
<image src="icon/comet_128_ff8000.png" width="500px" height="46px"/>
<image src="http://www.e-zeeinternet.com/count.php?page=546016&style=default&nbdigits=9&reloads=1" refresh="10">
@@ -95,12 +106,76 @@
<page name="iframe Test" align="center" >
<iframe src="http://www.cometvisu.org" width="500px" height="500px"/>
</page>
+ <page name="Flavour Test" align="center" >
+ <text>The flavours define a page specific look for a choosen design.
+ The CometVisu's pure design was inspired by the colors that a comet out of
+ that material would shine in.
+ </text>
+ <page name="Flavour: Antimony" align="center" flavour="antimony">
+ <text align="center">CometVisu Antimony flavour</text>
+ <line/>
+ <page name="Subpage">
+ <text>An empty page</text>
+ <line/>
+ </page>
+ </page>
+ <page name="Flavour: Boron" align="center" flavour="boron">
+ <text align="center">CometVisu Boron flavour</text>
+ <line/>
+ <page name="Subpage">
+ <text>An empty page</text>
+ <line/>
+ </page>
+ </page>
+ <page name="Flavour: Lithium" align="center" flavour="lithium">
+ <text align="center">CometVisu Lithium flavour</text>
+ <line/>
+ <page name="Subpage">
+ <text>An empty page</text>
+ <line/>
+ </page>
+ </page>
+ <page name="Flavour: Potassium" align="center" flavour="potassium">
+ <text align="center">CometVisu Potassium flavour</text>
+ <line/>
+ <page name="Subpage">
+ <text>An empty page</text>
+ <line/>
+ </page>
+ </page>
+ <page name="Flavour: Sodium" align="center" flavour="sodium">
+ <text align="center">CometVisu Sodium flavour</text>
+ <line/>
+ <page name="Subpage">
+ <text>An empty page</text>
+ <line/>
+ </page>
+ </page>
+ <line />
+ <page name="Flavour: black" align="center" flavour="black">
+ <text align="center">CometVisu black flavour</text>
+ <line/>
+ <page name="Subpage">
+ <text>An empty page</text>
+ <line/>
+ </page>
+ </page>
+ <page name="Flavour: white" align="center" flavour="white">
+ <text align="center">CometVisu white flavour</text>
+ <line/>
+ <page name="Subpage">
+ <text>An empty page</text>
+ <line/>
+ </page>
+ </page>
+ </page>
<colorchooser>
A colorChooser
1/2/59
1/2/60
1/2/61
</colorchooser>
+ <break/>
<info format="%.2f">
<label>R</label>
<address transform="DPT:5.001" type="">1/2/59</address>
@@ -127,6 +202,5 @@
</slide>
<diagram_popup rrd="200_DALI_Linie_1_Strom" unit="mA" series="day" refresh="300">DALI Strom L1</diagram_popup>
<diagram_inline rrd="200_DALI_Linie_1_Strom" width="600" height="400"/>
- <designtoggle/>
</page>
</pages>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-02-27 21:00:57
|
Revision: 309
http://openautomation.svn.sourceforge.net/openautomation/?rev=309&view=rev
Author: mayerch
Date: 2011-02-27 21:00:50 +0000 (Sun, 27 Feb 2011)
Log Message:
-----------
2 new transforms: DPT:10.001 and DPT:11.001 for KNX time and date
Note: only the decoding, the encoding is currently missing
Modified Paths:
--------------
CometVisu/trunk/visu/designs/structure_pure.js
CometVisu/trunk/visu/transforms/transform_knx.js
Modified: CometVisu/trunk/visu/designs/structure_pure.js
===================================================================
--- CometVisu/trunk/visu/designs/structure_pure.js 2011-02-27 17:39:50 UTC (rev 308)
+++ CometVisu/trunk/visu/designs/structure_pure.js 2011-02-27 21:00:50 UTC (rev 309)
@@ -762,7 +762,20 @@
if( element.data( 'format' ) )
value = sprintf( element.data( 'format' ), value );
element.data( 'value', value );
- element.find('.value').text( map( value, element ) );
+ value = map( value, element );
+ if( value.constructor == Date )
+ {
+ switch( thisTransform ) // special case for KNX
+ {
+ case 'DPT:10.001':
+ value = value.toLocaleTimeString();
+ break;
+ case 'DPT:11.001':
+ value = value.toLocaleDateString();
+ break;
+ }
+ }
+ element.find('.value').text( value );
var styling = element.data('styling');
if( styling && stylings[styling] && (stylings[styling][value] || stylings[styling]['range']) )
Modified: CometVisu/trunk/visu/transforms/transform_knx.js
===================================================================
--- CometVisu/trunk/visu/transforms/transform_knx.js 2011-02-27 17:39:50 UTC (rev 308)
+++ CometVisu/trunk/visu/transforms/transform_knx.js 2011-02-27 21:00:50 UTC (rev 309)
@@ -174,6 +174,41 @@
link : '9.001'
},
+ '10.001' : {
+ name : 'DPT_TimeOfDay',
+ encode: function( phy ){
+ // FIXME
+ },
+ decode: function( hex ){
+ var date = new Date(); // assume today
+ date.setHours ( parseInt(hex.substr(0,2),16) & 0x1F );
+ date.setMinutes( parseInt(hex.substr(2,2),16) );
+ date.setSeconds( parseInt(hex.substr(4,2),16) );
+ // as KNX thinks the day of the week belongs to the time, but JavaScript
+ // doesn't, tweak the date till it fits...
+ var day = (parseInt(hex.substr(0,2),16) & 0xE0) >> 5;
+ if( day > 0 )
+ {
+ var dayShift = (day - date.getDay()) % 7;
+ date.setDate( date.getDate() + dayShift );
+ }
+ return date;
+ }
+ },
+
+ '11.001' : {
+ name : 'DPT_Date',
+ encode: function( phy ){
+ // FIXME
+ },
+ decode: function( hex ){
+ var year = parseInt(hex.substr(4,2),16) & 0x7F;
+ return new Date(year < 90 ? year+2000 : year+1900, //1990 - 2089
+ (parseInt(hex.substr(2,2),16) & 0x0F) - 1,
+ parseInt(hex.substr(0,2),16) & 0x1F);
+ }
+ },
+
'12.001' : {
name : 'DPT_Value_4_Ucount',
encode: function( phy ){
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|