mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-07 12:18:03 +02:00
TaskDialog: Start refactoring TTaskDialog: layout the basic infrastructure for a TWSTaskDialog class.
This commit is contained in:
parent
005710726a
commit
cfbb089e1f
@ -44,6 +44,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -254,6 +255,11 @@ begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -51,6 +51,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -265,6 +266,11 @@ begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -40,6 +40,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -265,6 +266,11 @@ begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -39,6 +39,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -261,6 +262,11 @@ begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -40,6 +40,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -292,6 +293,11 @@ begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -44,6 +44,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -292,6 +293,11 @@ begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -54,6 +54,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -303,6 +304,11 @@ begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -42,6 +42,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -254,6 +255,11 @@ begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -38,6 +38,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -236,6 +237,11 @@ begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -39,6 +39,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -269,6 +270,11 @@ begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -39,6 +39,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -272,6 +273,11 @@ begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -39,6 +39,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -272,6 +273,11 @@ begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -157,6 +157,13 @@ type
|
||||
constructor Create(ADialog: TOpenDialog);
|
||||
end;
|
||||
|
||||
{ TWin32WSTaskDialog }
|
||||
|
||||
TWin32WSTaskDialog = class(TWSTaskDialog)
|
||||
public
|
||||
class function Execute(const ACommonDialog: TCommonDialog): Boolean; override;
|
||||
end;
|
||||
|
||||
function OpenFileDialogCallBack(Wnd: HWND; uMsg: UINT; {%H-}wParam: WPARAM;
|
||||
lParam: LPARAM): UINT_PTR; stdcall;
|
||||
|
||||
@ -1565,6 +1572,13 @@ begin
|
||||
FDialog := ADialog;
|
||||
end;
|
||||
|
||||
{ TWin32WSTaskDialog }
|
||||
|
||||
class function TWin32WSTaskDialog.Execute(const ACommonDialog: TCommonDialog): Boolean;
|
||||
begin
|
||||
Result := inherited Execute(ACommonDialog);
|
||||
end;
|
||||
|
||||
initialization
|
||||
if (Win32MajorVersion = 4) then
|
||||
OpenFileNameSize := SizeOf(OPENFILENAME_NT4)
|
||||
|
@ -39,6 +39,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -273,6 +274,12 @@ begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
RegisterWSComponent(TTaskDialog, TWin32WSTaskDialog);
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -39,6 +39,7 @@ function RegisterSelectDirectoryDialog: Boolean;
|
||||
function RegisterColorDialog: Boolean;
|
||||
function RegisterColorButton: Boolean;
|
||||
function RegisterFontDialog: Boolean;
|
||||
function RegisterTaskDialog: Boolean;
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean;
|
||||
function RegisterCustomGroupBox: Boolean;
|
||||
@ -263,6 +264,11 @@ begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
function RegisterTaskDialog: Boolean; alias : 'WSRegisterTaskDialog';
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
// StdCtrls
|
||||
function RegisterCustomScrollBar: Boolean; alias : 'WSRegisterCustomScrollBar';
|
||||
begin
|
||||
|
@ -102,6 +102,13 @@ type
|
||||
class function QueryWSEventCapabilities(const ACommonDialog: TCommonDialog): TCDWSEventCapabilities; override;
|
||||
end;
|
||||
|
||||
{ TWSTaskDialog }
|
||||
|
||||
TWSTaskDialog = class(TWSCommonDialog)
|
||||
published
|
||||
class function Execute(const ACommonDialog: TCommonDialog): Boolean; virtual;
|
||||
end;
|
||||
|
||||
{ WidgetSetRegistration }
|
||||
|
||||
procedure RegisterCommonDialog;
|
||||
@ -112,6 +119,7 @@ type
|
||||
procedure RegisterColorDialog;
|
||||
procedure RegisterColorButton;
|
||||
procedure RegisterFontDialog;
|
||||
procedure RegisterTaskDialog;
|
||||
|
||||
implementation
|
||||
|
||||
@ -188,6 +196,14 @@ begin
|
||||
Result:=inherited QueryWSEventCapabilities(ACommonDialog);
|
||||
end;
|
||||
|
||||
{ TWSTaskDialog }
|
||||
|
||||
class function TWSTaskDialog.Execute(const ACommonDialog: TCommonDialog): Boolean;
|
||||
begin
|
||||
//ToDo call new LCLTaskDialog.Execute
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
{ WidgetSetRegistration }
|
||||
|
||||
procedure RegisterCommonDialog;
|
||||
@ -278,4 +294,13 @@ begin
|
||||
Done := True;
|
||||
end;
|
||||
|
||||
procedure RegisterTaskDialog;
|
||||
const
|
||||
Done: Boolean = False;
|
||||
begin
|
||||
if Done then exit;
|
||||
WSRegisterTaskDialog;
|
||||
Done := True;
|
||||
end;
|
||||
|
||||
end.
|
||||
|
@ -61,6 +61,7 @@ function WSRegisterSelectDirectoryDialog: Boolean; external name 'WSRegisterSele
|
||||
function WSRegisterColorDialog: Boolean; external name 'WSRegisterColorDialog';
|
||||
function WSRegisterColorButton: Boolean; external name 'WSRegisterColorButton';
|
||||
function WSRegisterFontDialog: Boolean; external name 'WSRegisterFontDialog';
|
||||
function WSRegisterTaskDialog: Boolean; external name 'WSRegisterTaskDialog';
|
||||
// StdCtrls
|
||||
function WSRegisterCustomScrollBar: Boolean; external name 'WSRegisterCustomScrollBar';
|
||||
function WSRegisterCustomGroupBox: Boolean; external name 'WSRegisterCustomGroupBox';
|
||||
|
Loading…
Reference in New Issue
Block a user