mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-31 10:12:32 +02:00
win32 interface: replaced SetClassLong with SetClassLongPtr to make it 64 bits safe (issue #19321)
git-svn-id: trunk@36074 -
This commit is contained in:
parent
c5696c73fd
commit
bf211c7a21
@ -529,10 +529,10 @@ begin
|
||||
if FAppHandle <> 0 then
|
||||
begin
|
||||
Windows.SendMessage(FAppHandle, WM_SETICON, ICON_SMALL, LPARAM(Small));
|
||||
SetClassLong(FAppHandle, GCL_HICONSM, LONG(Small));
|
||||
SetClassLongPtr(FAppHandle, GCL_HICONSM, LONG_PTR(Small));
|
||||
|
||||
Windows.SendMessage(FAppHandle, WM_SETICON, ICON_BIG, LPARAM(Big));
|
||||
SetClassLong(FAppHandle, GCL_HICON, LONG(Big));
|
||||
SetClassLongPtr(FAppHandle, GCL_HICON, LONG_PTR(Big));
|
||||
end;
|
||||
end;
|
||||
|
||||
@ -684,13 +684,13 @@ begin
|
||||
begin
|
||||
if TCustomForm(Sender).BorderStyle <> bsDialog then
|
||||
begin
|
||||
SetClassLong(Handle, GCL_HICONSM, LONG(TCustomForm(Sender).SmallIconHandle));
|
||||
SetClassLong(Handle, GCL_HICON, LONG(TCustomForm(Sender).BigIconHandle));
|
||||
SetClassLongPtr(Handle, GCL_HICONSM, LONG_PTR(TCustomForm(Sender).SmallIconHandle));
|
||||
SetClassLongPtr(Handle, GCL_HICON, LONG_PTR(TCustomForm(Sender).BigIconHandle));
|
||||
end
|
||||
else
|
||||
begin
|
||||
SetClassLong(Handle, GCL_HICONSM, 0);
|
||||
SetClassLong(Handle, GCL_HICON, 0);
|
||||
SetClassLongPtr(Handle, GCL_HICONSM, 0);
|
||||
SetClassLongPtr(Handle, GCL_HICON, 0);
|
||||
end;
|
||||
end;
|
||||
end
|
||||
|
@ -452,10 +452,10 @@ begin
|
||||
if FAppHandle <> 0 then
|
||||
begin
|
||||
Windows.SendMessage(FAppHandle, WM_SETICON, ICON_SMALL, LPARAM(Small));
|
||||
SetClassLong(FAppHandle, GCL_HICONSM, LONG(Small));
|
||||
SetClassLongPtr(FAppHandle, GCL_HICONSM, LONG_PTR(Small));
|
||||
|
||||
Windows.SendMessage(FAppHandle, WM_SETICON, ICON_BIG, LPARAM(Big));
|
||||
SetClassLong(FAppHandle, GCL_HICON, LONG(Big));
|
||||
SetClassLongPtr(FAppHandle, GCL_HICON, LONG_PTR(Big));
|
||||
end;
|
||||
end;
|
||||
|
||||
|
@ -83,7 +83,7 @@ begin
|
||||
// create window
|
||||
FinishCreateWindow(AWinControl, Params, False);
|
||||
Result := Params.Window;
|
||||
SetClassLong(Result, GCL_STYLE, GetClassLong(Result, GCL_STYLE) or CS_DBLCLKS);
|
||||
SetClassLongPtr(Result, GCL_STYLE, GetClassLongPtr(Result, GCL_STYLE) or CS_DBLCLKS);
|
||||
// resize to proper size
|
||||
SetBounds(AWinControl, Params.Left, Params.Top, 0, 0);
|
||||
end;
|
||||
|
@ -621,10 +621,10 @@ begin
|
||||
Exit;
|
||||
Wnd := AForm.Handle;
|
||||
SendMessage(Wnd, WM_SETICON, ICON_SMALL, LPARAM(Small));
|
||||
SetClassLong(Wnd, GCL_HICONSM, LONG(Small));
|
||||
SetClassLongPtr(Wnd, GCL_HICONSM, LONG_PTR(Small));
|
||||
|
||||
SendMessage(Wnd, WM_SETICON, ICON_BIG, LPARAM(Big));
|
||||
SetClassLong(Wnd, GCL_HICON, LONG(Big));
|
||||
SetClassLongPtr(Wnd, GCL_HICON, LONG_PTR(Big));
|
||||
// for some reason sometimes frame does not invalidate itself. lets ask it to invalidate always
|
||||
Windows.RedrawWindow(Wnd, nil, 0,
|
||||
RDW_INVALIDATE or RDW_FRAME or RDW_NOCHILDREN or RDW_ERASE);
|
||||
|
Loading…
Reference in New Issue
Block a user