[MiroDev] preferences panel status

will willg at bluesock.org
Wed Aug 20 23:05:25 EDT 2008


I whipped together a preferences panel and checked it in.

But...  it's got some issues.  Here's my brain dump:

1. It comes up on OSX, but the dialog is sized wrong.  Clicking on 
"tabs" pretty quickly brings up errors, but I think they're with the 
widget code.  Something about KeyError issues with Wrapper.  There's 
already a bug for it.

2. It's "functional", but really ugly.  It looks like some jackass threw 
it together in a 12 hour coding binge to get it done before he left for 
8 days of vacation on a beach.

3. I abused the Dialog widget to get this to work.  I think either we 
should fix Dialog to allow us to set the size or make another derivative 
of WindowBase for preference panel.  I think the former is a better idea.

4. It uses a totally inappropriate use of Splitter.  I'll fix that tomorrow.

5. Some preferences would be better as a spin button instead of a text 
entry, but we don't have spin button widgets yet.

6. I wrote some code for bounds checking on integer and float 
preferences.  If you enter in a "bad number" outside the range, Miro 
will fix it.  However, there's no indication of what "good numbers" are. 
  Luc suggested we have tooltips and I think that's a good idea.  We 
definitely need something that allows us to give more explanation to 
what these preferences do.

7. I didn't do the Folders panel.  I thought about attempting it, but I 
chickened out and decided it could be done later.

8. Since it computes the panels at the time it renders them, it should 
allow for platform-specific panels.  This theory is untested, but I'll 
try to get to testing it tomorrow.

9. The module needs to be cleaned up and documented.  I wrote a lot of 
helper functions so when we implement a plugins api, we'll have a good 
api for plugins to build their own preference panels (theoretically). 
It also made writing the panel code easier.


I think that covers it.  I'll try to fix some of the outstanding issues 
tomorrow.

/will


More information about the Develop mailing list