[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [tyndur-devel] [PATCH 2/4] Pascal-RTL: Unit tyndur



On Sun, Apr 19 00:55, Kevin Wolf wrote:
> + Pascal-RTL: tyndur: ReadUnicodeChar
> ---
>  src/modules/pas/kedit/kedit.pas         |    4 ++-
>  src/modules/pas/lib/tyndur/Makefile.all |    1 +
>  src/modules/pas/lib/tyndur/tyndur.pas   |   36 +++++++++++++++++++++++++++++++
>  3 files changed, 40 insertions(+), 1 deletions(-)
>  create mode 100644 src/modules/pas/lib/tyndur/Makefile.all
>  create mode 100644 src/modules/pas/lib/tyndur/tyndur.pas
> 
> diff --git a/src/modules/pas/kedit/kedit.pas b/src/modules/pas/kedit/kedit.pas
> index 4409f7d..473c218 100644
> --- a/src/modules/pas/kedit/kedit.pas
> +++ b/src/modules/pas/kedit/kedit.pas
> @@ -1,7 +1,9 @@
>  program KEdit;
>  {$H+}
>  
> -uses crt, sysutils, kedit_tui, kedit_buf, kedit_input, kedit_main;
> +uses
> +    crt, sysutils, tyndur,
> +    kedit_tui, kedit_buf, kedit_input, kedit_main;
>  
>  type
>      textfile  = text;
> diff --git a/src/modules/pas/lib/tyndur/Makefile.all b/src/modules/pas/lib/tyndur/Makefile.all
> new file mode 100644
> index 0000000..aacb99c
> --- /dev/null
> +++ b/src/modules/pas/lib/tyndur/Makefile.all
> @@ -0,0 +1 @@
> +cp libptyndur.a tyndur.ppu ../units
> diff --git a/src/modules/pas/lib/tyndur/tyndur.pas b/src/modules/pas/lib/tyndur/tyndur.pas
> new file mode 100644
> index 0000000..5cffdad
> --- /dev/null
> +++ b/src/modules/pas/lib/tyndur/tyndur.pas
> @@ -0,0 +1,36 @@
> +unit tyndur;
> +
> +interface
> +
> +    function ReadUnicodeChar: UnicodeChar;
> +
> +
> +implementation
> +
> +    uses crt;
> +
> +    function ReadUnicodeChar: UnicodeChar;
> +    var
> +        keys: Array [1..5] of char;
> +        pkeys: PChar;
> +
> +        res: Array [1..2] of UnicodeChar;
> +        pres: PUnicodeChar;
> +
> +        ret: integer;
> +        i: integer;
> +    begin
> +        pkeys := @keys[1];
> +        pres := @res[1];
> +        for i := 1 to 4 do begin
> +            keys[i] := readkey;
> +            keys[i+1] := #0;
> +            ret := Utf8ToUnicode(pres, 2, pkeys, i);
> +            if ret >= 0 then begin
> +                break;
> +            end;
> +        end;
> +        exit(res[1]);
> +    end;
> +
> +end.

Hm gibts hier keinen Fehlerfall der abgefangen werden müsste?

-- 
Antoine Kaufmann
<toni@xxxxxxxxxxxxxxxx>

Attachment: pgpQbIn2O59zU.pgp
Description: PGP signature