Vincent i agree to have the hint shadow enabled on Lazarus for Win32, and I
don't see any problem because it is a feature of XP Theme and Lazarus has
the XP manifest on it.

By the way, i found the class function TWin32WSHintWindow.CreateHandle and
tried to set the parameters but I didn't have success.

Henrique.


-----Mensagem original-----
De: Vincent Snijders [mailto:[EMAIL PROTECTED] 
Enviada em: terça-feira, 4 de julho de 2006 04:11
Para: [email protected]
Assunto: Re: [lazarus] Windows XP Hint Shadow

Marc Weustink schreef:
> Henrique P Faria wrote:
>>  
>>
>> Hello, i know this unit is for cosmetic, but can anyone give me a tip 
>> on how to get it work on Lazarus? It works fine on Delphi.

You need to set the paramaters in
class function TWin32WSHintWindow.CreateHandle

Tip: Use find in files to locate that function in the lcl\interfaces\win32
directory.

> 
> maybe the win32 interface should create the hint window by default like 
> this. AFAICS most windows apps have it.
> 

So our HintWindow will have this style always on windows xp and you cannot
turn it 
off. That is easy to implement. Everybody agrees?

Vincent.

>>  
>>
>> Thanks in advance.
>>
>>  
>>
>> Henrique.
>>
>>  
>>
>> unit HintShadow;
>>
>>  
>>
>> {
>>
>>   HintShadow.pas v1.0 (2001-12-22) by Jordan Russell
>>
>>  
>>
>>   This unit will enable drop shadows on Hints when your program is 
>> running on
>>
>>   Windows XP.
>>
>>   To use: simply add "HintShadow" to your main form's "uses" clause.
>>
>> }
>>
>>  
>>
>> interface
>>
>>  
>>
>> uses
>>
>>   Windows, SysUtils, Controls, Forms, LCLType;
>>
>>  
>>
>> type
>>
>>   TShadowedHintWindow = class(THintWindow)
>>
>>   protected
>>
>>     procedure CreateParams(var Params: TCreateParams); override;
>>
>>   end;
>>
>>  
>>
>> implementation
>>
>>  
>>
>> { TShadowedHintWindow }
>>
>>  
>>
>> procedure TShadowedHintWindow.CreateParams(var Params: TCreateParams);
>>
>> const
>>
>>   CS_DROPSHADOW = $00020000;
>>
>> begin
>>
>>   inherited;
>>
>>   { Enable drop shadow effect on Windows XP and later }
>>
>>   if (Win32Platform = VER_PLATFORM_WIN32_NT) and
>>
>>      ((Win32MajorVersion > 5) or
>>
>>       ((Win32MajorVersion = 5) and (Win32MinorVersion >= 1))) then
>>
>>     Params.WindowClass.Style := Params.WindowClass.Style or 
>> CS_DROPSHADOW;
>>
>> end;
>>
>>  
>>
>> initialization
>>
>>   HintWindowClass := TShadowedHintWindow;
>>
>> end.
>>
>>  
>>
> 
> _________________________________________________________________
>     To unsubscribe: mail [EMAIL PROTECTED] with
>                "unsubscribe" as the Subject
>   archives at http://www.lazarus.freepascal.org/mailarchives

_________________________________________________________________
     To unsubscribe: mail [EMAIL PROTECTED] with
                "unsubscribe" as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives

_________________________________________________________________
     To unsubscribe: mail [EMAIL PROTECTED] with
                "unsubscribe" as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives

Reply via email to