Introduction
This application was written to allow me to cook a roast dinner without any stress and to make sure I got all the timings correct for when each different food item needed to be started.
The Code
The UI starts out with the class MainForm
. This class is the main window of the application and contains a MainMenu
, StatusStrip
and a DateTimePicker
to select the time to serve the dinner. It also contains a ComboBox
to allow selection of different meals to view. The main DataGrid
contains the list of steps that need to be taken to make the meal.
I use two Timer
classes, one for updating the current time display and the other for calculating when an action is due (not working yet).
The AppVersion
object has functions that return the current version number of the application (including its alpha/beta status).
This project contains some classes that I use in all of my projects.
It has a CommonFunctions
class which contains some general functions to get information about the environment.
The PreferencesXml
object allows application preferences to be stored in an XML file and re-loaded when an application is started.
The FontHandler
object is still under development but will allow me to load fonts from an embedded resource file and use them in the UI.
Points of Interest
Mono 1.2.2.1 (the version I have running on my eeePc does not support StatusBar.Name
properties. I have to comment these out when I compile so that it will run on my eeePc.
I also have to change the construction of the MainMenu
from...
this.mainMenu1 = new System.Windows.Forms.MainMenu(this.components);
... to...
this.mainMenu1 = new System.Windows.Forms.MainMenu();
... as mono 1.2.2.1 will throw a missing method exception.
These are the only two changes I have to make to get it running on mono on my eeePc. If I can get mono 1.2.6 installed on the eee, then I should not have to change these two items as it will run with the above two things unchanged when I execute the app on my Windows box under mono 1.2.6.
Todo
- Alarms: Get an alarm to sound when an action is due
History
- 1.0.0 (alpha) (28th December, 2007)
- First public offering
Data is actually hardcoded for now, but for the next release I will make it load in an XML file
- 1.0.1 (alpha) (10th January, 2008)
- Added saving recipes to an XML file
Does not yet load from XML
- 1.1.0 (alpha) (12th January, 2008)
- Some pretty pictures !!
The next action now works and it shows pictures to depict how much you should be panicking!!
- 1.2.0 (beta) (20th January, 2008)
- Fixed marking the actions as 'Done' if the table is sorted
- Fixed current time display
- 1.3.0 (beta) (20th January, 2008)
- Can now read in an XML file containing recipes