Windowless GUI

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
User avatar
lukem95
Member
Member
Posts: 536
Joined: Fri Aug 03, 2007 6:03 am
Location: Cambridge, UK

Windowless GUI

Post by lukem95 »

i've been thinking a bit about slightly different GUI's, i think the rough layout that most OS's favour at the moment works well, but with a few tweaks it could be made more interesting and unique.

I'm already certain about having multiple desktops, possibly with a zoom in/out feature for icons/windows. And im also considering having a seperate space "underneath" the main windows for widgets or other small applications.

What really got me thinking, although it may seem quite minor, is about having a GUI where the program defines its own shape. The API could include classes for basic shapes and printing pictures etc, but the program could be any shape and size. This would make for interesting app's, and give programs a sense of uniqueness.

I'm not sure how professional this would look, and indeed if it would be very user friendly, im just throwing an idea around.

The other thing i was considering about was how the program would be loaded into memory, vectors would be very helpful if i was going down the zoom view for windows, but this might be slightly harder to implement, especially when more old fashioned bitmap based images are concerned.

The other (more boring) way of doing it would be to get the program to allocate a buffer at startup, and to update it itself, then call the video driver passing the array as an argument. This removes the need for much of a window manager, but increases program bulk and makes for ugly code.
~ Lukem95 [ Cake ]
Release: 0.08b
Image
User avatar
AJ
Member
Member
Posts: 2646
Joined: Sun Oct 22, 2006 7:01 am
Location: Devon, UK
Contact:

Post by AJ »

Hi,

Sounds like an interesting idea and I've been considering quite how the window manager of Caracal is going to work (what portions will be in the kernel / video driver / separate window manager etc...).

I hope this isn't too much of a negative criticism about your idea, but I would (as you mention) question the usability of such a scheme. The nice thing about Windows Forms / Linux Window Managers is that they provide a sense of uniformity about the whole thing. If you have a mish-mash of designs (every app has its UI designed by the programmer at a fairly low level), it immediately loses appeal to anyone using the system for the first time. How many users are going to stick with it and say "I'll keep giving this a go", and how many will just go back to their old, comfortable desktop environment?

Sorry that I'm an old [stick in the mud] / [fart]*, but I would be one of the latter. I find it bad enough trying to get used to odd shaped skinnable apps in Windows. Being rubbish at graphics myself, I would also be put off programming for such an environment.

What I definitely like about your proposed design is the idea of zoomable Windows / vector graphics.

I expect that if you disagree with me and go down your route anyway, your OS will be immensely successful and people will be quoting this post for years to come!

Cheers,
Adam

(*delete as appropriate)
User avatar
lukem95
Member
Member
Posts: 536
Joined: Fri Aug 03, 2007 6:03 am
Location: Cambridge, UK

Post by lukem95 »

haha, thankyou for your criticism, i was thinking the same thing actually.

and you assume that i would actually be able to code this highly successful OS :) i'm having enough trouble getting bits of my base kernel to work.

the zoomable idea was actually the one i favour more, im definatly going to look in vector graphics for my window manager, as although this may not be a huge usability improvement, it may have its uses.
~ Lukem95 [ Cake ]
Release: 0.08b
Image
User avatar
Dex
Member
Member
Posts: 1444
Joined: Fri Jan 27, 2006 12:00 am
Contact:

Post by Dex »

I agree with AJ, i have notest if you code a differant GUI from the normal and you do not have the power of M$, people will not use it.
I tryed to make a game sys type GUI for DexOS, but i get more comments on the only 10% finished XP type gui.
chezzestix
Member
Member
Posts: 118
Joined: Mon May 05, 2008 5:51 pm

Post by chezzestix »

I'm going to have to side with the masses here mostly from the programmer's perspective. Odd shaped windows sounds like a pain and a half to get to work correctly but I do like the idea. Maybe it could become a suppliment to the normal window gui and then as years go on and god willing you gain fans you could slowly phase your market into it. However it would cause shell shock for programmers for you to instantly step over into it.
User avatar
Brendan
Member
Member
Posts: 8561
Joined: Sat Jan 15, 2005 12:00 am
Location: At his keyboard!
Contact:

Post by Brendan »

Hi,
chezzestix wrote:Odd shaped windows sounds like a pain and a half to get to work correctly but I do like the idea.
Not necessarily - if the OS supports alpha blending, then the "odd shape" is just be a rectangle (with some transparent parts).


Cheers,

Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
svdmeer
Member
Member
Posts: 87
Joined: Tue May 06, 2008 9:32 am
Location: The Netherlands

Post by svdmeer »

I prefer a GUI with standard Windows and widgets.

Maybe boring, but it has some adventages:
- It's userfriendly and simple. Everything looks and acts the same. In my opinion Mac OS X is really confusing with both applications with Aqua GUI and de metallic-look.
- Size of applications. When application use fancy shapes and looks, it will increase the size without offering extra features.
- Speed. The best real example is Mozilla. Every widget was drawn my Mozilla itself, it was slooooooooow... The Windows version of Firefox uses more standard Windows widgets, what increases speed.

Many applications use nesessary custom gui's. I can imagine a special GUI for a media player is preferred to give it the look of a real mediaplayer. And of course for games. But the control panels for an antivirus program?? Both Norton does it, it increases size, pull down the speed and it hasn't any adventages.
User avatar
lukem95
Member
Member
Posts: 536
Joined: Fri Aug 03, 2007 6:03 am
Location: Cambridge, UK

Post by lukem95 »

i apreciate the comments, i think having an API for widgets may be the way to go. Widgets fit well into my idea for a GUI anyway, so this shouldn't be a problem.
~ Lukem95 [ Cake ]
Release: 0.08b
Image
User avatar
os64dev
Member
Member
Posts: 553
Joined: Sat Jan 27, 2007 3:21 pm
Location: Best, Netherlands

Post by os64dev »

If you can get a hold of the book: "Design Patterns - Elements of Reusable Object-Oriented Software" by Erich Gama, Richard Helm, Ralph Johnson en John Vlissides you should have a look at it. They have an example with respect to Supporting multiple look-and-feel GUI's (dynamically at runtime) and i also used the book to abstract hardware also. I just wrote a simple application which supported the different look and feels on different rendering engines (Bitmap, DrawDib, DirectX and OpenGL) and this could all be switched on runtime. Very powerfull stuff.
Author of COBOS
User avatar
lukem95
Member
Member
Posts: 536
Joined: Fri Aug 03, 2007 6:03 am
Location: Cambridge, UK

Post by lukem95 »

thanks for the recommendation, i'll put some money in my bank and see if i can order it online.

has anyone used www.abebooks.com? its good :)
~ Lukem95 [ Cake ]
Release: 0.08b
Image
jal
Member
Member
Posts: 1385
Joined: Wed Oct 31, 2007 9:09 am

Post by jal »

Having odd-shaped windows is of course quite old, think of all the 'skinable' media players out there. Apart from the slighly more difficult technical aspects, what I think is the main drawback is that in general, you are working with one or two programs on a single task (or perhaps a third as a miscellaneous task, but you get my drift). You want to optimally see the content of the windows of these program(s), but not of any others. With odd shaped (instead of rectangular shaped) the danger is that between the shapes of the window, you see many others, which will distract you from your tasks. In fact, I think having no windows at all for main programs may be even better. I almost always have my windows maximized, which works quite well.


JAL
User avatar
esa
Posts: 19
Joined: Tue May 20, 2008 1:25 pm
Location: Finland

Re: Windowless GUI

Post by esa »

I'm tired of windows too... to be exact I'm tired of moving and resizing them. They never come out just right.

If I ever get to the point of constructing a graphical user environment for my OS I'll probably just discard the whole thought of having windows in the "normal" sense. Instead I'll just give the user access to multiple desktops and make it possible for the user to freely split and join the screen area of each of those desktops into blocks. The closest examples I can think of are Emacs and Blender. The user could then choose which application gets to display itself on each of those views (i.e., blocks). I think this would be cool. 8)

I have an even cooler idea but I'll try to implement it as an actual application before I tell you guys about it. :P (And with my luck someone else has probably done it already...)
If debugging is the process of removing bugs, then programming must be the process of putting them in.
- Edsger W. Dijkstra
DeletedAccount
Member
Member
Posts: 566
Joined: Tue Jun 20, 2006 9:17 am

Hangover from my Software Engineering Classes

Post by DeletedAccount »

Golden rules for designing a good user interface
  • 1 Place the user in control
    2 Reduce load on users memory
    3The user interface must be consistent
:arrow: Stollen from Pressman , Software Engineering , a Practioners Apporach . However most of the guidelines in the book are an overkill for small and hobby projects . Just hack your way through :twisted:
User avatar
babylon2233
Member
Member
Posts: 66
Joined: Fri May 23, 2008 5:30 pm
Location: Malaysia

Post by babylon2233 »

How about Sugar GUI?
User avatar
lukem95
Member
Member
Posts: 536
Joined: Fri Aug 03, 2007 6:03 am
Location: Cambridge, UK

Post by lukem95 »

the sugar approach is interesting, but i think there are still too many benefits with having more than one window open - watch a movie and talk on MSN for example.

currently im going with a more traditional desktop with a slight twist (to make it more user friendly) and i plan to have a method to split this into multiple desktops onscreen, which can independantly be blanked etc.
~ Lukem95 [ Cake ]
Release: 0.08b
Image
Post Reply