Re: Thumbnail Bar

Aurélien Gâteau <[email protected]> Fri, 22 Feb 2008 00:27:56 +0100
Newsgroups gmane.comp.kde.gwenview
Message-ID <[email protected]>
I finally took the time to have a look at your patch. But I must confess 
I had a hard time applying them and I am not sure I have it correctly 
set up. Can you provide a single diff for all changes? (You can include 
new files in the diff by adding them with "svn add" before running "svn 
diff".)

I like the idea and the way it renders, especially using scaleToWidth() 
/ scaleToHeight() is a great idea. But there are also a few things I 
don't like regarding the UI and the implementation.

# UI
## General
The selection should probably look more square and shouldn't show the 
"speed bar" (the bar which appears when one moves the cursor over a 
thumbnail).

We can't rely on the mouse wheel only for scrolling. There should be 
another way to scroll: either a thin scroll bar or scroll buttons on the 
left and right edges of the widget.

## View mode
I don't think autohiding is the way to go: the view mode is supposed to 
let the user "work" with the image (even if for now there aren't that 
much "work" tools) and I think autohiding will get in the way too often.

I plan to add back a status bar to the view mode. This status bar will 
contain various information and probably the various zooming actions. I 
think it would be nice to have a "Film strip" button in the left of the 
status bar which would toggle the thumbnail bar.

## Fullscreen mode
Having two fullscreen bars is confusing, especially since they do not 
appear the same way: the top bar appears whenever you move the mouse, 
while the bottom bar appears when you get your mouse close enough to the 
bottom border. I'd rather merge the two bars to create a layout similar 
to this (ASCII art):

(X)(<)(>)[ 20s ](c) |*** | ** |****|*** | ** |
Meta info text      |  **|****| ** |  **|*  *|...

                     `-----------v---------------------'
                             Thumbnails

# Implementation
## Delegates
I think it would make the code easier to maintain to have two separate 
item delegates: one for the "browse" thumbnail view and another for the 
thumbnail bar. It requires quite a bit of refactoring though: I will 
probably start with moving the current delegate to its own file (and 
moving all thumbnail view files in a thumbnailview/ dir).

## Thumbnail generation
We need a way to cache thumbnail generation: right now it seems both 
views request thumbnails together, meaning the thumbnails are generated 
twice.


That's all for now. I hope you don't mind all these remarks. This is 
great work despite all I said about it! I believe when it's in we can 
remove the "Preview" mode.

I will try to get the thumbnail refactoring done quickly so that you can 
base your work on it.

Aurélien

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/