diff modules/object.tp @ 332:ead24192ed45

Initial work on a UI module
author Michael Pavone <pavone@retrodev.com>
date Sat, 28 Mar 2015 14:21:22 -0700
parents b74956a2196f
children
line wrap: on
line diff
--- a/modules/object.tp	Sat Mar 28 14:21:04 2015 -0700
+++ b/modules/object.tp	Sat Mar 28 14:21:22 2015 -0700
@@ -68,6 +68,14 @@
 		} andCode: :methodId :obj {
 			mcall: (methodId num) 1 obj
 		}
+		
+		llMessage: setProperty:on:to withVars: {
+			obj <- object ptr
+			methodId <- obj_int32 ptr
+			val <- object ptr
+		} andCode: :methodId :obj :val {
+			mcall: (methodId num) 1 obj val
+		}
 	}
 	getMethodDict <- {
 		methodDict <- dict hash
@@ -114,9 +122,16 @@
 
 		sendMessage:to <- :message :obj {
 			d <- getMethodDict:
-			d ifget: message :messageId{
+			d ifget: message :messageId {
 				rt sendMessage: messageId to: obj
 			} else: { false }
 		}
+		
+		setProperty:on:to <- :message :obj :val {
+			d <- getMethodDict:
+			d ifget: (message. "!") :messageId {
+				rt setProperty: messageId on: obj to: val
+			} else: { false }
+		}
 	}
 }