change sort structurelist to manage structurelist where you can also delete entries
This commit is contained in:
parent
5a640122ba
commit
c30051e20d
@ -135,7 +135,7 @@ object frmStructures2: TfrmStructures2
|
|||||||
OnClick = miExportAllClick
|
OnClick = miExportAllClick
|
||||||
end
|
end
|
||||||
object MenuItem8: TMenuItem
|
object MenuItem8: TMenuItem
|
||||||
Caption = 'Rearrange structurelist'
|
Caption = 'Manage structurelist'
|
||||||
OnClick = MenuItem8Click
|
OnClick = MenuItem8Click
|
||||||
end
|
end
|
||||||
object MenuItem2: TMenuItem
|
object MenuItem2: TMenuItem
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
object frmRearrangeStructureList: TfrmRearrangeStructureList
|
object frmRearrangeStructureList: TfrmRearrangeStructureList
|
||||||
Left = 344
|
Left = 389
|
||||||
Height = 162
|
Height = 162
|
||||||
Top = 114
|
Top = 148
|
||||||
Width = 201
|
Width = 201
|
||||||
BorderIcons = [biSystemMenu]
|
BorderIcons = [biSystemMenu]
|
||||||
Caption = 'Rearrange structure list'
|
Caption = 'Manage structure list'
|
||||||
ClientHeight = 162
|
ClientHeight = 162
|
||||||
ClientWidth = 201
|
ClientWidth = 201
|
||||||
OnClose = FormClose
|
OnClose = FormClose
|
||||||
OnShow = FormShow
|
OnShow = FormShow
|
||||||
Position = poScreenCenter
|
Position = poScreenCenter
|
||||||
LCLVersion = '1.6.4.0'
|
LCLVersion = '2.0.6.0'
|
||||||
object Panel4: TPanel
|
object Panel4: TPanel
|
||||||
Left = 179
|
Left = 179
|
||||||
Height = 162
|
Height = 162
|
||||||
@ -33,7 +33,6 @@ object frmRearrangeStructureList: TfrmRearrangeStructureList
|
|||||||
Anchors = [akLeft, akBottom]
|
Anchors = [akLeft, akBottom]
|
||||||
BorderSpacing.Left = 1
|
BorderSpacing.Left = 1
|
||||||
BorderSpacing.Bottom = 1
|
BorderSpacing.Bottom = 1
|
||||||
Enabled = False
|
|
||||||
Glyph.Data = {
|
Glyph.Data = {
|
||||||
76010000424D7601000000000000760000002800000020000000100000000100
|
76010000424D7601000000000000760000002800000020000000100000000100
|
||||||
04000000000000010000120B0000120B00001000000000000000000000000000
|
04000000000000010000120B0000120B00001000000000000000000000000000
|
||||||
@ -59,7 +58,6 @@ object frmRearrangeStructureList: TfrmRearrangeStructureList
|
|||||||
Top = 106
|
Top = 106
|
||||||
Width = 21
|
Width = 21
|
||||||
Anchors = [akLeft, akBottom]
|
Anchors = [akLeft, akBottom]
|
||||||
Enabled = False
|
|
||||||
Glyph.Data = {
|
Glyph.Data = {
|
||||||
76010000424D7601000000000000760000002800000020000000100000000100
|
76010000424D7601000000000000760000002800000020000000100000000100
|
||||||
04000000000000010000120B0000120B00001000000000000000000000000000
|
04000000000000010000120B0000120B00001000000000000000000000000000
|
||||||
@ -85,7 +83,16 @@ object frmRearrangeStructureList: TfrmRearrangeStructureList
|
|||||||
Width = 179
|
Width = 179
|
||||||
Align = alClient
|
Align = alClient
|
||||||
ItemHeight = 0
|
ItemHeight = 0
|
||||||
OnSelectionChange = lbStructlistSelectionChange
|
MultiSelect = True
|
||||||
|
PopupMenu = PopupMenu1
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
end
|
end
|
||||||
|
object PopupMenu1: TPopupMenu
|
||||||
|
Left = 51
|
||||||
|
Top = 47
|
||||||
|
object MenuItem1: TMenuItem
|
||||||
|
Caption = 'Delete selected records'
|
||||||
|
OnClick = MenuItem1Click
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
@ -6,7 +6,7 @@ interface
|
|||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls,
|
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls,
|
||||||
Buttons, StdCtrls, betterControls;
|
Buttons, StdCtrls, Menus, betterControls;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
@ -14,12 +14,14 @@ type
|
|||||||
|
|
||||||
TfrmRearrangeStructureList = class(TForm)
|
TfrmRearrangeStructureList = class(TForm)
|
||||||
lbStructlist: TListBox;
|
lbStructlist: TListBox;
|
||||||
|
MenuItem1: TMenuItem;
|
||||||
Panel4: TPanel;
|
Panel4: TPanel;
|
||||||
|
PopupMenu1: TPopupMenu;
|
||||||
spbDown: TSpeedButton;
|
spbDown: TSpeedButton;
|
||||||
spbUp: TSpeedButton;
|
spbUp: TSpeedButton;
|
||||||
procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
|
procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
|
||||||
procedure FormShow(Sender: TObject);
|
procedure FormShow(Sender: TObject);
|
||||||
procedure lbStructlistSelectionChange(Sender: TObject; User: boolean);
|
procedure MenuItem1Click(Sender: TObject);
|
||||||
procedure spbDownClick(Sender: TObject);
|
procedure spbDownClick(Sender: TObject);
|
||||||
procedure spbUpClick(Sender: TObject);
|
procedure spbUpClick(Sender: TObject);
|
||||||
private
|
private
|
||||||
@ -50,6 +52,24 @@ begin
|
|||||||
updatelist;
|
updatelist;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TfrmRearrangeStructureList.MenuItem1Click(Sender: TObject);
|
||||||
|
var
|
||||||
|
s: TDissectedStruct;
|
||||||
|
i: integer;
|
||||||
|
begin
|
||||||
|
if MessageDlg('are you sure you wish to delete the selection?',mtConfirmation,[mbyes,mbno],0)=mryes then
|
||||||
|
begin
|
||||||
|
for i:=DissectedStructs.count-1 downto 0 do
|
||||||
|
if lbStructlist.Selected[i] then
|
||||||
|
begin
|
||||||
|
s:=TDissectedStruct(lbStructlist.Items.Objects[i]);
|
||||||
|
s.free;
|
||||||
|
end;
|
||||||
|
|
||||||
|
lbStructlist.DeleteSelected;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TfrmRearrangeStructureList.FormClose(Sender: TObject;
|
procedure TfrmRearrangeStructureList.FormClose(Sender: TObject;
|
||||||
var CloseAction: TCloseAction);
|
var CloseAction: TCloseAction);
|
||||||
var i: integer;
|
var i: integer;
|
||||||
@ -63,35 +83,38 @@ begin
|
|||||||
TfrmStructures2(frmStructures2[i]).onStructListChange;
|
TfrmStructures2(frmStructures2[i]).onStructListChange;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TfrmRearrangeStructureList.lbStructlistSelectionChange(
|
|
||||||
Sender: TObject; User: boolean);
|
|
||||||
var index: integer;
|
|
||||||
begin
|
|
||||||
index:=lbStructlist.itemindex;
|
|
||||||
spbDown.enabled:=(index>=0) and (index<lbStructlist.count-1);
|
|
||||||
spbUp.enabled:=(index>=1);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrmRearrangeStructureList.spbDownClick(Sender: TObject);
|
procedure TfrmRearrangeStructureList.spbDownClick(Sender: TObject);
|
||||||
|
var i: integer;
|
||||||
begin
|
begin
|
||||||
if (lbStructlist.itemindex>=0) and (lbStructlist.Count>lbStructlist.itemindex+1) then
|
for i:=lbStructlist.items.count-2 downto 0 do
|
||||||
begin
|
begin
|
||||||
lbStructlist.Items.Exchange(lbStructlist.itemindex, lbStructlist.ItemIndex+1);
|
if lbStructlist.Selected[i] then
|
||||||
lbStructlist.itemindex:=lbStructlist.itemindex+1;
|
begin
|
||||||
|
lbStructlist.selected[i]:=false;
|
||||||
|
lbStructlist.Items.Exchange(i, i+1);
|
||||||
|
lbStructlist.selected[i+1]:=true;
|
||||||
|
end;
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
lbStructlistSelectionChange(lbStructlist,false);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TfrmRearrangeStructureList.spbUpClick(Sender: TObject);
|
procedure TfrmRearrangeStructureList.spbUpClick(Sender: TObject);
|
||||||
|
var i: integer;
|
||||||
begin
|
begin
|
||||||
if lbStructlist.itemindex>=1 then
|
for i:=1 to lbStructlist.items.count-1 do
|
||||||
begin
|
begin
|
||||||
lbStructlist.Items.Exchange(lbStructlist.itemindex, lbStructlist.ItemIndex-1);
|
if lbStructlist.Selected[i] then
|
||||||
lbStructlist.itemindex:=lbStructlist.itemindex-1;
|
begin
|
||||||
|
lbStructlist.selected[i]:=false;
|
||||||
|
lbStructlist.Items.Exchange(i, i-1);
|
||||||
|
lbStructlist.selected[i-1]:=true;
|
||||||
|
end;
|
||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
lbStructlistSelectionChange(lbStructlist,false);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
Loading…
Reference in New Issue
Block a user