CopyParams.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. //---------------------------------------------------------------------------
  2. #ifndef CopyParamsH
  3. #define CopyParamsH
  4. //---------------------------------------------------------------------------
  5. #include <Classes.hpp>
  6. #include <Controls.hpp>
  7. #include <StdCtrls.hpp>
  8. #include <Forms.hpp>
  9. #include <ExtCtrls.hpp>
  10. #include <HistoryComboBox.hpp>
  11. #include <WinInterface.h>
  12. #include "RightsExt.h"
  13. #include "ComboEdit.hpp"
  14. #include <Mask.hpp>
  15. //---------------------------------------------------------------------------
  16. class TCopyParamsFrame : public TFrame
  17. {
  18. __published:
  19. TGroupBox *TransferModeGroup;
  20. TLabel *AsciiFileMaskLabel;
  21. TRadioButton *TMTextButton;
  22. TRadioButton *TMBinaryButton;
  23. TRadioButton *TMAutomaticButton;
  24. THistoryComboBox *AsciiFileMaskCombo;
  25. TGroupBox *RemotePropertiesGroup;
  26. TCheckBox *RemotePreserveTimeCheck;
  27. TGroupBox *LocalPropertiesGroup;
  28. TCheckBox *PreserveReadOnlyCheck;
  29. TCheckBox *LocalPreserveTimeCheck;
  30. TCheckBox *PreserveRightsCheck;
  31. TGroupBox *ChangeCaseGroup;
  32. TRadioButton *CCNoChangeButton;
  33. TRadioButton *CCUpperCaseButton;
  34. TRadioButton *CCLowerCaseButton;
  35. TRadioButton *CCFirstUpperCaseButton;
  36. TGroupBox *CommonPropertiesGroup;
  37. TCheckBox *CommonPreserveTimestampCheck;
  38. TCheckBox *ReplaceInvalidCharsCheck;
  39. TCheckBox *CommonCalculateSizeCheck;
  40. TGroupBox *OtherGroup;
  41. TLabel *ExclusionFileMaskLabel;
  42. THistoryComboBox *ExcludeFileMaskCombo;
  43. TRadioButton *CCLowerCaseShortButton;
  44. TCheckBox *ClearArchiveCheck;
  45. TComboBox *NegativeExcludeCombo;
  46. TStaticText *ExcludeFileMaskHintText;
  47. TComboEdit *RightsEdit;
  48. TCheckBox *IgnorePermErrorsCheck;
  49. void __fastcall ControlChange(TObject *Sender);
  50. void __fastcall ValidateMaskComboExit(TObject *Sender);
  51. void __fastcall RightsEditButtonClick(TObject *Sender);
  52. void __fastcall RightsEditExit(TObject *Sender);
  53. void __fastcall RightsEditContextPopup(TObject *Sender, TPoint &MousePos,
  54. bool &Handled);
  55. private:
  56. TParamsForDirection FDirection;
  57. AnsiString FOrigMasks;
  58. TCopyParamType * FParams;
  59. int FCopyParamAttrs;
  60. TRightsExtFrame * FRightsFrame;
  61. void __fastcall SetParams(TCopyParamType value);
  62. TCopyParamType __fastcall GetParams();
  63. void __fastcall SetDirection(TParamsForDirection value);
  64. TCheckBox * __fastcall GetPreserveTimeCheck();
  65. void __fastcall SetCopyParamAttrs(int value);
  66. void __fastcall RightsFrameChange(TObject * Sender);
  67. protected:
  68. void __fastcall UpdateControls();
  69. virtual void __fastcall SetEnabled(Boolean Value);
  70. void __fastcall UpdateRightsByStr();
  71. __property TCheckBox * PreserveTimeCheck = { read = GetPreserveTimeCheck };
  72. public:
  73. __fastcall TCopyParamsFrame(TComponent* Owner);
  74. __fastcall ~TCopyParamsFrame();
  75. void __fastcall BeforeExecute();
  76. void __fastcall AfterExecute();
  77. __property int CopyParamAttrs = { read = FCopyParamAttrs, write = SetCopyParamAttrs };
  78. __property TParamsForDirection Direction = { read = FDirection, write = SetDirection };
  79. __property TCopyParamType Params = { read = GetParams, write = SetParams };
  80. };
  81. //---------------------------------------------------------------------------
  82. #endif