On Tue, Feb 18, 2003 at 06:54:42PM +0200, Tuomo Valkonen wrote: > > > relationships. Which makes sense since only a managing relationship > > shouldn't impose any restrictions on window geometry (which is now > > circumvented with WWinGeomParams). > > It is is the manager object that imposes restrictions on the managed > objects; an object need not know of its children that it is not also > managing.
I see. > > > But does this mean that there will > > be separate lists for windowed and windowless (managing) children of a > > WScreen? Or did I get everything wrong? :) > > All children of an object are on the WThing children list as they are now. > However, objects like a WWorkspace don't have children anymore. Instead, > such objects keep an implementation dependent list of the parent's children > that they manage (and the parent does not). > > Example: (let's forget viewports for now to make things simpler) screens > have workspaces and frames and whatever as children. Screens only manage > the workspaces (and full screen client windows). Workspaces manage frames > (that are children of the screen). Frames have client windows as children > and also manage them. A dock window would be an _unmanaged_ child of the > screen it is on for now. Hmm... so screens have a big flat list of _all_ objects that are on the screen. And the hierarchy lies in the implementation-specific lists defined in the manager objects. But then each object has an attribute that specifies which manager it is managed by, if any? > Later some kind of WFloatingOnTopLayer manager > object may be implemented (just a PWM workspace of sorts actually). When you're talking about PWM "workspaces", are you referring to an Ion workspace that works like a PWM workspace or are you talking in more general terms about an object that can manage windows as PWM does? Because the latter would be more useful; for example, it could be attached to a frame like a clientwin (giving you a virtual workspace inside a frame), and it could be used to manage transient windows. Judging from what you just said, I guess you mean the general object (I thought you meant Ion workspaces only before). /Pelle
