Friday, May 27, 2011

Work Progress - May 25 - May 31

Demo: "SB in beta" link above

* Extend the functionality of the "SHOW GOAL IMAGE". Now one can use the dialog to change the background with predefined images (in goalImage.properties) or file from local computer. We also show name and description of each predefined image when they choose from the pull-down menu, which is useful when we wish to give a detailed description of the image.

* To allow customization of images to be saved probably, we should consider saving the image, rather than the link in the image, in the XML file.
* Refactor the way demo menu items and default script are loaded to the program. Now we allow them to be loaded even if we are offline. (Previously nothing is loaded if it is started offline. Useful if demo of the program needs to be made offline.)
* Idea to allow multiple events: An addition level called PEventList. But then one can't hide the scripts of different scripts and show them again.

Friday, May 20, 2011

Work Progress - May 18 - May 24

Demo: "SB in beta" link above

Work done:
* "Do Forever" as a control codelet
* Fix the bug that when pressed and dragged on the method codelet through its argument name, the dragged codelet is not initialized to a proper location.
* Help Bill think of how to display plait images progressively in the CC app.

Wednesday, May 11, 2011

Work Progress - May 11 - May 17

Demo: "SB test" link above

Work done:
* Disable "Erase Drawing" button of SB app.
* highlighting for exponential, rationals, sinusoidal, etc.
* Allow user to select our default script (SB3.xml) from the "Load Demo" menu item.
* SB demo: move everything down
* Partial fix of the bug that codelets are accidentally moved on some strange location when editing its textfield value. One cause was that at the time a codelet is selected and dragged away from a JPnlLineList, the JPnlLineList has yet validated (until the next mouse drag), so internally the codelets remained in the line list collapse. This problem has been fixed by calling validate() at the beginning of all GetInsertionPosition() method of the JPnlLine. Another possible measure to eliminate the problem is to disable dragging of regions close to the text field (user may accidentally select those draggable area when selecting a textfield to edit,)
* Change the scope of the variables declared on-the-fly: from local to a script to local to the object (necessary to implement doForever() as a control codelet)

Next step
* Continue with doForever() as a control codelet

Wednesday, May 4, 2011

Work Progress - May 4 - May 10

Demo: "SB in beta" link above

Work done:
* More forgiving cursor stated in SB default script
* Highlight on unselected PObject when the mouse cursor is currently over it. For the SB app, we have a dash-line bounding box (obtained from the PObject's GetPolyBound() method) for the skateboarder (the default behavior if one doesn't override the DrawMouseOver() method) and dash-line representation for the landscapes. Below, the curve is currently under the mouse cursor.
In progress:
* If a method codelet returns a value, we should make it a rectangular shape (like the variable codelet) because it returns a value.
* Move DoForever to control codelet: redirect everything inside to "DoForever" event. No more vertical attachment under "DoForever".

Wednesday, April 27, 2011

Work Progress Apr 27 - May 3

Demo: See "SB in beta" link above

* Icons for RUN/STOP, CLEAR DRAWING, etc.

* Vertical stitching of statement codelets

Wednesday, April 20, 2011

Work Progress - Apr 20 - Apr 26

Demo: "SB in beta" link above

* Set proper size of the codelet elements. See the screenshot below - nested if statements are now sized properly. The text in the codelets are also properly center-aligned.


* Over-sensitiveness problem to be solved by disabling drag of textfield element.
* Enable tiptooltext for method argment.
* Set the display of Variable-Assign codelet and Property-Assign codelet to the same shape as other statements (like the method codelets and the control codelets)

Thursday, April 14, 2011

Work Progress - Apr 13 - Apr 19

Demo: "SB in beta" link above

* HTML editor can now use applet parameters "MainSplitLoc", "LeftSplitLoc" and "RightSplitLoc" to tell the default locations of the divider in the three split pane. Check the demo here (the JNLP file that introduces the parameter values are here) for an illustration.
* Update and package the non-programmable version of the break dancer application per request of a student in FAMU (launch site, source code)
* Clean the highlight in method codelet properly, so at one time only one insertion position is highlighted. (Previously the placeholder of inside binary statement can be highlighted when the outer placeholder belonging to the method codelet is highlighted.)
* We avoid a codelet from disappearing when we click and immediately release the mouse.

* Redo the codelet drag-and-drop mechanism, basically by introducing MouseListener and MouseMotionListener to all the draggable JPnlLines, i.e. JPnlLine except JPnlLineList and JPnlLineNull, with empty implementation, so they won't let MouseEvent to pass through it to underneath textfield).
* We allow scriptlet at the front to receive a new codelet.
* Dragging an event codelet and dropping it anywhere except the scriptlet panel will properly move it back to the eventMgr in the left window.
* [For my reference only] Add back 3D rendering capability to the display engine (reference)