1. Index: addresslist.pas
  2. ===================================================================
  3. --- addresslist.pas (wersja 1485)
  4. +++ addresslist.pas (kopia robocza)
  5. @@ -44,6 +44,8 @@
  6. valuetypesortdirection: boolean;
  7. valuesortdirection: boolean;
  8. + bDragAndDropEnabled: boolean;
  9. + bSortingEnabled: boolean;
  10. function getTreeNodes: TTreenodes;
  11. @@ -78,6 +80,8 @@
  12. function getPopupMenu: TPopupMenu;
  13. function getSelectedRecord: TMemoryRecord;
  14. procedure setSelectedRecord(memrec: TMemoryrecord);
  15. + procedure setDragAndDropEnabled(enabled: boolean);
  16. + procedure setSortingEnabled(enabled: boolean);
  17. function CheatTableNodeHasOnlyAutoAssemblerScripts(CheatTable: TDOMNode): boolean; //helperfunction
  18. @@ -143,6 +147,8 @@
  19. property Count: Integer read GetCount;
  20. property SelCount: Integer read GetSelCount;
  21. property selectedRecord: TMemoryRecord read getSelectedRecord write setSelectedRecord;
  22. + property DragAndDropEnabled: boolean read bDragAndDropEnabled write setDragAndDropEnabled;
  23. + property SortingEnabled: boolean read bSortingEnabled write setSortingEnabled;
  24. end;
  25. implementation
  26. @@ -252,6 +258,32 @@
  27. memrecitems[i].isSelected:=false;
  28. end;
  29. +procedure TAddresslist.setDragAndDropEnabled(enabled: boolean);
  30. +begin
  31. + bDragAndDropEnabled:=enabled;
  32. + if enabled then
  33. + begin
  34. + treeview.OnDragOver:=DragOver;
  35. + treeview.OnDragDrop:=DragDrop;
  36. + treeview.OnEndDrag:=DragEnd;
  37. + end
  38. + else
  39. + begin
  40. + treeview.OnDragOver:=nil;
  41. + treeview.OnDragDrop:=nil;
  42. + treeview.OnEndDrag:=nil;
  43. + end;
  44. +end;
  45. +
  46. +procedure TAddresslist.setSortingEnabled(enabled: boolean);
  47. +begin
  48. + bSortingEnabled:=enabled;
  49. + if enabled then
  50. + header.OnSectionClick:=SectionClick
  51. + else
  52. + header.OnSectionClick:=nil;
  53. +end;
  54. +
  55. function TAddresslist.getSelectedRecord: TMemoryRecord;
  56. var i: integer;
  57. begin
  58. @@ -1696,6 +1728,9 @@
  59. treeview.parent:=self;
  60. + name:='AddressListTreeview';
  61. + bDragAndDropEnabled:=true;
  62. + bSortingEnabled:=true;
  63. header:=THeaderControl.Create(self);