zlb | 17 Mar 2012 17:19
Picon

SF.net SVN: quarks:[2231] FP

Revision: 2231
          http://quarks.svn.sourceforge.net/quarks/?rev=2231&view=rev
Author:   zlb-dev
Date:     2012-03-17 16:19:54 +0000 (Sat, 17 Mar 2012)
Log Message:
-----------
[FP] FPSignal - rename change to changes. Correct help file.

Modified Paths:
--------------
    FP/EventStream/EventStream.sc
    FP/EventStream/Signal.sc
    FP/HelpSource/Classes/FPSignal.schelp

Modified: FP/EventStream/EventStream.sc
===================================================================
--- FP/EventStream/EventStream.sc	2012-03-17 03:16:17 UTC (rev 2230)
+++ FP/EventStream/EventStream.sc	2012-03-17 16:19:54 UTC (rev 2231)
 <at>  <at>  -156,7 +156,7  <at>  <at> 

 HoldFPSignal : FPSignal {
 	var <now;
-	var <change;
+	var <changes;
 	var <listener;

 	*new { |eventStream, initialValue|
 <at>  <at>  -164,7 +164,7  <at>  <at> 
 	}

 	init { |eventStream, initialValue|
-		change = eventStream;
+		changes = eventStream;
 		now = initialValue;
 		listener = { |v| now = v};
 		eventStream.addListener( listener )

Modified: FP/EventStream/Signal.sc
===================================================================
--- FP/EventStream/Signal.sc	2012-03-17 03:16:17 UTC (rev 2230)
+++ FP/EventStream/Signal.sc	2012-03-17 16:19:54 UTC (rev 2231)
 <at>  <at>  -30,11 +30,11  <at>  <at> 

 	now { }

-	change { } //returns EventStream
+	changes { } //returns EventStream

 	do { |f|
 		f.(this.now);
-		this.change.do(f)
+		this.changes.do(f)
 	}

 	collect { |f|
 <at>  <at>  -66,7 +66,7  <at>  <at> 
     var <parent;
     var <listenerFunc;
     var <handler; //: (T, S) => S
-    var <change;
+    var <changes;
     var <now;

     *new{ |initialState, initialFunc|
 <at>  <at>  -76,18 +76,18  <at>  <at> 
     initChildFPSignal { |p,h, initialState, initialFunc|
     	state = initialState;
     	now = initialFunc.( initialState );
-        change = SignalChangeES();
+        changes = SignalChangeES();
         parent = p;
         handler = h;
         listenerFunc = { |value|
          	//("listnerFunc called with value: "++value).postln;
         	state = handler.value(value, state)
         };
-        parent.change.addListener( listenerFunc )
+        parent.changes.addListener( listenerFunc )
     }

     remove {
-		parent.change.removeListener( listenerFunc )
+		parent.changes.removeListener( listenerFunc )
     }

 }
 <at>  <at>  -103,7 +103,7  <at>  <at> 
         this.initChildFPSignal(parent, { |event|
             var x = f.(event);
             now = x;
-            change.fire( x );
+            changes.fire( x );
         }, Unit, { f.(parent.now) })
     }
 }
 <at>  <at>  -118,17 +118,17  <at>  <at> 
         var thunk = { |x|
         	//("thunk was called with event "++x).postln;
             now = x;
-            change.fire( x );
+            changes.fire( x );
         };
         var initialState = f.(parent.now);
-        initialState.change !? _.addListener(thunk);
+        initialState.changes !? _.addListener(thunk);
         this.initChildFPSignal(parent, { |event, lastFPSignal|
              var nextFPSignal;
              //("handler called with event "++event++" and state "++state).postln;
-             lastFPSignal.change !? _.removeListener( thunk );
+             lastFPSignal.changes !? _.removeListener( thunk );
              nextFPSignal = f.(event);
              thunk.( nextFPSignal.now );
-             nextFPSignal.change !? _.addListener( thunk );
+             nextFPSignal.changes !? _.addListener( thunk );
              nextFPSignal
         }, initialState, _.now)
     }
 <at>  <at>  -144,18 +144,18  <at>  <at> 
         var thunk = { |x|
         	//("thunk was called with event "++x).postln;
             now = x;
-            change.fire( x );
+            changes.fire( x );
         };
         var initialState = f.(parent.now);
-        initialState.change !? _.addListener(thunk);
+        initialState.changes !? _.addListener(thunk);
         this.initChildFPSignal(parent, { |event, lastFPSignal|
              var nextFPSignal;
              //("handler called with event "++event++" and state "++state).postln;
-             lastFPSignal.change !? _.removeListener( thunk );
+             lastFPSignal.changes !? _.removeListener( thunk );
              lastFPSignal.tryPerform(\remove);
              nextFPSignal = f.(event);
              thunk.( nextFPSignal.now );
-             nextFPSignal.change !? _.addListener( thunk );
+             nextFPSignal.changes !? _.addListener( thunk );
              nextFPSignal
         }, initialState, _.now)
     }
 <at>  <at>  -164,12 +164,12  <at>  <at> 
 //A signal that never changes, and therefore never fires anything;
 Val : FPSignal {
 	var <now;
-	var <change;
+	var <changes;

 	*new { |now| ^super.newCopyArgs(now).init }

 	init {
-		change = EventSource();
+		changes = EventSource();
 	}
 }

 <at>  <at>  -179,7 +179,7  <at>  <at> 

     value_ { |v|
     	now = v;
-    	change.fire(v);
+    	changes.fire(v);
     }

 }
\ No newline at end of file

Modified: FP/HelpSource/Classes/FPSignal.schelp
===================================================================
--- FP/HelpSource/Classes/FPSignal.schelp	2012-03-17 03:16:17 UTC (rev 2230)
+++ FP/HelpSource/Classes/FPSignal.schelp	2012-03-17 16:19:54 UTC (rev 2231)
 <at>  <at>  -20,12 +20,26  <at>  <at> 
 method::now
 the current value of the Signal

-method::change
+method::changes
 An EventSource which fires events every time the signal changes.

+code::
+(
+x = Var(2);
+x.changes;
+)
+::
+
 method::do
-When the Signal changes, runs f with new value of Var.
+When the Signal changes, runs f with new value.

+code::
+(
+x = Var(2);
+x.do{ |x| postln("look what I got:"++x) };
+x.value_(3);
+)
+::
 method::collect
 argument::f
 f: A => B
 <at>  <at>  -34,8 +48,7  <at>  <at> 
 (
 x = Var(2);
 y = x.collect( _*100 );
-y.now.postln;
-y.change.do(_.postln);
+y.do(_.postln);
 )

 x.value_(100)
 <at>  <at>  -49,7 +62,6  <at>  <at> 
 x = Var(1);
 y = Var(2);
 z = x.flatCollect{ |x| y.collect{ |y| [x,y] } };
-z.now.postln;
 z.do(_.postln);
 )

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

_______________________________________________
sc-dev mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: http://www.listarc.bham.ac.uk/marchives/sc-dev/
search: http://www.listarc.bham.ac.uk/lists/sc-dev/search/


Gmane