SetCooperativeLevel

Ove Kaaven ovek at transgaming.com
Thu Apr 4 19:42:32 CST 2002


On Thu, 4 Apr 2002, Tels wrote:

> ddraw/user.c has comments like these:
> 
> /* GetDisplayMode: generic */
> /* GetFourCCCodes: generic */
> /* GetGDISurface: ??? */
> /* GetMonitorFrequency: generic */
> /* GetScanLine: generic */
> /* GetSurfaceFromDC: generic */
> /* GetVerticalBlankStatus: generic */
> /* Initialize: generic */
> /* RestoreAllSurfaces: generic */
> /* RestoreDisplayMode: generic */
> /* SetCooperativeLevel: ??? */
> 
> * What does the "generic" stand for? Return value? Function class?

Simply that the generic implementations in ddraw/main.c are used instead
of reimplementing them in ddraw/user.c.

> * It seems that SetCooperativeLevel associates a "value" (or more than one)
>   with the givenwindow handle and TestCooperativeLevel let's you later check
>   this status. Where would I store such a "global" value?

Somewhere in the IDirectDrawImpl structure. Most of this is already
implemented in WineX, though. You can merge that code (but only the 2D
parts) into main Wine if you want... I think I never got around to do it
myself, we've worked in the next WineX release for far too long.

> * If I understand it correctly, the directx stuff is done by transgaming.
>   Their licence differs from the "normal" wine. (I am really unsure
>   how all these things play together even after readin codeweavers.com,
>   winehq.com and transgaming.com).
>   So, if I send in a patch for that, should I send it to wine-devel-patches?
>   wine-devel? winex-devel? Under what license would it fall? Or does that
>   not matter? 

Each list has a "default license", I suppose... the default license for
both used to be the X11 license, until WineHQ changed licenses. Any code
you want to see in WineX must be submitted under the X11 license.
(Submitting only under the AFPL won't work since we want to release WineX
under the X11 once we have enough subscribers.)

The X11 license is the license that allows sublicensing to any other
license, including LGPL and AFPL, so both Wine and WineX can use it.

> * Also, since I am a bit CVS challanged (newbie, I told you ;), is it okay
>   to add my files directly in the CVS source tree with vi(m) and then send
>   you a diff -u patch? Or do I need some CVS magic to do locally? Or just
>   keep the file outside the CVS and then send a patch?

You can modify the source files and run "cvs diff -u" to diff against the
repository itself, without keeping the original files around.




More information about the wine-devel mailing list