Hi, I was wondering if there was any chance of creating a new GUI toolkit in Pygame, for Google Summer of Code. I know this isn't working directly on Pygame, but I think an easier to use, more detailed toolkit may lower the entry barrier for new developers, and provide a smoother experience to the players that choose to play these games, thus improving the overall quality of the Pygame project. This toolkit will focus more on the widgets than packing features, giving full control to the developer as to where the widgets should be positioned. Each widget should act as a user would expect, with similar behaviour to GTK+ widgets, a lot of attention has gone into the small details. With it's current design, to start using the toolkit it is as simple as: from sgc import * from sgc.locals import * #Import the modules # Create a widget example_widget = widgets.Input_Box(args...) #Create an input box widget example_widget.pos = (x,y) #Set the widget's position example_widget.add() #Add widget to the active widgets Then just add into your event handling: widgets.event(event) And somewhere else in your game loop: widgets.update(time) It should be complete without graphics to keep the total size low and unbloated, all graphics should thus be produced through code only. Although, it will be themeable so that developers can use custom images to change the appearance of the widgets. During this GSoC project I would also like to make this toolkit work in OpenGL under Pygame, with identical behaviour, so developers can have a more seamless transition between 2D and 3D game development. I have started creating a spec for this project as part of my college coursework. Most of the stuff in the spec has already been completed, so if there is a chance I can do this for GSoC then I will expand this spec to show what will be completed during this timeframe. You can download the spec from: http://sambull.org/spec.pdf If you also want to see the current progress of the project, you can download the source from: https://launchpad.net/simplegc Just download the code from the link, then run the run.py file in Python to launch the example program. The widgets should behave as you would expect them to on your desktop, use the "f" key to toggle the FPS counter. The dialog windows and menu are not complete, but the few other widgets are reasonably feature complete. Thank you for your time, Sam Bull
Attachment:
signature.asc
Description: This is a digitally signed message part