mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-18 22:19:17 +02:00
vclass: Stores the result of FindWSComponentClass
git-svn-id: trunk@55121 -
This commit is contained in:
parent
ec4473a91a
commit
0886cc5c9c
@ -47,6 +47,8 @@ type
|
|||||||
|
|
||||||
TWSCommonDialogClass = class of TWSCommonDialog;
|
TWSCommonDialogClass = class of TWSCommonDialog;
|
||||||
TWSCommonDialog = class(TWSLCLComponent)
|
TWSCommonDialog = class(TWSLCLComponent)
|
||||||
|
public class var
|
||||||
|
WSCommonDialog_WSClass: TWSCommonDialogClass;
|
||||||
published
|
published
|
||||||
class function CreateHandle(const ACommonDialog: TCommonDialog): THandle; virtual;
|
class function CreateHandle(const ACommonDialog: TCommonDialog): THandle; virtual;
|
||||||
class procedure ShowModal(const ACommonDialog: TCommonDialog); virtual;
|
class procedure ShowModal(const ACommonDialog: TCommonDialog); virtual;
|
||||||
@ -54,16 +56,6 @@ type
|
|||||||
class function QueryWSEventCapabilities(const ACommonDialog: TCommonDialog): TCDWSEventCapabilities; virtual;
|
class function QueryWSEventCapabilities(const ACommonDialog: TCommonDialog): TCDWSEventCapabilities; virtual;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ TWSCommonDialog_CallWS }
|
|
||||||
|
|
||||||
TWSCommonDialog_CallWS = class(TWSCommonDialog)
|
|
||||||
published
|
|
||||||
class function CreateHandle(const ACommonDialog: TCommonDialog): THandle; override;
|
|
||||||
class procedure ShowModal(const ACommonDialog: TCommonDialog); override;
|
|
||||||
class procedure DestroyHandle(const ACommonDialog: TCommonDialog); override;
|
|
||||||
class function QueryWSEventCapabilities(const ACommonDialog: TCommonDialog): TCDWSEventCapabilities; override;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ TWSFileDialog }
|
{ TWSFileDialog }
|
||||||
|
|
||||||
TWSFileDialog = class(TWSCommonDialog)
|
TWSFileDialog = class(TWSCommonDialog)
|
||||||
@ -102,8 +94,12 @@ type
|
|||||||
|
|
||||||
{ TWSFontDialog }
|
{ TWSFontDialog }
|
||||||
|
|
||||||
TWSFontDialog = class(TWSCommonDialog_CallWS)
|
TWSFontDialog = class(TWSCommonDialog)
|
||||||
published
|
published
|
||||||
|
class function CreateHandle(const ACommonDialog: TCommonDialog): THandle; override;
|
||||||
|
class procedure ShowModal(const ACommonDialog: TCommonDialog); override;
|
||||||
|
class procedure DestroyHandle(const ACommonDialog: TCommonDialog); override;
|
||||||
|
class function QueryWSEventCapabilities(const ACommonDialog: TCommonDialog): TCDWSEventCapabilities; override;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ WidgetSetRegistration }
|
{ WidgetSetRegistration }
|
||||||
@ -141,56 +137,52 @@ class procedure TWSCommonDialog.ShowModal(const ACommonDialog: TCommonDialog);
|
|||||||
begin
|
begin
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ TWSCommonDialog_CallWS }
|
{ TWSFontDialog }
|
||||||
|
|
||||||
class function TWSCommonDialog_CallWS.CreateHandle(const ACommonDialog: TCommonDialog): THandle;
|
class function TWSFontDialog.CreateHandle(const ACommonDialog: TCommonDialog): THandle;
|
||||||
var
|
|
||||||
lWSClass: TWSCommonDialogClass;
|
|
||||||
begin
|
begin
|
||||||
lWSClass := TWSCommonDialogClass(FindWSComponentClass(TCommonDialog));
|
if WSCommonDialog_WSClass = nil then
|
||||||
if lWSClass <> nil then
|
WSCommonDialog_WSClass := TWSCommonDialogClass(FindWSComponentClass(TCommonDialog));
|
||||||
|
if WSCommonDialog_WSClass <> nil then
|
||||||
begin
|
begin
|
||||||
Result := lWSClass.CreateHandle(ACommonDialog);
|
Result := WSCommonDialog_WSClass.CreateHandle(ACommonDialog);
|
||||||
Exit;
|
Exit;
|
||||||
end;
|
end;
|
||||||
Result:=inherited CreateHandle(ACommonDialog)
|
Result:=inherited CreateHandle(ACommonDialog)
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TWSCommonDialog_CallWS.ShowModal(const ACommonDialog: TCommonDialog);
|
class procedure TWSFontDialog.ShowModal(const ACommonDialog: TCommonDialog);
|
||||||
var
|
|
||||||
lWSClass: TWSCommonDialogClass;
|
|
||||||
begin
|
begin
|
||||||
lWSClass := TWSCommonDialogClass(FindWSComponentClass(TCommonDialog));
|
if WSCommonDialog_WSClass = nil then
|
||||||
if lWSClass <> nil then
|
WSCommonDialog_WSClass := TWSCommonDialogClass(FindWSComponentClass(TCommonDialog));
|
||||||
|
if WSCommonDialog_WSClass <> nil then
|
||||||
begin
|
begin
|
||||||
lWSClass.ShowModal(ACommonDialog);
|
WSCommonDialog_WSClass.ShowModal(ACommonDialog);
|
||||||
Exit;
|
Exit;
|
||||||
end;
|
end;
|
||||||
inherited ShowModal(ACommonDialog);
|
inherited ShowModal(ACommonDialog);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class procedure TWSCommonDialog_CallWS.DestroyHandle(const ACommonDialog: TCommonDialog);
|
class procedure TWSFontDialog.DestroyHandle(const ACommonDialog: TCommonDialog);
|
||||||
var
|
|
||||||
lWSClass: TWSCommonDialogClass;
|
|
||||||
begin
|
begin
|
||||||
lWSClass := TWSCommonDialogClass(FindWSComponentClass(TCommonDialog));
|
if WSCommonDialog_WSClass = nil then
|
||||||
if lWSClass <> nil then
|
WSCommonDialog_WSClass := TWSCommonDialogClass(FindWSComponentClass(TCommonDialog));
|
||||||
|
if WSCommonDialog_WSClass <> nil then
|
||||||
begin
|
begin
|
||||||
lWSClass.DestroyHandle(ACommonDialog);
|
WSCommonDialog_WSClass.DestroyHandle(ACommonDialog);
|
||||||
Exit;
|
Exit;
|
||||||
end;
|
end;
|
||||||
inherited DestroyHandle(ACommonDialog);
|
inherited DestroyHandle(ACommonDialog);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
class function TWSCommonDialog_CallWS.QueryWSEventCapabilities(
|
class function TWSFontDialog.QueryWSEventCapabilities(
|
||||||
const ACommonDialog: TCommonDialog): TCDWSEventCapabilities;
|
const ACommonDialog: TCommonDialog): TCDWSEventCapabilities;
|
||||||
var
|
|
||||||
lWSClass: TWSCommonDialogClass;
|
|
||||||
begin
|
begin
|
||||||
lWSClass := TWSCommonDialogClass(FindWSComponentClass(TCommonDialog));
|
if WSCommonDialog_WSClass = nil then
|
||||||
if lWSClass <> nil then
|
WSCommonDialog_WSClass := TWSCommonDialogClass(FindWSComponentClass(TCommonDialog));
|
||||||
|
if WSCommonDialog_WSClass <> nil then
|
||||||
begin
|
begin
|
||||||
Result := lWSClass.QueryWSEventCapabilities(ACommonDialog);
|
Result := WSCommonDialog_WSClass.QueryWSEventCapabilities(ACommonDialog);
|
||||||
Exit;
|
Exit;
|
||||||
end;
|
end;
|
||||||
Result:=inherited QueryWSEventCapabilities(ACommonDialog);
|
Result:=inherited QueryWSEventCapabilities(ACommonDialog);
|
||||||
|
Loading…
Reference in New Issue
Block a user