Overview
===============
- Refactoring and retirement of old code has reduced the maintenance footprint of the app from 95k lines of code to 89k lines of code, with no loss of functionality. (replaced about 800 enumerators.).
- Toolbar rescoped, search field moved to base of diagram..
- All Reports reworked to use a single file handling routine and be thread safe while updating UI elements, (buttons and text fields.).
Images and Pictures
===============
- Fixed thumbnail image generation routines to fix the quarter size images in the reports and the cropping errors when working with images.
Context Diagram
===============
- Changed colour of Parent Child relation notations (S, A, F, etc) to black instead of red.
- Added the search bar to the base of the diagram (used to be in toolbar.). This is included in screenshots so can be used for notational purposes.
- simplified box colour decision tree.
- dozens of enumerators replaced.
Toolbar
===============
- Overall, reduced the clutter so all buttons fit into the available on screen space, removing the error when people clicked the continuation menu that appeared at the right hand side of the toolbar when the main windows width was reduced.
- migrated functionality of the search box to the bottom of the context diagram
- migrated functionality of the "previous Focal People" to a drop down menu next to the "People Index" button.
- Added containers for the tex size and levels groups
- Combined the Ancestors and Descendants diagrams to a new "Hierachies" Group
- By right clicking on the toolbar and selecting customise, you can put back the Previous Focal Persons drop down box if you prefer.
- TODO: There is more functionality that belong in the drop downs for Index, Views and Sources. This will be added in future versions.
General
===============
- Replaced hundreds of code fragments relating to iterations over data with more modern style Fast Enumerators.
- Fixed date inputs to receive short month again (eg: Jan, Mar, Dec)
- Backgrounded the standard message dialog. This may cause problems as it can now appear behind other windows.
- Introduced a Forgrounded Message Dialog. Will apply it liberally as reports come in.
- RegistrationDialog
revisited the asynchronous invokation of the iFamily API. Got it right this time.
- AppController
Generic reports initiator.
registration invokation encapsulated.
- Utilities
expanded file utilities for all reporting.
added #define encoding to be inherited by all classes importing utils.
replacement of enumerators.
EventTypeIndexCreatorXib - for old version. Unlikely this is used anywhere.
Import Gedcom
===============
- thread safed the UI interactions.
- Migrated postLoad Pictures Import instantiation to the open file routine due to it openeing on the old document.
- replaced 29 enumerators
Reports and Dialogs
===============
- PersonalCommentsReport
repaired data connection so records will show in table
replaced progress meter
thread safed data crunching
migrated file functionality, (csv).
- PersonalNotesReport
replaced nib file with xib file
repaired data connection so records will show in table
replaced progress meter
thread safed data crunching
migrated file functionality, (csv).
- DuplicatePeople
replaced progress meter
thread safed data crunching
migrated file functionality, (csv).
- InfoArea_Relatives
migrated file functionality, (csv).
- IndexOfPeople
thread safed data crunching
replaced Progress meter
migrated file functionality, (csv).
- EventPlacesEditor
replaced progress meter
thread safed data crunching
migrated file functionality, (csv, rtf).
- StatisticsReport
rebuilt stats objects
repaired display of numbers in report (broken during 64 bit conversion in 2017)
removed progress meter
thread safed report export
migrated file functionality, (rtf).
- CalculateBirthDates / CalculateDeathDates
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- ProjectView-AddModDel
converted from nib to xib (changed entity type to ensure data connection)
migrated file functionality, (rtf)
repaired text on BDM query dialog
- DatabaseIntegrityChecks (admin)
migrated file functionality, (txt)
minor interface tweaks
- FilteredPeopleReport
converted from nib to xib (changed entity type to ensure data connection)
thread safed data crunching
migrated file functionality, (rtf)
- DatabaseChangesReport
thread safed data crunching
replaced Progress meter
migrated file functionality, (txt)
- CompareAndMerge
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- CopyPersonFromOtherModel
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- DynastiesReport / ExportPersonPlusAllRels
replaced progress meter
thread safed data crunching
migrated file functionality, (rtf)
- EventsReport (by Subtype)
replaced progress meter
thread safed data crunching
migrated file functionality, (csv)
- ExportPictures
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- RelativesReport (path finder)
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- EventPlaces-FindAndReplace
replaced progress meter
aborted thread safing of data crunching due to UI interactions.
- ExportBDMToICal
migrated file functionality, (ics)
added Calendar grouping and usage note on Dialog
added a repeat for 10 years checkbox.
- FamilyNamesEditor
replaced progress meter
thread safed data crunching
removed "Refresh" button. (functionality automated)
- ImportPictureFiles
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- PeopleWithoutAncestors
replaced progress meter
thread safed data crunching
migrated file functionality, (rtf)
- PicturesReport
replaced progress meter
thread safed data crunching
migrated file functionality, (rtf)
- PruneMinorDynasties (admin)
replaced progress meter
thread safed data crunching
- SourcesReport
replaced progress meter
thread safed data crunching
migrated file functionality, (rtf, csv)
aligned intermediary common dictionary
corrected report formatting
- ToDoReview
thread safed data crunching
migrated file functionality, (rtf)
- PublishAsHtml
reversed removal of SetFlipped on images which was leading to rendering misalignments
released images as the document set is built - this was causing a significant memory leak during export.
NB: Unable to thread safe generation yet, program will still hang while rendering the pages.
replaced progress meter, (but until resolution of the above it will still not update on the UI until whole process has finished.)
- DataValidationReport
replaced progress meter
thread safed data crunching
migrated file functionality, (rtf)
- CheckDatabaseIntegrity
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- AncestorsReport/DescendantsReport/IndividualsReport/AncestorsByGenerationReport
thread safed data crunching
migrated file functionality, (rtf, rtfd)
deduplicated personal Details generation
defaults encapsulation test.
simpified file type validation logic

ww.