Wednesday, October 19, 2011

Work Progress - Oct 19 - Oct 25

Demo: "Stable SB app" above

Done:
* parameterized event codelet
Code example (SB.Skateboarder)
@AutomatableEventList(name="On key Pressed", desc="Fired when a key is pressed", argNames={"key"}, argDesc={""}, argTypes={"String"}, argVals={"a"})
public PEventList ekeyPressed = new PEventList(this);

One should provide one or more PEventInvokeVerifier to the PEventList to help the PEvent make use of the input arguments. In the above example, we add the following in the Skateboarder's constructor
ekeyPressed.AttachInvokeVerifier(new KeyPressedPEventInvokeVerifier());
where KeyPressedPEventInvokeVerifier implements IEventInvokeVerifier, the following method of which does the job.
public boolean VerifyInvoke(PEvent e, Object... params);

* (x1,y1) subscript, parentheses. For an AutomatableProperty, one can now use the additional DisplayName field to suggest the HTML-formatted field name shown in the InitialPropertyManager. If that DisplayName field is not specified, we will take the value specified in the name field. Also, the description field also supports the use of HTML tags to format.
@AutomatableProperty(name="x1,y1", DisplayName="x1, y1", desc="x1, y1", DesignTimeBehavior="B", RunTimeBehavior="H")
public String p1;

* timer - bigger, higher contrast

* Fix the bug that on switching between basic and advanced tab, the desc doesn't change accordingly.
* Fix the bug that traces of codelet are left behind when dragging the codelet in Scriptlet panel.

To do:
* Hide the timer when it is not necessary
* Pull-down selection codelet (detect when to hit boundary)
* Messaging as in MIT Scratch
* Disable various editing panels during simulation
* instantaneous change of display on changing starting values
* Tutorial info window
* Capability to access other objects' sensors and methods, perhaps with a pull-down menu
* not distort the aspect ratio when enlarging the view
* Changing window view angle -- with Jed
* fractal sketching tool -- combine the two versions

My own list:
* Implement AND/OR codelet
* Possible improved texture loading routine -- currently it seems every object keeps its own texture. Should make it class-wise.
* Procedure vs function
* moving is not smooth in scriptlet window

No comments:

Post a Comment