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
|
end
|
||||||
object btnAddMapping: TBitBtn
|
object btnAddMapping: TBitBtn
|
||||||
Left = 166
|
Left = 166
|
||||||
Height = 49
|
Height = 48
|
||||||
Top = 136
|
Top = 128
|
||||||
Width = 69
|
Width = 69
|
||||||
Caption = 'Add'
|
Caption = 'Add'
|
||||||
Enabled = False
|
Enabled = False
|
||||||
@ -162,6 +162,16 @@ object frmFieldMapper: TfrmFieldMapper
|
|||||||
OnClick = btnClearMappingsClick
|
OnClick = btnClearMappingsClick
|
||||||
TabOrder = 6
|
TabOrder = 6
|
||||||
end
|
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
|
end
|
||||||
end
|
end
|
||||||
|
@ -53,6 +53,7 @@ type
|
|||||||
|
|
||||||
TfrmFieldMapper = class(TForm)
|
TfrmFieldMapper = class(TForm)
|
||||||
BtnCancel: TButton;
|
BtnCancel: TButton;
|
||||||
|
btnAddAll: TButton;
|
||||||
Panel1: TPanel;
|
Panel1: TPanel;
|
||||||
BtnOK: TButton;
|
BtnOK: TButton;
|
||||||
PageControl1: TPageControl;
|
PageControl1: TPageControl;
|
||||||
@ -69,24 +70,26 @@ type
|
|||||||
DatasetCombo: TComboBox;
|
DatasetCombo: TComboBox;
|
||||||
btnAddMapping: TBitBtn;
|
btnAddMapping: TBitBtn;
|
||||||
btnClearMappings: TButton;
|
btnClearMappings: TButton;
|
||||||
procedure FormShow(Sender: TObject);
|
procedure btnAddAllClick(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 btnAddMappingClick(Sender: TObject);
|
procedure btnAddMappingClick(Sender: TObject);
|
||||||
procedure Button5Click(Sender: TObject);
|
|
||||||
procedure btnDeleteMappingClick(Sender: TObject);
|
|
||||||
procedure btnClearMappingsClick(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 FieldMappingsLBClick(Sender: TObject);
|
||||||
procedure FieldMappingsLBKeyPress(Sender: TObject; var Key: Char);
|
procedure FieldMappingsLBKeyPress(Sender: TObject; var Key: Char);
|
||||||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||||||
|
procedure FormShow(Sender: TObject);
|
||||||
|
procedure VPFieldLBKeyPress(Sender: TObject; var Key: Char);
|
||||||
|
procedure VpFieldSelected(Sender: TObject);
|
||||||
private
|
private
|
||||||
DSResActive: Boolean;
|
DSResActive: Boolean;
|
||||||
DSEventActive: Boolean;
|
DSEventActive: Boolean;
|
||||||
DSContactActive: Boolean;
|
DSContactActive: Boolean;
|
||||||
DSTaskActive: Boolean;
|
DSTaskActive: Boolean;
|
||||||
|
function GetSelectedFieldMappings: TCollection;
|
||||||
procedure SyncObjects;
|
procedure SyncObjects;
|
||||||
procedure OpenDatasets;
|
procedure OpenDatasets;
|
||||||
procedure PositionControls;
|
procedure PositionControls;
|
||||||
@ -365,6 +368,7 @@ end;
|
|||||||
|
|
||||||
procedure TfrmFieldMapper.DatasetComboChange(Sender: TObject);
|
procedure TfrmFieldMapper.DatasetComboChange(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
|
btnAddAll.Enabled := DatasetCombo.ItemIndex > -1;
|
||||||
SyncObjects;
|
SyncObjects;
|
||||||
end;
|
end;
|
||||||
{=====}
|
{=====}
|
||||||
@ -523,6 +527,7 @@ begin
|
|||||||
btnDeleteMapping.Enabled := false;
|
btnDeleteMapping.Enabled := false;
|
||||||
btnClearMappings.Enabled := FieldMappingsLB.Items.Count > 0;
|
btnClearMappings.Enabled := FieldMappingsLB.Items.Count > 0;
|
||||||
btnAddMapping.Enabled := false;
|
btnAddMapping.Enabled := false;
|
||||||
|
btnAddAll.Enabled := false;
|
||||||
|
|
||||||
VpFieldLB.ItemIndex := -1;
|
VpFieldLB.ItemIndex := -1;
|
||||||
DatasetFieldLB.ItemIndex := -1;
|
DatasetFieldLB.ItemIndex := -1;
|
||||||
@ -557,32 +562,41 @@ begin
|
|||||||
end;
|
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);
|
procedure TfrmFieldMapper.btnAddMappingClick(Sender: TObject);
|
||||||
var
|
var
|
||||||
FM: TVpFieldMapping;
|
FM: TVpFieldMapping;
|
||||||
MC: TCollection;
|
MC: TCollection;
|
||||||
begin
|
begin
|
||||||
MC := nil;
|
MC := GetSelectedFieldMappings;
|
||||||
if DataSetCombo.Text = ResourceTableName then
|
if MC = nil then
|
||||||
MC := FlexDS.ResourceMappings
|
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 := TVpFieldMapping(MC.Add);
|
||||||
|
|
||||||
FM.DBField := DatasetFieldLB.Items[DatasetFieldLB.ItemIndex];
|
FM.DBField := DatasetFieldLB.Items[DatasetFieldLB.ItemIndex];
|
||||||
FM.VPField := VPFieldLB.Items[VPFieldLB.ItemIndex];
|
FM.VPField := VPFieldLB.Items[VPFieldLB.ItemIndex];
|
||||||
|
|
||||||
SyncObjects;
|
SyncObjects;
|
||||||
end;
|
|
||||||
end;
|
end;
|
||||||
{=====}
|
{=====}
|
||||||
|
|
||||||
@ -593,24 +607,18 @@ end;
|
|||||||
{=====}
|
{=====}
|
||||||
|
|
||||||
procedure TfrmFieldMapper.btnDeleteMappingClick(Sender: TObject);
|
procedure TfrmFieldMapper.btnDeleteMappingClick(Sender: TObject);
|
||||||
|
var
|
||||||
|
MC: TCollection;
|
||||||
begin
|
begin
|
||||||
if FieldMappingsLB.ItemIndex > -1 then begin
|
if FieldMappingsLB.ItemIndex > -1 then begin
|
||||||
|
MC := GetSelectedFieldMappings;
|
||||||
if DataSetCombo.Text = ResourceTableName then
|
if MC <> nil then begin
|
||||||
FlexDS.ResourceMappings.Items[FieldMappingsLB.ItemIndex].Free
|
MC.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;
|
|
||||||
|
|
||||||
SyncObjects;
|
SyncObjects;
|
||||||
end;
|
end;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{=====}
|
{=====}
|
||||||
|
|
||||||
procedure TfrmFieldMapper.btnClearMappingsClick(Sender: TObject);
|
procedure TfrmFieldMapper.btnClearMappingsClick(Sender: TObject);
|
||||||
@ -619,24 +627,13 @@ var
|
|||||||
begin
|
begin
|
||||||
MC := nil;
|
MC := nil;
|
||||||
if FieldMappingsLB.Items.Count > 0 then begin
|
if FieldMappingsLB.Items.Count > 0 then begin
|
||||||
|
MC := GetSelectedFieldMappings;
|
||||||
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;
|
|
||||||
|
|
||||||
if MC <> nil then begin
|
if MC <> nil then begin
|
||||||
while (MC.Count > 0) do
|
while (MC.Count > 0) do
|
||||||
MC.Items[0].Free;
|
MC.Items[0].Free;
|
||||||
SyncObjects;
|
SyncObjects;
|
||||||
end;
|
end;
|
||||||
|
btnAddAll.Enabled := DatasetCombo.ItemIndex > -1;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
{=====}
|
{=====}
|
||||||
@ -671,6 +668,20 @@ begin
|
|||||||
end;
|
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.
|
end.
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user