p7zip-rar/CPP/7zip/UI/Console/OpenCallbackConsole.h
2017-10-11 12:40:22 +02:00

66 lines
1.2 KiB
C++

// OpenCallbackConsole.h
#ifndef __OPEN_CALLBACK_CONSOLE_H
#define __OPEN_CALLBACK_CONSOLE_H
#include "../../../Common/StdOutStream.h"
#include "../Common/ArchiveOpenCallback.h"
#include "PercentPrinter.h"
class COpenCallbackConsole: public IOpenCallbackUI
{
protected:
CPercentPrinter _percent;
CStdOutStream *_so;
CStdOutStream *_se;
bool _totalFilesDefined;
bool _totalBytesDefined;
// UInt64 _totalFiles;
// UInt64 _totalBytes;
bool NeedPercents() const { return _percent._so != NULL; }
public:
bool MultiArcMode;
void ClosePercents()
{
if (NeedPercents())
_percent.ClosePrint(true);
}
COpenCallbackConsole():
_totalFilesDefined(false),
_totalBytesDefined(false),
MultiArcMode(false)
#ifndef _NO_CRYPTO
, PasswordIsDefined(false)
// , PasswordWasAsked(false)
#endif
{}
void Init(CStdOutStream *outStream, CStdOutStream *errorStream, CStdOutStream *percentStream)
{
_so = outStream;
_se = errorStream;
_percent._so = percentStream;
}
INTERFACE_IOpenCallbackUI(;)
#ifndef _NO_CRYPTO
bool PasswordIsDefined;
// bool PasswordWasAsked;
UString Password;
#endif
};
#endif