mirror of
https://github.com/aaru-dps/Aaru.Compression.Native.git
synced 2025-12-16 19:24:31 +00:00
Move placement of lzma.
This commit is contained in:
59
3rdparty/lzma/CPP/7zip/UI/GUI/Extract.rc
vendored
Normal file
59
3rdparty/lzma/CPP/7zip/UI/GUI/Extract.rc
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
#include "ExtractRes.h"
|
||||
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_MEM_ERROR "The system cannot allocate the required amount of memory"
|
||||
IDS_CANNOT_CREATE_FOLDER "Cannot create folder '{0}'"
|
||||
IDS_UPDATE_NOT_SUPPORTED "Update operations are not supported for this archive."
|
||||
IDS_CANT_OPEN_ARCHIVE "Cannot open file '{0}' as archive"
|
||||
IDS_CANT_OPEN_ENCRYPTED_ARCHIVE "Cannot open encrypted archive '{0}'. Wrong password?"
|
||||
IDS_UNSUPPORTED_ARCHIVE_TYPE "Unsupported archive type"
|
||||
|
||||
IDS_CANT_OPEN_AS_TYPE "Cannot open the file as {0} archive"
|
||||
IDS_IS_OPEN_AS_TYPE "The file is open as {0} archive"
|
||||
IDS_IS_OPEN_WITH_OFFSET "The archive is open with offset"
|
||||
|
||||
IDS_PROGRESS_EXTRACTING "Extracting"
|
||||
|
||||
IDS_PROGRESS_SKIPPING "Skipping"
|
||||
|
||||
IDS_EXTRACT_SET_FOLDER "Specify a location for extracted files."
|
||||
|
||||
IDS_EXTRACT_PATHS_FULL "Full pathnames"
|
||||
IDS_EXTRACT_PATHS_NO "No pathnames"
|
||||
IDS_EXTRACT_PATHS_ABS "Absolute pathnames"
|
||||
IDS_PATH_MODE_RELAT "Relative pathnames"
|
||||
|
||||
IDS_EXTRACT_OVERWRITE_ASK "Ask before overwrite"
|
||||
IDS_EXTRACT_OVERWRITE_WITHOUT_PROMPT "Overwrite without prompt"
|
||||
IDS_EXTRACT_OVERWRITE_SKIP_EXISTING "Skip existing files"
|
||||
IDS_EXTRACT_OVERWRITE_RENAME "Auto rename"
|
||||
IDS_EXTRACT_OVERWRITE_RENAME_EXISTING "Auto rename existing files"
|
||||
|
||||
IDS_EXTRACT_MESSAGE_UNSUPPORTED_METHOD "Unsupported compression method for '{0}'."
|
||||
IDS_EXTRACT_MESSAGE_DATA_ERROR "Data error in '{0}'. File is broken"
|
||||
IDS_EXTRACT_MESSAGE_CRC_ERROR "CRC failed in '{0}'. File is broken."
|
||||
IDS_EXTRACT_MESSAGE_DATA_ERROR_ENCRYPTED "Data error in encrypted file '{0}'. Wrong password?"
|
||||
IDS_EXTRACT_MESSAGE_CRC_ERROR_ENCRYPTED "CRC failed in encrypted file '{0}'. Wrong password?"
|
||||
|
||||
IDS_EXTRACT_MSG_WRONG_PSW_GUESS "Wrong password?"
|
||||
// IDS_EXTRACT_MSG_ENCRYPTED "Encrypted file"
|
||||
|
||||
IDS_EXTRACT_MSG_UNSUPPORTED_METHOD "Unsupported compression method"
|
||||
IDS_EXTRACT_MSG_DATA_ERROR "Data error"
|
||||
IDS_EXTRACT_MSG_CRC_ERROR "CRC failed"
|
||||
IDS_EXTRACT_MSG_UNAVAILABLE_DATA "Unavailable data"
|
||||
IDS_EXTRACT_MSG_UEXPECTED_END "Unexpected end of data"
|
||||
IDS_EXTRACT_MSG_DATA_AFTER_END "There are some data after the end of the payload data"
|
||||
IDS_EXTRACT_MSG_IS_NOT_ARC "Is not archive"
|
||||
IDS_EXTRACT_MSG_HEADERS_ERROR "Headers Error"
|
||||
IDS_EXTRACT_MSG_WRONG_PSW_CLAIM "Wrong password"
|
||||
|
||||
IDS_OPEN_MSG_UNAVAILABLE_START "Unavailable start of archive"
|
||||
IDS_OPEN_MSG_UNCONFIRMED_START "Unconfirmed start of archive"
|
||||
// IDS_OPEN_MSG_ERROR_FLAGS + 5 "Unexpected end of archive"
|
||||
// IDS_OPEN_MSG_ERROR_FLAGS + 6 "There are data after the end of archive"
|
||||
IDS_OPEN_MSG_UNSUPPORTED_FEATURE "Unsupported feature"
|
||||
END
|
||||
421
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractDialog.cpp
vendored
Normal file
421
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractDialog.cpp
vendored
Normal file
@@ -0,0 +1,421 @@
|
||||
// ExtractDialog.cpp
|
||||
|
||||
#include "StdAfx.h"
|
||||
|
||||
#include "../../../Common/StringConvert.h"
|
||||
#include "../../../Common/Wildcard.h"
|
||||
|
||||
#include "../../../Windows/FileName.h"
|
||||
#include "../../../Windows/FileDir.h"
|
||||
#include "../../../Windows/ResourceString.h"
|
||||
|
||||
#ifndef NO_REGISTRY
|
||||
#include "../FileManager/HelpUtils.h"
|
||||
#endif
|
||||
|
||||
|
||||
#include "../FileManager/BrowseDialog.h"
|
||||
#include "../FileManager/LangUtils.h"
|
||||
#include "../FileManager/resourceGui.h"
|
||||
|
||||
#include "ExtractDialog.h"
|
||||
#include "ExtractDialogRes.h"
|
||||
#include "ExtractRes.h"
|
||||
|
||||
using namespace NWindows;
|
||||
using namespace NFile;
|
||||
using namespace NName;
|
||||
|
||||
extern HINSTANCE g_hInstance;
|
||||
|
||||
#ifndef _SFX
|
||||
|
||||
static const UInt32 kPathMode_IDs[] =
|
||||
{
|
||||
IDS_EXTRACT_PATHS_FULL,
|
||||
IDS_EXTRACT_PATHS_NO,
|
||||
IDS_EXTRACT_PATHS_ABS
|
||||
};
|
||||
|
||||
static const UInt32 kOverwriteMode_IDs[] =
|
||||
{
|
||||
IDS_EXTRACT_OVERWRITE_ASK,
|
||||
IDS_EXTRACT_OVERWRITE_WITHOUT_PROMPT,
|
||||
IDS_EXTRACT_OVERWRITE_SKIP_EXISTING,
|
||||
IDS_EXTRACT_OVERWRITE_RENAME,
|
||||
IDS_EXTRACT_OVERWRITE_RENAME_EXISTING
|
||||
};
|
||||
|
||||
static const
|
||||
// NExtract::NPathMode::EEnum
|
||||
int
|
||||
kPathModeButtonsVals[] =
|
||||
{
|
||||
NExtract::NPathMode::kFullPaths,
|
||||
NExtract::NPathMode::kNoPaths,
|
||||
NExtract::NPathMode::kAbsPaths
|
||||
};
|
||||
|
||||
static const
|
||||
int
|
||||
// NExtract::NOverwriteMode::EEnum
|
||||
kOverwriteButtonsVals[] =
|
||||
{
|
||||
NExtract::NOverwriteMode::kAsk,
|
||||
NExtract::NOverwriteMode::kOverwrite,
|
||||
NExtract::NOverwriteMode::kSkip,
|
||||
NExtract::NOverwriteMode::kRename,
|
||||
NExtract::NOverwriteMode::kRenameExisting
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef LANG
|
||||
|
||||
static const UInt32 kLangIDs[] =
|
||||
{
|
||||
IDT_EXTRACT_EXTRACT_TO,
|
||||
IDT_EXTRACT_PATH_MODE,
|
||||
IDT_EXTRACT_OVERWRITE_MODE,
|
||||
// IDX_EXTRACT_ALT_STREAMS,
|
||||
IDX_EXTRACT_NT_SECUR,
|
||||
IDX_EXTRACT_ELIM_DUP,
|
||||
IDG_PASSWORD,
|
||||
IDX_PASSWORD_SHOW
|
||||
};
|
||||
#endif
|
||||
|
||||
// static const int kWildcardsButtonIndex = 2;
|
||||
|
||||
#ifndef NO_REGISTRY
|
||||
static const unsigned kHistorySize = 16;
|
||||
#endif
|
||||
|
||||
#ifndef _SFX
|
||||
|
||||
// it's used in CompressDialog also
|
||||
void AddComboItems(NControl::CComboBox &combo, const UInt32 *langIDs, unsigned numItems, const int *values, int curVal);
|
||||
void AddComboItems(NControl::CComboBox &combo, const UInt32 *langIDs, unsigned numItems, const int *values, int curVal)
|
||||
{
|
||||
int curSel = 0;
|
||||
for (unsigned i = 0; i < numItems; i++)
|
||||
{
|
||||
UString s = LangString(langIDs[i]);
|
||||
s.RemoveChar(L'&');
|
||||
int index = (int)combo.AddString(s);
|
||||
combo.SetItemData(index, i);
|
||||
if (values[i] == curVal)
|
||||
curSel = i;
|
||||
}
|
||||
combo.SetCurSel(curSel);
|
||||
}
|
||||
|
||||
// it's used in CompressDialog also
|
||||
bool GetBoolsVal(const CBoolPair &b1, const CBoolPair &b2);
|
||||
bool GetBoolsVal(const CBoolPair &b1, const CBoolPair &b2)
|
||||
{
|
||||
if (b1.Def) return b1.Val;
|
||||
if (b2.Def) return b2.Val;
|
||||
return b1.Val;
|
||||
}
|
||||
|
||||
void CExtractDialog::CheckButton_TwoBools(UINT id, const CBoolPair &b1, const CBoolPair &b2)
|
||||
{
|
||||
CheckButton(id, GetBoolsVal(b1, b2));
|
||||
}
|
||||
|
||||
void CExtractDialog::GetButton_Bools(UINT id, CBoolPair &b1, CBoolPair &b2)
|
||||
{
|
||||
bool val = IsButtonCheckedBool(id);
|
||||
bool oldVal = GetBoolsVal(b1, b2);
|
||||
if (val != oldVal)
|
||||
b1.Def = b2.Def = true;
|
||||
b1.Val = b2.Val = val;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
bool CExtractDialog::OnInit()
|
||||
{
|
||||
#ifdef LANG
|
||||
{
|
||||
UString s;
|
||||
LangString_OnlyFromLangFile(IDD_EXTRACT, s);
|
||||
if (s.IsEmpty())
|
||||
GetText(s);
|
||||
if (!ArcPath.IsEmpty())
|
||||
{
|
||||
s += " : ";
|
||||
s += ArcPath;
|
||||
}
|
||||
SetText(s);
|
||||
// LangSetWindowText(*this, IDD_EXTRACT);
|
||||
LangSetDlgItems(*this, kLangIDs, ARRAY_SIZE(kLangIDs));
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef _SFX
|
||||
_passwordControl.Attach(GetItem(IDE_EXTRACT_PASSWORD));
|
||||
_passwordControl.SetText(Password);
|
||||
_passwordControl.SetPasswordChar(TEXT('*'));
|
||||
_pathName.Attach(GetItem(IDE_EXTRACT_NAME));
|
||||
#endif
|
||||
|
||||
#ifdef NO_REGISTRY
|
||||
|
||||
PathMode = NExtract::NPathMode::kFullPaths;
|
||||
OverwriteMode = NExtract::NOverwriteMode::kAsk;
|
||||
|
||||
#else
|
||||
|
||||
_info.Load();
|
||||
|
||||
if (_info.PathMode == NExtract::NPathMode::kCurPaths)
|
||||
_info.PathMode = NExtract::NPathMode::kFullPaths;
|
||||
|
||||
if (!PathMode_Force && _info.PathMode_Force)
|
||||
PathMode = _info.PathMode;
|
||||
if (!OverwriteMode_Force && _info.OverwriteMode_Force)
|
||||
OverwriteMode = _info.OverwriteMode;
|
||||
|
||||
// CheckButton_TwoBools(IDX_EXTRACT_ALT_STREAMS, AltStreams, _info.AltStreams);
|
||||
CheckButton_TwoBools(IDX_EXTRACT_NT_SECUR, NtSecurity, _info.NtSecurity);
|
||||
CheckButton_TwoBools(IDX_EXTRACT_ELIM_DUP, ElimDup, _info.ElimDup);
|
||||
|
||||
CheckButton(IDX_PASSWORD_SHOW, _info.ShowPassword.Val);
|
||||
UpdatePasswordControl();
|
||||
|
||||
#endif
|
||||
|
||||
_path.Attach(GetItem(IDC_EXTRACT_PATH));
|
||||
|
||||
UString pathPrefix = DirPath;
|
||||
|
||||
#ifndef _SFX
|
||||
|
||||
if (_info.SplitDest.Val)
|
||||
{
|
||||
CheckButton(IDX_EXTRACT_NAME_ENABLE, true);
|
||||
UString pathName;
|
||||
SplitPathToParts_Smart(DirPath, pathPrefix, pathName);
|
||||
if (pathPrefix.IsEmpty())
|
||||
pathPrefix = pathName;
|
||||
else
|
||||
_pathName.SetText(pathName);
|
||||
}
|
||||
else
|
||||
ShowItem_Bool(IDE_EXTRACT_NAME, false);
|
||||
|
||||
#endif
|
||||
|
||||
_path.SetText(pathPrefix);
|
||||
|
||||
#ifndef NO_REGISTRY
|
||||
for (unsigned i = 0; i < _info.Paths.Size() && i < kHistorySize; i++)
|
||||
_path.AddString(_info.Paths[i]);
|
||||
#endif
|
||||
|
||||
/*
|
||||
if (_info.Paths.Size() > 0)
|
||||
_path.SetCurSel(0);
|
||||
else
|
||||
_path.SetCurSel(-1);
|
||||
*/
|
||||
|
||||
#ifndef _SFX
|
||||
|
||||
_pathMode.Attach(GetItem(IDC_EXTRACT_PATH_MODE));
|
||||
_overwriteMode.Attach(GetItem(IDC_EXTRACT_OVERWRITE_MODE));
|
||||
|
||||
AddComboItems(_pathMode, kPathMode_IDs, ARRAY_SIZE(kPathMode_IDs), kPathModeButtonsVals, PathMode);
|
||||
AddComboItems(_overwriteMode, kOverwriteMode_IDs, ARRAY_SIZE(kOverwriteMode_IDs), kOverwriteButtonsVals, OverwriteMode);
|
||||
|
||||
#endif
|
||||
|
||||
HICON icon = LoadIcon(g_hInstance, MAKEINTRESOURCE(IDI_ICON));
|
||||
SetIcon(ICON_BIG, icon);
|
||||
|
||||
// CWindow filesWindow = GetItem(IDC_EXTRACT_RADIO_FILES);
|
||||
// filesWindow.Enable(_enableFilesButton);
|
||||
|
||||
NormalizePosition();
|
||||
|
||||
return CModalDialog::OnInit();
|
||||
}
|
||||
|
||||
#ifndef _SFX
|
||||
void CExtractDialog::UpdatePasswordControl()
|
||||
{
|
||||
_passwordControl.SetPasswordChar(IsShowPasswordChecked() ? 0 : TEXT('*'));
|
||||
UString password;
|
||||
_passwordControl.GetText(password);
|
||||
_passwordControl.SetText(password);
|
||||
}
|
||||
#endif
|
||||
|
||||
bool CExtractDialog::OnButtonClicked(int buttonID, HWND buttonHWND)
|
||||
{
|
||||
switch (buttonID)
|
||||
{
|
||||
case IDB_EXTRACT_SET_PATH:
|
||||
OnButtonSetPath();
|
||||
return true;
|
||||
#ifndef _SFX
|
||||
case IDX_EXTRACT_NAME_ENABLE:
|
||||
ShowItem_Bool(IDE_EXTRACT_NAME, IsButtonCheckedBool(IDX_EXTRACT_NAME_ENABLE));
|
||||
return true;
|
||||
case IDX_PASSWORD_SHOW:
|
||||
{
|
||||
UpdatePasswordControl();
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
return CModalDialog::OnButtonClicked(buttonID, buttonHWND);
|
||||
}
|
||||
|
||||
void CExtractDialog::OnButtonSetPath()
|
||||
{
|
||||
UString currentPath;
|
||||
_path.GetText(currentPath);
|
||||
UString title = LangString(IDS_EXTRACT_SET_FOLDER);
|
||||
UString resultPath;
|
||||
if (!MyBrowseForFolder(*this, title, currentPath, resultPath))
|
||||
return;
|
||||
#ifndef NO_REGISTRY
|
||||
_path.SetCurSel(-1);
|
||||
#endif
|
||||
_path.SetText(resultPath);
|
||||
}
|
||||
|
||||
void AddUniqueString(UStringVector &list, const UString &s);
|
||||
void AddUniqueString(UStringVector &list, const UString &s)
|
||||
{
|
||||
FOR_VECTOR (i, list)
|
||||
if (s.IsEqualTo_NoCase(list[i]))
|
||||
return;
|
||||
list.Add(s);
|
||||
}
|
||||
|
||||
void CExtractDialog::OnOK()
|
||||
{
|
||||
#ifndef _SFX
|
||||
int pathMode2 = kPathModeButtonsVals[_pathMode.GetCurSel()];
|
||||
if (PathMode != NExtract::NPathMode::kCurPaths ||
|
||||
pathMode2 != NExtract::NPathMode::kFullPaths)
|
||||
PathMode = (NExtract::NPathMode::EEnum)pathMode2;
|
||||
|
||||
OverwriteMode = (NExtract::NOverwriteMode::EEnum)kOverwriteButtonsVals[_overwriteMode.GetCurSel()];
|
||||
|
||||
// _filesMode = (NExtractionDialog::NFilesMode::EEnum)GetFilesMode();
|
||||
|
||||
_passwordControl.GetText(Password);
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef NO_REGISTRY
|
||||
|
||||
// GetButton_Bools(IDX_EXTRACT_ALT_STREAMS, AltStreams, _info.AltStreams);
|
||||
GetButton_Bools(IDX_EXTRACT_NT_SECUR, NtSecurity, _info.NtSecurity);
|
||||
GetButton_Bools(IDX_EXTRACT_ELIM_DUP, ElimDup, _info.ElimDup);
|
||||
|
||||
bool showPassword = IsShowPasswordChecked();
|
||||
if (showPassword != _info.ShowPassword.Val)
|
||||
{
|
||||
_info.ShowPassword.Def = true;
|
||||
_info.ShowPassword.Val = showPassword;
|
||||
}
|
||||
|
||||
if (_info.PathMode != pathMode2)
|
||||
{
|
||||
_info.PathMode_Force = true;
|
||||
_info.PathMode = (NExtract::NPathMode::EEnum)pathMode2;
|
||||
/*
|
||||
// we allow kAbsPaths in registry.
|
||||
if (_info.PathMode == NExtract::NPathMode::kAbsPaths)
|
||||
_info.PathMode = NExtract::NPathMode::kFullPaths;
|
||||
*/
|
||||
}
|
||||
|
||||
if (!OverwriteMode_Force && _info.OverwriteMode != OverwriteMode)
|
||||
_info.OverwriteMode_Force = true;
|
||||
_info.OverwriteMode = OverwriteMode;
|
||||
|
||||
|
||||
#else
|
||||
|
||||
ElimDup.Val = IsButtonCheckedBool(IDX_EXTRACT_ELIM_DUP);
|
||||
|
||||
#endif
|
||||
|
||||
UString s;
|
||||
|
||||
#ifdef NO_REGISTRY
|
||||
|
||||
_path.GetText(s);
|
||||
|
||||
#else
|
||||
|
||||
int currentItem = _path.GetCurSel();
|
||||
if (currentItem == CB_ERR)
|
||||
{
|
||||
_path.GetText(s);
|
||||
if (_path.GetCount() >= (int)kHistorySize)
|
||||
currentItem = _path.GetCount() - 1;
|
||||
}
|
||||
else
|
||||
_path.GetLBText(currentItem, s);
|
||||
|
||||
#endif
|
||||
|
||||
s.Trim();
|
||||
NName::NormalizeDirPathPrefix(s);
|
||||
|
||||
#ifndef _SFX
|
||||
|
||||
bool splitDest = IsButtonCheckedBool(IDX_EXTRACT_NAME_ENABLE);
|
||||
if (splitDest)
|
||||
{
|
||||
UString pathName;
|
||||
_pathName.GetText(pathName);
|
||||
pathName.Trim();
|
||||
s += pathName;
|
||||
NName::NormalizeDirPathPrefix(s);
|
||||
}
|
||||
if (splitDest != _info.SplitDest.Val)
|
||||
{
|
||||
_info.SplitDest.Def = true;
|
||||
_info.SplitDest.Val = splitDest;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
DirPath = s;
|
||||
|
||||
#ifndef NO_REGISTRY
|
||||
_info.Paths.Clear();
|
||||
#ifndef _SFX
|
||||
AddUniqueString(_info.Paths, s);
|
||||
#endif
|
||||
for (int i = 0; i < _path.GetCount(); i++)
|
||||
if (i != currentItem)
|
||||
{
|
||||
UString sTemp;
|
||||
_path.GetLBText(i, sTemp);
|
||||
sTemp.Trim();
|
||||
AddUniqueString(_info.Paths, sTemp);
|
||||
}
|
||||
_info.Save();
|
||||
#endif
|
||||
|
||||
CModalDialog::OnOK();
|
||||
}
|
||||
|
||||
#ifndef NO_REGISTRY
|
||||
#define kHelpTopic "fm/plugins/7-zip/extract.htm"
|
||||
void CExtractDialog::OnHelp()
|
||||
{
|
||||
ShowHelpWindow(kHelpTopic);
|
||||
CModalDialog::OnHelp();
|
||||
}
|
||||
#endif
|
||||
113
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractDialog.h
vendored
Normal file
113
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractDialog.h
vendored
Normal file
@@ -0,0 +1,113 @@
|
||||
// ExtractDialog.h
|
||||
|
||||
#ifndef __EXTRACT_DIALOG_H
|
||||
#define __EXTRACT_DIALOG_H
|
||||
|
||||
#include "ExtractDialogRes.h"
|
||||
|
||||
#include "../../../Windows/Control/ComboBox.h"
|
||||
#include "../../../Windows/Control/Edit.h"
|
||||
|
||||
#include "../Common/ExtractMode.h"
|
||||
|
||||
#include "../FileManager/DialogSize.h"
|
||||
|
||||
#ifndef NO_REGISTRY
|
||||
#include "../Common/ZipRegistry.h"
|
||||
#endif
|
||||
|
||||
namespace NExtractionDialog
|
||||
{
|
||||
/*
|
||||
namespace NFilesMode
|
||||
{
|
||||
enum EEnum
|
||||
{
|
||||
kSelected,
|
||||
kAll,
|
||||
kSpecified
|
||||
};
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
class CExtractDialog: public NWindows::NControl::CModalDialog
|
||||
{
|
||||
#ifdef NO_REGISTRY
|
||||
NWindows::NControl::CDialogChildControl _path;
|
||||
#else
|
||||
NWindows::NControl::CComboBox _path;
|
||||
#endif
|
||||
|
||||
#ifndef _SFX
|
||||
NWindows::NControl::CEdit _pathName;
|
||||
NWindows::NControl::CEdit _passwordControl;
|
||||
NWindows::NControl::CComboBox _pathMode;
|
||||
NWindows::NControl::CComboBox _overwriteMode;
|
||||
#endif
|
||||
|
||||
#ifndef _SFX
|
||||
// int GetFilesMode() const;
|
||||
void UpdatePasswordControl();
|
||||
#endif
|
||||
|
||||
void OnButtonSetPath();
|
||||
|
||||
void CheckButton_TwoBools(UINT id, const CBoolPair &b1, const CBoolPair &b2);
|
||||
void GetButton_Bools(UINT id, CBoolPair &b1, CBoolPair &b2);
|
||||
virtual bool OnInit();
|
||||
virtual bool OnButtonClicked(int buttonID, HWND buttonHWND);
|
||||
virtual void OnOK();
|
||||
|
||||
#ifndef NO_REGISTRY
|
||||
|
||||
virtual void OnHelp();
|
||||
|
||||
NExtract::CInfo _info;
|
||||
|
||||
#endif
|
||||
|
||||
bool IsShowPasswordChecked() const { return IsButtonCheckedBool(IDX_PASSWORD_SHOW); }
|
||||
public:
|
||||
// bool _enableSelectedFilesButton;
|
||||
// bool _enableFilesButton;
|
||||
// NExtractionDialog::NFilesMode::EEnum FilesMode;
|
||||
|
||||
UString DirPath;
|
||||
UString ArcPath;
|
||||
|
||||
#ifndef _SFX
|
||||
UString Password;
|
||||
#endif
|
||||
bool PathMode_Force;
|
||||
bool OverwriteMode_Force;
|
||||
NExtract::NPathMode::EEnum PathMode;
|
||||
NExtract::NOverwriteMode::EEnum OverwriteMode;
|
||||
|
||||
#ifndef _SFX
|
||||
// CBoolPair AltStreams;
|
||||
CBoolPair NtSecurity;
|
||||
#endif
|
||||
|
||||
CBoolPair ElimDup;
|
||||
|
||||
INT_PTR Create(HWND aWndParent = 0)
|
||||
{
|
||||
#ifdef _SFX
|
||||
BIG_DIALOG_SIZE(240, 64);
|
||||
#else
|
||||
BIG_DIALOG_SIZE(300, 160);
|
||||
#endif
|
||||
return CModalDialog::Create(SIZED_DIALOG(IDD_EXTRACT), aWndParent);
|
||||
}
|
||||
|
||||
CExtractDialog():
|
||||
PathMode_Force(false),
|
||||
OverwriteMode_Force(false)
|
||||
{
|
||||
ElimDup.Val = true;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
98
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractDialog.rc
vendored
Normal file
98
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractDialog.rc
vendored
Normal file
@@ -0,0 +1,98 @@
|
||||
#include "ExtractDialogRes.h"
|
||||
#include "../../GuiCommon.rc"
|
||||
|
||||
#define xc 336
|
||||
#define yc 168
|
||||
|
||||
#undef g1xs
|
||||
#undef g2x
|
||||
#undef g2x2
|
||||
#undef g2xs
|
||||
#undef g2xs2
|
||||
|
||||
#define g1xs 160
|
||||
|
||||
#define gSpace 20
|
||||
#define g2x (m + g1xs + gSpace)
|
||||
#define g2x2 (g2x + m)
|
||||
#define g2xs (xc - g1xs - gSpace)
|
||||
#define g2xs2 (g2xs - m - m)
|
||||
|
||||
#undef GROUP_Y_SIZE
|
||||
#ifdef UNDER_CE
|
||||
#define GROUP_Y_SIZE 8
|
||||
#else
|
||||
#define GROUP_Y_SIZE 56
|
||||
#endif
|
||||
|
||||
IDD_EXTRACT DIALOG 0, 0, xs, ys MY_MODAL_DIALOG_STYLE MY_FONT
|
||||
CAPTION "Extract"
|
||||
BEGIN
|
||||
LTEXT "E&xtract to:", IDT_EXTRACT_EXTRACT_TO, m, m, xc, 8
|
||||
COMBOBOX IDC_EXTRACT_PATH, m, m + 12, xc - bxsDots - 12, 100, MY_COMBO_WITH_EDIT
|
||||
PUSHBUTTON "...", IDB_EXTRACT_SET_PATH, xs - m - bxsDots, m + 12 - 2, bxsDots, bys, WS_GROUP
|
||||
|
||||
CONTROL "", IDX_EXTRACT_NAME_ENABLE, MY_CHECKBOX, m, m + 34, 12, 10
|
||||
EDITTEXT IDE_EXTRACT_NAME, m + 12 + 2, m + 32, g1xs - 12 - 2, 14, ES_AUTOHSCROLL
|
||||
|
||||
LTEXT "Path mode:", IDT_EXTRACT_PATH_MODE, m, m + 52, g1xs, 8
|
||||
COMBOBOX IDC_EXTRACT_PATH_MODE, m, m + 64, g1xs, 140, MY_COMBO
|
||||
|
||||
CONTROL "Eliminate duplication of root folder", IDX_EXTRACT_ELIM_DUP, MY_CHECKBOX,
|
||||
m, m + 84, g1xs, 10
|
||||
|
||||
LTEXT "Overwrite mode:", IDT_EXTRACT_OVERWRITE_MODE, m, m + 104, g1xs, 8
|
||||
COMBOBOX IDC_EXTRACT_OVERWRITE_MODE, m, m + 116, g1xs, 140, MY_COMBO
|
||||
|
||||
|
||||
GROUPBOX "Password", IDG_PASSWORD, g2x, m + 36, g2xs, GROUP_Y_SIZE
|
||||
EDITTEXT IDE_EXTRACT_PASSWORD, g2x2, m + 50, g2xs2, 14, ES_PASSWORD | ES_AUTOHSCROLL
|
||||
CONTROL "Show Password", IDX_PASSWORD_SHOW, MY_CHECKBOX, g2x2, m + 72, g2xs2, 10
|
||||
|
||||
// CONTROL "Restore alternate data streams", IDX_EXTRACT_ALT_STREAMS, MY_CHECKBOX,
|
||||
// g2x, m + 104, g2xs, 10
|
||||
CONTROL "Restore file security", IDX_EXTRACT_NT_SECUR, MY_CHECKBOX,
|
||||
g2x, m + 104, g2xs, 10
|
||||
|
||||
DEFPUSHBUTTON "OK", IDOK, bx3, by, bxs, bys, WS_GROUP
|
||||
PUSHBUTTON "Cancel", IDCANCEL, bx2, by, bxs, bys
|
||||
PUSHBUTTON "Help", IDHELP, bx1, by, bxs, bys
|
||||
END
|
||||
|
||||
|
||||
#ifdef UNDER_CE
|
||||
|
||||
#undef m
|
||||
#define m 4
|
||||
|
||||
#undef xc
|
||||
#undef yc
|
||||
|
||||
#define xc 152
|
||||
#define yc 128
|
||||
|
||||
#undef g1xs
|
||||
|
||||
#define g1xs 64
|
||||
|
||||
IDD_EXTRACT_2 DIALOG 0, 0, xs, ys MY_MODAL_DIALOG_STYLE MY_FONT
|
||||
CAPTION "Extract"
|
||||
BEGIN
|
||||
LTEXT "E&xtract to:", IDT_EXTRACT_EXTRACT_TO, m, m, xc - bxsDots - 8, 8
|
||||
COMBOBOX IDC_EXTRACT_PATH, m, m + 12, xc - bxsDots - 8, 100, MY_COMBO_WITH_EDIT
|
||||
PUSHBUTTON "...", IDB_EXTRACT_SET_PATH, xs - m - bxsDots, m + 12 - 3, bxsDots, bys, WS_GROUP
|
||||
|
||||
LTEXT "Path mode:", IDT_EXTRACT_PATH_MODE, m, m + 36, g1xs, 8
|
||||
COMBOBOX IDC_EXTRACT_PATH_MODE, m + g1xs, m + 36, xc - g1xs, 100, MY_COMBO
|
||||
|
||||
LTEXT "Overwrite mode:", IDT_EXTRACT_OVERWRITE_MODE, m, m + 56, g1xs, 8
|
||||
COMBOBOX IDC_EXTRACT_OVERWRITE_MODE, m + g1xs, m + 56, xc - g1xs, 100, MY_COMBO
|
||||
|
||||
LTEXT "Password", IDG_PASSWORD, m, m + 76, g1xs, 8
|
||||
EDITTEXT IDE_EXTRACT_PASSWORD, m + g1xs, m + 76, xc - g1xs, 14, ES_PASSWORD | ES_AUTOHSCROLL
|
||||
CONTROL "Show Password", IDX_PASSWORD_SHOW, MY_CHECKBOX, m, m + 92, xc, 10
|
||||
|
||||
OK_CANCEL
|
||||
END
|
||||
|
||||
#endif
|
||||
24
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractDialogRes.h
vendored
Normal file
24
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractDialogRes.h
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
#define IDD_EXTRACT 3400
|
||||
#define IDD_EXTRACT_2 13400
|
||||
|
||||
#define IDC_EXTRACT_PATH 100
|
||||
#define IDB_EXTRACT_SET_PATH 101
|
||||
#define IDC_EXTRACT_PATH_MODE 102
|
||||
#define IDC_EXTRACT_OVERWRITE_MODE 103
|
||||
|
||||
#define IDE_EXTRACT_PASSWORD 120
|
||||
|
||||
#define IDE_EXTRACT_NAME 130
|
||||
#define IDX_EXTRACT_NAME_ENABLE 131
|
||||
|
||||
|
||||
#define IDT_EXTRACT_EXTRACT_TO 3401
|
||||
#define IDT_EXTRACT_PATH_MODE 3410
|
||||
#define IDT_EXTRACT_OVERWRITE_MODE 3420
|
||||
|
||||
#define IDX_EXTRACT_ELIM_DUP 3430
|
||||
#define IDX_EXTRACT_NT_SECUR 3431
|
||||
// #define IDX_EXTRACT_ALT_STREAMS 3432
|
||||
|
||||
#define IDX_PASSWORD_SHOW 3803
|
||||
#define IDG_PASSWORD 3807
|
||||
280
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractGUI.cpp
vendored
Normal file
280
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractGUI.cpp
vendored
Normal file
@@ -0,0 +1,280 @@
|
||||
// ExtractGUI.cpp
|
||||
|
||||
#include "StdAfx.h"
|
||||
|
||||
#include "../../../Common/IntToString.h"
|
||||
#include "../../../Common/StringConvert.h"
|
||||
|
||||
#include "../../../Windows/FileDir.h"
|
||||
#include "../../../Windows/FileFind.h"
|
||||
#include "../../../Windows/FileName.h"
|
||||
#include "../../../Windows/Thread.h"
|
||||
|
||||
#include "../FileManager/ExtractCallback.h"
|
||||
#include "../FileManager/FormatUtils.h"
|
||||
#include "../FileManager/LangUtils.h"
|
||||
#include "../FileManager/resourceGui.h"
|
||||
#include "../FileManager/OverwriteDialogRes.h"
|
||||
|
||||
#include "../Common/ArchiveExtractCallback.h"
|
||||
#include "../Common/PropIDUtils.h"
|
||||
|
||||
#include "../Explorer/MyMessages.h"
|
||||
|
||||
#include "resource2.h"
|
||||
#include "ExtractRes.h"
|
||||
|
||||
#include "ExtractDialog.h"
|
||||
#include "ExtractGUI.h"
|
||||
#include "HashGUI.h"
|
||||
|
||||
#include "../FileManager/PropertyNameRes.h"
|
||||
|
||||
using namespace NWindows;
|
||||
using namespace NFile;
|
||||
using namespace NDir;
|
||||
|
||||
static const wchar_t * const kIncorrectOutDir = L"Incorrect output directory path";
|
||||
|
||||
#ifndef _SFX
|
||||
|
||||
static void AddValuePair(UString &s, UINT resourceID, UInt64 value, bool addColon = true)
|
||||
{
|
||||
AddLangString(s, resourceID);
|
||||
if (addColon)
|
||||
s += ':';
|
||||
s.Add_Space();
|
||||
char sz[32];
|
||||
ConvertUInt64ToString(value, sz);
|
||||
s += sz;
|
||||
s.Add_LF();
|
||||
}
|
||||
|
||||
static void AddSizePair(UString &s, UINT resourceID, UInt64 value)
|
||||
{
|
||||
AddLangString(s, resourceID);
|
||||
s += ": ";
|
||||
AddSizeValue(s, value);
|
||||
s.Add_LF();
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
class CThreadExtracting: public CProgressThreadVirt
|
||||
{
|
||||
HRESULT ProcessVirt();
|
||||
public:
|
||||
CCodecs *codecs;
|
||||
CExtractCallbackImp *ExtractCallbackSpec;
|
||||
const CObjectVector<COpenType> *FormatIndices;
|
||||
const CIntVector *ExcludedFormatIndices;
|
||||
|
||||
UStringVector *ArchivePaths;
|
||||
UStringVector *ArchivePathsFull;
|
||||
const NWildcard::CCensorNode *WildcardCensor;
|
||||
const CExtractOptions *Options;
|
||||
|
||||
#ifndef _SFX
|
||||
CHashBundle *HashBundle;
|
||||
virtual void ProcessWasFinished_GuiVirt();
|
||||
#endif
|
||||
|
||||
CMyComPtr<IExtractCallbackUI> ExtractCallback;
|
||||
UString Title;
|
||||
|
||||
CPropNameValPairs Pairs;
|
||||
};
|
||||
|
||||
|
||||
#ifndef _SFX
|
||||
void CThreadExtracting::ProcessWasFinished_GuiVirt()
|
||||
{
|
||||
if (HashBundle && !Pairs.IsEmpty())
|
||||
ShowHashResults(Pairs, *this);
|
||||
}
|
||||
#endif
|
||||
|
||||
HRESULT CThreadExtracting::ProcessVirt()
|
||||
{
|
||||
CDecompressStat Stat;
|
||||
|
||||
#ifndef _SFX
|
||||
/*
|
||||
if (HashBundle)
|
||||
HashBundle->Init();
|
||||
*/
|
||||
#endif
|
||||
|
||||
HRESULT res = Extract(codecs,
|
||||
*FormatIndices, *ExcludedFormatIndices,
|
||||
*ArchivePaths, *ArchivePathsFull,
|
||||
*WildcardCensor, *Options, ExtractCallbackSpec, ExtractCallback,
|
||||
#ifndef _SFX
|
||||
HashBundle,
|
||||
#endif
|
||||
FinalMessage.ErrorMessage.Message, Stat);
|
||||
|
||||
#ifndef _SFX
|
||||
if (res == S_OK && ExtractCallbackSpec->IsOK())
|
||||
{
|
||||
if (HashBundle)
|
||||
{
|
||||
AddValuePair(Pairs, IDS_ARCHIVES_COLON, Stat.NumArchives);
|
||||
AddSizeValuePair(Pairs, IDS_PROP_PACKED_SIZE, Stat.PackSize);
|
||||
AddHashBundleRes(Pairs, *HashBundle);
|
||||
}
|
||||
else if (Options->TestMode)
|
||||
{
|
||||
UString s;
|
||||
|
||||
AddValuePair(s, IDS_ARCHIVES_COLON, Stat.NumArchives, false);
|
||||
AddSizePair(s, IDS_PROP_PACKED_SIZE, Stat.PackSize);
|
||||
|
||||
if (Stat.NumFolders != 0)
|
||||
AddValuePair(s, IDS_PROP_FOLDERS, Stat.NumFolders);
|
||||
AddValuePair(s, IDS_PROP_FILES, Stat.NumFiles);
|
||||
AddSizePair(s, IDS_PROP_SIZE, Stat.UnpackSize);
|
||||
if (Stat.NumAltStreams != 0)
|
||||
{
|
||||
s.Add_LF();
|
||||
AddValuePair(s, IDS_PROP_NUM_ALT_STREAMS, Stat.NumAltStreams);
|
||||
AddSizePair(s, IDS_PROP_ALT_STREAMS_SIZE, Stat.AltStreams_UnpackSize);
|
||||
}
|
||||
s.Add_LF();
|
||||
AddLangString(s, IDS_MESSAGE_NO_ERRORS);
|
||||
FinalMessage.OkMessage.Title = Title;
|
||||
FinalMessage.OkMessage.Message = s;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
|
||||
HRESULT ExtractGUI(
|
||||
CCodecs *codecs,
|
||||
const CObjectVector<COpenType> &formatIndices,
|
||||
const CIntVector &excludedFormatIndices,
|
||||
UStringVector &archivePaths,
|
||||
UStringVector &archivePathsFull,
|
||||
const NWildcard::CCensorNode &wildcardCensor,
|
||||
CExtractOptions &options,
|
||||
#ifndef _SFX
|
||||
CHashBundle *hb,
|
||||
#endif
|
||||
bool showDialog,
|
||||
bool &messageWasDisplayed,
|
||||
CExtractCallbackImp *extractCallback,
|
||||
HWND hwndParent)
|
||||
{
|
||||
messageWasDisplayed = false;
|
||||
|
||||
CThreadExtracting extracter;
|
||||
extracter.codecs = codecs;
|
||||
extracter.FormatIndices = &formatIndices;
|
||||
extracter.ExcludedFormatIndices = &excludedFormatIndices;
|
||||
|
||||
if (!options.TestMode)
|
||||
{
|
||||
FString outputDir = options.OutputDir;
|
||||
#ifndef UNDER_CE
|
||||
if (outputDir.IsEmpty())
|
||||
GetCurrentDir(outputDir);
|
||||
#endif
|
||||
if (showDialog)
|
||||
{
|
||||
CExtractDialog dialog;
|
||||
FString outputDirFull;
|
||||
if (!MyGetFullPathName(outputDir, outputDirFull))
|
||||
{
|
||||
ShowErrorMessage(kIncorrectOutDir);
|
||||
messageWasDisplayed = true;
|
||||
return E_FAIL;
|
||||
}
|
||||
NName::NormalizeDirPathPrefix(outputDirFull);
|
||||
|
||||
dialog.DirPath = fs2us(outputDirFull);
|
||||
|
||||
dialog.OverwriteMode = options.OverwriteMode;
|
||||
dialog.OverwriteMode_Force = options.OverwriteMode_Force;
|
||||
dialog.PathMode = options.PathMode;
|
||||
dialog.PathMode_Force = options.PathMode_Force;
|
||||
dialog.ElimDup = options.ElimDup;
|
||||
|
||||
if (archivePathsFull.Size() == 1)
|
||||
dialog.ArcPath = archivePathsFull[0];
|
||||
|
||||
#ifndef _SFX
|
||||
// dialog.AltStreams = options.NtOptions.AltStreams;
|
||||
dialog.NtSecurity = options.NtOptions.NtSecurity;
|
||||
if (extractCallback->PasswordIsDefined)
|
||||
dialog.Password = extractCallback->Password;
|
||||
#endif
|
||||
|
||||
if (dialog.Create(hwndParent) != IDOK)
|
||||
return E_ABORT;
|
||||
|
||||
outputDir = us2fs(dialog.DirPath);
|
||||
|
||||
options.OverwriteMode = dialog.OverwriteMode;
|
||||
options.PathMode = dialog.PathMode;
|
||||
options.ElimDup = dialog.ElimDup;
|
||||
|
||||
#ifndef _SFX
|
||||
// options.NtOptions.AltStreams = dialog.AltStreams;
|
||||
options.NtOptions.NtSecurity = dialog.NtSecurity;
|
||||
extractCallback->Password = dialog.Password;
|
||||
extractCallback->PasswordIsDefined = !dialog.Password.IsEmpty();
|
||||
#endif
|
||||
}
|
||||
if (!MyGetFullPathName(outputDir, options.OutputDir))
|
||||
{
|
||||
ShowErrorMessage(kIncorrectOutDir);
|
||||
messageWasDisplayed = true;
|
||||
return E_FAIL;
|
||||
}
|
||||
NName::NormalizeDirPathPrefix(options.OutputDir);
|
||||
|
||||
/*
|
||||
if (!CreateComplexDirectory(options.OutputDir))
|
||||
{
|
||||
UString s = GetUnicodeString(NError::MyFormatMessage(GetLastError()));
|
||||
UString s2 = MyFormatNew(IDS_CANNOT_CREATE_FOLDER,
|
||||
#ifdef LANG
|
||||
0x02000603,
|
||||
#endif
|
||||
options.OutputDir);
|
||||
s2.Add_LF();
|
||||
s2 += s;
|
||||
MyMessageBox(s2);
|
||||
return E_FAIL;
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
UString title = LangString(options.TestMode ? IDS_PROGRESS_TESTING : IDS_PROGRESS_EXTRACTING);
|
||||
|
||||
extracter.Title = title;
|
||||
extracter.ExtractCallbackSpec = extractCallback;
|
||||
extracter.ExtractCallbackSpec->ProgressDialog = &extracter;
|
||||
extracter.ExtractCallback = extractCallback;
|
||||
extracter.ExtractCallbackSpec->Init();
|
||||
|
||||
extracter.CompressingMode = false;
|
||||
|
||||
extracter.ArchivePaths = &archivePaths;
|
||||
extracter.ArchivePathsFull = &archivePathsFull;
|
||||
extracter.WildcardCensor = &wildcardCensor;
|
||||
extracter.Options = &options;
|
||||
#ifndef _SFX
|
||||
extracter.HashBundle = hb;
|
||||
#endif
|
||||
|
||||
extracter.IconID = IDI_ICON;
|
||||
|
||||
RINOK(extracter.Create(title, hwndParent));
|
||||
messageWasDisplayed = extracter.ThreadFinishedOK && extracter.MessagesDisplayed;
|
||||
return extracter.Result;
|
||||
}
|
||||
38
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractGUI.h
vendored
Normal file
38
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractGUI.h
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
// GUI/ExtractGUI.h
|
||||
|
||||
#ifndef __EXTRACT_GUI_H
|
||||
#define __EXTRACT_GUI_H
|
||||
|
||||
#include "../Common/Extract.h"
|
||||
|
||||
#include "../FileManager/ExtractCallback.h"
|
||||
|
||||
/*
|
||||
RESULT can be S_OK, even if there are errors!!!
|
||||
if RESULT == S_OK, check extractCallback->IsOK() after ExtractGUI().
|
||||
|
||||
RESULT = E_ABORT - user break.
|
||||
RESULT != E_ABORT:
|
||||
{
|
||||
messageWasDisplayed = true - message was displayed already.
|
||||
messageWasDisplayed = false - there was some internal error, so you must show error message.
|
||||
}
|
||||
*/
|
||||
|
||||
HRESULT ExtractGUI(
|
||||
CCodecs *codecs,
|
||||
const CObjectVector<COpenType> &formatIndices,
|
||||
const CIntVector &excludedFormatIndices,
|
||||
UStringVector &archivePaths,
|
||||
UStringVector &archivePathsFull,
|
||||
const NWildcard::CCensorNode &wildcardCensor,
|
||||
CExtractOptions &options,
|
||||
#ifndef _SFX
|
||||
CHashBundle *hb,
|
||||
#endif
|
||||
bool showDialog,
|
||||
bool &messageWasDisplayed,
|
||||
CExtractCallbackImp *extractCallback,
|
||||
HWND hwndParent = NULL);
|
||||
|
||||
#endif
|
||||
51
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractRes.h
vendored
Normal file
51
3rdparty/lzma/CPP/7zip/UI/GUI/ExtractRes.h
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
#define IDS_MEM_ERROR 3000
|
||||
|
||||
#define IDS_CANNOT_CREATE_FOLDER 3003
|
||||
#define IDS_UPDATE_NOT_SUPPORTED 3004
|
||||
#define IDS_CANT_OPEN_ARCHIVE 3005
|
||||
#define IDS_CANT_OPEN_ENCRYPTED_ARCHIVE 3006
|
||||
#define IDS_UNSUPPORTED_ARCHIVE_TYPE 3007
|
||||
|
||||
#define IDS_CANT_OPEN_AS_TYPE 3017
|
||||
#define IDS_IS_OPEN_AS_TYPE 3018
|
||||
#define IDS_IS_OPEN_WITH_OFFSET 3019
|
||||
|
||||
#define IDS_PROGRESS_EXTRACTING 3300
|
||||
|
||||
#define IDS_PROGRESS_SKIPPING 3325
|
||||
|
||||
#define IDS_EXTRACT_SET_FOLDER 3402
|
||||
|
||||
#define IDS_EXTRACT_PATHS_FULL 3411
|
||||
#define IDS_EXTRACT_PATHS_NO 3412
|
||||
#define IDS_EXTRACT_PATHS_ABS 3413
|
||||
#define IDS_PATH_MODE_RELAT 3414
|
||||
|
||||
#define IDS_EXTRACT_OVERWRITE_ASK 3421
|
||||
#define IDS_EXTRACT_OVERWRITE_WITHOUT_PROMPT 3422
|
||||
#define IDS_EXTRACT_OVERWRITE_SKIP_EXISTING 3423
|
||||
#define IDS_EXTRACT_OVERWRITE_RENAME 3424
|
||||
#define IDS_EXTRACT_OVERWRITE_RENAME_EXISTING 3425
|
||||
|
||||
#define IDS_EXTRACT_MESSAGE_UNSUPPORTED_METHOD 3700
|
||||
#define IDS_EXTRACT_MESSAGE_DATA_ERROR 3701
|
||||
#define IDS_EXTRACT_MESSAGE_CRC_ERROR 3702
|
||||
#define IDS_EXTRACT_MESSAGE_DATA_ERROR_ENCRYPTED 3703
|
||||
#define IDS_EXTRACT_MESSAGE_CRC_ERROR_ENCRYPTED 3704
|
||||
|
||||
#define IDS_EXTRACT_MSG_WRONG_PSW_GUESS 3710
|
||||
// #define IDS_EXTRACT_MSG_ENCRYPTED 3711
|
||||
|
||||
#define IDS_EXTRACT_MSG_UNSUPPORTED_METHOD 3721
|
||||
#define IDS_EXTRACT_MSG_DATA_ERROR 3722
|
||||
#define IDS_EXTRACT_MSG_CRC_ERROR 3723
|
||||
#define IDS_EXTRACT_MSG_UNAVAILABLE_DATA 3724
|
||||
#define IDS_EXTRACT_MSG_UEXPECTED_END 3725
|
||||
#define IDS_EXTRACT_MSG_DATA_AFTER_END 3726
|
||||
#define IDS_EXTRACT_MSG_IS_NOT_ARC 3727
|
||||
#define IDS_EXTRACT_MSG_HEADERS_ERROR 3728
|
||||
#define IDS_EXTRACT_MSG_WRONG_PSW_CLAIM 3729
|
||||
|
||||
#define IDS_OPEN_MSG_UNAVAILABLE_START 3763
|
||||
#define IDS_OPEN_MSG_UNCONFIRMED_START 3764
|
||||
#define IDS_OPEN_MSG_UNSUPPORTED_FEATURE 3768
|
||||
27
3rdparty/lzma/CPP/7zip/UI/GUI/HashGUI.h
vendored
Normal file
27
3rdparty/lzma/CPP/7zip/UI/GUI/HashGUI.h
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
// HashGUI.h
|
||||
|
||||
#ifndef __HASH_GUI_H
|
||||
#define __HASH_GUI_H
|
||||
|
||||
#include "../Common/HashCalc.h"
|
||||
#include "../Common/Property.h"
|
||||
|
||||
HRESULT HashCalcGUI(
|
||||
DECL_EXTERNAL_CODECS_LOC_VARS
|
||||
const NWildcard::CCensor &censor,
|
||||
const CHashOptions &options,
|
||||
bool &messageWasDisplayed);
|
||||
|
||||
typedef CObjectVector<CProperty> CPropNameValPairs;
|
||||
|
||||
void AddValuePair(CPropNameValPairs &pairs, UINT resourceID, UInt64 value);
|
||||
void AddSizeValue(UString &s, UInt64 value);
|
||||
void AddSizeValuePair(CPropNameValPairs &pairs, UINT resourceID, UInt64 value);
|
||||
|
||||
void AddHashBundleRes(CPropNameValPairs &s, const CHashBundle &hb);
|
||||
void AddHashBundleRes(UString &s, const CHashBundle &hb);
|
||||
|
||||
void ShowHashResults(const CPropNameValPairs &propPairs, HWND hwnd);
|
||||
void ShowHashResults(const CHashBundle &hb, HWND hwnd);
|
||||
|
||||
#endif
|
||||
2
3rdparty/lzma/CPP/7zip/UI/GUI/resource2.h
vendored
Normal file
2
3rdparty/lzma/CPP/7zip/UI/GUI/resource2.h
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
#define IDS_PROGRESS_COMPRESSING 3301
|
||||
#define IDS_ARCHIVES_COLON 3907
|
||||
Reference in New Issue
Block a user