| // OverwriteDialog.h |
| |
| #ifndef ZIP7_INC_OVERWRITE_DIALOG_H |
| #define ZIP7_INC_OVERWRITE_DIALOG_H |
| |
| #include "../../../Windows/Control/Dialog.h" |
| |
| #include "DialogSize.h" |
| #include "OverwriteDialogRes.h" |
| |
| namespace NOverwriteDialog |
| { |
| struct CFileInfo |
| { |
| bool SizeIsDefined; |
| bool TimeIsDefined; |
| UInt64 Size; |
| FILETIME Time; |
| UString Name; |
| |
| void SetTime(const FILETIME *t) |
| { |
| if (!t) |
| TimeIsDefined = false; |
| else |
| { |
| TimeIsDefined = true; |
| Time = *t; |
| } |
| } |
| |
| void SetSize(UInt64 size) |
| { |
| SizeIsDefined = true; |
| Size = size; |
| } |
| |
| void SetSize(const UInt64 *size) |
| { |
| if (!size) |
| SizeIsDefined = false; |
| else |
| SetSize(*size); |
| } |
| }; |
| } |
| |
| class COverwriteDialog: public NWindows::NControl::CModalDialog |
| { |
| bool _isBig; |
| |
| void SetFileInfoControl(unsigned textID, unsigned iconID, const NOverwriteDialog::CFileInfo &fileInfo); |
| virtual bool OnInit() Z7_override; |
| virtual bool OnButtonClicked(unsigned buttonID, HWND buttonHWND) Z7_override; |
| void ReduceString(UString &s); |
| |
| public: |
| bool ShowExtraButtons; |
| bool DefaultButton_is_NO; |
| |
| |
| COverwriteDialog(): ShowExtraButtons(true), DefaultButton_is_NO(false) {} |
| |
| INT_PTR Create(HWND parent = NULL) |
| { |
| BIG_DIALOG_SIZE(280, 200); |
| #ifdef UNDER_CE |
| _isBig = isBig; |
| #else |
| _isBig = true; |
| #endif |
| return CModalDialog::Create(SIZED_DIALOG(IDD_OVERWRITE), parent); |
| } |
| |
| NOverwriteDialog::CFileInfo OldFileInfo; |
| NOverwriteDialog::CFileInfo NewFileInfo; |
| }; |
| |
| #endif |