Time flows upward.  Releases happen when all actions
below them are completed.

This document is at risk of radical change whenever I
feel like it.

-  means to do

+  means done by Andy Balaam
x  means done by Sagar Shah
*  means done by Walter Duncan
^  means done by Dave Torok
b  means done by Brendan Corrigan
e  means done by Ewan Harrow
m  means done by Mike Dean
y  means done by Yann 'PoV' Coupin
r  means done by Rob Stewart

--------------------------------------------

- Wish list (I have no plans to implement, but others are welcome)

- Think about ports to Gnome, wxPython, ...
- Convert to SWT (or SwingWT?) and compile natively with GCJ?
- Search for programmes, different views on data.
- Custom component for displaying programmes.
- Process programmes in another thread so we can see a progress display.
- Download happens without leaving ViewerFrame
- Apply different fonts to every screen?
- Review usefulness of stuff like ConfigGuesser
- Change all forms to use GridBagEasy and newXXX methods.
- Sort out Utils.exec methods so they make sense
- Refactor FreeGuideViewer into a sort of MVC setup
+ Separate classes into packages
- Reduce the size of the XMLTV exe by removing unnecessary Tk files
+ Fix problem that if you reinstall to a new dir the old install can't be
	uninstalled (well, you have to delete the directory instead...)
- Single channel view
- Integration with tv card software
- Automated bug reporting e.g. when the grabber fails.
- Integration with PIMs (http://www.imc.org/pdi/)

- Release 1.0 (the destination)

- Internationalisation
- Use Java's printing capabilities to print
- Other platforms - investigate Mac, BSD, others
- A C++ installer that just checks for the right java version before
  running the Java installer.
- Automate upgrading XMLTV without upgrading FreeGuide?
- Separate reminders from chosenness?  If so, need a new set of preferences
	which need to be scanned on startup (in fact that is a better way to do
	it in even if we stick with choices.).
	Perhaps just add an option - remind of chosen programmes?  If that's
	unselected then need to add explicit reminders.

- Release 0.9

- Manual
- Use serialization to reduce startup time

- Release 0.8.5 (nice features)

- Run an exe when a programme is about to start and/or end
- Add firefox to the possible browsers.
- Facilitating the download of listings outside of FreeGuide
	(e.g. via a cron job, or at ppp connect)
- Error message on RegExp error in Favourite editor
- Snap to nearest half hour in timeline on click
- Easy access to different channel ordering - through right-click menu
- Make favourites work even immediately after a download halfway through a day
- Make downloading work after midnight
- Make it not say no listings after midnight
- Remember last hit-time of favourites
- Allow sorting of favourites list on name, hit-time and filter by category
- Save today's choices to xmltv format.
- Add a "save to html" option
- Make installer install shortcuts for Windows, Gnome and KDE
- Look for the default browser in the Windows registry under:
	KEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Default HTML Editor\shell\edit\command
	(actually that looks like the HTML editor, but anyway)
- Deal with programme ratings
- x-dist icon support in RPM http://www.hyperborea.org/software/dillo/dillo.spec
- Look into SQL engines: http://www.mckoi.com/database/
	
- Release 0.8.4 (preferences creep)

- Choose how old files are before you delete them
- Ability to save and load preferences (using Java's ability to save to XML)
- Option to jump to a specific time on program start
- Remove programmes you've missed from the guide
- Resolve duplicate programmes in the guide, so it shows both times it's on
- Movie and/or category matching in favourites
- Subtitle matches in favourites
- Make installer launch FreeGuide (if XMLTV is configured)
- Terms and conditions of listings
- A default favourite, so when you add a new favourite it comes with preset
  settings.
- A grid or "now" line that helps see what time programmes are on
- Delete some preferences when doing a complete install?
- Fix bug in Italian grabber GUI config
- Fix bugs in Windows grabber config for Netherlands, Sweden and Germany
- Error dialog when there's an XML parsing error.
- Investigate little squares appearing instead of chars during grabber config
  on Windows (na_dd - timezone screen).
- Man page in RPM
- Look at Shaun's .desktop file and startup script (email titled Re: Change
  from an installer to a first time wizard)
- Allow selection only of programmes on channels that are currently displayed

- Release 0.8.3 (aesthetics)

- Go To Now scrolls the personalised listing panel as well as the main panel
- Coloured favourites categories (text and/or background)
- Highlight a given channel
- Make the About box a _lot_ nicer.
- Show whether a tab has been altered on the Options Dialog
- Channel icons
- Icon to show you can jump to the web site
- Allow to adjust display time of tooltips
- Allow to un-choose programmes from Personalised Listing pane
- Checkbox to stay at now time
- Change font for "No programme selected" in programme details pane
- Scroll to the top of the ProgrammeJLabel whenever its contents change
- Add icons to UK and US listings
- Fix that BackingStoreException.

- Release 0.8.2 (accessibility, accessibility, accessibility)

- Improve accessibility, specifically keyboard shortcuts
- Shortcut keys for everything
- Handle other XMLTV tags
- Scroll to the most recently selected programme (and highlight it?)
- ProgrammeJLabel shows which programme is selected
- Keyboard navigation of programme scrollpane
- Full test of keyboard navigation
- Fix programme icons as per my email to Yann
- Views: details only, guide only, both layout 1, both layout 2, neither
- View menu - show tooltips
- Check whether setting the timezone is really necessary.
- Check for correct Java version with GUI response.
- Fix problem with old guide location staying around
- Tell people they might want to delete their freeguide-tv directory after
  installation
- inform http://www.radioandtelly.co.uk/guides.html
- Make icons optional in Windows installer
- rename program folder to freeguide
- Update screenshots on sf and freshmeat to show channel and program icons

- Release 0.8.1 (bug fix)

- Fix windows problem by deleting any install_directory preference stored in
  the user prefs section
- Fix linux problem of null install_directory by changing it so it installs
  the docs to the working directory after you run the first time wizard.  Now
  the linux version doesn't need to know where it's installed to work.

+ Release 0.8 (native installers & first time wizard)

+ Merge manpage, start script and desktop entry with debian ones
+ Remove all references to freeguide-tv and replace with freeguide, except:
   * Web address
   * CVS repository root and module
   * Java preferences node
   * Mailing list names
+ design icons
+ Update docs for new situation
+ Discuss installers on the developers' page
r Re-arrange download options panel and add permanent re-download option
y Display programme icons
+ create native windows installer (NSIS)
+ create native linux installer (RPM)
+ Convert the installer into a first time wizard
+ Arrange classes into packages

+ Release 0.7.5 (minor features)

+ Resize channel panel to fit icon
+ Clarify that you _have_ to enter your password during config in NA
+ Make a standard email form for beta test results
+ Fix bug with saying no listings available after midnight
+ Ability to turn off tooltips
+ Programme info panel
+ Advertise for beta testers
y Icons in channel label
y Added "starts in x mins"/"started x mins ago" to tooltip
+ Fix problem with tv_split line left from old configurations
+ Allow manual changing of browser command
+ Fix crash on tv-%Y%m%d.xmltv file in data dir
+ Disable Choose Channels button when the grabber command is blank
y Move programmes names, making them visible when they've scrolled off the left
+ Fix DateFilesExistList to not choke on bad filenames.

+ Release 0.7.4 (bug fixes)

+ Beta testing
+ Update web site saying what countries are supported etc.
+ Copy in updated XMLTV DTD
+ Fix problems with accented characters in main programme window reported by
  Rob Stewart (delagated to XMLTV people)
+ Upgrade to XMLTV 0.5.34
+ Upgrade XMLTV Tk patch to use Tk804 instead of Tk800
+ Fix newly-introduced uk_bleb timezone problem
+ Fix bug with linebreaks in commandline entries
+ Update FAQ about listings from 2 sources
+ Deal with &amp;#8212; type entities in programme names

+ Release 0.7.3

+ Fix timezone problems for na_dd
+ Fix bug with ", ends" in tooltip when "Show programme times" is "No"

+ Release 0.7.2

+ Fix the "Execution Error" on success problem in Windows.
+ Write tv_grab_uk_bleb
+ Include xmltv 0.5.32
+ Fix missing uk_bleb in Linux installer

+ Release 0.7.1

+ FAQ
+ Make installer launch a README file (useful to check browser works, as well)
+ Make installer launch xmltv configure
+ Write a config setup for bleb
+ Do share files for those grabbers that need them
+ Get Robert to do a windows version of the grabbers.
+ Respond to the needs of tv_grab_na_dd including:
	+ update docs saying you need a Zap2it account
	+ update docs about overwriting listings
	+ tell user they need to get an account before they continue
	+ automatically make a password file
+ Write uk_bleb grabber
+ Accept dates with seconds but no timezone
+ Use XMLTV 0.5.31 grabbers (modified)
+ Add config file location to Options
+ Change "configure grabber" labels to "choose channels" everywhere

+ Release 0.7 (xmltv-tk)

m Further improve theme support to work with Java 1.5
+ Compile working xmltv with tk gui
+ Alter docs to reflect which grabbers are available
m JProgrammeLabel Border workaround for GTK+ theme bug
m Cache favourites to prevent re-reading from prefs
m Multiline tooltips if too long
m Sort out themes in some way
m Make "More Info" box be scrolled to the top.
+ Fix unable to move "View Command" box bug
+ Update docs, including saying you need to set TZ
+ Include a modified XMLTV for configuration.
+ Enable configuration options in ViewerFrame and InstallWizardPanel
+ Add scripts in xmltv dir to CVS and source zips.
+ Add stats handling code to CVS and source zips.
m Scroll to programme in HTML guide on hover
m Scroll to programme in viewer on click in HTML view
+ Fix the bug in updateBoolean in FGPreferences

+ Release 0.6.3 (version checking, reminders, links)

+ Update docs
+ Make channel sets update after you've edited them.
+ Finish privacy dialogue
+ Fix popups coming up behind window on startup bug (using a later time?) 
+ Refresh after download (using dialog?)
+ Fix blank country in Install
+ Check that all prefs are covered in Options screen
+ Choose browser in options
+ Privacy choice on reminder screen
+ Document reminder system and incorporate into Options screen
+ Privacy preferences in installer
+ Choose browser on install
+ Global and specific install-xx.props file for each install type
+ Link to more info on right-click on programme
+ Check version on startup
e Make the "now" line a thing of beauty (using anti-aliasing)
e Anti-alias heart icon for Favourites

+ Release 0.6.2 (new XMLTV version 0.5.23)

+ Factor HTML guide stuff out of ViewerFrame
+ Fix the bug with spaces in filenames on Linux
+ Alert me when my programme starts
	(using secret options misc.reminders_on and misc.reminders_warning_secs)
+ Automate creation of tar.gz Source package with Debian naming
+ Use sensible naming for zip package too.
	
+ Release 0.6.1 (gradual improvements to GUI begin)

+ Implement sub-titles properly to avoid favourites-not-working regression
+ Latest XMLTV version
+ Remember what country you are from in installer, and where installed.
+ Add subtitles to programmes
b Change Favourites, Customiser, Channel Sets frames to JDialogs
+ Remove .xvpics from Source package
+ Add a note about WinRAR to the section about running FG
+ Fix problem with channel names being wrong after initial download

+ Release 0.6 (some features and grabber configuration)

+ Test all grabbers on Windows and Linux
+ Change screenshots on web page and freshmeat
+ Uninstall should remove data directory
+ Progress feedback during download process
+ Refactor to rename losing FreeGuide prefix to most classes
+ Massive code cleanup
+ Code rationalisation, FIXMEs, remove commented sections
+ Graphical flash screen, with progress bar
+ "Create a new channel set..." option in the channel sets menu
+ Fix severe errors when a channel is missing from a channel set
+ Only parse one input file if day_start_time == grabber_start_time
+ Fix bug where "Reset Choices" on one day messes up choices for another day.
+ Make movies go back to movie colour after being de-favourited
+ Talk to XMLTV people about non-zero exit codes under Windows (all but na, sn)
+ Talk to XMLTV people about tv_grab_nl errors
+ Talk to XMLTV people about xmltv.exe tv_grab_na --listings "tv-%Y%m%d.xml"
+ Fix bug with CommandsWizardPanel not splitting into separate lines on Windows

+ Release 0.5.5.1-win32 (Win NA bug fix)

+ Incorparate XMLTV 0.5.14 with Windows release

+ Release 0.5.5 (Win NA bug fix + remember channel set)

+ Also add notes about authenticating proxies
+ Remember last channel set on exit.
+ Write java version check in Java 1.0-compatible code, obviously!
+ Fix problem with tv_grab_na install - revert to %date%

+ Release 0.5.4 (Win UK bug fix)

+ The button captions on the downloader should change when there's an error
+ Deal with change to XMLTV config file naming to *.conf
+ Fix shared directory bug with UK install
+ Fix bug with fi install not doing all prefs
+ Support for es and it grabbers
+ Experimental support for nl grabber
+ Fix % problem on Windows na
+ Comprehensive Windows testing

+ Release 0.5.3 (XMLTV 0.5.8)

+ Inc. XMLTV 0.5.8

+ Release 0.5.2 (interim release for new xmltv version 0.5.7)

+ Test with new xmltv on Linux and Windows clean installs - check NZ and update
	README as required.
+ Fix no-refresh bug in channel sets
+ Include xmltv.exe 0.5.7
+ Tidy channel sets screen
+ Add notes about how to upgrade XMLTV without upgrading FreeGuide
+ Default to grab 4 days in uk as provider only provides 4 days' worth
+ Remove the big binaries from CVS and add to the developers' doc about how to
	do a build from CVS checkout + a couple of other files.
+ Add new fi grabber
+ Remove tv_split and other cruft
+ Add the XMLTV source distribution to the source package (good GPL practice)
+ Add new channel packages for _uk
^ Channel Set -- create custom sets of channels
^ Choose between 24-hour and 12-hour time formats (14:30 vs. 2:30 PM)
^ Colorize Movies
^ Parse Movies for NA and UK from XML
^ Parse and display star-rating for movies
^ Parse "previously shown" (repeated program) from XML
^ Choose between displaying the start time in the programme grid (or not) 

+ Release 0.5.1 (Stable bug-fix release)

+ Include new xmltv.exe 0.5.6 - test on windows first for "share" problem
+ Add to docs that some people (e.g. RedHat users) will need to change their
	XMLTV dir to /usr/bin/ instead of /usr/local/bin/
+ Bug in German installer

+ Release 0.5 (Features - especially use of many grabbers, and bug fixes)

+ Appears nz isn't working - "experimental"?
+ Explain in docs that nz needs your config file in ~/.xmltv/tv_grab_nz
+ Use xmltv 0.5.5 including nz grabber, and sn channel selection.
+ Add to docs known bug that na grabber always doesn't overwrite old files.
+ Explain in documentation that if you grab quite late in a day you may only
	get tomorrow's listings.
+ Stop it from grabbing stuff that's already been done.
+ Fix bug that means favourites sometimes aren't chosen (YES!)
* Dynamic population of the date list comboBox based on available data
* Add configurable option for default grabber_today_offset (uk=1, NA=0)
* Add configurable option to set grabber day start (na=00:00, uk=06:00)
* Add configurable option grabber_start_today with "today", or current showing day
* Add configurable Choice (checkbox) option (convert grabber_start_today? option)
	(do we need/want a CheckboxWizard?)
* Fix bug with NullPointerException when you start and there's no listings
+ Fix concept of missing time.  (Huh?) lol
+ Endless (if you only select "yes") loop - fixed, sorry :-)
+ Executor.exec() recursive call to FreeGuide.prefs.performSubstitutions()
	causes %% substitution to misbehave.
+ Seems to be a bug where only first grabber command executes.
+ Ability to control how many days are downloaded
+ Support for new grabbers
+ Which channels appear depends entirely on what listings have been downloaded
+ Allow changing of font sizes from customise screen
+ Make it work with the new XMLTV grabbers
+ 2 installers - Win and Linux that let you choose your location during install
+ Allow for the fact that a grabber may use dates without seconds, and other
	differences (e.g. tv_grab_de).
+ Get rid of config guessing and use defaults instead.
+ Make installer understand file>location syntax of props files including
	changing share to be included in file stuff.
+ Remove the need for tv_split by calling the grabber once for each day required
+ Stop hard-coding the directories into the preference values on install, use
	e.g. %misc.working_directory%, %misc.xmltv_directory%
+ Fix bug in StreamThreadReader (?) that means only the output of the first
	command is shown.
+ Grab one day at a time using a %date% %offset% substitution
* Dynamic update of command output window
* Fix bug that causes exception if running release candidate jvm (1.4.0-rc1)
+ Fix bug where you get asked twice whether you want to download new listings
* Put list of "missing listings" channels in a scroll pane...
+ Fix possible NullPointerException in StartupChecker.checkFileFailure
+ Put the binary exes, dlls in cvs as binaries
+ Change READMEs etc to point to http://java.sun.com/getjava/
  and point users to this with the installer too.
+ Make the command output screen on the downloader less confusing for newbies
+ Make scrollboxes bigger on Options screen
* Fix GoToNow to deal with days dividing at non-midnight times.
* Fix what happens when you go through to another day then click GoToNow
x When FreeGuide starts, automatically "GoToNow" rather than staying at start of day
x GoToNow shouldn't put the "now" arrow right at the edge of the screen
x Display which channels are missing when some listings are missing.
* Fix bug that means you don't see "now" when FreeGuide starts
* Load today's and tomorrow's listings to allow GoToNow to work

+ Release 0.4.3 (most wanted features)

+ Why do numbers disappear from the time line (Linux only?)
+ Remember window sizes and positions between uses
+ Add "Contains" option to title match in favourites
+ Ability to turn off listing at bottom of screen. (added one-touch buttons)
+ Move XML stuff to a separate object from FreeGuideViewer
+ Tidy up FreeGuideOptionsWizard - make it not a wizard
+ New screenshots for web site, and freshmeat.
+ Rename files with version number on build
+ Add the fact that your .jar installer has to be executed by javaw on Windows,
	not WinRAR, etc. to the readmes
+ Fix scrollbar arrows only moving display a tiny bit
+ Use columnHeaderView of scrollpane for time panel (doh!)

+ Release 0.4.2 (mainly bug fixes)

+ Developer docs
+ Thorough testing
+ Use long descriptions in the printed guide
+ box round Please Wait screen
+ "Choose all" button + "Choose none" button in channels screen
+ When some channels aren't found, still display the others.
+ Add days of week to dropdown
+ Fix bug with adding an already-selected programme to favourites.
+ Right-click on a favourite gives option to remove from favs
+ Fix bug where options screen wipes out what you chose for grabber command on entry
+ Fix bug with "&" in programme name (is this tv_grab_na?)
+ Make draggable bars look draggable
+ Make Options screen ask you its first 3 questions, then present you with all
	other options simultaneously. Each option has a "Guess" button
+ Make options screen better
+ Convert installer to FreeGuideWizard
+ make installer check your java version, (and other things?)
+ Delete these classes: OptionsWizard, DirectoryDialog
+ Add a question to the beginning of the installer: install or uninstall (if
	the misc.install_directory pref exists) - if click uninstall, delete the
	whole installation directory, and the working directory if there is one,
	and the preferences group for FreeGuide.
+ Make the selected fav on the favourites list presistent 
	
+ Release 0.4

+ Make downloading work on Windows, from within FreeGuide (requires XMLTV 0.5)
+ Make output and error stream boxes in Executor not have huge scroll range.
+ Automatic command execution window to replace download screen
+ [Wait for XMLTV 0.5]
+ Store the stylesheet CSS code instead of the location of a file (delete css_file option if it's there)
+ Don't confront the user with all the difficult options when they first start
+ Channels should get their own screen
+ New "Redecorate" screen for colours options
+ Installers on Windows and Linux!
+ Alter Options wizard so focuslost events are replaced with custom thing that works
	+ Create directory if it doesn't exist
	+ Do browse buttons
+ Separate channels and customisation screens
+ Setup wizard sets up every param explicitly and subsumes checks.
+ Fix tv_split so it gives a better error when no programmes are found.
+ Fix non-scrollability of Details box
+ Centre Download Listings box
+ Remove old chosen programmes
+ Add Windows README
+ Make download screen display command output during download, not just after
+ Fix download screen to enter and exit automatically (and generally make better)

+ Release 0.3

+ More flexible favourites
+ Fixed fast scrolling bug
+ Cleaner interface
+ Hide details on download screen
+ Better command execution
+ Fix favourites (loss of info when re-enter screen)
+ Options wizard when starting for first time
+ Implement divideTimes for days
+ Right-click on a prog to make a favourite
+ Delete old programme files and old config entries
+ Update README
+ About screen
