PFen is a C++ library that implement the window manager for SDL.

The goal of this library is to implement a window manager for multimedia applications. This manager have to be:

At the moment, only basics functions are implemented, like:

Making a Code::Blocks project that use PFen library:
  1. Make an empty SDL project.
  2. Go to project's properties (for more simplicity: right clic on the project, then properties)
  3. In the window that appeared, clic on "Project's Build Options..." at right bottom..
  4. In the "Linker settings" tab, add PFen.dll
  5. In the "Search directories" tab:
    • in the "Compiler" sub-tab, add PFen's headers directoy
    • in the sub-tab "Linker" add the PFen's bin directory
  6. Valid all. (so "project's build options" and "properties")
  7. In the principal source of your application add #include <pfen.h>.
  8. In the principal function of your app (probably "int main(int argc, char **argv)") initialize at least the SDL_INIT_VIDEO sub-system.
Tools used to develop it:
Compiling and installing the PFen library for Code::Blocks:
  1. Install code::blocks. If you want to use nightly builds (I higly recommend you to do) you will find here how it work.
  2. Once Code:Blocks installed, just configure the ($sdl) global variable to make it have the paths to SDL's headers and binaries.
  3. Download sources, with the repository of your choice. (At this moment, there is only the working version, trunk)
  4. Open the PFen.cbp file with Code::Blocks.
  5. Choose the target (debug by default, but a release target is available, wich is more optimized).
  6. Run the compiler.

There are many manners to contribute to this project. As you can see, it started there are a few time (actually (17/11/2009) near 3 week, but I work on my computer to make basis first), and this site is more younger than the project. The ways I see to help could be:


This library is licensed under LGPL's terms.