On 5/17/06, Nicolas Roard <[EMAIL PROTECTED]> wrote:
Hi,

Here is a tgz containing the code I used when I played with my panel
some time ago... just a few convenient methods like requesting atoms,
swallowing windows, etc.
Yen-ju, I'm not sure it can be of any use for the x11 library we
talked about (as you probably have such code already, beside this code
was quite experimental), but here it is if you want to have a look.
I join the "panel" code as well (which isn't really a panel, but shows
some use of the XDisplay class).

 Thanx.
 I looked at the code, and it is pretty much what we can have.
 I have something at lower-level from Azalea,
 like setting and getting properties from xwindow.
 We can put them together, probably called WindowManagerKit with WM prefix.

 There are two ways to implement WindowManagerKit in my mind.
 One is to extend NSWindow, NSScreen and GSDIsplayServer.
 For example, [NSScreen -numberOfWorkspaces] or [NSWindow -setDesktop:].
 We can either subclass or extend NS-class with category.
 But mixing NS-class and xwindow stuff may have some side effect.
 The other way is to have an independent WM-class from NS-class.

 Since NSWindow is the most used one and has a xwindow inside,
 the first approach should be fine.
 GSDisplayServer and NSScreen is usually called from GSCurrentServer()
 and [NSScreen mainScreen].
 Therefore, we can only use category to override some methods,
 which make things messy.
 And not many people use them directly.
 So the second approach might be better.

 I am still thinking about how to put everything in together.
 Probably an WMServer talks to x window directly and provide all the
low-level methods.
 WMScreen and WMWindow use this WMServer to access x window.
 WMServer and WMScreen are subclasses of NSObject
 and WMWindow is subclass of NSWindow.

 Comment ?

 Yen-Ju


Cheers,

--
Nicolas Roard
"I love deadlines. I like the whooshing sound they make as they fly
by." -- Douglas Adams


_______________________________________________
Etoile-dev mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-dev





_______________________________________________
Etoile-dev mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-dev

Reply via email to