dia-0.97: integrated mode layout: layers vis by default, no hier. menus
Submitted by sam..@..bs.com
Link to original bug (#608645)
Description
Version: 0.97 Platform: ix86 Linux-2.6 glibc-2.4 gtk-2.10.6 gcc-3.4.6 binutils-2.17.50.0.8 Distribution: no particular distribution. All software compiled from source without any package manager
First, thanks for new 0.97 release. Good work. I especially like the introduction of the integrated mode (and merging of my --show-layers patch).
-
To make the integrated mode even better, the layers panel should be visible by default. Right now I can get it by hitting Ctrl-L but after quitting and starting again, the panel is no longer visible. Ideally the state of the panel visible or not would be remembered, but in any case by default it should be visible. Layers feature is one of the greatest things about dia. Show it.
-
Now, assuming it is shown, it occupies needlessly lot of real estate. On my 1024x768 (twm) screen the optimal place for layers panel would be on left hand side, just below the line style and arrowhead selection. This would leave more horizontal real estate available for the diagram itself. The required vertical real estate can be snipped away from the shapes selection panel, which is needlessly large today. My typical layer count is about 4 after which I am willing to scroll the layers (some of my diagrams have over 20 layers).
-
In an ideal world, the Layers panel could be dragged from right and docked to left. In an ideal world, if more than one panel is docked in the same column, you should be able to drag their borders to change the real estate allocation, e.g. if you need more layers without scrolling, you could sacrifice some of the shapes selection area. Whatever the rearrangements are, they should be remembered for next start.
-
In the left hand column the tool icons are different size than the shape icons. This leaves an unused space in the shapes panel. Probably this is meant to be the space for scrollbar, but it looks ugly and is wasted real estate in case the scrollbar is not needed.
Suggestion: make the icons same size and if the shape selection needs scrollbar, use horizontal one in the bottom of the panel.
-
In line with gaining as much useful horizontal real estate as possible, the icons for tools and shapes should be smaller. Perhaps even just half the size. If this small size does not become default, it should at least be optionally selectable.
-
The toolbar occupies vertical real estate without giving much value. I can hide the toolbar from View menu, but this choice is not remembered across a restart. Alternately, some of the important toolbar items, such as snap-to-grid, could be on the right hand end of the menubar (currently the menu bar wastes real estate on right if the window is over about 500 pixels wide).
-
The height of the diagram tabs is excessive. This wastes valuable vertical real estate. Suggest about half the current height. It seems the intent has been to make them same height as tool icons. In that case my suggestion (5) would address this issue as well.
-
Hierarchical menus are really bad user interface. The coordination required with mouse to access them is often impossible to achieve. I see them used in two places: View->Zoom and Objects->Align. As both of the main menus are quite short (when viewed on 1024x768 screen), I suggest inlining the submenus. They will easily fit and be much easier to use. I propose this to be the official distributed way, but I realize I can already customize these myself, as shown in the following patch:
diff -u data/integrated-ui.xml /apps/dia/std/share/dia/ui/integrated-ui.xml
--- data/integrated-ui.xml 2009-04-17 08:25:23.000000000 +0000
+++ /apps/dia/std/share/dia/ui/integrated-ui.xml 2010-01-31 22:50:17.000000000 +0000
@@ -52,7 +52,7 @@
<menu name="View" action="View">
-
`<menu name="ViewZoom" action="ViewZoom">`
-
<!--menu name="ViewZoom" action="ViewZoom"--> <menuitem name="ViewZoom16000" action="ViewZoom16000" /> <menuitem name="ViewZoom8000" action="ViewZoom8000" /> <menuitem name="ViewZoom4000" action="ViewZoom4000" />
@@ -65,7 +65,7 @@
-
`</menu>`
-
<!--/menu--> <menuitem name="ViewShowall" action="ViewShowall" /> <separator name="ViewSep1" /> <menuitem name="ViewFullscreen" action="ViewFullscreen" />
@@ -106,7 +106,7 @@
-
`<menu name="ObjectsAlign" action="ObjectsAlign">`
-
<!--menu name="ObjectsAlign" action="ObjectsAlign"--> <menuitem name="ObjectsAlignLeft" action="ObjectsAlignLeft" /> <menuitem name="ObjectsAlignCenter" action="ObjectsAlignCenter" /> <menuitem name="ObjectsAlignRight" action="ObjectsAlignRight" />
@@ -119,7 +119,7 @@
-
`</menu>`
-
<!--/menu--> <separator name="ObjectsSep4" /> <menuitem name="ObjectsProperties" action="ObjectsProperties" /> <separator name="ObjectsExtensionStart" />
-
I tried increasing File->Preferences->Recent documents list size to 10. This exposed a minor bug:
(dia:11763): Gtk-WARNING **: Unable to parse accelerator '
<control>
10' for action 'FileRecent_9'clearly this is due to simplistic attempt to assign a keyboard shortcut to the recent item 10. The fix should be to not assign short cut for items beyond 9.
Cheers, --Sampo
Version: 0.97