Added new code to show scrollbars in Filter/Find panel when used on smaller screens - or just when the user wants the OP screen to be small for some reason.

For some reason that I can't explain the Filter panel just gets avertical scrollbar (which I like) but the Find panel gets both vert and horiz!  I ended up deciding that it was probably the Find panel that Windows did what it meant to do and for some reason the Filter panel was the 'exception'.  Anyway - I am committing as-is.  Two scrollbars aren't too bad.
Uncrustify.  Forgot to put Mantis case against previous checkin.
This is a temporary fix while we think about the wider issues surrounding case 2180.  It now pops up a message box if the highlighted analysis type has vaules in the lower grid.  This is bound to fail reference counting so there is no point in even getting that far and then displaying a complex message.  However it is debatable whether we should be deleting Analysis Types at all on this non-cross-ledger screen.
This reverses out the change made by ChristianK on 23/7/14.  The change he made prevented the action of double-click/ENTER from working whereas prior to that it did work!  The documentID is an int32 so it is no good testing for an Int64.  I will discuss with Christian after his vacation.
Added manual validation to Partner Interest Setup.  This record contains 'category' which must not be null or empty, but this manual check was missing.
Updated the previous checkin because I realised that the check for analysis values count did not take account of the fact that the values may have been filtered out (description=zzz for example).  Now the count uses its own DataView instead of the grid row count.  The message is now 'smart' too so can tell if the grid has been filtered.
Just removed some console messages I had added when working on filter/find scrollbars
Modified the filter/find code so that the AccountCode/CostCentre comboBoxes include active and inactive codes (up to now they usually had active only because they were cloned from the content in the details panel).  In addition the inactive codes in the list part of the comboBox are drawn in red.  Note, however, that whatever you type in the edit part is always in black.  This is because you can type what you like in that part so it is difficult to see how to handle that in practice.
1. There was an issue with the LocalData tab on Partner/Edit, which uses a grid with linked OP controls for data entry.  In contrast to the Analysis Types/Values in-place editing which uses grid editors, the Local Data tab uses controllers and OP controls.  This meant that the code I had worked on to make editors work was not required for the controllers.  The way I achieved this was to add another enum flag that can be set for the LocalData tab way of doing things.
2. I made a small change to the grid to improve the way that standard edit-in-place works for the interaction between the mouse and keyboard.  The behaviour was not good when you used the keyboard to edit a cell but then moused away and moused back again.  I think the result now is good and it was a very simple change.  I also made small changes to the size of the analysis types/values grid so that it is large enough to read all the possible entries on the SA DB.
Merge from trunk - no conflicts
Uncrustify
The same changes to lots of mainly YAML files.  Two things:  1. where appropriate I have added splitter bars to user controls that have a grid and a details panel so that the screen estate can be [proportioned as desired.  2.  I have made sure that the details panels fill the screen but get auto-scroll bars (previously these parts of the screen were docked at the bottom so if you made the whole screen smaller you always lost the ability to edit some part of the screen).  The result of these changes is that the Partner Edit screen now works nicely on a 1366x768 laptop.  All areas of the whole screen are now accessible.
Added the capability to use the MinimumSize property of a TextBox when it has been set to MultiLine.  This helps with auto-scrolling.
Small fix to a bug I came across in the code to get the number of rows.  The code used the DataSource property of the grid - but this can be null so an exception was raised.  Now it returns 0 in that case.
I extended the capabilities of the 'remember screen positions' code - particularly for screens like Partner-Edit where a user is going to have multiple screens open at the same time.  Also this screen can be launched in many different ways only one of which is from the main menu.  This screen in particular we want to use all the stored settings for splitter positions and window size - but we want to let the OS decide where to place each instance of the screen.  So this checkin has all the code necessary to do that.  This should fix the issue in Mantis 3234, but probably need testing on an actual 1366x768 laptop.
A simple change to the labels - change Document Code to Document Type.  No functional change.
These templates all have had a handler added for the new TFrmPetraEditUtils GetChangedRecordCount interface method.  Also the TDS template has now got protection in ShowDetails for the row being null.  This was never a possibility up to now but can happen now that filtering has been added to Account Hierarchy.
Code to generate the new GETCHANGEDRECORDCOUNT snippet.
This is the code that actually works out the changes in the current DataSet so that it can be displayed in the 'Do you want to save?' dialog.  It calculates the number of changed records and generates a default string for the message content.  The behaviour can be over-ridden in manual code.
This was an issue that Moray raised.  He claimed that there was a keyboard conflict on Recurring Gift where Alt+S did Submit Batch so conflicted with 'Save'.  This is not correct because 'Save' is Ctrl+S or Alt+F then S.  However it suggests that there is scope for confusion by using the S shortcut for Submit as well as something like Ctrl+S which is very commonly used.  So I have changed the Alt shortcut to U as suggested by Moray - but not for the reason he gave!  In addition he pointed out in the same bug case that (non-recurring) gift batch did not have a 'Post Batch' button whereas the recurring screen had one.  By adding a Post button the two screens get the same features.