
============ Bugs ================
* Maybe Mac menu stuff (a nice to have)
* make printing of schedules optional so you don't have to install reportlab
* Update README and installation instructions
* Add 'enter' binding for moving resource from/to
* Add 'install Pillow' to README
* better install script
* print schedule text

============ Done ================
* Switching between view tabs and back disconnects view from view controller (and the buttons I thing in the view choices)
* In Scheduler, the view is not updated when teacher is given release i.e. block is still coloured yellow
* In edit course window, only open tree element if user paused for more than '1/2' seconds
* when refreshing the gui-choices page in Scheduler, resources are not updated to reflect any changes
* when new schedule opened in scheduler, notebook pages are not updated
* working on allocation... opening new schedule once thing is open does not refresh properly
* Get preferences working for last directory where file was loaded
* Scheduler, opening new file gives empty "Scheduler" Tab
* Last fix broke something else
* add "teacher:" and "lab:" in front of resources in tree-view
* in edit block... if a teacher was already assigned to the block, was in neither list
* Edit class time pop-up doesn't work
* adding/removing teacher in tree_view should call schedule.conflicts so that "scheduler" page button colours work properly ... just needed to do a self.refresh()
* Auto save
* For schedule "validate", incorrect number of hours doesn't specify which section
* Put str(time_slot) to show start/duration rather than start/stop time
* If reading a schedule file fails, give better feedback
* Don't like drop down for editing blocks... too much of a pain... switch to entering hours as decimals and immediately snap to grid
* Dirty flag not set when changes to allocation
* Dirty flag colour not prominent enough (especially on windows)
* Text on block label in Scheduler still not correct
* Need to show filenames in status bar for allocation
* Data for shared classes (see biology) is not being parsed correctly for Allocation hours
* In allocation, If teacher is in one semester, but not the other, it appears that the yearly CI takes into account the release for both semesters
* sort sections by number as an integer, even though it is stored as a string
* Bind Scroll methods to mousewheel, etc for CourseTree - works for CourseTree already
* was an error in scrolling edit courses because of changes to tk.Scroll
* Show teacher stat in scheduler
* BIG BUG: updating block data in edit course and edit section has gone really wonky
* In allocation 'save' goes for both files, not just one
* Need to add autosave for allocation
* bug in edit block dialog? number of new blocks isn't correct - wasn't a bug... just bad naming
* BIG DESIGN FLAW.  In allocation, when adding teacher to a section, it adds teacher to all blocks, but blocks are being used now to determine the number of hours, so upon saving, it is no longer valid.  Data isn't stored in the file either. (sigh) - Separated out the allocation versus assigning to blocks.  If we can assign to blocks, do so, otherwise set it to "assigned".  In scheduler, completely ignore "assigned"
* Sort teachers by first name
* In allocation, remaining hours should be formatted to 1 decimal place
* When saving a new file, it was crashing
* Bug in removing allocation errors
* Allocation Welcome page is ugly as sin
* In allocation editor, since the frame is black, expanding to full size shows a block square... maybe see how much is required for the frame, and limit the size of the grid??
* Attach an icon to the program Scheduler
* bug in allocation, didn't clear previous allocation before re-allocating
* Attach an icon to the program Allocation
* If number of teachers is greater than 2, don't include teachers (because it might be for a common meeting time)
* A teacher overlap (with a common meeting time) colours everything red, which makes it hard to find who it conflicts with
* Lunch problem, again, conflict shows on everyone if it results from a common meeting time
* Clean up tests
* When creating pdfs or tex schedules, put them in the same directory where the schedule file was located
* remove underscore in descriptions of conflicts
* Either remove or update "Synopsis" in code comments
* Windows, binding to ctrl-s isn't working properly - its because of the binding to the mac Command key, so if I put that in an if block it should be ok
* Autosave suddenly not working for allocation - wasn't but now is... must check on windows - was an issue with not being up to date with the preferences during start-up
* Add AutoSave menu and logic to main gui, adjust so that label is always up to date
* make changing font size as an option... but will have to add scrollbars to the dialog boxes so that they can be moved if required - turns out this is necessary (sigh... just when I thought I was finished)
* dark mode/themes
* create an output file for registrars office

