Revised schedule

We are now in the 6th week of the Summer of Code and through a number of circumstances, both in and out of my control, I am pretty behind schedule. My coding in the last few days has shown great promise that I can quickly get back on top of things, but I think it is time for me to lay down a revised schedule for the coming months. The first stage of my schedule is pretty tight – but I have ample time at the moment and am willing to work all the hours in the day to make up for lost time.

Now – July 12th

  • Write all the code for virtual keyboard
  • ALREADY DONE
    • implementation of image map functionality (ie. polygon/rectangle intersection code)
    • Skeletal version of main virtual keyboard class
    • XML file format has been defined
  • TO DO
    • XML parser – a case of extending Vicent’s XML parser to parse my file format = 2 days
    • Keyboard main loop – to handle mouse clicks when keyboard visible and draw the keyboard to the overlay layer = 1-2 days
    • modification of event manager to receive events from keyboard and handle mode switching of keyboard = 2 days
    • integration of virtual keyboard into rest of system = 1-2 days
    • Other stuff – extracting from zip file & creation of example keyboard pack = 1-2 days

July 13th – July 14th

  • Prepare mid-term evaluation material

July 15th – July 20th

  • Clean up of existing code
  • Make sure code is commented clearly
  • Extensive testing of virtual keyboard

July 20th – July 25th

  • Detailed research into keymapping task

The following is slightly vague, due to my lack of knowledge

July 25th – August 2nd

  • Writing of general keymapper interface
  • involves providing the link between engines and backends
  • working out how each is going to tell the keymapper what it needs to know

August 2nd – August 9th

  • Writing of algorithm to automatically map actions to buttons
  • gui to allow user to change these mappings
  • saving of these mappings to ini file

August 10th – August 20th

  • Additional key mapping features

August 20th – Sept 1st

  • prepare for final deadline
  • Lots of testing, code cleanup and documentation

PS – progress report coming tomorrow (including details of XML file format)