Welcome to mirror list, hosted at ThFree Co, Russian Federation.

OpenCallbackGUI.cpp « GUI « UI « 7zip « CPP - github.com/kornelski/7z.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: bc6cf3930f1a48e49a6ae9dc9c4b7622ec092ab3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
// OpenCallbackGUI.cpp

#include "StdAfx.h"

#include "OpenCallbackGUI.h"

#include "Common/StdOutStream.h"
#include "Common/StdInStream.h"
#include "Common/StringConvert.h"

#ifndef _NO_CRYPTO
#include "../../FileManager/Resource/PasswordDialog/PasswordDialog.h"
#endif

HRESULT COpenCallbackGUI::CheckBreak()
{
  return S_OK;
}

HRESULT COpenCallbackGUI::SetTotal(const UInt64 * /* files */, const UInt64 * /* bytes */)
{
  return S_OK;
}

HRESULT COpenCallbackGUI::SetCompleted(const UInt64 * /* files */, const UInt64 * /* bytes */)
{
  return S_OK;
}
 
#ifndef _NO_CRYPTO
HRESULT COpenCallbackGUI::CryptoGetTextPassword(BSTR *password)
{
  PasswordWasAsked = true;
  if (!PasswordIsDefined)
  {
    CPasswordDialog dialog;
    if (dialog.Create(ParentWindow) == IDCANCEL)
      return E_ABORT;
    Password = dialog.Password;
    PasswordIsDefined = true;
  }
  CMyComBSTR tempName(Password);
  *password = tempName.Detach();
  return S_OK;
}

HRESULT COpenCallbackGUI::GetPasswordIfAny(UString &password)
{
  if (PasswordIsDefined)
    password = Password;
  return S_OK;
}

bool COpenCallbackGUI::WasPasswordAsked()
{
  return PasswordWasAsked;
}

void COpenCallbackGUI::ClearPasswordWasAskedFlag()
{
  PasswordWasAsked = false;
}

#endif