[Lazarus] Edti's password char with bug?

William Oliveira Ferreira bdexterholland at gmail.com
Fri Aug 12 13:12:53 CEST 2011


i´ve tested on my debian and any of the passwordChars that i've set makes
difference...

________________________________
William de Oliveira Ferreira
Bacharel em Sistemas de Informação


2011/8/10 William Oliveira Ferreira <bdexterholland at gmail.com>

> But that code runs under GTK2 and i have this problem on Windows Seven Home
> Basic (Where i tested), at night (now here is 05:28 PM) i'll test it on
> my Debian 6/Gnome 2
> ________________________________
>
> William de Oliveira Ferreira
> Bacharel em Sistemas de Informação
>
>
>
> 2011/8/10 Gerard Visent <gerardusmercator at gmail.com>
>
>> Hi Martin,
>>
>>>
>>> Hm, on my system 158 results in a "z" with some tilde or accent.
>>>
>>
>> Same here.
>>
>>
>>>
>>> But that is probably the correct behaviour.
>>>
>>> For some reason the PassWordchar field accepts an ansi char, rather than
>>> a utf8 char. So what you will see depends on the codepage of the system on
>>> which your app is run. Even if it displays fine on your PC, if you ship the
>>> app, other people will see other chars.
>>>
>>> How or why it becomes an * I do not know...
>>>
>>
>> I found why, but I can't explain the reason behind the code.
>> In lcl/interfaces/gtk2/gtk2wsstdctrls :
>>
>> class procedure TGtk2WSCustomEdit.SetPasswordChar(
>>   const ACustomEdit: TCustomEdit; NewChar: char);
>> var
>>   PWChar: Integer;
>>   Entry: PGtkEntry;
>> begin
>>   if not WSCheckHandleAllocated(ACustomEdit, 'SetPasswordChar') then
>>     Exit;
>>   Entry := PGtkEntry(ACustomEdit.Handle);
>>   if ACustomEdit.EchoMode=emNone then
>>     PWChar:=0
>>   else begin
>>     PWChar:=ord(ACustomEdit.PasswordChar);
>>     if (PWChar<192) or (PWChar=ord('*')) then
>>       PWChar:=9679;
>>   end;
>>   gtk_entry_set_invisible_char(Entry,PWChar);
>> end;
>>
>> Commenting the following lines
>>
>>   if (PWChar<192) or (PWChar=ord('*')) then
>>       PWChar:=9679;
>>
>> allows to display any char. But there must be a reason for this check and
>> whoever wrote didn't bother writing a comment.
>>
>> Regards,
>>
>> Gerard.
>>
>>
>>
>>>
>>> --
>>> _______________________________________________
>>> Lazarus mailing list
>>> Lazarus at lists.lazarus.freepascal.org
>>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
>>>
>>>
>>
>> --
>> _______________________________________________
>> Lazarus mailing list
>> Lazarus at lists.lazarus.freepascal.org
>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20110812/28c772e8/attachment-0003.html>


More information about the Lazarus mailing list