It's time to create a proper tree of classes/subclasses for text
widgets in the qt plugin.  This will be the framework that contains
the forthcoming wrapper for the QLineEdit widgets that QTreeWidget
uses to edit headlines.  This will also be the proper way to fix the
indexing bug described at: https://bugs.launchpad.net/leo-editor/+bug/286493

I would like to add the capabilities of an interface mechanism.
Something like this was discussed on the IPython list recently.  The
following describes my present thinking.  Feel free to ignore the
rest, it's just thinking out loud...

My design goals:

1. Avoid mixin classes.  I don't want multiple inheritance if it can
be avoided. So the "base" text-edit class in the qt plugin will likely
be a subclass of leoInterface.

2. The leoInterface class will use the same straightforward approach
used in leoFrame.py, namely lists of names of members that must be
defined "somewhere", "in the base class" or "in subclasses".

3. The leoInterface will have a method that tests the relationships
described in point 2.  This test will probably be done in the
leoInterface.ctor.  Unless I am mistaken, this will work because
"self" will be the subclass, so the subclasses "must be defined" lists
will be available.

4. Eventually, the corresponding unit tests in unitTest.leo can be
eliminated, because in effect they will be run every time Leo starts
up.

If all goes well the leoInterface class will migrate to the core.

Edward
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to