Sam

15 Apr 2013

screenshot_apr15

Most of the last week’s work on GraphLambda has been spent porting from the Processing environment to Eclipse and implementing various under-the-hood optimizations. Accordingly, the visible parts of the application look very similar to the last incarnation. The main exception here is the text-editing panel, which now provides an indication that it is active, supports cursor-based insertion editing, and turns red when an invalid string is entered.

Accomplishments

  • Eclipse!
  • Mysterious crash on long input strings has vanished
  • Drawing into buffers only when there is a change so I’m not slamming the CPU every frame
  • Working entirely from absolute coordinates now
  • Real insertion-based editing of the lambda expression, complete with cursor indicator
  • Context switching from drawing to text editing
  • “Tab” switching between different top-level expressions

The biggest issue that still remains is distributing the various elements of the drawing so that the logical flow of the expression is clear. Once this is done, the drawing interface must be implemented, including a method of selection highlighting.

TODOs

  • Overlap minimization
  • Lay in the rest of the user interface
  • Selection and selection highlighting
  • Implement tools
  • Named inclusion of defined expressions
  • Pan and zoom drawing window