[jewel] [Fwd: Re: RE : Horizontal menus. ...and other interface concepts]

  • From: thisguyisi <thisguyisi@xxxxxxxxxxxxx>
  • To: jewel-dev@xxxxxxxxxxxxx
  • Date: Wed, 28 May 2003 02:51:20 -0700

Since you guys are working on/planning a version of Jewel in Obj-C, I 
thought I'd include some of this GUI discussion for you, just in case 
you aren't subscribed to (discuss-gnustep@xxxxxxx):

-------- Original Message --------
Subject:        Re: RE : Horizontal menus. ...and other interface concepts
Date:   Wed, 28 May 2003 02:30:40 -0700
From:   thisguyisi <thisguyisi@xxxxxxxxxxxxx>
To:     Lars Sonchocky-Helldorf <Lars.Sonchocky-Helldorf@xxxxxxxxxxxxxxxx>
CC:     Jason Clouse <jhclouse@xxxxxxxxxxx>, discuss-gnustep@xxxxxxx
References:     <OF1D2534C5.EE26D8CA-ONC1256D33.004A4D08@xxxxxxxxxxxx>



Lars Sonchocky-Helldorf wrote:

>On 27.05.2003 05:19:37 Jason Clouse wrote:
>  
>
>>>This is an idea I was having as well, although rather than make a 
>>>      
>>>
>"locked-in" 
>  
>
>>>decision at compile, I was thinking the "floating" 
>>>      
>>>
>OPENSTEP/GNUstep-style menu 
>  
>
>>>should be modified to allow it to "dock" with the top of the screen and 
>>>      
>>>
>switch 
>  
>
>>>to an Apple-style menubar, which then your could then "tear-off" like 
>>>      
>>>
>any 
>  
>
>>>sub-menu, but perhaps with a modifier+tear.
>>>      
>>>
>
>I like this idea better than having a compiled in solution: Imagine there 
>are different users on one machine - everybody would have her/his own 
>preferences concerning the menustyle. If this is done at compile time it 
>can't be changed later. A compile time solution would also make binary 
>distributions of GNUstep more complicated: We would need packages for NeXT 
>style menus and packages for Mac style menus. Please go for a per user 
>solution in preferences.app as others already said.
>
>  
>
>>Not trying to knock your idea or anything--sounds quite interesting in 
>>    
>>
>its own 
>  
>
>>way--but it seems a bit complicated for the end user.  And I'm not sure 
>>    
>>
>it's 
>  
>
>>going to be all that useful.
>>
>>My impression is that people are very attached to their choice of menu 
>>    
>>
>style. 
>  
>
>>NeXT fans probably won't ever want to dock their menu upstairs.  And 
>>    
>>
>those who 
>  
>
>>slant toward the Apple way of doing things wouldn't want to have to go to 
>>    
>>
>the 
>  
>
>>trouble of docking their menus.
>>    
>>
>
>Although I am very accustomed to Mac style menus, I'd like to have the 
>possibility to tear of submenus from the menubar. In the old Mac OS 7 
>times there was a nifty utility <http://www.mac.org/system/custommenus/> 
>that permitted exactly that functionality. I missed this ever since (and I 
>heard this feature was in Rhapsody).
>
>Btw: here is an interesting discussion of that topic: 
><http://www.cloudmaster.com/pulsar/rhapsody/>
>
>  
>
>>Both groups would probably want to set a system or user default to one or 
>>    
>>
>the 
>  
>
>>other and just leave it that way.  And I suppose themes should provide 
>>    
>>
>artwork 
>  
>
>>for both.
>>    
>>
>
>agreed
>
>  
>
>>
>>_______________________________________________
>>Discuss-gnustep mailing list
>>Discuss-gnustep@xxxxxxx
>>http://mail.gnu.org/mailman/listinfo/discuss-gnustep
>>    
>>
>
>greetings, Lars
>
>
>_______________________________________________
>Discuss-gnustep mailing list
>Discuss-gnustep@xxxxxxx
>http://mail.gnu.org/mailman/listinfo/discuss-gnustep
>
>  
>
Lars,

The Raphsody links were interesting. Thanks.

About "Menu Orientation" in GNUstep:

I feel that if the orientation is currently "hard-coded" in GNUstep this 
should change.

In what way? Like anything else in the system, if there is more than a 
single "locked-down" implementation, it should have a preferences bundle 
(in Preferences.app) to facilitate the user's ability to customize the 
available functionality to suit their needs/tastes.

Pick one or the other is not the best solution, as it is obvious there 
are multiple ideas on how the menu system should behave, with some 
preferring the NeXTSTEP/OPENSTEP floating vertical menu, and others 
preferring the Mac OS X static horizontal menubar.

What I have liked about the NeXTSTEP/OPENSTEP Operating Systems is the a 
la carte feel to the customizable preferences available. A very friendly 
feel. Made me enjoy using and working with the interface. It does what 
it does elegantly.

I think this "a la carte" feel should be kept, and extended. Ideas and 
opinions on "The Best Way" are always changing. For me, sometimes as 
fast as my mood swings. I like my OS and GUI to keep up with me.

Different tasks lend themselves to being interacted with in differing 
ways. A GUI should facilitate this, without imposing its "Right Way 
(TM)" upon the user. Maybe I like the way the floating menu acts as a 
pop-up list of items, but want to keep access to the Disk menu up for my 
current session. Maybe I want it to also manifest in the fashion of a 
floating, list-like menu.

Perhaps I want to keep track of different disks and their directory 
structures visually while working with my tasks. Say I have many 
similarly named directories. For instance, doing manual 
directory-by-directory backups from my local disk to my removable disk, 
or disks. In that case, being able to switch the torn-off Disk sub-menu 
from a floating vertically oriented menu into a horizontally oriented 
one, where I could let it float, or dock it with a screen edge might 
help me keep track of what I am accessing/copying/pasting more easily.

For example the Local disk would be the leftmost menu button after the 
torn-off sub-menu title bar, and the backup disk would be in the middle, 
with the removable disk farthest right. Now, when I click the menus, 
they will extend in different sections of the screen, aiding me in 
keeping straight which files I am putting where.

But say I am done with my task, and don't want to have the detached Disk 
sub-menu sprawled horizontally across my screen anymore. I still want to 
have it "handy" and on-screen, so I'd like to flip it back to a vertical 
floating menu orientation and shove it off to the side, perhaps even 
"window-shading" it so I only have the "Disk" menu title button showing 
on-screen. Hey, I could even be really productive by having a "stack" of 
windowshaded detached sub menus in a corner of my screen. That way when 
I need to get to a function in one of the "often used" menus, I have 
them all in one spot, and can expand the windowshaded menu to display 
the submenu options to select what I need to do.

Maybe I want windows and torn-off submenus to "stick" "magnetically" to 
each other's edges so I can move groupings of items around on my screen 
without haveing to move _each_ _frigging_ _thing_ _seperately_ (a 
hellacious idea to Yours Truly). These are all little things that can 
easily (well easily from a conceptual standpoint) be incorporated into 
GNUstep's functionality by expanding on the menu system.

To address the non-NeXTian camp, I also like what Mac OS X's interface 
ideas (and previous Mac OSes) provide: a static place (the menubar 
poised atop the topmost edge of the screen) for consistent menu 
location. You don't have to think about it because it is _ALWAYS_ there 
atop the screen, regardless of which window you happen to be interacting 
with. Then there (in previous Mac OSes) was the apple menu, where you 
could switch applications, and modify to have other goodies in a single 
universal location from session to session, until YOU changed the options.

That said I _do_ like the idea of the functionality of being able to 
grab that horizontal menubar, tug it off into a freefloating fashion 
verticalyl (or horizontally) oriented menu that I can put anywhere I 
want, shuffle between windows, stick magnetically to the one or multiple 
windows that have open belonging to that app, and maybe have 4 app 
groupings (just for example) arrayed on my screen. Perhaps I would at 
some point during the evolution of my session, maybe I'd like to do all 
my internet or mail related stuff on their own workspaces. So then I 
would like to yank my browser, with it's appmenu, and multiple windows 
and dialog boxes off the main workspace to another for browsing. I'd 
also like to schlepp my mail client with it's appmenu, torn-off 
sub-menus (some floating vertically, some floating horizontally, some 
magnetically attached to the window I am using them to work with, some 
docked to the screen edge), multiple windows, dialog boxes, and 
inspectors off to a different workspace of its own, to seperate and 
clarify my tasks and the layout of my session.

I like the concept of Mac OS X's "sheets" (aka dialog boxes) which are 
anchored to the window they are working with and associated to, except 
it hides what is located in the window the dialog they present is 
representing, which, in my experience, influences my choices on what to 
do next. Canceling and reinitiating the dialog is a waste of time, and 
it is a bit frustrating to have to bother with. Being able to "stick" it 
"magnetically" to the window it is associated with and move that 
grouping around to double check stuff in other windows is an extremely 
functional idea to me.

Personally I dislike the way Microsoft Windows' GUI functions. But I 
have to use that OS daily. Ugh, what's a boy to do... There is a program 
available called NextStart (http://www.winstep.net) that implements a 
NeXTSTEP style menu interface/workspace environment by extending the 
Windows Explorer shell. There are also some UI features that resemble 
much of the functionality I have touched on that helped make Windows 
much more friendly for me. There's also a Dock program called CubeDock 
(http://next-station.w3.to/) which has extending rows of tiles which 
slide out from beneath when you right-click on the Dock Tiles. 
Thankfully there is also WinBrowser (www.winbrowser.com) which is a NeXT 
FileViewer style file manager. These make Windows that much more 
bearable, and have some nice ideas that could help GNUstep be a little 
more friendly and adaptable to user choice. Additionally, I would love 
to see GNUstep develop to the point where it's native software can 
provide these functionalities (which I consider essential to sane daily 
computer usage for me) to the Windows environment, and all other GNUstep 
supported systems.

Well, I did hop on a tangent after all, and expanded from my ideas about 
menus and sub-menus to addressing general GUI concepts I'd like to see 
implemented, so my apologies on going a bit off topic. However I do 
think these are all valid and related ideas that should be mapped out 
and thrown into the functionality mix of GNUstep. An interface 
designer's big challenge is designing one that will facilitate every 
user's ability to interact with and use that interface effectively to 
compute. Deciding on the "Best Possible Way In Every Instance (TM)" is a 
bit of a stretch, and perhaps a bit of a lark. However, having an array 
of "Really Great" ways that deal with variable interface needs, that are 
adaptable to the current task/moment/session is a surefire way to permit 
the users of at least having one, and perhaps multiple, useful ways of 
getting done what they need to get done in a way that is the most 
compatible possible with what, or the way, they are thinking at the time.

Hopefully this (dissertation? :-)  ) is something that was interesting 
or useful to you in some way. It helped me flesh out some of my ideas on 
how an "ideal" GUI would be adaptable to varying needs, and I think 
GNUstep is most of the way there, and wouldn't feel a pinch if extended. 
In fact I think it would feel freer and more refreshing to use.

Questions, Comments, Rotten Produce?

-thisguyisi





Other related posts:

  • » [jewel] [Fwd: Re: RE : Horizontal menus. ...and other interface concepts]