SynchronizeChecklist.h 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. //----------------------------------------------------------------------------
  2. #ifndef SynchronizeChecklistH
  3. #define SynchronizeChecklistH
  4. //----------------------------------------------------------------------------
  5. #include <vcl\System.hpp>
  6. #include <vcl\Windows.hpp>
  7. #include <vcl\SysUtils.hpp>
  8. #include <vcl\Classes.hpp>
  9. #include <vcl\Graphics.hpp>
  10. #include <vcl\StdCtrls.hpp>
  11. #include <vcl\Forms.hpp>
  12. #include <vcl\Controls.hpp>
  13. #include <vcl\Buttons.hpp>
  14. #include <vcl\ExtCtrls.hpp>
  15. #include <ComCtrls.hpp>
  16. #include <HistoryComboBox.hpp>
  17. #include <PathLabel.hpp>
  18. #include <Terminal.h>
  19. #include <ImgList.hpp>
  20. #include <Menus.hpp>
  21. //----------------------------------------------------------------------------
  22. class TSynchronizeChecklistDialog : public TForm
  23. {
  24. __published:
  25. TPanel * Panel;
  26. TListView * ListView;
  27. TStatusBar *StatusBar;
  28. TImageList *ActionImages;
  29. TButton *OkButton;
  30. TButton *CancelButton;
  31. TButton *CheckAllButton;
  32. TButton *UncheckAllButton;
  33. TButton *CheckButton;
  34. TButton *UncheckButton;
  35. TPopupMenu *ListViewPopupMenu;
  36. TMenuItem *CheckItem;
  37. TMenuItem *UncheckItem;
  38. TMenuItem *N1;
  39. TMenuItem *SelectAllItem;
  40. TTimer *UpdateTimer;
  41. TButton *HelpButton;
  42. void __fastcall HelpButtonClick(TObject * Sender);
  43. void __fastcall FormShow(TObject * Sender);
  44. void __fastcall ListViewAdvancedCustomDrawSubItem(
  45. TCustomListView * Sender, TListItem * Item, int SubItem,
  46. TCustomDrawState State, TCustomDrawStage Stage,
  47. bool & DefaultDraw);
  48. void __fastcall StatusBarDrawPanel(TStatusBar *StatusBar,
  49. TStatusPanel *Panel, const TRect &Rect);
  50. void __fastcall StatusBarMouseMove(TObject *Sender, TShiftState Shift,
  51. int X, int Y);
  52. void __fastcall ListViewChange(TObject *Sender, TListItem *Item,
  53. TItemChange Change);
  54. void __fastcall ListViewChanging(TObject *Sender, TListItem *Item,
  55. TItemChange Change, bool &AllowChange);
  56. void __fastcall CheckAllButtonClick(TObject *Sender);
  57. void __fastcall CheckButtonClick(TObject *Sender);
  58. void __fastcall ListViewSelectItem(TObject *Sender, TListItem *Item,
  59. bool Selected);
  60. void __fastcall StatusBarResize(TObject *Sender);
  61. void __fastcall UpdateTimerTimer(TObject *Sender);
  62. void __fastcall SelectAllItemClick(TObject *Sender);
  63. void __fastcall StatusBarMouseDown(TObject *Sender, TMouseButton Button,
  64. TShiftState Shift, int X, int Y);
  65. public:
  66. __fastcall TSynchronizeChecklistDialog(TComponent * AOwner,
  67. TSynchronizeMode Mode, int Params, const AnsiString LocalDirectory,
  68. const AnsiString RemoteDirectory);
  69. virtual __fastcall ~TSynchronizeChecklistDialog();
  70. bool __fastcall Execute(TSynchronizeChecklist * Checklist);
  71. protected:
  72. bool FFormRestored;
  73. TSynchronizeChecklist * FChecklist;
  74. TSynchronizeMode FMode;
  75. int FParams;
  76. AnsiString FLocalDirectory;
  77. AnsiString FRemoteDirectory;
  78. TImageList * FSystemImageList;
  79. TWndMethod FOrigListViewWindowProc;
  80. int FTotals[1 + TSynchronizeChecklist::ActionCount];
  81. int FChecked[1 + TSynchronizeChecklist::ActionCount];
  82. TListItem * FChangingItem;
  83. bool FChangingItemChecked;
  84. bool FChangingItemIgnore;
  85. bool FChangingItemMass;
  86. AnsiString FGeneralHint;
  87. void __fastcall UpdateControls();
  88. virtual void __fastcall CreateParams(TCreateParams & Params);
  89. void __fastcall LoadItem(TListItem * Item);
  90. void __fastcall LoadList();
  91. void __fastcall ListViewWindowProc(TMessage & Message);
  92. int __fastcall PanelAt(int X);
  93. void __fastcall CheckAll(bool Check);
  94. TListItem * __fastcall SelectAll(bool Select, int Action = 0,
  95. bool OnlyTheAction = true);
  96. };
  97. //----------------------------------------------------------------------------
  98. #endif