anchor.diff:  
   type
   
  -  TmEditorLineKind = (ekSimple, ekLookup, ekDialog, ekCalendar, ekWizard, ekLookupPlusWizard);
  -  TmEditorLineDataType = (dtInteger, dtFloat, dtDate, dtTime, dtText, dtUppercaseText, dtContainerNumber, dtMRNNumber, dtCurrentYearOrInThePast, dtCurrentYearOrInTheFuture, dtYear, dtMonth);
  +  TmEditorLineKind = (ekSimple, ekLookup, ekDialog, ekCalendar, ekWizard, ekLookupPlusWizard, ekColorDialog);
  +  TmEditorLineDataType = (dtInteger, dtFloat, dtDate, dtTime, dtText, dtUppercaseText, dtContainerNumber, dtMRNNumber, dtCurrentYearOrInThePast, dtCurrentYearOrInTheFuture, dtYear, dtMonth, dtColor);
     TmEditorLineReadOnlyMode = (roAllowEditing, roReadOnly, roAllowOnlySetValue);
   
     TmEditingPanel = class;
  
positive.code:     procedure CheckYear(const aOldStringValue : string; const aDataType: TmEditorLineDataType; const aDistanceInMonths : integer; var aNewStringValue : string; var aActualValue : variant);
      procedure CheckMonth(const aOldStringValue : string; const aDataType: TmEditorLineDataType; var aNewStringValue : string; var aActualValue : variant);
      procedure CheckFloat (const aOldStringValue : string; var aNewStringValue : string; var aActualValue : variant; const aLineConfiguration : TmEditorLineConfiguration);
    private
      procedure SetMultiEditMode(AValue: boolean);
    public
  
negative.code:       CheckInteger (OldValue, NewValue, curLine.ActualValue)
      else if (curLine.Configuration.DataType = dtFloat) then
        CheckFloat (OldValue, NewValue, curLine.ActualValue, curLine.Configuration)
      else if (curLine.Configuration.DataType = dtColor) then
        CheckColor(OldValue, NewValue, curLine.ActualValue)
      else if curLine.Configuration.DataType = dtUppercaseText then
      begin
        NewValue := Uppercase(NewValue);
  