Morrigan’s GUI as of today:
This weekend I have once again spent rather more time that planned working on Morrigan. Progress has mainly been in the area of playback and some GUI stuff. The big new feature is that video can now go full screen, and with terra you can chose which display this happens on.
The problem I am now up against is workout out where to put everything. In the world of RCP, the GUI is very definitively divided into discrete areas – Views and Editors. In Morrigan media lists (libraries and playlists) are editors and everything else are views. This all works quite nicely until we get to the player view.
A view has several key features:
- A main area.
- A caption bar across the top.
- A toolbar with icon buttons on it.
- A drop-down menu (click the little button circled in red below).
Some funky GUI logic allows the toolbar buttons to be moved into the tab area if there is space, otherwise they can end up sharing the same space as the caption bar. The drop-down menu is handy for hiding things… but that is just it. Its hidden. Placement of stuff is all rather flexible and with this power comes a world of GUI pain. While in theory views can be placed anywhere, some expectation of width is required as this dictates how many tool-bar icons you can get away with.
The layout shown in the screen shots here is my current best-attempt at coming up with a sane default layout. It works quite well… until you realise that I have dumped far too many options into the Player view drop-down menu.
Logic says I should pull some of them up onto the main tool-bar / menu-bar. This is indeed an option, but could cause confusion if I ever allow more than one Player view per window. This does not happen at the moment and I don’t see a huge demand for it, but so far I have been keeping this option open.
Another question is weather the video should be detached from the Player view into its own view / editor. (Import note here: Views and Editors can’t share the same “stack” of tabs – the Player view can’t be placed on top of playlists). The best way to arrange things will very much depend on the user’s screen size, so perhaps the best option is to allow all these and make it configurable? But I don’t want to cause too much confusion.
And I have not even begun to talk about the problem of placing the seek / progress bar. I could default the Player view to being long and thin along the top of the window, and arrange controls in it in a similar way to a more typical media player. RCP allows for views with no tab and which can’t be moved, so perhaps this would work here? But then were would the video go? In another view? Always in an editor? An editor that can’t be closed?
Here I have shown this along side the top of terra’s window.
One thing I always liked about terra’s interface was how I somehow managed to avoid too much GUI clutter. I am hoping that RCP will not force clutter upon Morrigan’s GUI.
I know text comments are no where near as powerful as standing round a black-board, but if reading this has given you some ideas, then any suggestions would be much appreciated.