Re: [Usability] GIMP - CSDI and Toolbox - gnome HiG and window manager issue?



> 
> > I think that gimp has one of the most well designed UIs.
> 
> I would argue that there has been very little deeply thought through
> design has been done on the GIMP.  

:)

Ok lets start with the screenshot i've sent you(inkscape with all option
dialogs open - easy to try out). If you look at each option window,
you'll see that they're:
1. not dockable
2. no reordering through tabs
3. not instantly available(you need to hide them to work on the document
4. different sizes of each of those option windows
5. different design of each of those windows.
6. take up (almost) the whole document space in order to be immidiatelly
reachable.

Gimp fulfills each of those properties. The Gimp is a masterpiece in
terms of UI design.

Each option for each tool is *immidiatelly* accesible. Virtually any
window is designed in such a way that it's possible to dock it.


> 
> > There are a few sections in HiG that are absolute unusable crap and of
> 
> I can only hope that Calum Benson, Seth Nickell and all the others
> who put so much hard work into the Guidelines wont take that personally
> and will instead justify and explain the reasoning behind the guidelines.

The Gimp is *primarily* intended for professional work. Not for newbies
or those who occasionally do some artwork for their pleasure.

http://bugzilla.gnome.org/show_bug.cgi?id=116599

I doubt that anyone who commented on CSDI here has used Gimp
professionally. So they're not the right persons to ask really. Sorry.

> 
> > those few is the CSDI section. The HiG has 2 major misconceptions:
> >
> > 1. it suggest to not use CSDI for apps like Gimp
> > 2. it suggests to organize tools in groups (like sodipodi does)
> 
> The fact is that few Applications use CSDI (Controlled Single Document
> Interface), and that using it makes things complicated for people familiar
> with the much more popular SDI (Single Document Interface) which
> is used by Internet Explorer and Mozilla two of the most used
> programs out there.  (The combination of a SDI in Mozilla with Tabs is an
> interesting way to give beginners the simplicity of SDI and appease those
> who want more complex ways to organise things).

Again note which apps you're mentioning. Mozilla, IE... Professional
work, for that you have to have a professional environment. SDI/MDI just
doesn't keep up with that.

> 
> It even makes things complicated for people familiar with Macintosh
> interfaces, although in a different way because in the Mac interface the
> control interface is coming from the menubar, not the toolbox.

As i said, the WM has to take care of the rest. See photoshop. In a WiW
environment there's a parent window that manages child windows. If you
don't have that parent window, what is going force the CSDI rule -
control window vs. other windows? The control window can't do that if
it's not being 'acknowledged' as a control window.

The GIMP is difficult to manage without a complex window manager.  Sure
> you can blame the window manager but by expecting users to have a better
> window manager than their default that is an attempt to force the users to
> solve a problem the developer dont want to deal with.  It is not nice to
> blame your userbase for not doing what they are told (and that attitude is
> probably the biggest reason why I get annoyed by the GIMP).

Alan, there's no way out. see why:

SDI carries all information that a certain application provides - the
menus, the tools, the document.
MDI can be viewed as a separate instance of the same application, thus
it again carries all the information.
They are perfectly compatible with the simple WM rule - Window =
Application.
Not so with CSDI! Thus the WM has to take care of that application.

This can be achieved through designing a proper behaviour for CSDI style
applications, encouraging them through the freedesktop WM standards.
It should suffice for the start if the most widely used WMs support this
feature - such as metacity or kwm.


> Based on how Mathematica does CDSI, even taken on its own terms I dont
> think the GIMP is doing CDSI properly.

It is. Very properly.

> 
> >From anecdotal evidence I believe CDSI does have real benifits for users
> with dual monitor setups, but they are a small minority and I'm not
> convinced that other interfaces couldn't be fixed to work with such
> setups.

Professional work.

> 
> > The philosophy of the Gimp UI is to have all tools and their options
> > immidiatelly at hand. Click on tool, click your option.
> 
> > Inkscape can't provide this, and you'd probably notice if you opened up
> > all option windows at once - no way to organize them.
> 
> I should point out I'm using a prerelease of the next version of Inkscape.
> I also realise that Inkscape is rough around the edges but I'm very
> enthusiastic about how user focussed the developers are and how much they
> have done simply by reorgansing and making it easier to find functionality
> that Sodipodi already had.

Well, not just rough at the edges, this is a serious UI design problem.
Gimp mastered that very well.

> 
> The important thing is The secondary toolbar, or tool option
> palette/toolbar is now working properly.
> 
> Inkscape has the tools lined up in a neat row right up against the left
> edge of the window, when maximized this makes them very easy targets
> (fitts law). 

Honestly, the first flaw i see is that there's no way to determine at
first sight which toolbox is subsidiary - is it the horizontal one?
Simple logic would tell you - yes. But it's not that way.

>  Similarly having to tool options palette/toolbar arranged
> horizontally in a thin row just under the menubar makes it a relatively
> easy target.  I think this makes a much easier and less cluttered and more
> ergonomic user interface than the way the GIMP organises its Toolbox and
> Tool Options Dialog.


Not at all. For the reasons i've explained earlier. A professional user
knows each tool he's using. If the order is kept static, he knows
perfectly where to grab it. 

The easier it is to get to your tool and its options the more suitable
the application is for professional work. In Gimp - all instantly done.

> 
> However the Dock is really just reinventing window management.
> Window management is not a problem the developers can simply ignore, so
> stop blaming the users.

I don't understand this.

> 
> > You can perfectly treat CSDI interfaces with a WM so that they give you
> > a very comfortable feel.
> >
> > One major misconception in current WMs is that they treat each window
> > of a CSDI as a separate window. They don't treat them as a group of
> > windows, which belong to one application.
> 
> Cant say this bothers me particularly.

<snip>

> If space is a concern why is it so hard to use the GIMP if you dont 
> leave
> all these palettes open all the time?  It is not fun to try and use the
> GIMP without lots of palettes always left open. 

So this doesn't bother you ;)

Let me give you an example. 

The control window and its child windows are always on top. Hit
<shortcut key> to hide them, or to move them underneath the document.
Hit again to move them on top.

*One* key hides all, the same key brings everything you need back.
Perfectly optimized. Can't be done. Why? WM.

You can put a nautilus window between a gimp document and the gimp
dialogs currently. Try it. Stupid isn't it? It's because the WM treats
CSDI windows as a bunch of separate windows, not as *one* *application*.
If you click on the Gimp C-window(toolbox) it gets hilighted, but the
controlled windows/dialogs do not. Try it. If you have an active gimp
document, neither the control window nor the controlled windows get
hilighted. If you hit minimize in the control-window(toolbox) only that
toolbox gets minimized, but the whole gimp should minimize! inlcuding
all documents. All WM issues sadly. *And* if you bring it back, it
should appear in the same state it was before you minimized it - for
example if you have the dialogs underneath an active document, then that
active document should show up, if they're always on top, then they
should appear on top of the document that was active before minimizing
the gimp.

Note - as a pro user, you have to have the tools+options accessible. If
you tend to open/close option dialogs regurarly then youre just playing
around with the application. 


> 
> > For SDI, a separate window means a separate application. For MDI, each
> > window represents *both* the document and tools, almost like a separate
> > app, let's call it another instance of the same app. So the dumb WM
> > model fits perfectly for the purposes of SDI/MDI. Not so for CSDI where
> > the tools/options and documents are separate entities.
> 
> In general Gnome has been going for a document centric application model,
> which the GIMP is totally out of step with which immediately puts it at a
> disadvantage. 

Explain, please. :)

document centric means - you open up a document and you get your tools
and options and menus with that document. So each document carries its
own drawing/etc tools and options etc. What a stupid design decision for
2d graphics apps. Sorry. CSDI solves this by unifying all that in one
toolbox, one kind of options for each tool. The settings change with
changing docs. 

> > If each WM would threat CSDI as a group of windows that belong to one
> > application and that have a certain behaviour with respect to each
> > other(clicking in the window list brings all docks on top, always on top
> > option for all docks, tab moves them to fore/background etc), you'd end
> > up with a perfect Gimp - UI wise. A Gimp people would love to use.
> 
> I believe an 'always on top' option has been added to Metacity recently.

Be sure it won't work well with Gimp. ;)

It's becasue CSDI needs special treatment from the WM. Sad but true.

> 
> > Note that Photoshop is a typical Window-inwindow [WiW] environment where the
> > parent window manages the child windows. No such thing in CSDI therefore
> > the *WM* has to take care of all that.
> 
> Photoshop for the Macintosh doesn't use Window in Window (which those
> against a WiW bring up), which goes back to my arguement that I dont
> believe the GIMP is even doing CDSI very well.

Well, as said. WM issue.

> 
> I dont think WiW is necessarily the answer but what is important is that
> people keep suggesting it because they have a problem they want solved.
> 
> > So suggesting that we should scrap CSDI isn't at all a good idea and i
> > doubt that Seth is using gimp professionally.
> > Scrapping CSDI would be the worst thing that could happen to the HiG.
> 
> If there was better understanding of when a CSDI interface was the best
> choice of interface the HIG might be able to make better
> recommendations on when to use it, but at the moment it instead just
> advises not to use it at all.
> 
> > What i would scrap is the horrible sodipodi like toolbox, which the HiG
> > suggests.
> 
> I would agree that this should be revised.
> 
> > For professional work there's no need to categorize the tools.
> 
> Why, please explain?

Is it so hard to distinguish a pencil from a brush? It isn't even for a
noob.  Static is the keyword here.

> 
> > Each tool although it might have similar properties with another tools,
> > represents a *separate* tool that is easy to learn and work with and
> > should stay at the same place no matter what.
> 
> > 2. The purpose of hiding the tools should be to save some extra space
> > and to organize tools in a logical way. More nodes will introduce even
> > more space consumption so it's not a win at all to use it for that
> 
> Arguements about use of onscreen space are interesting.
> The HIG doesn't yet address how one should design dialogs that are
> expected to be left permanently open (which i prefer to call palettes).
> 
> If space is a concern why is it so hard to use the GIMP if you dont leave
> all these palettes open all the time?  It is not fun to try and use the
> GIMP without lots of palettes always left open.  For example there are
> features buried in the context menu of the Layers dialog (which is an odd
> place to have a context menu) that are not accessable from anywhere else.
> There is also a feature to hide all but the current layer by shift
> clicking on the 'eye' visibility icon, which is totally undiscoverable.

Heh, typical power-user feature. Explains why.

> 
> > 4. In a professional environment, where you need to work fast and
> > reliable, a static toolbox is the most efficient thing you'd find.
> > Once you learn it, it never changes.
> 
> There is work being done to make the toolbox configurable (show/hide
> which tools are there).

I only really hope they're just making it easier to add/remove tools
from the toolbox and easier reordering of tools(which indeed needs
improvement) while leaving the toolbox as is.

> 
> > That said, i'm pretty sad the Inkscape devs aren't following the Gimp
> > path.
> 
> You still have Sodipodi, GIMP users dont yet have an alterntive with an
> interface like Inkscape.

Sodipodi is miles away from Gimp in terms of UI design.


Marek





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]