1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
|
unit selectdatasetdlg;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, Forms, Controls, Graphics, Dialogs, ButtonPanel, StdCtrls;
type
{ TSelectOtherDatasetForCopyForm }
TSelectOtherDatasetForCopyForm = class(TForm)
BPDatasets: TButtonPanel;
lblCaption: TLabel;
lbDatasets: TListBox;
private
function GetDatasets: TStrings;
function GetSelected: String;
procedure SetDatasets(AValue: TStrings);
public
Property Datasets : TStrings Read GetDatasets Write SetDatasets;
Property Selected : String Read GetSelected;
end;
Function SelectDataset(aList : TStrings; aTitle : String = '') : String;
var
SelectOtherDatasetForCopyForm: TSelectOtherDatasetForCopyForm;
implementation
{$R *.lfm}
Function SelectDataset(aList : TStrings; aTitle : String = '') : String;
begin
Result:='';
With TSelectOtherDatasetForCopyForm.Create(Application) do
try
Datasets:=aList;
if aTitle<>'' then
Caption:=aTitle;
If ShowModal=mrOK then
Result:=Selected;
finally
Free;
end;
end;
{ TSelectOtherDatasetForCopyForm }
function TSelectOtherDatasetForCopyForm.GetDatasets: TStrings;
begin
Result:=lbDatasets.Items;
end;
function TSelectOtherDatasetForCopyForm.GetSelected: String;
begin
With LbDatasets do
if ItemIndex=-1 then
Result:=''
else
Result:=Items[ItemIndex];
end;
procedure TSelectOtherDatasetForCopyForm.SetDatasets(AValue: TStrings);
begin
lbDatasets.Items:=aValue;
end;
end.
|