Thanks for your reply Niels.

I'm afraid I'm still confused over the intended purpose of the SaWMan
interfaces (ISaWMan/ISaWManager) as compared to that of the functions
in sawman_manager.h. Certainly, allowing an application to register
callback functions is one important purpose for the interfaces.
However, if they are not intended to form *the* public API for SaWMan
aware applications, I don't understand why they include many functions
(e.g. InsertWindow, Lock) that appear to be simply wrappers for
functions in sawman_manager.h (e.g. sawman_insert_window,
sawman_lock). For example, why would I use ISaWManManager's
RemoveWindow instead of calling sawman_remove_window directly?

Cheers,
Tom.

2008/9/25 Niels Roest <[EMAIL PROTECTED]>:
> Hi Thomas..
>
> Hiding windows is as simple as window->SetOpacity( window, 0 );
> The SaWMan call is likely to allow a windowmanager to act upon changing a
> window's visibility, not sure cause it's not implemented as you point out.
> SetOpacity results in update_region() which will do a SAWMAN_VISIBLE_WINDOW(
> window ) check.
>
> ISaWMan and ISaWManager constitute of callbacks issued by SaWMan.
> Of course, inside these callbacks, you may need to query/change some SaWMan
> status;
> for that you'll use the calls in sawman_manager.h.
> For instance, you might want to prevent a certain window getting focus.
> In the required callback (which is generally issued before SaWMan performs
> the change) you can override the behaviour, or if it's not this certain
> window, follow the default behaviour by calling the 'official' change focus
> func.
>
> hth,
> Niels
>
> Thomas Gutteridge wrote:
>>
>> Hello
>>
>> I have a couple of questions about SaWMan:
>>
>> Firstly, I notice that the function SetVisible() in the ISaWManManager
>> interface is not implemented. I'd like to use it to hide windows! Has
>> it simply just not been written yet or is there a reason why I
>> shouldn't need to use it? If the former, could someone suggest how I
>> should hide (and re-show) a window? Looking around I got the
>> impression that calling sawman_withdraw_window() might be the answer.
>>
>> Secondly, I'm a bit confused by the design of the API that SaWMan
>> provides to window manager developers. I originally assumed that the
>> intention was that the ISaWMan and ISaWManManager interfaces alone
>> would constitute the API. But then I discovered the wider range of
>> functionality available through sawman_manager.h. I have tended toward
>> the conclusion that the manager interface is not yet complete and, as
>> a stop-gap, the richer functionality has been made available by
>> exposing this extra header? Is this correct or have I misunderstood.
>>
>> Many Thanks
>> Tom.
>> _______________________________________________
>> directfb-dev mailing list
>> directfb-dev@directfb.org
>> http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev
>>
>>
>
>
> --
>
> .------------------------------------------.
> | DirectFB - Hardware accelerated graphics |
> | http://www.directfb.org/                 |
> "------------------------------------------"
>
_______________________________________________
directfb-dev mailing list
directfb-dev@directfb.org
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev

Reply via email to