Files
easy7zip/CPP/7zip/UI/FileManager/OpenCallback.h
Igor Pavlov a36c48cece 23.01
2023-12-22 17:17:05 +00:00

70 lines
1.3 KiB
C++
Executable File

// OpenCallback.h
#ifndef ZIP7_INC_OPEN_CALLBACK_H
#define ZIP7_INC_OPEN_CALLBACK_H
#include "../Common/ArchiveOpenCallback.h"
#ifdef Z7_SFX
#include "ProgressDialog.h"
#else
#include "ProgressDialog2.h"
#endif
/* we can use IArchiveOpenCallback or IOpenCallbackUI here */
class COpenArchiveCallback Z7_final:
/*
public IArchiveOpenCallback,
public IProgress,
public ICryptoGetTextPassword,
public CMyUnknownImp
*/
public IOpenCallbackUI
{
// NWindows::NSynchronization::CCriticalSection _criticalSection;
public:
bool PasswordIsDefined;
bool PasswordWasAsked;
UString Password;
HWND ParentWindow;
CProgressDialog ProgressDialog;
/*
Z7_COM_UNKNOWN_IMP_3(
IArchiveOpenVolumeCallback,
IProgress
ICryptoGetTextPassword
)
Z7_IFACE_COM7_IMP(IProgress)
Z7_IFACE_COM7_IMP(IArchiveOpenCallback)
// ICryptoGetTextPassword
Z7_COM7F_IMP(CryptoGetTextPassword(BSTR *password))
*/
Z7_IFACE_IMP(IOpenCallbackUI)
COpenArchiveCallback():
ParentWindow(NULL)
{
// _subArchiveMode = false;
PasswordIsDefined = false;
PasswordWasAsked = false;
}
/*
void Init()
{
PasswordIsDefined = false;
_subArchiveMode = false;
}
*/
INT_PTR StartProgressDialog(const UString &title, NWindows::CThread &thread)
{
return ProgressDialog.Create(title, thread, ParentWindow);
}
};
#endif