1
0

CustomUnixDirView.pas 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. unit CustomUnixDirView;
  2. interface
  3. {$WARN UNIT_PLATFORM OFF}
  4. uses
  5. Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  6. ComCtrls, NortonLikeListView, IEListView, CustomDirView,
  7. ListViewColProperties, UnixDirViewColProperties;
  8. type
  9. TCustomUnixDirView = class(TCustomDirView)
  10. private
  11. procedure SetUnixColProperties(Value: TUnixDirViewColProperties);
  12. function GetUnixColProperties: TUnixDirViewColProperties;
  13. { Private declarations }
  14. protected
  15. { Protected declarations }
  16. function NewColProperties: TCustomListViewColProperties; override;
  17. function SortAscendingByDefault(Index: Integer): Boolean; override;
  18. public
  19. { Public declarations }
  20. property Items;
  21. published
  22. { Published declarations }
  23. property UnixColProperties: TUnixDirViewColProperties read GetUnixColProperties write SetUnixColProperties;
  24. end;
  25. resourcestring
  26. SUnixDefaultRootName = '/ <root>';
  27. implementation
  28. { TCustomUnixDirView }
  29. function TCustomUnixDirView.NewColProperties: TCustomListViewColProperties;
  30. begin
  31. Result := TUnixDirViewColProperties.Create(Self);
  32. end;
  33. function TCustomUnixDirView.SortAscendingByDefault(Index: Integer): Boolean;
  34. begin
  35. Result := not (TUnixDirViewCol(Index) in [uvSize, uvChanged]);
  36. end;
  37. procedure TCustomUnixDirView.SetUnixColProperties(Value: TUnixDirViewColProperties);
  38. begin
  39. if Value <> ColProperties then
  40. ColProperties := Value;
  41. end;
  42. function TCustomUnixDirView.GetUnixColProperties: TUnixDirViewColProperties;
  43. begin
  44. Result := TUnixDirViewColProperties(ColProperties);
  45. end;
  46. end.