mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-03 05:03:41 +02:00
80 lines
1.4 KiB
ObjectPascal
80 lines
1.4 KiB
ObjectPascal
unit dlgrestfieldoptions;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, Forms, Controls, Graphics, Dialogs, ExtCtrls, ButtonPanel, sqldbrestschema;
|
|
|
|
type
|
|
|
|
{ TRestFieldOptionsDialog }
|
|
|
|
TRestFieldOptionsDialog = class(TForm)
|
|
BPFieldOptions: TButtonPanel;
|
|
CGFieldOptions: TCheckGroup;
|
|
private
|
|
function GetOptions: TRestFieldOptions;
|
|
procedure Setoptions(AValue: TRestFieldOptions);
|
|
public
|
|
Property Options : TRestFieldOptions Read GetOptions Write Setoptions;
|
|
end;
|
|
|
|
Function GetRestFieldOptions(var aOptions : TRestFieldOptions) : Boolean;
|
|
|
|
implementation
|
|
|
|
Function GetRestFieldOptions(var aOptions : TRestFieldOptions) : Boolean;
|
|
|
|
begin
|
|
With TRestFieldOptionsDialog.Create(Application) do
|
|
try
|
|
Options:=aOptions;
|
|
Result:=ShowModal=mrOK;
|
|
if Result then
|
|
aOptions:=Options;
|
|
finally
|
|
Free;
|
|
end;
|
|
end;
|
|
|
|
{$R *.lfm}
|
|
|
|
function TRestFieldOptionsDialog.GetOptions: TRestFieldOptions;
|
|
|
|
Procedure DoOption(O : TRestFieldOption);
|
|
|
|
begin
|
|
if CGFieldOPtions.Checked[Ord(O)] then
|
|
Include(Result,O);
|
|
end;
|
|
|
|
Var
|
|
O : TRestFieldOption;
|
|
|
|
begin
|
|
Result:=[];
|
|
For O in TRestFieldOption do
|
|
DoOption(O);
|
|
end;
|
|
|
|
procedure TRestFieldOptionsDialog.Setoptions(AValue: TRestFieldOptions);
|
|
|
|
Procedure DoOption(O : TRestFieldOption);
|
|
|
|
begin
|
|
CGFieldOptions.Checked[Ord(O)]:=O in aValue;
|
|
end;
|
|
|
|
Var
|
|
O : TRestFieldOption;
|
|
|
|
begin
|
|
For O in TRestFieldOption do
|
|
DoOption(O);
|
|
end;
|
|
|
|
end.
|
|
|