+ Added WideStringManager

This commit is contained in:
michael 2003-11-28 20:36:13 +00:00
parent 7f4a3bf1a9
commit 51c296f60c
2 changed files with 37 additions and 6 deletions

View File

@ -527,6 +527,19 @@ function StringToWideChar(const Src : AnsiString;Dest : PWideChar;DestSize : Lon
function WideCharLenToString(S : PWideChar;Len : LongInt) : AnsiString;
procedure WideCharLenToStrVar(Src : PWideChar;Len : LongInt;var Dest : AnsiString);
procedure WideCharToStrVar(S : PWideChar;var Dest : AnsiString);
Type
TWide2AnsiMove=procedure(source:pwidechar;dest:pchar;len:longint);
TAnsi2WideMove=procedure(source:pchar;dest:pwidechar;len:longint);
TWideStringManager = record
Wide2AnsiMove : TWide2AnsiMove;
Ansi2WideMove : TAnsi2WideMove;
end;
Procedure GetWideStringManager (Var Manager : TWideStringManager);
Procedure SetWideStringManager (Const New : TWideStringManager; Var Old: TWideStringManager);
{$endif HASWIDESTRING}
@ -699,7 +712,10 @@ const
{
$Log$
Revision 1.78 2003-11-15 19:01:27 florian
Revision 1.79 2003-11-28 20:36:13 michael
+ Added WideStringManager
Revision 1.78 2003/11/15 19:01:27 florian
* fixed rtl to work with the integrated fpc ppc assembler reader
Revision 1.77 2003/11/03 09:42:28 marco

View File

@ -84,14 +84,26 @@ begin
end;
end;
Type
TWide2AnsiMove=procedure(source:pwidechar;dest:pchar;len:longint);
TAnsi2WideMove=procedure(source:pchar;dest:pwidechar;len:longint);
Const
Wide2AnsiMoveProc:TWide2AnsiMove=@Wide2AnsiMove;
Ansi2WideMoveProc:TAnsi2WideMove=@Ansi2WideMove;
Procedure GetWideStringManager (Var Manager : TWideStringManager);
begin
Manager.Wide2AnsiMove:=Wide2AnsiMoveProc;
Manager.Ansi2WideMove:=Ansi2WideMoveProc;
end;
Procedure SetWideStringManager (Const New : TWideStringManager; Var Old: TWideStringManager);
begin
GetWideStringManager(Old);
Wide2AnsiMoveProc:=New.Wide2AnsiMove;
Ansi2WideMoveProc:=New.Ansi2WideMove;
end;
(*
Procedure UniqueWideString(Var S : WideString); [Public,Alias : 'FPC_WIDESTR_UNIQUE'];
{
@ -993,7 +1005,10 @@ end;
{
$Log$
Revision 1.32 2003-11-05 15:33:51 florian
Revision 1.33 2003-11-28 20:36:13 michael
+ Added WideStringManager
Revision 1.32 2003/11/05 15:33:51 florian
* made Index* usage consistent with astrings.inc
Revision 1.31 2003/06/17 19:24:08 jonas