java.net: Wiki

The Source for Java Technology Collaboration


 <<O>>  Difference Topic JMakiTreeDataModel (26 - 01 Oct 2008 - Main.gmurray71)
Line: 1 to 1
 
META TOPICPARENT name="JMakiDataModels"

jMaki Tree Model Specification

Line: 180 to 180
 Expands the node with nodeId and all parent nodes so it will become visible.
Changed:
<
<
jmaki.publish("/dojo/tree/colapseNode", {targetId : 'root'});
>
>
jmaki.publish("/dojo/tree/collapseNode", {targetId : 'root'});
 

Add Nodes:


 <<O>>  Difference Topic JMakiTreeDataModel (25 - 06 Jun 2008 - Main.carlavmott)
Line: 1 to 1
 
META TOPICPARENT name="JMakiDataModels"

jMaki Tree Model Specification

Line: 48 to 48
 children ::= "'children'" ":" "[" ... "]"
Added:
>
>
JSON schema format is:
 {
       "description" : "jMaki Tree",
         "type":"object",
         "properties": { 
          "tree" : {
             "type" : "object", 
                 "properties" : {
                    "id" : {"type": "string", "optional":true},
                  "label" : {"type": "string"},
                  "expanded" : {"type": "boolean","optional":true, "default":true},
                  "action" :  {"type" : "object","optional":true,
                        "properties": {
                           "topic": {"type" : "string", "optional" : true},
                            "message": {"type" : "string", "optional" : true}  
                        }
                  }        
                   },
                   "children" : {"type" : "object",
                   "properties": { 
                          "id" : {"type": "string", "optional":true},
                        "label" : {"type": "string"},
                        "expanded" : {"type": "boolean","optional":true, "default":true},
                        "action" :  {"type" : "object","optional":true,
                              "properties": {
                                 "topic": {"type" : "string", "optional" : true},
                                  "message": {"type" : ["string","object"],, "optional" : true}  
                              } 
                        }     
                   }                 
                   } // children
                 }
           }
          }
 

(2.1) Property Descriptions

The tree element represents an individual node in the underlying tree data structure. The outermost tree element identifies the single root node of the tree.


 <<O>>  Difference Topic JMakiTreeDataModel (24 - 22 Feb 2008 - Main.carlavmott)
Line: 1 to 1
 
META TOPICPARENT name="JMakiDataModels"

jMaki Tree Model Specification

Line: 71 to 71
 The tree widgets supporting the event model all have the following handlers accessible through the action property. Below is the list of handlers and the expected payload described in this model. You will also find examples on usage. Coomands occur on the widget so they are a way to manipulate the widget itself.

Commands Payload (object literal)
Changed:
<
<
addNodes {targetId: <string> , value: tree}]
>
>
addNodes {targetId: <string> , value: tree}
 
collapseNode {targetId , <string>}
expandNode {targetId , <string>}
Changed:
<
<
removeNode { targetId , <string>]}
>
>
removeNode { targetId , <string>}
 
removeChildren {targetId , <string>}
collapseAll  
expandAll  

 <<O>>  Difference Topic JMakiTreeDataModel (23 - 25 Jan 2008 - Main.carlavmott)
Line: 1 to 1
 
META TOPICPARENT name="JMakiDataModels"

jMaki Tree Model Specification

Line: 68 to 68
 

(2.1) Subscribe Events

Changed:
<
<
Event Type Argument (object literal)
addNodes {targetId , <value>}]
collapseNode {targetId , <targetId>}
expandNode {targetId , <targetId>}
removeNode { targetId , <targetId>]}
removeChildren {targetId , <targetId>}
>
>
The tree widgets supporting the event model all have the following handlers accessible through the action property. Below is the list of handlers and the expected payload described in this model. You will also find examples on usage. Coomands occur on the widget so they are a way to manipulate the widget itself.

Commands Payload (object literal)
addNodes {targetId: <string> , value: tree}]
collapseNode {targetId , <string>}
expandNode {targetId , <string>}
removeNode { targetId , <string>]}
removeChildren {targetId , <string>}
 
collapseAll  
expandAll  
Line: 165 to 167
 Following are the events published by a tree.
Changed:
<
<
Event type Argument (object literal) Event
>
>
Event type Payload (object literal) Event
 
onClick { widgetId : widget id, type : 'onClick', targetId: <tree>}] When the user clicks on a leaf node that does not have an action assoicated to it.
onCollapse { widgetId : widget id, type : 'onCollapse', targetId : <targetId>} When a user collapses a node.
onExpand { widgetId : widget id, type : 'onExpand', targetId : <targetId>} When a user expands a node

 <<O>>  Difference Topic JMakiTreeDataModel (22 - 01 Sep 2007 - Main.qxo)
Line: 1 to 1
 
META TOPICPARENT name="JMakiDataModels"

jMaki Tree Model Specification

Line: 74 to 74
 
expandNode {targetId , <targetId>}
removeNode { targetId , <targetId>]}
removeChildren {targetId , <targetId>}
Added:
>
>
collapseAll  
expandAll  
 Events are based on the following value:

 <<O>>  Difference Topic JMakiTreeDataModel (21 - 27 Aug 2007 - Main.gmurray71)
Line: 1 to 1
 
META TOPICPARENT name="JMakiDataModels"

jMaki Tree Model Specification

Line: 103 to 103
  id : 'node_1_2', children : [ {
Changed:
<
<
title : 'Node 3.1',
>
>
label : 'Node 3.1',
  id : 'foo', children : [ {label : 'Last Leaf'}

 <<O>>  Difference Topic JMakiTreeDataModel (20 - 24 Aug 2007 - Main.SarahBreen)
Line: 1 to 1
Added:
>
>
META TOPICPARENT name="JMakiDataModels"
 

jMaki Tree Model Specification

Main data model page


 <<O>>  Difference Topic JMakiTreeDataModel (19 - 15 Aug 2007 - Main.gmurray71)
Line: 1 to 1
 

jMaki Tree Model Specification

Main data model page

Line: 23 to 23
  { label : 'Node 1.2', 'children : [ { label : 'Node 3.1',
Changed:
<
<
action : { message :'foo'}}
>
>
action : { message : { targetId : 'bar'}} }
  ] } ]
Line: 36 to 37
 The value property of a tree widget, no matter how it is created, must be a well formed JSON value that conforms to the following BNF description:
Changed:
<
<
tree ::= "{" [ <expanded> ] [ ( <action> | <children> ) ] "}"</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">tree ::= "{" <label> [ <expanded> ] [ ( <action> | <children> ) ] "}"</td></tr><tr><td> </td><td class="twikiDiffUnchangedText">label ::= "'label'" ":" <string> expanded ::= "'expanded'" ":" ( true | false ) action ::= "action:" "{" [<topic>] [<message> ] "},"</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 67 to 68</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h3><a name="2_1_Subscribe_Events"></a><a name="_2_1_Subscribe_Events"></a> (2.1) Subscribe Events </h3> <p /> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> Event Type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> Argument (object literal) </td></tr> </table></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> addNodes </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> {nodeId: <tree>}] </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> collapse </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> {nodeId : <nodeId>} </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> expand </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> {nodeId : <nodeId>} </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> removeNode </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> { nodeId: <nodeId>]} </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> removeChildren </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> {nodeId : <nodeId>} </td></tr> </table></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> addNodes </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> {targetId , <value>}] </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> collapseNode </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> {targetId , <targetId>} </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> expandNode </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> {targetId , <targetId>} </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> removeNode </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> { targetId , <targetId>]} </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> removeChildren </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> {targetId , <targetId>} </td></tr> </table></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">Events are based on the following value:</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 84 to 85</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> children : [ { label : 'Node 1.0',</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> id : 'node 1.0',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> id : 'bar',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> }, { label : 'Node 1.1',</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 119 to 120</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">Remove Node:</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> jmaki.publish("/dojo/tree/removeNode", {tartgetId : 'foo'});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> jmaki.publish("/dojo/tree/removeNode", {tartgetId : 'bar'});</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim> <p /> All nodes including the node with nodeId will be removed.</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> jmaki.publish("/dojo/tree/removeChildren", {targetId : 'foo'});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> jmaki.publish("/dojo/tree/removeChildren", {targetId : 'bar'});</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim> <p /> Removes all children under a given node with targetId.</td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=18">18</a> - 08 Aug 2007 - Main.carlavmott) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <a href="http://wiki.java.net/bin/view/Projects/jMakiDataModels" target="_top">Main data model page</a></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 39 to 39</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">tree ::= "{" <title> [ <expanded> ] [ ( <action> | <children> ) ] "}" label ::= "'label'" ":" <string> expanded ::= "'expanded'" ":" ( true | false )</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">action ::= "action:" "{" [<topic>] <message> "},"</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">action ::= "action:" "{" [<topic>] [<message> ] "},"</td></tr><tr><td> </td><td class="twikiDiffUnchangedText">topic ::= "topic:" <string>, message ::= "message:" <obj> obj ::= <string> | <JavaScript object literal></td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=17">17</a> - 03 Aug 2007 - Main.gmurray71) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <a href="http://wiki.java.net/bin/view/Projects/jMakiDataModels" target="_top">Main data model page</a></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 64 to 64</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h2><a name="3_Events"></a><a name="_3_Events"></a> (3) Events </h2></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"><h3><a name="2_1_Subcribe_Events"></a><a name="_2_1_Subcribe_Events"></a> (2.1) Subcribe Events </h3></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><h3><a name="2_1_Subscribe_Events"></a><a name="_2_1_Subscribe_Events"></a> (2.1) Subscribe Events </h3></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> Event Type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> Argument (object literal) </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> addNodes </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiLast"> {nodeId: <tree>}] </td></tr> </table></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 80 to 80</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> root : { title : 'Default Tree Root Node', expanded : true,</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> targetId : 'root',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> id : 'root',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> children : [ { label : 'Node 1.0',</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 93 to 93</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> { label : 'Node 1.1.1'} ], action : {</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> message : ''"</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> message : ''</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> } }, { </td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=16">16</a> - 27 Jul 2007 - Main.carlavmott) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <a href="http://wiki.java.net/bin/view/Projects/jMakiDataModels" target="_top">Main data model page</a></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 84 to 84</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> children : [ { label : 'Node 1.0',</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> targetId : 'node 1.0',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> id : 'node 1.0',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> }, { label : 'Node 1.1',</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> targetId : 'node 1.1',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> id : 'node 1.1',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> children : [ { label : 'Node 1.1.1'} ],</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 98 to 98</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> }, { label : 'Node 1.2',</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> targetId : 'node_1_2',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> id : 'node_1_2',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> children : [ { title : 'Node 3.1',</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> targetId : 'foo',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> id : 'foo',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> children : [ {label : 'Last Leaf'} ]</td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=15">15</a> - 25 Jul 2007 - Main.carlavmott) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <a href="http://wiki.java.net/bin/view/Projects/jMakiDataModels" target="_top">Main data model page</a></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 164 to 164</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> Event type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> Argument (object literal) </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> Event </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onClick </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onClick', targetId: <tree>}] </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> When the user clicks on a leaf node that does not have an action assoicated to it. </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> onCollapse </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> { widgetId : widget id, type : 'onCollapse', targetId : <targetId>} </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> When a user collapses a node. </td></tr> </table></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> onExpand </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> { widgetId : widget id, type : 'onExpand', targetId : <ntargetId>} </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> When a user expands a node </td></tr> </table></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> onExpand </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> { widgetId : widget id, type : 'onExpand', targetId : <targetId>} </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> When a user expands a node </td></tr> </table></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">In each case the the Event type is appended to topic when the event is published.</td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=14">14</a> - 25 Jul 2007 - Main.carlavmott) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <a href="http://wiki.java.net/bin/view/Projects/jMakiDataModels" target="_top">Main data model page</a></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 119 to 119</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">Remove Node:</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> jmaki.publish("/dojo/tree/removeNode", {nodeId : 'foo'});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> jmaki.publish("/dojo/tree/removeNode", {tartgetId : 'foo'});</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim> <p /> All nodes including the node with nodeId will be removed.</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> jmaki.publish("/dojo/tree/removeChildren", {nodeId : 'foo'});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> jmaki.publish("/dojo/tree/removeChildren", {targetId : 'foo'});</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">Removes all children under a given node with nodeId.</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">Removes all children under a given node with targetId.</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> jmaki.publish("/dojo/tree/expandNode", {nodeId : 'root'});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> jmaki.publish("/dojo/tree/expandNode", {tartgetId : 'root'});</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim> <p /> Expands the node with nodeId and all parent nodes so it will become visible.</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> jmaki.publish("/dojo/tree/colapseNode", {nodeId : 'root'});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> jmaki.publish("/dojo/tree/colapseNode", {targetId : 'root'});</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim> <p /> Add Nodes:</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 152 to 152</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> ] };</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> jmaki.publish("/dojo/tree/addNodes", {nodeId : 'foo', value : node});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> jmaki.publish("/dojo/tree/addNodes", {targetId : 'foo', value : node});</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">Adds a graft or sub-tree of nodes under the node with nodeId. </td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">Adds a graft or sub-tree of nodes under the node with targetId. </td></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h3><a name="2_1_Publish_Events"></a><a name="_2_1_Publish_Events"></a> (2.1) Publish Events </h3> <p /> Following are the events published by a tree. <p /> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> Event type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> Argument (object literal) </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> Event </td></tr> </table></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onClick </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onClick', nodeId: <tree>}] </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> When the user clicks on a leaf node that does not have an action assoicated to it. </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onCollapse </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onCollapse', nodeId : <nodeId>} </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> When a user collapses a node. </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> onExpand </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> { widgetId : widget id, type : 'onExpand', nodeId : <nodeId>} </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> When a user expands a node </td></tr> </table></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onClick </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onClick', targetId: <tree>}] </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> When the user clicks on a leaf node that does not have an action assoicated to it. </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onCollapse </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onCollapse', targetId : <targetId>} </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> When a user collapses a node. </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> onExpand </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> { widgetId : widget id, type : 'onExpand', targetId : <ntargetId>} </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> When a user expands a node </td></tr> </table></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">In each case the the Event type is appended to topic when the event is published.</td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=13">13</a> - 25 Jul 2007 - Main.carlavmott) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <a href="http://wiki.java.net/bin/view/Projects/jMakiDataModels" target="_top">Main data model page</a></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 80 to 80</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> root : { title : 'Default Tree Root Node', expanded : true,</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> id : 'root',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> targetId : 'root',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> children : [ { label : 'Node 1.0',</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> id : 'node 1.0',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> targetId : 'node 1.0',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> }, { label : 'Node 1.1',</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> id : 'node 1.1',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> targetId : 'node 1.1',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> children : [ { label : 'Node 1.1.1'} ],</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 98 to 98</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> }, { label : 'Node 1.2',</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> id : 'node_1_2',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> targetId : 'node_1_2',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> children : [ { title : 'Node 3.1',</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> id : 'foo',</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> targetId : 'foo',</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> children : [ {label : 'Last Leaf'} ]</td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=12">12</a> - 23 Jul 2007 - Main.gmurray71) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <a href="http://wiki.java.net/bin/view/Projects/jMakiDataModels" target="_top">Main data model page</a></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 7 to 7</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h2><a name="1_Introduction"></a><a name="_1_Introduction"></a> (1) Introduction </h2></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"><h3><a name="1_1_Background"></a><a name="_1_1_Background"></a> (1.1) Background </h3></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">The tree data model represtens all the common acctions that can occur with tree widgets.</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h3><a name="1_2_Examples"></a><a name="_1_2_Examples"></a> (1.2) Examples </h3></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 67 to 66</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h3><a name="2_1_Subcribe_Events"></a><a name="_2_1_Subcribe_Events"></a> (2.1) Subcribe Events </h3></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> event type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> argument (object literal) </td></tr> </table></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> Event Type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> Argument (object literal) </td></tr> </table></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> addNodes </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> {nodeId: <tree>}] </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> collapse </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> {nodeId : <nodeId>} </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> expand </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> {nodeId : <nodeId>} </td></tr> </table></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 117 to 116</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">Here is some glue code for that uses Yahoo buttons to fire the events.</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">Remove Node:</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#FFD7D7" class="twikiDiffDeletedHeader"><b> Deleted: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">// Remove a Node jmaki.subscribe("/yahoo/button2/*", function() { jmaki.log("Tree remove");</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> jmaki.publish("/dojo/tree/removeNode", {nodeId : 'foo'});</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"></verbatim></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">// Remove a Node's chidlren jmaki.subscribe("/yahoo/button5/*", function() { jmaki.log("Tree remove Children");</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">All nodes including the node with nodeId will be removed.</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> jmaki.publish("/dojo/tree/removeChildren", {nodeId : 'foo'});</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"></verbatim> <p /> Removes all children under a given node with nodeId.</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">// Expand a Node jmaki.subscribe("/yahoo/button3/*", function() { jmaki.log("Tree expand");</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> jmaki.publish("/dojo/tree/expandNode", {nodeId : 'root'});</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"></verbatim></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">Expands the node with nodeId and all parent nodes so it will become visible.</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">// Collapse a Node jmaki.subscribe("/yahoo/button4/*", function() { jmaki.log("Tree expand");</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> jmaki.publish("/dojo/tree/colapseNode", {nodeId : 'root'});</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">});</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"></verbatim> <p /> Add Nodes:</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">// Add a Node Graft to a Node jmaki.subscribe("/yahoo/button/*", function() { jmaki.log("Tree add");</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> var node = { label : 'Graft', expanded : true,</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 153 to 150</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> {label : 'Graft .1'}, {label : 'Graft .2'} ]</td></tr><tr><td colspan="9" bgcolor="#FFD7D7" class="twikiDiffDeletedHeader"><b> Deleted: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> </td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> };</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> jmaki.publish("/dojo/tree/addNodes", {nodeId : 'root', value : node}); });</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> jmaki.publish("/dojo/tree/addNodes", {nodeId : 'foo', value : node});</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">Adds a graft or sub-tree of nodes under the node with nodeId. </td></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h3><a name="2_1_Publish_Events"></a><a name="_2_1_Publish_Events"></a> (2.1) Publish Events </h3></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> event type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> argument (object literal) </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onClick </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onClick', nodeId: <tree>}] </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onCollapse </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onCollapse', nodeId : <nodeId>} </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> onExpand </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiLast"> { widgetId : widget id, type : 'onExpand', nodeId : <nodeId>} </td></tr> </table></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">Following are the events published by a tree. <p /> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> Event type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> Argument (object literal) </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> Event </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onClick </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onClick', nodeId: <tree>}] </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> When the user clicks on a leaf node that does not have an action assoicated to it. </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onCollapse </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onCollapse', nodeId : <nodeId>} </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> When a user collapses a node. </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> onExpand </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiLast"> { widgetId : widget id, type : 'onExpand', nodeId : <nodeId>} </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiLast"> When a user expands a node </td></tr> </table> <p /> In each case the the Event type is appended to topic when the event is published. <p /> In the case of a widget with "publish" set to "/dojo/tree" a "onClick" event will be published to "/dojo/tree/onClick". <p /> Last modified by :</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">-- Main.gmurray71 - 19 July 2007</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">-- Main.gmurray71 - 22 July 2007</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=11">11</a> - 23 Jul 2007 - Main.gmurray71) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <a href="http://wiki.java.net/bin/view/Projects/jMakiDataModels" target="_top">Main data model page</a></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 38 to 38</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><pre> tree ::= "{" <title> [ <expanded> ] [ ( <action> | <children> ) ] "}"</pre></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">title ::= "'title'" ":" <string></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">label ::= "'label'" ":" <string></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">expanded ::= "'expanded'" ":" ( true | false ) action ::= "action:" "{" [<topic>] <message> "}," topic ::= "topic:" <string>,</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 52 to 52</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">The <code><b>tree</b></code> element represents an individual node in the underlying tree data structure. The outermost <code><b>tree</b></code> element identifies the single root node of the tree. As you will see below, the <code><b>children</b></code> element allows nodes to be nested to an arbitrary level. Note that there are no restrictions on the order of subordinate elements.</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">The <code><b>title</b></code> element defines the text that will be displayed for this particular node. This element is required.</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">The <code><b>label</b></code> element defines the text that will be displayed for this particular node. This element is required.</td></tr><tr><td> </td><td class="twikiDiffUnchangedText">The <code><b>expanded</b></code> element declares whether the children underneath this node will be initially visible or not. If not included, this element defaults to <code><b>true</b></code> for the top level node in the tree, and defaults to <code><b>false</b></code> for subordinate nodes.</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 65 to 65</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h2><a name="3_Events"></a><a name="_3_Events"></a> (3) Events </h2></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><h3><a name="2_1_Subcribe_Events"></a><a name="_2_1_Subcribe_Events"></a> (2.1) Subcribe Events </h3></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> event type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> argument (object literal) </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> addNodes </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> {nodeId: <tree>}] </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> collapse </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiLast"> {nodeId : <nodeId>} </td></tr> </table></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 159 to 159</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">}); </verbatim></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><h3><a name="2_1_Publish_Events"></a><a name="_2_1_Publish_Events"></a> (2.1) Publish Events </h3> <p /> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> event type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> argument (object literal) </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onClick </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onClick', nodeId: <tree>}] </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> onCollapse </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> { widgetId : widget id, type : 'onCollapse', nodeId : <nodeId>} </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> onExpand </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiLast"> { widgetId : widget id, type : 'onExpand', nodeId : <nodeId>} </td></tr> </table></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">-- Main.gmurray71 - 19 July 2007</td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=10">10</a> - 23 Jul 2007 - Main.gmurray71) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <a href="http://wiki.java.net/bin/view/Projects/jMakiDataModels" target="_top">Main data model page</a></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 64 to 64</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">It is <strong>not</strong> legal to have both an <code><b>action</b></code> element and a <code><b>children</b></code> element on the same node. <p /> <h2><a name="3_Events"></a><a name="_3_Events"></a> (3) Events </h2></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> <table style="border-width:1px;" cellspacing="1" cellpadding="0" class="twikiTable" border="1"><tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> event type </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> argument (object literal) </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> addNodes </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> {nodeId: <tree>}] </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> collapse </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> {nodeId : <nodeId>} </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol"> expand </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;"> {nodeId : <nodeId>} </td></tr> <tr class="twikiTableEven"><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;" class="twikiFirstCol"> removeNode </td><td bgcolor="#e8e8e8" valign="top" style="vertical-align:top;"> { nodeId: <nodeId>]} </td></tr> <tr class="twikiTableOdd"><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiFirstCol twikiLast"> removeChildren </td><td bgcolor="#FFFFFF" valign="top" style="vertical-align:top;" class="twikiLast"> {nodeId : <nodeId>} </td></tr> </table> <p /></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">Events are based on the following value:</td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=9">9</a> - 23 Jul 2007 - Main.gmurray71) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><a href="http://wiki.java.net/bin/view/Projects/jMakiDataModels" target="_top">Main data model page</a></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"><div class="twikiToc"> <ul> <li> <a href="#1_Introduction"> (1) Introduction</a> </li></ul> </div> <p /> <h2><a name="1_Introduction"></a><a name="_1_Introduction"></a> (1) Introduction </h2></td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=8">8</a> - 19 Jul 2007 - Main.gmurray71) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <div class="twikiToc"> <ul> <li> <a href="#jMaki_Tree_Model_Specification"> jMaki Tree Model Specification</a> </li></ul> </div></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 62 to 62</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">It is <strong>not</strong> legal to have both an <code><b>action</b></code> element and a <code><b>children</b></code> element on the same node. <p /> <h2><a name="3_Events"></a><a name="_3_Events"></a> (3) Events </h2></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">Events are based on the following value:</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">Add a reload event to rebuild a tree based on a data or a pointer ot an updated dataset.</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><pre> { root : { title : 'Default Tree Root Node', expanded : true, id : 'root', children : [ { label : 'Node 1.0', id : 'node 1.0', }, { label : 'Node 1.1', id : 'node 1.1', children : [ { label : 'Node 1.1.1'} ], action : { message : ''" } }, { label : 'Node 1.2', id : 'node_1_2', children : [ { title : 'Node 3.1', id : 'foo', children : [ {label : 'Last Leaf'} ] } ] } ] } } </pre> <p /> Here is some glue code for that uses Yahoo buttons to fire the events.</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">Add ability to add / remove nodes to the tree using xpath like expressions to identify the node</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><pre> // Remove a Node jmaki.subscribe("/yahoo/button2/*", function() { jmaki.log("Tree remove"); jmaki.publish("/dojo/tree/removeNode", {nodeId : 'foo'}); }); // Remove a Node's chidlren jmaki.subscribe("/yahoo/button5/*", function() { jmaki.log("Tree remove Children"); jmaki.publish("/dojo/tree/removeChildren", {nodeId : 'foo'}); }); // Expand a Node jmaki.subscribe("/yahoo/button3/*", function() { jmaki.log("Tree expand"); jmaki.publish("/dojo/tree/expandNode", {nodeId : 'root'}); }); // Collapse a Node jmaki.subscribe("/yahoo/button4/*", function() { jmaki.log("Tree expand"); jmaki.publish("/dojo/tree/colapseNode", {nodeId : 'root'}); }); // Add a Node Graft to a Node jmaki.subscribe("/yahoo/button/*", function() { jmaki.log("Tree add"); var node = { label : 'Graft', expanded : true, children : [ {label : 'Graft .1'}, {label : 'Graft .2'} ] }; jmaki.publish("/dojo/tree/addNodes", {nodeId : 'root', value : node}); }); </pre></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">-- Main.gmurray71 - 18 July 2007</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">-- Main.gmurray71 - 19 July 2007</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=7">7</a> - 19 Jul 2007 - Main.gmurray71) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <div class="twikiToc"> <ul> <li> <a href="#jMaki_Tree_Model_Specification"> jMaki Tree Model Specification</a> </li></ul> </div></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 61 to 61</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">The <code><b>children</b></code> element contains an array of <code><b>tree</b></code> subelements that represent the child nodes underneath this node. If not present, this node will have no children. It is <strong>not</strong> legal to have both an <code><b>action</b></code> element and a <code><b>children</b></code> element on the same node.</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"><h2><a name="3_Event_Handling"></a><a name="_3_Event_Handling"></a> (3) Event Handling </h2></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><h2><a name="3_Events"></a><a name="_3_Events"></a> (3) Events </h2></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">Add a reload event to rebuild a tree based on a data or a pointer ot an updated dataset. <p /> Add ability to add / remove nodes to the tree using xpath like expressions to identify the node</td></tr><tr><td colspan="9" bgcolor="#FFD7D7" class="twikiDiffDeletedHeader"><b> Deleted: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"><h2><a name="4_Other_Behaviors"></a><a name="_4_Other_Behaviors"></a> (4) Other Behaviors </h2> <p /> <p /> <h2><a name="5_Current_Implementations"></a><a name="_5_Current_Implementations"></a> (5) Current Implementations </h2></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">-- Main.gmurray71 - 18 July 2007</td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=6">6</a> - 19 Jul 2007 - Main.gmurray71) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <div class="twikiToc"> <ul> <li> <a href="#jMaki_Tree_Model_Specification"> jMaki Tree Model Specification</a> </li></ul> </div></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 10 to 10</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h3><a name="1_2_Examples"></a><a name="_1_2_Examples"></a> (1.2) Examples </h3></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">In a JSP page, you might use a tree widget like this:</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">The model for a tree widget like this:</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"><pre> {</pre></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 32 to 32</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h2><a name="2_Data_Model"></a><a name="_2_Data_Model"></a> (2) Data Model </h2></td></tr><tr><td colspan="9" bgcolor="#FFD7D7" class="twikiDiffDeletedHeader"><b> Deleted: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"><h3><a name="2_1_Overview"></a><a name="_2_1_Overview"></a> (2.1) Overview </h3></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">The <code><b>value</b></code> property of a tree widget, no matter how it is created, must be a well formed JSON value that conforms to the following BNF description:</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 47 to 45</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">children ::= "'children'" ":" "[" <tree> ... "]" </verbatim></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">FIXME - cross reference to where common terminals are defined. <p /> <h3><a name="2_2_Element_Descriptions"></a><a name="_2_2_Element_Descriptions"></a> (2.2) Element Descriptions </h3></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><h3><a name="2_1_Property_Descriptions"></a><a name="_2_1_Property_Descriptions"></a> (2.1) Property Descriptions </h3></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">The <code><b>tree</b></code> element represents an individual node in the underlying tree data structure. The outermost <code><b>tree</b></code> element identifies the single root node of the tree. As you will see below, the <code><b>children</b></code> element allows nodes to be nested to an arbitrary level. Note that there are no restrictions on the order of subordinate elements.</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 59 to 55</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">The <code><b>expanded</b></code> element declares whether the children underneath this node will be initially visible or not. If not included, this element defaults to <code><b>true</b></code> for the top level node in the tree, and defaults to <code><b>false</b></code> for subordinate nodes.</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">The <code><b>onclick</b></code> element defines the required behavior if the user clicks on this node at runtime. If this element is present, a click on this node will cause navigation to the specified URL. If not present, and if this node has children, the expanded state of this node will be toggled (dynamic change on the client side only). If not present,</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">The <code><b>action</b></code> element defines the required behavior if the user clicks on this node at runtime. If this element is present, a click on this node will cause an event to be published to the topic specified using the publish property of the widget or to the topic specified as a property of the publish object. If not present, and if this node has children, the expanded state of this node will be toggled (dynamic change on the client side only). If not present,</td></tr><tr><td> </td><td class="twikiDiffUnchangedText">and this node does not have children, only the event behavior described below will occur. <p /> The <code><b>children</b></code> element contains an array of <code><b>tree</b></code> subelements that represent the child nodes underneath this node. If not present, this node will have no children.</td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=5">5</a> - 19 Jul 2007 - Main.gmurray71) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1> <p /> <div class="twikiToc"> <ul> <li> <a href="#jMaki_Tree_Model_Specification"> jMaki Tree Model Specification</a> </li></ul> </div></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 13 to 13</th></tr><tr><td> </td><td class="twikiDiffUnchangedText">In a JSP page, you might use a tree widget like this:</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> <a:widget name="yahoo.tree" args="{ 'publish' : '/jmaki/menu' }" value="{ 'tree' : { 'title' : 'Yahoo Tree Root Node', 'expanded' : true, 'children' : [ { 'title' : 'Node 1.1'}, { 'title' : 'Node 1.2', 'children' : [ { 'title' : 'Node 3.1', 'onclick' : {'url' :'foo'}}</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">{ <dl> <dt> tree</dt><dd> { label : 'Yahoo Tree Root Node', expanded : true, children : [ { label : 'Node 1.1'}, { label : 'Node 1.2', 'children : [ { label : 'Node 3.1', action : { message :'foo'}} </dd></dl> </td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> ] } ] }</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> }"/></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> }</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim> <p /> <h2><a name="2_Data_Model"></a><a name="_2_Data_Model"></a> (2) Data Model </h2></td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=4">4</a> - 19 Jul 2007 - Main.gmurray71) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">-- Main.carlavmott - 08 Jun 2007 <h3><a name="jMaki_Tree_Data_Model_discussion"></a> jMaki Tree Data Model discussion </h3></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><h1><a name="jMaki_Tree_Model_Specification"></a> jMaki Tree Model Specification </h1></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">The tree data model for jMaki release .9 is shown below:</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><div class="twikiToc"> <ul> <li> <a href="#1_Introduction"> (1) Introduction</a> <ul> <li> <a href="#1_1_Background"> (1.1) Background</a> </li> <li> <a href="#1_2_Examples"> (1.2) Examples</a> </li></ul> </li></ul> </div> <p /> <h2><a name="1_Introduction"></a><a name="_1_Introduction"></a> (1) Introduction </h2> <p /> <h3><a name="1_1_Background"></a><a name="_1_1_Background"></a> (1.1) Background </h3> <p /> <p /> <h3><a name="1_2_Examples"></a><a name="_1_2_Examples"></a> (1.2) Examples </h3> <p /> In a JSP page, you might use a tree widget like this:</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">{ 'root' : {</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> <a:widget name="yahoo.tree" args="{ 'publish' : '/jmaki/menu' }" value="{ 'tree' : {</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> 'title' : 'Yahoo Tree Root Node', 'expanded' : true, 'children' : [</td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 16 to 26</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"> { 'title' : 'Node 3.1', 'onclick' : {'url' :'foo'}} ]</td></tr><tr><td colspan="9" bgcolor="#FFD7D7" class="twikiDiffDeletedHeader"><b> Deleted: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"> }, { 'title' : 'Node 4.1'}, { 'title' : 'Node 4.2'} ]</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> }</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> ]</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"> }</td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"> }"/> </verbatim> <p /> <h2><a name="2_Data_Model"></a><a name="_2_Data_Model"></a> (2) Data Model </h2> <p /> <h3><a name="2_1_Overview"></a><a name="_2_1_Overview"></a> (2.1) Overview </h3></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">The <code><b>value</b></code> property of a tree widget, no matter how it is created, must be a well formed JSON value that conforms to the following BNF description: <p /> <pre> tree ::= "{" <title> [ <expanded> ] [ ( <action> | <children> ) ] "}" title ::= "'title'" ":" <string> expanded ::= "'expanded'" ":" ( true | false ) action ::= "action:" "{" [<topic>] <message> "}," topic ::= "topic:" <string>, message ::= "message:" <obj> obj ::= <string> | <JavaScript object literal> children ::= "'children'" ":" "[" <tree> ... "]"</pre></td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffChangedHeader"><b> Changed: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText">Pointer to <a href="/bin/view/Projects/JMakiTreeFunctionalSpec" class="twikiLink">jMakiTreeFunctionalSpec</a> for further information.</td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">FIXME - cross reference to where common terminals are defined. <p /> <h3><a name="2_2_Element_Descriptions"></a><a name="_2_2_Element_Descriptions"></a> (2.2) Element Descriptions </h3> <p /> The <code><b>tree</b></code> element represents an individual node in the underlying tree data structure. The outermost <code><b>tree</b></code> element identifies the single root node of the tree. As you will see below, the <code><b>children</b></code> element allows nodes to be nested to an arbitrary level. Note that there are no restrictions on the order of subordinate elements. <p /> The <code><b>title</b></code> element defines the text that will be displayed for this particular node. This element is required. <p /> The <code><b>expanded</b></code> element declares whether the children underneath this node will be initially visible or not. If not included, this element defaults to <code><b>true</b></code> for the top level node in the tree, and defaults to <code><b>false</b></code> for subordinate nodes. <p /> The <code><b>onclick</b></code> element defines the required behavior if the user clicks on this node at runtime. If this element is present, a click on this node will cause navigation to the specified URL. If not present, and if this node has children, the expanded state of this node will be toggled (dynamic change on the client side only). If not present, and this node does not have children, only the event behavior described below will occur. <p /> The <code><b>children</b></code> element contains an array of <code><b>tree</b></code> subelements that represent the child nodes underneath this node. If not present, this node will have no children. It is <strong>not</strong> legal to have both an <code><b>action</b></code> element and a <code><b>children</b></code> element on the same node. <p /> <h2><a name="3_Event_Handling"></a><a name="_3_Event_Handling"></a> (3) Event Handling </h2> <p /> Add a reload event to rebuild a tree based on a data or a pointer ot an updated dataset. <p /> Add ability to add / remove nodes to the tree using xpath like expressions to identify the node <p /> <h2><a name="4_Other_Behaviors"></a><a name="_4_Other_Behaviors"></a> (4) Other Behaviors </h2> <p /> <p /> <h2><a name="5_Current_Implementations"></a><a name="_5_Current_Implementations"></a> (5) Current Implementations </h2> <p /> <p /> -- Main.gmurray71 - 18 July 2007</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=3">3</a> - 13 Jun 2007 - Main.craig_mcc) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td colspan="9" bgcolor="#FFD7D7" class="twikiDiffDeletedHeader"><b> Deleted: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">-- Main.carlavmott - 08 Jun 2007 <h3><a name="jMaki_Tree_Data_Model_discussion"></a> jMaki Tree Data Model discussion </h3></td></tr><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 26 to 25</th></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">Pointer to <a href="/bin/view/Projects/JMakiTreeFunctionalSpec" class="twikiLink">jMakiTreeFunctionalSpec</a> for further information.</td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=2">2</a> - 08 Jun 2007 - Main.carlavmott) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td colspan="9" bgcolor="#FFD7D7" class="twikiDiffDeletedHeader"><b> Deleted: </b></td></tr><tr><td width="1%" bgcolor="#ff9999" valign="top" class="twikiDiffDeletedMarker"><<br /><</td><td class="twikiDiffDeletedText"></td></tr><tr><td> </td><td class="twikiDiffUnchangedText">-- Main.carlavmott - 08 Jun 2007 <h3><a name="jMaki_Tree_Data_Model_discussion"></a> jMaki Tree Data Model discussion </h3></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">The tree data model for jMaki release .9 is shown below:</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></td></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText">{ 'root' : { 'title' : 'Yahoo Tree Root Node', 'expanded' : true, 'children' : [ { 'title' : 'Node 1.1'}, { 'title' : 'Node 1.2', 'children' : [ { 'title' : 'Node 3.1', 'onclick' : {'url' :'foo'}} ] }, { 'title' : 'Node 4.1'}, { 'title' : 'Node 4.2'} ] } }</td></tr><tr><td> </td><td class="twikiDiffUnchangedText"></verbatim></td></tr></table> <br clear="all" /><table width="100%" border="3" cellpadding="0" cellspacing="0"> <tr bgcolor="#99CCFF"> <td width="99%">  <tt><b><<O>></b></tt>  Difference Topic <b><a href="/bin/view/Projects/JMakiTreeDataModel">JMakiTreeDataModel</a></b> (<a href="/bin/view/Projects/JMakiTreeDataModel?rev=1">1</a> - 08 Jun 2007 - Main.carlavmott) </td> </tr> </table> <table width="100%" cellspacing="0" cellpadding="0" class="twikiDiffTable"><tr bgcolor="#eeeeee" class="twikiDiffLineNumberHeader"><th colspan="9" align="left">Line: 1 to 1</th></tr><tr><td colspan="9" bgcolor="#D0FFD0" class="twikiDiffAddedHeader"><b> Added: </b></td></tr><tr><td width="1%" bgcolor="#ccccff" valign="top" class="twikiDiffAddedMarker">><br />></td><td class="twikiDiffAddedText"><p /> -- Main.carlavmott - 08 Jun 2007 <h3><a name="jMaki_Tree_Data_Model_discussion"></a> jMaki Tree Data Model discussion </h3> <p /> <pre> </pre></td></tr></table> <br clear="all" /><p /> <table width="100%" border="0" cellpadding="3" cellspacing="0"> <tr> <td valign="top"> Topic <b>JMakiTreeDataModel</b> . { <a href="/bin/view/Projects/JMakiTreeDataModel">View</a> | <a href="/bin/rdiff/Projects/JMakiTreeDataModel">Diffs</a> <a rel="nofollow" href="/bin/view/Projects/JMakiTreeDataModel?rev=26">r26</a> <a rel="nofollow" href="/bin/rdiff/Projects/JMakiTreeDataModel?rev1=26;rev2=25"><</a> <a rel="nofollow" href="/bin/view/Projects/JMakiTreeDataModel?rev=25">r25</a> <a rel="nofollow" href="/bin/rdiff/Projects/JMakiTreeDataModel?rev1=25;rev2=24"><</a> <a rel="nofollow" href="/bin/view/Projects/JMakiTreeDataModel?rev=24">r24</a> <a rel="nofollow" href="/bin/rdiff/Projects/JMakiTreeDataModel?rev1=24;rev2=23"><</a> <a rel="nofollow" href="/bin/view/Projects/JMakiTreeDataModel?rev=23">r23</a> | <a href="/bin/oops/Projects/JMakiTreeDataModel?template=oopsmore&param1=26&param2=26">More</a> } </td> </tr> </table> </td> </tr></table> <!-- java.net footer BEGIN --> <table border="0" cellpadding="0" cellspacing="10" width="100%"> <tr> <td>  <a href="http://today.java.net/pub/q/java_net_rss" rel="nofollow"><img src="http://today.java.net/images/xml.gif" border="0" width="36" height="14" alt="XML" align="absmiddle"></a> <b>java.net RSS</b><br /> <div class="grayline"></div> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="vatop"> <tr> <td><img src="http://today.java.net/im/a.gif" width="190" height="1" border="0" alt=" " /><br /> <a href="http://www.sun.com" rel="nofollow"><img src="http://today.java.net/im/logo_sun_small.gif" width="61" height="29" border="0" alt=" " vspace="5"/></a></td> <td width="60%" valign="top"> <div class="footer"> <a href="https://java-net.dev.java.net/feedback.html" rel="nofollow">Feedback</a>  |  <a href="http://www.java.net/faq.csp" rel="nofollow">FAQ</a>  |  <a href="http://www.java.net/terms.csp" rel="nofollow">Terms of Use</a><br /> <a href="http://www.sun.com/privacy/" rel="nofollow">Privacy</a>  |  <a href="http://www.sun.com/suntrademarks/" rel="nofollow">Trademarks</a> | <a href="https://java-net.dev.java.net/sitemap.html" rel="nofollow">Site Map</a> <br /><br /> Your use of this web site or any of its content or software indicates your agreement to be bound by these <a href="http://java.net/terms.csp" rel="nofollow">Terms of Participation</a>. <br /><br /> Copyright © 1995-2006 Sun Microsystems, Inc. </div></td> <td width="40%" valign="top" align="right"><div class="footer"> <a href="http://www.collab.net/" rel="nofollow"><img src="http://today.java.net/images/montague_logo_collabnet.gif" width="85" height="19" border="0" alt="Collabnet Logo"></a> <a href="http://www.cognisync.com" rel="nofollow"><img src="http://today.java.net/images/cognisync.jpg" border="0" alt="Cognisync Logo"></a> <br /> Powered by Sun Microsystems, Inc.,<br /> <a href="/bin/view/Projects/CollabNet" class="twikiLink">CollabNet</a> and Cognisync </div></td></tr> </table> <div class="grayline"></div> </td></tr> </table> <!-- Begin <span class="twikiNewLink">SiteCatalyst<a href="/bin/edit/Projects/SiteCatalyst?topicparent=Projects.JMakiTreeDataModel" rel="nofollow" title="Create this topic"><sup>?</sup></a></span> code --> <script language="JavaScript" src="http://www.java.net/s_code_remote.js"></script> <!-- End <span class="twikiNewLink">SiteCatalyst<a href="/bin/edit/Projects/SiteCatalyst?topicparent=Projects.JMakiTreeDataModel" rel="nofollow" title="Create this topic"><sup>?</sup></a></span> code --> <!-- java.net footer ENDS --> <p /> <p /> <a name="PageBottom"></a> </body> </html>