Current status of shaped-windows GSOC project

This is my loosely SCRUM-based TODO for the remainder of the
shaped-windows feature addition to libSDL 1.3. The actual code for the
X11 and Win32 implementations of the functionality is written and in the
compile-check-debug stage. However, this has been stalled by my and
Andreas’s lack of knowledge as to how to make configure.in generate the
correct linking script for sdl-config on the X11 platform, which keeps
us from using the test program testeyes to debug the done
implementations. I’m adding it manually myself for now, and am
proceeding to debug testeyes and the X11 implementation of shaped windows.> Eli Gottlieb’s checklist for the GSOC shaped windows project. Dated

July 9, 2010.

  1. Enable proper linking of the X11 implementation and test it.
    –> Find the place in the build system for platform-specific linking
    flags. STATUS: BLOODY IMPOSSIBLE.
    –> Add a linker flag to bring in libXext.a. STATUS: WILL BE SIMPLE
    ONCE PREVIOUS STEP IS ACCOMPLISHED (kshemashiach yagia).
  2. Build the Win32 implementation of shaped-windows functionality.
    –> Add driver functions to the SDL_ShapeDriver in the Win32 driver’s
    SDL_DisplayDevice at the proper point in the code. STATUS: CHECK.
    –> Add a hook in the Windows resize-window code to call
    Win32_ResizeWindowShape(). STATUS: CHECK.
  3. Enable building the testeyes program.
    –> Reprogram it to use the latest shaped-windows API. STATUS: CHECK.
    –> Get it, along with the rest of the test suite in my branch,
    building successfully. STATUS: REQUIRES X11 IMPLEMENTATION TO LINK
    PROPERLY AND/OR A BUILD-BUDDY BUILDING AND RUNNING THE TEST FOR ME.
    –> Debug testeyes and the platform-specific shaped-window
    implementations in tandem. STATUS: TO BEGIN, CURRENT SPRINT.
  4. Implement the SDL shaped-windows API for Mac OS X using Cocoa.
    STATUS: NEXT SPRINT.
    –> Locate (once more) the API documentation for shaped windows under
    Cocoa.
    –> Design and encode a version of SDL_ShapeData for Cocoa.
    –> Write Cocoa_CreateShaper().
    –> Write Cocoa_ResizeWindowShape().
    –> Write Cocoa_SetWindowShape().
    –> If necessary, implement functionality adjunct to
    SDL_CalculateShapeBitmap() for Cocoa usage.
  5. Use testeyes to debug all implementations. STATUS: SPRINT + 2.
    –> Debug Cocoa implementation.
    –> Debug Win32 implementation.
    –> Debug X11 implementation (again).