User:Crond/sandbox/application1

From CEGUI Wiki - Crazy Eddie's GUI System (Open Source)
< User:Crond‎ | sandbox
Revision as of 16:51, 21 June 2011 by Crond (Talk | contribs) (preliminary outline)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Written for CEGUI 0.7


Works with versions 0.7.x (obsolete)

Requires at least version
0.7.5

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.





Introduction

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.

Requirements

  • Python 2.6
  • PyCEGUI
  • PyOpenGL

Name

BeerTracker.

Overview

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.

Startup

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.

TODO

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