Thursday, June 22, 2006

Changes since Tuesday: UI Split, Templates, Bug-fixes

Wow, so much has happened since Tuesday's post. This entry is current for revision #577.

Since there have been so many changes, I'm going to describe the next steps in my next blog post.
  • First, you can check on the (usually) latest experimental version of 2way at http://twowayweb.rit.edu:8081/
  • As of rev. 558, Python sources download with a MIME-type of text/plain.
  • In revision 559, we moved several import functions from 2wayUI.js to 2wayCore.js, preparing the way for drop-in alternate interfaces.
    • Rev. 561 was a continuation of this; it also established my debug() as the canonical dump-information-to-screen function.
  • We then committed an OmniGraffle file with our documentation, showing the approximate coupling between each function.
  • Changesets 562 through 568 added a basic template system and fixed some related bugs.
    • The Barebones template was added in rev. 569, and modified several times after.
    • You can now select the Barebones template by appending "?template=barebones.html" to any TwoWayWeb URL.
  • The server now sends entire pages to clients with new (random) IDs (as it was meant to long ago).
  • bootStrap's power has been greatly reduced, and it no longer takes a 'payload' parameter (though it can still use the 'payload' global variable, if it is declared by the template).
  • My initial "if (function_name)" callbacks were wrong -- one can only check for properties on an object like that. Relevant sections now use try-blocks instead (r571, 572).
  • create_first_element now happens in tick() instead of bootStrap(), though it doesn't do anything if "deleted" elements are merely hidden.
  • Finally, new pages are loaded with the correct template, and the 2wayDaemon only creates the "first" element if it has already learned from the server that the page is empty.

0 Comments:

Post a Comment

<< Home