r4 - 25 Jan 2005 - 09:33:17 - JohnAndersonYou are here: OSAF >  Journal Web  >  ContributorNotes > JohnAndersonNotes > JohnAnderson20050124
  • Continued to track down bugs related to render trees of blocks. Whenever a new tree is rendered the old tree needs to be unrendered. The process of unrendering needs to remove the widget attribute from the block. Originally I did this by overriding a wxWindow destroy event. However, this doesn't work for blocks whose widgets aren't windows. So far these include menuBar, menu, menuItem, and timers. MenuBar, menu and timers can be handled by overriding __del__. MenuItem's have no way to detect deletion, so I was forced to do it when a Menu is deleted -- which might have some subtle consequences. These bugs are tricky to find since they often cause Chandler to crash some time after the widget is deleted in a non-deterministic way. So whenever you make a new block be sure to catch it's destruction and call Block's class method wxOnDestroyWidget so it will clean up properly.
  • Also fixed problems with the menus and statusbar which need to be unhooked from their wxFrame when they are unrendered. They now get attached to the top most frame in their tree of blocks rather than the wxApplication.mainFrame. This is one of the necessary steps for using trees of blocks in multiple windows. A new method getFrame on a block returns the top most wxFrame in the tree of blocks.
  • Ran into another tricky repository bug. Got caught a few times by the existing parcel xml copy bug. Was hung up by an exception that was caught by Wing, but turned out to be correctly handled. Found and fixed another cloud bug. Discovered that the new attribute editors didn't allow editing of string attributes and fixed it -- my fix had a problem that Donn corrected. Missed a occurrence of mainView which was added after I deleted all of them. Many other bugs fixed that I don't remember.
  • Two interviews.
  • Finally checked in my big refactoring, which still has a few snags. Fixed a bunch, but still have more to go.
  • Started working on getting rid of the reference to Globals.repository.
Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r4 < r3 < r2 < r1 | More topic actions
 
Open Source Applications Foundation
Except where otherwise noted, this site and its content are licensed by OSAF under an Creative Commons License, Attribution Only 3.0.
See list of page contributors for attributions.