Revision: 3584
          http://vexi.svn.sourceforge.net/vexi/?rev=3584&view=rev
Author:   clrg
Date:     2009-08-06 16:29:14 +0000 (Thu, 06 Aug 2009)

Log Message:
-----------
- Allow direct event puts from pageflow views
- Event object now passed to view as arguments[1]

Modified Paths:
--------------
    trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/pageflow.t
    trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/state.t
    trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/view.t

Modified: trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/pageflow.t
===================================================================
--- trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/pageflow.t        
2009-08-06 02:28:54 UTC (rev 3583)
+++ trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/pageflow.t        
2009-08-06 16:29:14 UTC (rev 3584)
@@ -5,9 +5,9 @@
         <author>Michael Goodwin</author>
     </meta:doc>
     
-    static.checkEvent = function(e){
-        if(!e) throw "expected event, got null";
-        if(!e.name) throw "invalid event, name not set";
+    static.checkEvent = function(e) {
+        if (!e) throw "expected event, got null";
+        if (!e.name) throw "invalid event, name not set";
     };
     
     <ui:box v_pageflow="true">
@@ -71,22 +71,22 @@
             static.checkEvent(e);
             var name = e.name;
 
-                       if(state){
+                       if (state) {
                    var transition = state.transitions[name];
-                   if(transition==null) throw "no such transition: '" + 
name+"'"; 
+                   if (transition==null) throw "no such transition: '" + 
name+"'"; 
                    var next = transition.next;
                    if (next=="[exit]") state = null;
                    else if (next=="[self]") state = state;
                    else if (states[next] == null) throw "no such state: 
'"+next+"'";
                    else state = states[next];
-                       }else{
+                       } else {
                            // the start event
                                assert(name=="start" || name=="exit");
                        }
             cascade = e;
             vexi.thread = function() {
                 try {
-                    if (log) log("state:"+(state?state.name:null)+ " &lt;- 
event:" + e.name);//state-" + state?state.name:null );
+                    if (log) log("state:"+(state?state.name:null)+ " &lt;- 
event:" + e.name);
                     if (state) state.event = e;
                     else {
                         exit = e;

Modified: trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/state.t
===================================================================
--- trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/state.t   2009-08-06 
02:28:54 UTC (rev 3583)
+++ trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/state.t   2009-08-06 
16:29:14 UTC (rev 3584)
@@ -23,7 +23,7 @@
             var holder = pageflow.holder;
             if (holder) {
                 holder.unlock(pageflow);
-                if (view) holder[0] = view(vexi.box, [pageflow]);
+                if (view) holder[0] = view(vexi.box, [pageflow, event]);
                 else if (holder[0]) holder[0] = null;
                 holder.lock(pageflow);
             }

Modified: trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/view.t
===================================================================
--- trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/view.t    2009-08-06 
02:28:54 UTC (rev 3583)
+++ trunk/widgets/org.vexi.pageflow/src/vexi/pageflow/view.t    2009-08-06 
16:29:14 UTC (rev 3584)
@@ -7,5 +7,6 @@
     
     <ui:box>
         thisbox.pageflow = arguments[0];
+        thisbox.event ++= function(v) { pageflow.event = v; return; }
     </ui:box>
 </vexi>


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Vexi-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/vexi-svn

Reply via email to