AnnEnumerateTextToken example for Delphi

Procedure TForm1.ExampleAnnEnumerateTextToken ( hObject: HANNOBJECT );
begin
    LEADAnn1.AnnEnableEnumerateHandlesEvent:= True;
    LEADAnn1.AnnEnumerateHandles(hObject);
end;

procedure TForm1.LEADAnn1AnnEnumerateTextTokenTable(
  nTextTokenCount: Integer; cToken: Char; strDescription,
  strTokenString: String; nTokenType: Integer);
var
   strType: String;
begin
   strType:= 'Unknown';
   Case ( nTokenType ) of
      ANNTOKEN_NONE:
         strType:= 'ANNTOKEN_NONE';

      ANNTOKEN_SEPARATOR:
         strType:= 'ANNTOKEN_SEPARATOR';

      ANNTOKEN_TEXT:
         strType:= 'ANNTOKEN_TEXT';

      ANNTOKEN_DATE_YYYY:
         strType:= 'ANNTOKEN_DATE_YYYY';

      ANNTOKEN_DATE_YY:
         strType:= 'ANNTOKEN_DATE_YY';

      ANNTOKEN_DATE_MM:
         strType:= 'ANNTOKEN_DATE_MM';

      ANNTOKEN_DATE_DD:
         strType:= 'ANNTOKEN_DATE_DD';

      ANNTOKEN_DATE_MONTH_NAME:
         strType:= 'ANNTOKEN_DATE_MONTH_NAME';

      ANNTOKEN_DATE_DAY_OF_WEEK:
         strType:= 'ANNTOKEN_DATE_DAY_OF_WEEK';

      ANNTOKEN_TIME_HH_12:
         strType:= 'ANNTOKEN_TIME_HH_12';

      ANNTOKEN_TIME_HH_24:
         strType:= 'ANNTOKEN_TIME_HH_24';

      ANNTOKEN_TIME_MM:
         strType:= 'ANNTOKEN_TIME_MM';

      ANNTOKEN_TIME_SS:
         strType:= 'ANNTOKEN_TIME_SS';

      ANNTOKEN_TIME_MILLISECONDS:
         strType:= 'ANNTOKEN_TIME_MILLISECONDS';

      ANNTOKEN_AM_PM:
         strType:= 'ANNTOKEN_AM_PM';
   end;

   ShowMessage ( 'Token= ' + cToken +
                 'strDescription= ' + strDescription +
                 'Token String= ' + strTokenString +
                 'Type= ' + strType );

   LEADAnn1.AnnEnableEnumerateTextTokenTableEvent:= True;
end;