You've already forked lazarus-ccr
tvplanit: Add button "Add all" to FlexDatastore field mapper.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5029 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -144,8 +144,8 @@ object frmFieldMapper: TfrmFieldMapper
|
||||
end
|
||||
object btnAddMapping: TBitBtn
|
||||
Left = 166
|
||||
Height = 49
|
||||
Top = 136
|
||||
Height = 48
|
||||
Top = 128
|
||||
Width = 69
|
||||
Caption = 'Add'
|
||||
Enabled = False
|
||||
@ -162,6 +162,16 @@ object frmFieldMapper: TfrmFieldMapper
|
||||
OnClick = btnClearMappingsClick
|
||||
TabOrder = 6
|
||||
end
|
||||
object btnAddAll: TButton
|
||||
Left = 166
|
||||
Height = 48
|
||||
Top = 184
|
||||
Width = 69
|
||||
Caption = 'Add all'
|
||||
Enabled = False
|
||||
OnClick = btnAddAllClick
|
||||
TabOrder = 7
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -53,6 +53,7 @@ type
|
||||
|
||||
TfrmFieldMapper = class(TForm)
|
||||
BtnCancel: TButton;
|
||||
btnAddAll: TButton;
|
||||
Panel1: TPanel;
|
||||
BtnOK: TButton;
|
||||
PageControl1: TPageControl;
|
||||
@ -69,24 +70,26 @@ type
|
||||
DatasetCombo: TComboBox;
|
||||
btnAddMapping: TBitBtn;
|
||||
btnClearMappings: TButton;
|
||||
procedure FormShow(Sender: TObject);
|
||||
procedure DatasetComboChange(Sender: TObject);
|
||||
procedure DBFieldSelected(Sender: TObject);
|
||||
procedure DatasetFieldLBKeyPress(Sender: TObject; var Key: Char);
|
||||
procedure VpFieldSelected(Sender: TObject);
|
||||
procedure VPFieldLBKeyPress(Sender: TObject; var Key: Char);
|
||||
procedure btnAddAllClick(Sender: TObject);
|
||||
procedure btnAddMappingClick(Sender: TObject);
|
||||
procedure Button5Click(Sender: TObject);
|
||||
procedure btnDeleteMappingClick(Sender: TObject);
|
||||
procedure btnClearMappingsClick(Sender: TObject);
|
||||
procedure btnDeleteMappingClick(Sender: TObject);
|
||||
procedure Button5Click(Sender: TObject);
|
||||
procedure DatasetComboChange(Sender: TObject);
|
||||
procedure DatasetFieldLBKeyPress(Sender: TObject; var Key: Char);
|
||||
procedure DBFieldSelected(Sender: TObject);
|
||||
procedure FieldMappingsLBClick(Sender: TObject);
|
||||
procedure FieldMappingsLBKeyPress(Sender: TObject; var Key: Char);
|
||||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||||
procedure FormShow(Sender: TObject);
|
||||
procedure VPFieldLBKeyPress(Sender: TObject; var Key: Char);
|
||||
procedure VpFieldSelected(Sender: TObject);
|
||||
private
|
||||
DSResActive: Boolean;
|
||||
DSEventActive: Boolean;
|
||||
DSContactActive: Boolean;
|
||||
DSTaskActive: Boolean;
|
||||
function GetSelectedFieldMappings: TCollection;
|
||||
procedure SyncObjects;
|
||||
procedure OpenDatasets;
|
||||
procedure PositionControls;
|
||||
@ -365,6 +368,7 @@ end;
|
||||
|
||||
procedure TfrmFieldMapper.DatasetComboChange(Sender: TObject);
|
||||
begin
|
||||
btnAddAll.Enabled := DatasetCombo.ItemIndex > -1;
|
||||
SyncObjects;
|
||||
end;
|
||||
{=====}
|
||||
@ -523,6 +527,7 @@ begin
|
||||
btnDeleteMapping.Enabled := false;
|
||||
btnClearMappings.Enabled := FieldMappingsLB.Items.Count > 0;
|
||||
btnAddMapping.Enabled := false;
|
||||
btnAddAll.Enabled := false;
|
||||
|
||||
VpFieldLB.ItemIndex := -1;
|
||||
DatasetFieldLB.ItemIndex := -1;
|
||||
@ -557,33 +562,42 @@ begin
|
||||
end;
|
||||
{=====}
|
||||
|
||||
procedure TfrmFieldMapper.btnAddAllClick(Sender: TObject);
|
||||
var
|
||||
i, j: Integer;
|
||||
MC: TCollection;
|
||||
FM: TVpFieldMapping;
|
||||
begin
|
||||
MC := GetSelectedFieldMappings;
|
||||
if MC = nil then
|
||||
exit;
|
||||
|
||||
for i:= 0 to DatasetFieldLB.Items.Count-1 do begin
|
||||
for j:=0 to VPFieldLB.Items.Count-1 do
|
||||
if VPFieldLB.Items[j] = DatasetFieldLB.Items[i] then begin
|
||||
FM := TVpFieldMapping(MC.Add);
|
||||
FM.DBField := DatasetFieldLB.Items[i];
|
||||
FM.VPField := VPFieldLB.Items[j];
|
||||
break;
|
||||
end;
|
||||
end;
|
||||
SyncObjects;
|
||||
end;
|
||||
|
||||
procedure TfrmFieldMapper.btnAddMappingClick(Sender: TObject);
|
||||
var
|
||||
FM: TVpFieldMapping;
|
||||
MC: TCollection;
|
||||
begin
|
||||
MC := nil;
|
||||
if DataSetCombo.Text = ResourceTableName then
|
||||
MC := FlexDS.ResourceMappings
|
||||
MC := GetSelectedFieldMappings;
|
||||
if MC = nil then
|
||||
exit;
|
||||
|
||||
else if DataSetCombo.Text = EventsTableName then
|
||||
MC := FlexDS.EventMappings
|
||||
|
||||
else if DataSetCombo.Text = ContactsTableName then
|
||||
MC := FlexDS.ContactMappings
|
||||
|
||||
else if DataSetCombo.Text = TasksTableName then
|
||||
MC := FlexDS.TaskMappings;
|
||||
|
||||
if MC <> nil then begin
|
||||
FM := TVpFieldMapping(MC.Add);
|
||||
|
||||
FM.DBField := DatasetFieldLB.Items[DatasetFieldLB.ItemIndex];
|
||||
FM.VPField := VPFieldLB.Items[VPFieldLB.ItemIndex];
|
||||
|
||||
SyncObjects;
|
||||
end;
|
||||
end;
|
||||
{=====}
|
||||
|
||||
procedure TfrmFieldMapper.Button5Click(Sender: TObject);
|
||||
@ -593,24 +607,18 @@ end;
|
||||
{=====}
|
||||
|
||||
procedure TfrmFieldMapper.btnDeleteMappingClick(Sender: TObject);
|
||||
var
|
||||
MC: TCollection;
|
||||
begin
|
||||
if FieldMappingsLB.ItemIndex > -1 then begin
|
||||
|
||||
if DataSetCombo.Text = ResourceTableName then
|
||||
FlexDS.ResourceMappings.Items[FieldMappingsLB.ItemIndex].Free
|
||||
|
||||
else if DataSetCombo.Text = EventsTableName then
|
||||
FlexDS.EventMappings.Items[FieldMappingsLB.ItemIndex].Free
|
||||
|
||||
else if DataSetCombo.Text = ContactsTableName then
|
||||
FlexDS.ContactMappings.Items[FieldMappingsLB.ItemIndex].Free
|
||||
|
||||
else if DataSetCombo.Text = TasksTableName then
|
||||
FlexDS.TaskMappings.Items[FieldMappingsLB.ItemIndex].Free;
|
||||
|
||||
MC := GetSelectedFieldMappings;
|
||||
if MC <> nil then begin
|
||||
MC.Items[FieldMappingsLB.ItemIndex].Free;
|
||||
SyncObjects;
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
{=====}
|
||||
|
||||
procedure TfrmFieldMapper.btnClearMappingsClick(Sender: TObject);
|
||||
@ -619,24 +627,13 @@ var
|
||||
begin
|
||||
MC := nil;
|
||||
if FieldMappingsLB.Items.Count > 0 then begin
|
||||
|
||||
if DataSetCombo.Text = ResourceTableName then
|
||||
MC := FlexDS.ResourceMappings
|
||||
|
||||
else if DataSetCombo.Text = EventsTableName then
|
||||
MC := FlexDS.EventMappings
|
||||
|
||||
else if DataSetCombo.Text = ContactsTableName then
|
||||
MC := FlexDS.ContactMappings
|
||||
|
||||
else if DataSetCombo.Text = TasksTableName then
|
||||
MC := FlexDS.TaskMappings;
|
||||
|
||||
MC := GetSelectedFieldMappings;
|
||||
if MC <> nil then begin
|
||||
while (MC.Count > 0) do
|
||||
MC.Items[0].Free;
|
||||
SyncObjects;
|
||||
end;
|
||||
btnAddAll.Enabled := DatasetCombo.ItemIndex > -1;
|
||||
end;
|
||||
end;
|
||||
{=====}
|
||||
@ -671,6 +668,20 @@ begin
|
||||
end;
|
||||
{=====}
|
||||
|
||||
function TfrmFieldMapper.GetSelectedFieldMappings: TCollection;
|
||||
begin
|
||||
if DataSetCombo.Text = ResourceTableName then
|
||||
Result := FlexDS.ResourceMappings
|
||||
else if DataSetCombo.Text = EventsTableName then
|
||||
Result := FlexDS.EventMappings
|
||||
else if DataSetCombo.Text = ContactsTableName then
|
||||
Result := FlexDS.ContactMappings
|
||||
else if DataSetCombo.Text = TasksTableName then
|
||||
Result := FlexDS.TaskMappings
|
||||
else
|
||||
Result := nil;
|
||||
end;
|
||||
|
||||
end.
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user