[unios] Re: runtime example I

Anders Petersson anders.petersson@mbox320.swipnet.se
Wed, 24 Mar 1999 18:15:32 +0100


>> "UniOS System" - I'd prefer "Local system", since that more correctly says
>> what it is. Or "Local root" or something (the link would lead to the root
>> of the current user, I guess). That could be different for different
>> distributions, however.
>
>Yep, that was just a name I came up with, no need for it to stick.

Not that it matters...

>> Instead of the 'System Desktop' item, have something like 'User interface
>> configuration' or 'Windowing subsystem'.
>
>Hmm... thoese terms sound very confusing to a new user... just the word
>"subsystem" would send most of them into a panic :)  This is a very minor
detail
>at this point, I'd rather focus on working out the major parts of the system.

Right.

>> >> NOTE 2: You may be asking yourself where the object orientedness of
the OS
>> >> comes into play.  It is throughout the system, but it's mostly behind
the
>> >> scenes. For examples there is no desktop wallpaper. The background is
>> actually
>> >> an application that always resides at Z(0) on the desktop. This is the
>> same
>> >> for the virtual "Start" bar, another object bound to Z(1).  However
these
>> >> elements are seamlessly integrated into the system design.
>>
>> 1) I can't agree that the OO aspects are hidden. They should truly affect
>> the way you work - to the better.
>
>The user doesn't care about the system paradygm, all he/she cares about is
if the
>system works with his/her programs.  The programmers, systems designers, and
>power users are the only ones who will know it even exists.  I think the
only way
>it will ever be noticed by the end user is the lack difficulties they have
with
>the system (an impossible thing to measure).

I don't think you should need to dig very deep to find differences from
current systems. Even in routine tasks you could benefit from explicitly
push objects around. For example, browsing and acting directly on the
systree is both powerful and convenient. But at the same time it could be
too powerful for novices. Of course you could restrict the interaction to
today's level, but that would take away a lot of advantages.

>> 2) Explain what you mean by 'Z(0)' and 'Z(1)'. Whatever it is, I don't like
>> the idea with things hardwired to specific locations. What if you want
>> several UI's?
>
>Z-ordering is the 2D windowing method used by all GUI systems.  Z(0) is the
>furthest back position in the stack Z(1) is the next up, etc, etc.  This
example
>only pretains to the flexible GUI system we plan on implementing into the
system,
>and how an object orented (totally flexible) system must handle things like
>desktops, and menu bars.  There are always constants for how things must work
>(like one window has to be behind another), Z-Ordering is pretty universal I
>think.

I have a more OO'ed suggestion. The very background is an object. Windows
are children of the background (still objects), able to themselves have
additional children. Every window has some defined properties, like
position, size, etc. This makes it all to a common object tree structure.
Children are always in front of their parent. "Sisters" could be ordered by
their slots' position in the parent's array or how they are ordered by some
defined property, like a priority number (would be a child of the window).
For this to be satisfactory, I'd want some way to restrict/define the
members of a subtree. Probably this could be done by giving much power to
object servers as to what objects can be allowed. That would truly be a
neat solution!

>> 3) I'm unsure if seamless integration into the system design is a good
>> thing. The system design should rather be independent of anything like
>> this, but have the ability to adopt new 'subsystems' at will. Seamlessly.
>
>Hell no, the GUI is just another program running on the main system.  It
takes
>advantage of the Graphics Adaptor to be a management level for programs
that hook
>into it, it can be replaced or not used at all.

Good. I like to this about UI's as proving services, that applications can
apply for and make use of.

>> >> "despite the strange ways the mouse and keyboard works" - UniGUI
would be
>> >> totally configurable, like X.
>>
>> Enlighten me on this, is X really _totally_ configurable?
>
>X is very configurable.  X is broken up into three pieces:  Server -> Window
>Manager -> Applications.   The server is a program that takes advantage of
the
>graphics adaptor, but does nothing more that provide services to the Window
>Manager and Applications.  For example, if you start the server up, without a
>Window Manager (UI), you get a greyish screen, in which you can move your
mouse,
>but thats about it :)  There are a couple of static key combo's that
belong to
>the server (like Kill server - CTRL-ALT-BACKSPACE), but all the keys are
>remapable also, as is what the mouse buttons do. This window manager
handles all
>of thoese tasks.  Applications are essentially just X * Y sized windows
that can
>only write within their own window.  

Cool.

>It's a very nice system, but the flexibility
>is one of the major problems with it <gasp>.  The problem exists that
there is no
>real standard desktop that people can learn (they all act similar, but not
enough
>for a home user).

That could become a real pain in the ass for an OS as flexible as UniOS is
supposed to be. Could you explain a little closer what the problem lies in?
Are the different versions binary uncompatible, or is it just a question of
interface diversion? Or something else?

>> PS.
>> I think the new way XOOM advertises on pages is very bad. If UniOS grows
>> more serious, it's my opinion we should get our own domain and server.
>> How's the site mirrors doing, BTW?
>
>XOOM is pissing me, and most of it's members off with that stupid bar.  I
even
>wrote them a letter stating that the people that frequent this page will most
>likely find that bar a complete annoyance, and would never visit their
>advertisers, or buy any products (I hope I'm not jumping to conclusions, they
>only seem to sell crap).

OTOH, advertisements are what they live on. However, it gives the site the
wrong impression.

binEng