Skip to content. | Skip to navigation

Personal tools
Log in
Sections
You are here: Home Software Fluorit Development Log

Development Log

A log of my development activities on fluorit.

ITEM: Needs the ability to reorder measurement series in the Measurements tab.

The near-term plan is to make the order an Entry for each measurement, thus orders are set explicitly by the user via an identifier. It will then be natural to add the ability to redraw the Measurements tab using a toolbar button and/or a menu item. This redrawing will then sort the Measurements first based on the ordering identifier, then by the plate ordering.

To help me remember where I was, here is the SVN log:

  • 2008-12-10: working on ordering field and retooling kvo a bit for nested setting/getting
  • 2008-12-11: cleaning code and doing some major refactoring for controller/experiment collections and preference observers--all in the midst of adding explicit ordering to series
  • 2008-12-12: refactoring accessors and observers in MainFrame
  • 2008-12-13: looped all of the observer adding and generalized for the three main types of observers in MainFrame
  • 2008-12-14: working on factoring the observer code for MainFrame
  • 2008-12-16: working on adding in orders
It looks like I left off where I need to
  1. Add an order_ent to the SeriesInfo dialog.
  2. Tweak the the order entry in the Measurements tab
  3. Expunge many change_*() methods that are redundant with the value_changed() method
  4. Expunge the collection_changed() method
  5. Expunge other redundant methods for MV interaction. Basically, the latest methodology is to use the self.accessors dict in combination with self.value_changed() method.
  6. KVO is going to work better when I implement the ability to reference collection items via tuple-based slicing in Controller.__setitem__() and Controller.__getitem__().

The strategy will now be iterate through program execution and debugging until:

  1. it works to load a previously saved fluorit file
  2. order entries work fine in the Measurements tab
  3. order specification works in the SeriesInfo dialog

Then I will add the ability to specify how this ordering is applied to

  1. bar plots in the lagplot preferences dialog
  2. series plots in the plot dialog
Then I'm going to clean up the change_*() type code that is redundant with value_changed in the observer code in MainFrame.