Hi,

Since Matthias and Martin are doing such an awesome job and adding new
features at a massive rate, I thought I should brain dump a list of
things I have thought about over the last while.  As always, feel free
to ignore the following as ramblings of a madman ;)

If this were to be proposed for GNOME inclusion (a goal?), the following
is a non-inclusive list of things to think about:
1. Move to GNOME SVN.  This is easy, just takes a little effort and a
few requests to the right people.
2. Accessibility.  Labyrinth sucks at a11y.  I mean, really sucks.
There is none.  In order to be part of GNOME, there'd have to be some
form of a11y.  Whether this is making thoughts visible, or a special
view, I don't know.  More on this later.
3. Theming.  We currently don't follow the gtk theme for anything.  The
problem is that theming in gtk sucks (from experience).  This would
require some thinking about.
4. User manual.  Should be relatively straight forward do do a simple
user manual.
5. Better navigation using the keyboard.  Right now, you can move around
with the arrow keys.  Extend this to allow adding of new thoughts etc.
6. UI review / HIG compliance (or at least, valid reasons we're not
following the HIG in some areas)
7. An applet, like the wonderful tomboy.

That's not too bad.  I think the major issues are 2, 3 and 7.  If these
were fixed, it'd be a huge step.

Anyway, on to a more random list of thoughts (hmm.  Maybe I should make
a mind map of this?).

* A11y.  My initial idea was to make thoughts visible to a11y tools.
But this is (very) difficult and doesn't really aid in a11y for some
circumstances.  To compliment this / replace this, I thought about
having a treeview of thoughts, with the children being sub-members.
This would get us free a11y through the GTK treeview implementation and
still preserves some of the information in the map.  Thoughts which are
children of multiple nodes could be italicised or marked in some way.
It's not a great solution, but what I came up with.

* Exporting XML.  The exporting XML is already in, but will be an issue
for maps with images.  These are expected to be in the same place as
when they were exported.  If you send a map to someone, you need to send
the picture as well, with instructions on a crazy folder they'd have to
put it in.
For this reason, I came up with a second possibility.  If we had an
option for maps with images in the export dialog "export with images",
we could basically create a tarball / zip file with the images included
with the XML (modified to point to the current path).  In the import,
this tarball would be expanded and the images put into a folder
("~/.gnome2/labyrinth/images" or whatever), and the path fixed in the
image thoughts.

* Exporting.  For images, exporting of extended buffers is never going
to happen.  However, for pdf / ps / printing, it'd be nice to have an
option to include the extended buffers somehow.  I'm not sure of the
mechanism for doing this.  Maybe have each thought with an extended
buffer assigned a small number, which is put in the top right, followed
by the extended thought below, with the relevant number.  This doesn't
sound clear at all.  I'll do a mock up at some point.

* Grouping of thoughts into "meta-thoughts".  This would basically
colour a region behind the thoughts to it was clear the thoughts are in
related areas.  Moving the big coloured area would move all associated
thoughts.  Moving a single thought in the backgrounded area would only
move that thought.

* Speed.  I know Matthias has implemented some speedups, but there are
more available.  The biggest problem is when moving the canvas around,
as all thoughts visible must be redrawn every movement.  Maybe we could
get around this be keeping a cache of the current view and blatting [1]
that at the correct offset and only redrawing everything once movement
has stopped.

* Speed (2).  Another slow-down is moving thoughts around.  One solution
to this is to track which thought caused the redraw and pass this to
every link we request drawing.  The link would then know if it's
associated with that thought and draw itself.  Maybe it'd be enough to
only draw the thought and all links.  There's also an issue here with
dragging thoughts over other thoughts.  Guess we'd need to keep the
original and new coords and redraw that area.

Anyway, there's loads more, I'm sure.  But other ideas are more tenuous
or not-thought-out enough to articulate.

Don

[1] Technical term


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

Reply via email to