//********************************************************************* //* Change_Name_In_ArticleList 2020-07-09 * //* >> OnArticleListPaint << * //* * //* Mit diesem Script wird das Aussehen der Thread-Pane beinflusst. * //* So wird hier bspw. der Name (From) des Absenders geaendert. * //* * //* Funktionalitaet: [x] neutral * //* [ ] nur Basis_Modul * //* [ ] nur Pathfinder * //* * //* Datum : 05.04.2008 * //* Autor : Thomas Barghahn * //* Ueberarbeitet : 09.07.2020 * //* * //* DateiName : _i_OSt_DBReminder.ds * //* Einbindung: {$I _i_OSt_DBReminder.ds} * //* Aufruf : Result := Change_Name_In_ArticleList (PaintString); * //********************************************************************* procedure Init_Change_Name_In_ArticleList ( var MyDialogFolder : String; var MyIniFile : String ); begin //{-------------------------------------------------------------------} //{ Anwenderspezifische Einstellungen } //{-------------------------------------------------------------------} // set the ´name(s) you want to change in File "MyIniFile" MyDialogFolder := GetCurrentDir + '\'; MyIniFile := 'paint_names.ini'; end; //{-------------------------------------------------------------------} //{ Ende der Einstellungen } //{-------------------------------------------------------------------} //{===================================================================} //{ !!! Ab hier bitte nichts mehr ändern !!! } //{===================================================================} //--[ Function Change_Name_In_ArticleList ]---------------------------- function Change_Name_In_ArticleList ( PaintString : widestring ) : widestring; var k, MaxInt : integer; DelimiterPos : integer; rf : TReplaceFlags; MyDialogFolder : String; MyIniFile : String; NameList : TStringList; ChangeNameList : TStringlist; ReplaceNameList : TStringList; begin rf := [rfReplaceAll]; MaxInt := 2147483647; Init_Change_Name_In_ArticleList ( MyDialogFolder, MyIniFile); try NameList := TStringlist.Create; NameList.LoadFromFile(MyDialogFolder + MyIniFile); ReplaceNameList := TStringlist.Create; ChangeNameList := TStringlist.Create; NameList.Add (#10#13); for k := 0 to NameList.Count - 1 do begin If copy (NameList[k], 1, 1) <> ';' then begin DelimiterPos := pos (',', NameList[k]); ChangeNameList.Add (trim (copy ( NameList[k], 1, DelimiterPos - 1 ))); ReplaceNameList.Add (trim (copy ( NameList[k], DelimiterPos + 1, MaxInt ))); end; // if end; // for k := 0; while k <= ( ChangeNameList.Count - 1 ) do begin if (pos( ChangeNameList[k], PaintString ) <> 0) then begin PaintString := StringReplace(PaintString, ChangeNameList[k], ReplaceNameList[k],rf); end; k := k + 1; end; // while finally NameList.Free; ChangeNameList.Free; ReplaceNameList.Free; end; // try - finally result := PaintString; end; // function //--[ Ende Function Change_Name_In_ArticleList ]-----------------------