merge from trunk
Show the 'Contact Details' Tab again on Partner Edit screen.
Apply agreed-on 'Shortcuts' which will allow finishing the core of the functionality earlier. They will need to be addressed later for full functionality!
Remove unnecessary private Method 'RethrowRecalculateScreenParts' from a number of files. That Method is really only required in one file, 'UC_PartnerTypes.cs'!
Remove unnecessary private Method 'OnRecalculateScreenParts' and the Event 'RecalculateScreenParts' from a number of files where they are not needed/used.
Use already existing Method 'DoRecalculateScreenParts' instead of building RecalculateScreenPartsEventArgs and then calling OnRecalculateScreenParts with those Args.
Use already existing Method 'DoRecalculateScreenParts' instead of Method 'RecalculateTabHeaderCounter', which did exactly the same thing! Removed Method 'RecalculateTabHeaderCounter'.
Partner Edit / Contact Details Tab: further the implementation

PartnerTypedDataSets.xml:
* Added new CustomField 'PartnerContactDetail' to Table 'p_partner_attribute'.
* Added new CustomFields 'ItemsCountContactDetails' and 'ItemsCountContactDetailsActive' to CustomTable 'MiscellaneousData'.

Partner.PartnerEdit.cs:
* ALWAYS load ALL Partner Attribute records, as they contain not only Contact Detail records!
* Calculate 'ItemsCountContactDetails' and 'ItemsCountContactDetailsActive' properly and populate 'MiscellaneousDataDR.ItemsCountContactDetails' and 'MiscellaneousDataDR.ItemsCountContactDetailsActive'.

Calculations.cs:
* Added 'DeterminePartnerContactTypes' and 'CalculateTabCountsPartnerContactDetails' Methods.

UC_ContactDetails.ManualCode.cs: 
* Apply a 'Base Filter' so that PPartnerAttribute Rows that don't constitute Contact Details are never shown.
* Use already existing Method 'DoRecalculateScreenParts' instead of building RecalculateScreenPartsEventArgs and then calling OnRecalculateScreenParts with those Args.
* Make the showing of counters in Tab Header work ('Contact Details ({0})').
* get rid of unnecessary Event Handling code for Event 'HookupDataChange'.

UC_PartnerEdit_PartnerTabSet.ManualCode.cs:
* Make the showing of counters in Tab Header work ('Contact Details ({0})').
UC_ContactDetails.ManualCode.cs: no longer load data on-demand, as Contact Detail data is now always loaded when a Partner Edit screen is opened (because all PPartnerAttributes are always getting loaded)!
Partner.PartnerEdit.cs: Restore accidentally removed using clause.
Partner Edit / Contact Details Tab: further the implementation
* Primary E-Mail ComboBox implemented
* Filter Panel is now shown open when the UserControl is shown
* 'Current' CheckBox in the Filter Panel is ticked by default.
UC_FinanceDetails.ManualCode.cs: make public method 'ValidateValidFromDate' private as it doesn't need to be public.
Tentative changes to DB Schema (and related program changes) in trying to overcome a 'nant recreateDatabase' problem with PostgreSQL on certain machines.
* The PK on p_partner_attribute_type now only has one column (p_code_c), previously it had two (p_attribute_category_c, p_code_c). I have now added a Unique Constraint to get the same effect that multiple combinations of p_attribute_category_c, p_code_c are not allowed.
* The PK having two columns, but the p_partner_attribute Table having a PK that only referenced of of them (p_code_c) can apparently set up PostgreSQL...
Contact Details Tab: Get rid of a NullReferenceException in case a completely new Partner gets created.
Contact Details - Base Data additions
* Added new Partner Attribute Category for the storing of the a Partners' Contact Settings (those available in the 'Overall Contact Settings' GroupBox). 
* Added new Partner Attribute Type for the storing of a Partners' Primary Contact Method.

Those records aren't used yet, but I added them to prove that those 'sytem records' are not interfering with the screens as they are, and they aren't interfering.
uncrustify
merge from trunk
Another merge from trunk
Contact Details Tab: Improve Data Validation for Primary E-mail Address.
Contact Details Tab: Improve Data Validation for Primary E-mail Address and keep 'Primary E-Mail Address' ComboBox permanently in sync with e-mail record changes.