From CEGUI Wiki - Crazy Eddie's GUI System (Open Source)
Jump to: navigation, search

Written for CEGUI 0.7

Works with versions 0.7.x (obsolete)

Requires at least version

PyCEGUI: BeerTracker series

Category PyCEGUI: BeerTracker series not found
This page is part of a series, use links above to easily navigate through all chapters of the series.


This is the first in a series of articles, designed to build an application from the ground up - that is to say, the planning, construction, and utilization of the application are all documented.


  • Python 2.6
  • PyOpenGL




BeerTracker is an application which allows the user to record their beer drinking habits; details such as the size and brand of beer drunk, when it was drunk, the cost of it, and the users feelings on the beer, among other things, are recorded in a persistent manner.


On startup, the application will first read any preferences located in a configuration file in the users home directory. Afterwards, it will load any data that is located in the persistent storage (previous beers drank, etc). At this point, the application will become interactive, and accept user input.

Menu bar

A preliminary layout of the menu bar goes as follows:

  • File

  • Edit
  • Help

Configuration file

The configuration file will, among other things, specify the last active persistent storage (if any), which will be loaded when the application starts up.

Each subdirectory will be the name of a persistent storage, which the application can read from and/or write to as necessary.

Persistent storage

Our choice of persistent storage will, obviously, be based off of the hard drive; however, the bigger question is in what format it will be stored in. There are many more options than I know what to do with, but since we are using Python and trying to keep the application relatively simple, we are going to rely on the Python dbm family modules.


  • Create initial application; then post it.
  • Create category for series only after the initial application is done.
  • ETA of initial application: 6/24+