diff options
author | Igor Pavlov <ipavlov@users.sourceforge.net> | 2009-08-17 04:00:00 +0400 |
---|---|---|
committer | Kornel LesiĆski <kornel@geekhood.net> | 2016-05-28 02:16:00 +0300 |
commit | c99f3ebdd639c2adb03d8b44001b10af18516504 (patch) | |
tree | 92aaf34e5edbd7287c3f55037190da75ab0a8000 /CPP/7zip/UI/Far | |
parent | 829409452d85cd6dd9dfc9151f109d6e13a2bb1c (diff) |
9.06 beta
Diffstat (limited to 'CPP/7zip/UI/Far')
-rwxr-xr-x | CPP/7zip/UI/Far/FarUtils.cpp | 30 | ||||
-rwxr-xr-x | CPP/7zip/UI/Far/FarUtils.h | 2 | ||||
-rwxr-xr-x | CPP/7zip/UI/Far/Main.cpp | 101 | ||||
-rwxr-xr-x | CPP/7zip/UI/Far/Plugin.cpp | 59 | ||||
-rwxr-xr-x | CPP/7zip/UI/Far/Plugin.h | 49 | ||||
-rwxr-xr-x | CPP/7zip/UI/Far/PluginDelete.cpp | 26 | ||||
-rwxr-xr-x | CPP/7zip/UI/Far/PluginRead.cpp | 4 | ||||
-rwxr-xr-x | CPP/7zip/UI/Far/PluginWrite.cpp | 21 | ||||
-rwxr-xr-x | CPP/7zip/UI/Far/makefile | 1 |
9 files changed, 105 insertions, 188 deletions
diff --git a/CPP/7zip/UI/Far/FarUtils.cpp b/CPP/7zip/UI/Far/FarUtils.cpp index e06bfe3e..01de0233 100755 --- a/CPP/7zip/UI/Far/FarUtils.cpp +++ b/CPP/7zip/UI/Far/FarUtils.cpp @@ -2,13 +2,13 @@ #include "StdAfx.h" -#include "FarUtils.h" -#include "Common/DynamicBuffer.h" #include "Common/StringConvert.h" -#include "Windows/Defs.h" + #include "Windows/Console.h" #include "Windows/Error.h" +#include "FarUtils.h" + using namespace NWindows; namespace NFar { @@ -16,12 +16,12 @@ namespace NFar { CStartupInfo g_StartupInfo; void CStartupInfo::Init(const PluginStartupInfo &pluginStartupInfo, - const CSysString &pliginNameForRegestry) + const CSysString &pluginNameForRegestry) { m_Data = pluginStartupInfo; - m_RegistryPath = pluginStartupInfo.RootKey; - m_RegistryPath += '\\'; - m_RegistryPath += pliginNameForRegestry; + m_RegistryPath = GetSystemString(pluginStartupInfo.RootKey); + m_RegistryPath += TEXT('\\'); + m_RegistryPath += pluginNameForRegestry; } const char *CStartupInfo::GetMsgString(int messageId) @@ -164,7 +164,7 @@ void CStartupInfo::RestoreScreen(HANDLE handle) m_Data.RestoreScreen(handle); } -const char kRegestryKeyDelimiter = '\''; +const TCHAR kRegestryKeyDelimiter = TEXT('\''); CSysString CStartupInfo::GetFullKeyName(const CSysString &keyName) const { @@ -355,8 +355,8 @@ int CStartupInfo::Menu( item.Checked = 0; item.Separator = 0; item.Selected = (i == selectedItem); - AString reducedString = items[i].Left(sizeof(item.Text) / sizeof(item.Text[0]) - 1); - MyStringCopy(item.Text, (const char *)reducedString); + CSysString reducedString = items[i].Left(sizeof(item.Text) / sizeof(item.Text[0]) - 1); + MyStringCopy(item.Text, (const char *)GetOemString(reducedString)); farMenuItems.Add(item); } return Menu(flags, title, helpTopic, &farMenuItems.Front(), farMenuItems.Size()); @@ -396,7 +396,7 @@ static AString DWORDToString(DWORD number) void PrintErrorMessage(const char *message, int code) { - CSysString tmp = message; + AString tmp = message; tmp += " #"; tmp += DWORDToString(code); g_StartupInfo.ShowMessage(tmp); @@ -404,7 +404,7 @@ void PrintErrorMessage(const char *message, int code) void PrintErrorMessage(const char *message, const char *text) { - CSysString tmp = message; + AString tmp = message; tmp += ":\n"; tmp += text; g_StartupInfo.ShowMessageLines(tmp); @@ -442,10 +442,10 @@ bool WasEscPressed() void ShowErrorMessage(DWORD errorCode) { - AString message; + CSysString message; NError::MyFormatMessage(errorCode, message); - message.Replace("\x0D", ""); - message.Replace("\x0A", " "); + message.Replace(TEXT("\x0D"), TEXT("")); + message.Replace(TEXT("\x0A"), TEXT(" ")); g_StartupInfo.ShowMessage(SystemStringToOemString(message)); } diff --git a/CPP/7zip/UI/Far/FarUtils.h b/CPP/7zip/UI/Far/FarUtils.h index e0126cdc..a4887c9a 100755 --- a/CPP/7zip/UI/Far/FarUtils.h +++ b/CPP/7zip/UI/Far/FarUtils.h @@ -56,7 +56,7 @@ class CStartupInfo public: void Init(const PluginStartupInfo &pluginStartupInfo, - const CSysString &pliginNameForRegestry); + const CSysString &pluginNameForRegestry); const char *GetMsgString(int messageId); int ShowMessage(unsigned int flags, const char *helpTopic, const char **items, int numItems, int numButtons); diff --git a/CPP/7zip/UI/Far/Main.cpp b/CPP/7zip/UI/Far/Main.cpp index 46a16a9f..65aabea6 100755 --- a/CPP/7zip/UI/Far/Main.cpp +++ b/CPP/7zip/UI/Far/Main.cpp @@ -2,89 +2,40 @@ #include "StdAfx.h" -// #include <locale.h> -#include <initguid.h> +#include "Common/MyInitGuid.h" -#include "Plugin.h" - -#include "Common/Wildcard.h" -#include "Common/DynamicBuffer.h" #include "Common/StringConvert.h" -#include "Common/Defs.h" -#include "Windows/FileFind.h" -#include "Windows/FileIO.h" #include "Windows/FileDir.h" -#include "Windows/Defs.h" +#include "Windows/NtCheck.h" -#include "../../IPassword.h" #include "../../Common/FileStreams.h" -#include "../Common/DefaultName.h" -#include "../Common/OpenArchive.h" #include "../Agent/Agent.h" -#include "ProgressBox.h" -#include "FarUtils.h" #include "Messages.h" +#include "Plugin.h" +#include "ProgressBox.h" using namespace NWindows; using namespace NFar; static const char *kCommandPrefix = "7-zip"; - static const char *kRegisrtryMainKeyName = ""; - static const char *kRegisrtryValueNameEnabled = "UsedByDefault3"; -static bool kPluginEnabledDefault = true; - static const char *kHelpTopicConfig = "Config"; - -extern "C" -{ - void WINAPI SetStartupInfo(struct PluginStartupInfo *info); - HANDLE WINAPI OpenFilePlugin(char *name, const unsigned char *Data, - unsigned int DataSize); - HANDLE WINAPI OpenPlugin(int openFrom, int item); - void WINAPI ClosePlugin(HANDLE plugin); - int WINAPI GetFindData(HANDLE plugin, struct PluginPanelItem **panelItems, - int *itemsNumber, int OpMode); - void WINAPI FreeFindData(HANDLE plugin, struct PluginPanelItem *panelItems, - int itemsNumber); - int WINAPI GetFiles(HANDLE plugin, struct PluginPanelItem *panelItems, - int itemsNumber, int move, char *destPath, int opMode); - int WINAPI SetDirectory(HANDLE plugin, char *dir, int opMode); - void WINAPI GetPluginInfo(struct PluginInfo *info); - int WINAPI Configure(int itemNumber); - void WINAPI GetOpenPluginInfo(HANDLE plugin, struct OpenPluginInfo *info); - int WINAPI PutFiles(HANDLE plugin, struct PluginPanelItem *panelItems, - int itemsNumber, int move, int opMode); - int WINAPI DeleteFiles(HANDLE plugin, PluginPanelItem *panelItems, - int itemsNumber, int opMode); - int WINAPI ProcessKey(HANDLE plugin, int key, unsigned int controlState); -}; +static bool kPluginEnabledDefault = true; HINSTANCE g_hInstance; -#ifndef _UNICODE -bool g_IsNT = false; -static bool IsItWindowsNT() -{ - OSVERSIONINFO versionInfo; - versionInfo.dwOSVersionInfoSize = sizeof(versionInfo); - if (!::GetVersionEx(&versionInfo)) - return false; - return (versionInfo.dwPlatformId == VER_PLATFORM_WIN32_NT); -} -#endif + +#define NT_CHECK_FAIL_ACTION return FALSE; BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID) { if (dwReason == DLL_PROCESS_ATTACH) { g_hInstance = hInstance; - #ifndef _UNICODE - g_IsNT = IsItWindowsNT(); - #endif + NT_CHECK } return TRUE; } @@ -96,7 +47,7 @@ static struct COptions static const char *kPliginNameForRegestry = "7-ZIP"; -void WINAPI SetStartupInfo(struct PluginStartupInfo *info) +EXTERN_C void WINAPI SetStartupInfo(struct PluginStartupInfo *info) { MY_TRY_BEGIN; g_StartupInfo.Init(*info, kPliginNameForRegestry); @@ -289,8 +240,7 @@ STDMETHODIMP COpenArchiveCallback::SetCompleted(const UInt64 *completed) return S_OK; } -STDMETHODIMP COpenArchiveCallback::GetStream(const wchar_t *name, - IInStream **inStream) +STDMETHODIMP COpenArchiveCallback::GetStream(const wchar_t *name, IInStream **inStream) { if (WasEscPressed()) return E_ABORT; @@ -443,8 +393,7 @@ static HANDLE MyOpenFilePlugin(const char *name) return (HANDLE)(plugin); } -HANDLE WINAPI OpenFilePlugin(char *name, - const unsigned char * /* data */, unsigned int /* dataSize */) +EXTERN_C HANDLE WINAPI OpenFilePlugin(char *name, const unsigned char * /* data */, unsigned int /* dataSize */) { MY_TRY_BEGIN; if (name == NULL || (!g_Options.Enabled)) @@ -456,7 +405,7 @@ HANDLE WINAPI OpenFilePlugin(char *name, MY_TRY_END2("OpenFilePlugin", INVALID_HANDLE_VALUE); } -HANDLE WINAPI OpenPlugin(int openFrom, int item) +EXTERN_C HANDLE WINAPI OpenPlugin(int openFrom, int item) { MY_TRY_BEGIN; if(openFrom == OPEN_COMMANDLINE) @@ -504,30 +453,28 @@ HANDLE WINAPI OpenPlugin(int openFrom, int item) MY_TRY_END2("OpenPlugin", INVALID_HANDLE_VALUE); } -void WINAPI ClosePlugin(HANDLE plugin) +EXTERN_C void WINAPI ClosePlugin(HANDLE plugin) { MY_TRY_BEGIN; delete (CPlugin *)plugin; MY_TRY_END1("ClosePlugin"); } -int WINAPI GetFindData(HANDLE plugin, struct PluginPanelItem **panelItems, - int *itemsNumber,int opMode) +EXTERN_C int WINAPI GetFindData(HANDLE plugin, struct PluginPanelItem **panelItems, int *itemsNumber, int opMode) { MY_TRY_BEGIN; return(((CPlugin *)plugin)->GetFindData(panelItems, itemsNumber, opMode)); MY_TRY_END2("GetFindData", FALSE); } -void WINAPI FreeFindData(HANDLE plugin, struct PluginPanelItem *panelItems, - int itemsNumber) +EXTERN_C void WINAPI FreeFindData(HANDLE plugin, struct PluginPanelItem *panelItems, int itemsNumber) { MY_TRY_BEGIN; ((CPlugin *)plugin)->FreeFindData(panelItems, itemsNumber); MY_TRY_END1("FreeFindData"); } -int WINAPI GetFiles(HANDLE plugin, struct PluginPanelItem *panelItems, +EXTERN_C int WINAPI GetFiles(HANDLE plugin, struct PluginPanelItem *panelItems, int itemsNumber, int move, char *destPath, int opMode) { MY_TRY_BEGIN; @@ -535,14 +482,14 @@ int WINAPI GetFiles(HANDLE plugin, struct PluginPanelItem *panelItems, MY_TRY_END2("GetFiles", NFileOperationReturnCode::kError); } -int WINAPI SetDirectory(HANDLE plugin, char *dir, int opMode) +EXTERN_C int WINAPI SetDirectory(HANDLE plugin, char *dir, int opMode) { MY_TRY_BEGIN; return(((CPlugin *)plugin)->SetDirectory(dir, opMode)); MY_TRY_END2("SetDirectory", FALSE); } -void WINAPI GetPluginInfo(struct PluginInfo *info) +EXTERN_C void WINAPI GetPluginInfo(struct PluginInfo *info) { MY_TRY_BEGIN; @@ -564,7 +511,7 @@ void WINAPI GetPluginInfo(struct PluginInfo *info) MY_TRY_END1("GetPluginInfo"); } -int WINAPI Configure(int /* itemNumber */) +EXTERN_C int WINAPI Configure(int /* itemNumber */) { MY_TRY_BEGIN; @@ -601,30 +548,28 @@ int WINAPI Configure(int /* itemNumber */) MY_TRY_END2("Configure", FALSE); } -void WINAPI GetOpenPluginInfo(HANDLE plugin,struct OpenPluginInfo *info) +EXTERN_C void WINAPI GetOpenPluginInfo(HANDLE plugin,struct OpenPluginInfo *info) { MY_TRY_BEGIN; ((CPlugin *)plugin)->GetOpenPluginInfo(info); MY_TRY_END1("GetOpenPluginInfo"); } -int WINAPI PutFiles(HANDLE plugin, struct PluginPanelItem *panelItems, - int itemsNumber, int move, int opMode) +EXTERN_C int WINAPI PutFiles(HANDLE plugin, struct PluginPanelItem *panelItems, int itemsNumber, int move, int opMode) { MY_TRY_BEGIN; return(((CPlugin *)plugin)->PutFiles(panelItems, itemsNumber, move, opMode)); MY_TRY_END2("PutFiles", NFileOperationReturnCode::kError); } -int WINAPI DeleteFiles(HANDLE plugin, PluginPanelItem *panelItems, - int itemsNumber, int opMode) +EXTERN_C int WINAPI DeleteFiles(HANDLE plugin, PluginPanelItem *panelItems, int itemsNumber, int opMode) { MY_TRY_BEGIN; return(((CPlugin *)plugin)->DeleteFiles(panelItems, itemsNumber, opMode)); MY_TRY_END2("DeleteFiles", FALSE); } -int WINAPI ProcessKey(HANDLE plugin, int key, unsigned int controlState) +EXTERN_C int WINAPI ProcessKey(HANDLE plugin, int key, unsigned int controlState) { MY_TRY_BEGIN; return (((CPlugin *)plugin)->ProcessKey(key, controlState)); diff --git a/CPP/7zip/UI/Far/Plugin.cpp b/CPP/7zip/UI/Far/Plugin.cpp index c1e45a62..5d9b5cf0 100755 --- a/CPP/7zip/UI/Far/Plugin.cpp +++ b/CPP/7zip/UI/Far/Plugin.cpp @@ -2,40 +2,33 @@ #include "StdAfx.h" -#include "Plugin.h" - #include "Common/IntToString.h" #include "Common/StringConvert.h" #include "Common/Wildcard.h" #include "Windows/FileDir.h" -#include "Windows/FileName.h" #include "Windows/PropVariantConversions.h" #include "../Common/PropIDUtils.h" #include "FarUtils.h" #include "Messages.h" +#include "Plugin.h" using namespace NWindows; using namespace NFar; -CPlugin::CPlugin(const UString &fileName, - IInFolderArchive *archiveHandler, - UString archiveTypeName - ): - m_ArchiveHandler(archiveHandler), - m_FileName(fileName), - _archiveTypeName(archiveTypeName) +CPlugin::CPlugin(const UString &fileName, IInFolderArchive *archiveHandler, UString archiveTypeName): + m_ArchiveHandler(archiveHandler), + m_FileName(fileName), + _archiveTypeName(archiveTypeName) { if (!m_FileInfo.Find(m_FileName)) throw "error"; archiveHandler->BindToRootFolder(&_folder); } -CPlugin::~CPlugin() -{ -} +CPlugin::~CPlugin() {} static void MyGetFileTime(IFolderFolder *anArchiveFolder, UInt32 itemIndex, PROPID propID, FILETIME &fileTime) @@ -59,6 +52,17 @@ static void MyGetFileTime(IFolderFolder *anArchiveFolder, UInt32 itemIndex, #define kDotsReplaceString "[[..]]" #define kDotsReplaceStringU L"[[..]]" +static void CopyStrLimited(char *dest, const AString &src, int len) +{ + len--; + if (src.Length() < len) + len = src.Length(); + memcpy(dest, src, sizeof(dest[0]) * len); + dest[len] = 0; +} + +#define COPY_STR_LIMITED(dest, src) CopyStrLimited(dest, src, sizeof(dest) / sizeof(dest[0])) + void CPlugin::ReadPluginPanelItem(PluginPanelItem &panelItem, UInt32 itemIndex) { NCOM::CPropVariant prop; @@ -69,14 +73,10 @@ void CPlugin::ReadPluginPanelItem(PluginPanelItem &panelItem, UInt32 itemIndex) throw 272340; CSysString oemString = UnicodeStringToMultiByte(prop.bstrVal, CP_OEMCP); - const int kFileNameSizeMax = (int)(sizeof(panelItem.FindData.cFileName) / sizeof(panelItem.FindData.cFileName[0]) - 1); - if (oemString.Length() > kFileNameSizeMax) - oemString = oemString.Left(kFileNameSizeMax); - if (oemString == "..") oemString = kDotsReplaceString; - MyStringCopy(panelItem.FindData.cFileName, (const char *)oemString); + COPY_STR_LIMITED(panelItem.FindData.cFileName, oemString); panelItem.FindData.cAlternateFileName[0] = 0; if (_folder->GetProperty(itemIndex, kpidAttrib, &prop) != S_OK) @@ -138,8 +138,7 @@ void CPlugin::ReadPluginPanelItem(PluginPanelItem &panelItem, UInt32 itemIndex) panelItem.Reserved[2] = 0; } -int CPlugin::GetFindData(PluginPanelItem **panelItems, - int *itemsNumber, int opMode) +int CPlugin::GetFindData(PluginPanelItem **panelItems, int *itemsNumber, int opMode) { // CScreenRestorer screenRestorer; if ((opMode & OPM_SILENT) == 0 && (opMode & OPM_FIND ) == 0) @@ -177,8 +176,7 @@ int CPlugin::GetFindData(PluginPanelItem **panelItems, return(TRUE); } -void CPlugin::FreeFindData(struct PluginPanelItem *panelItems, - int itemsNumber) +void CPlugin::FreeFindData(struct PluginPanelItem *panelItems, int itemsNumber) { for (int i = 0; i < itemsNumber; i++) if (panelItems[i].Description != NULL) @@ -186,7 +184,6 @@ void CPlugin::FreeFindData(struct PluginPanelItem *panelItems, delete []panelItems; } - void CPlugin::EnterToDirectory(const UString &dirName) { CMyComPtr<IFolderFolder> newFolder; @@ -510,12 +507,10 @@ void CPlugin::GetOpenPluginInfo(struct OpenPluginInfo *info) info->Flags = OPIF_USEFILTER | OPIF_USESORTGROUPS| OPIF_USEHIGHLIGHTING| OPIF_ADDDOTS | OPIF_COMPAREFATTIME; - UINT codePage = ::AreFileApisANSI() ? CP_ACP : CP_OEMCP; - - MyStringCopy(m_FileNameBuffer, (const char *)UnicodeStringToMultiByte(m_FileName, codePage)); + COPY_STR_LIMITED(m_FileNameBuffer, UnicodeStringToMultiByte(m_FileName, CP_OEMCP)); info->HostFile = m_FileNameBuffer; // test it it is not static - MyStringCopy(m_CurrentDirBuffer, (const char *)UnicodeStringToMultiByte(m_CurrentDir, CP_OEMCP)); + COPY_STR_LIMITED(m_CurrentDirBuffer, UnicodeStringToMultiByte(m_CurrentDir, CP_OEMCP)); info->CurDir = m_CurrentDirBuffer; info->Format = kPluginFormatName; @@ -540,7 +535,7 @@ void CPlugin::GetOpenPluginInfo(struct OpenPluginInfo *info) m_PannelTitle += m_CurrentDir; } - MyStringCopy(m_PannelTitleBuffer, (const char *)UnicodeStringToMultiByte(m_PannelTitle, CP_OEMCP)); + COPY_STR_LIMITED(m_PannelTitleBuffer, UnicodeStringToMultiByte(m_PannelTitle, CP_OEMCP)); info->PanelTitle = m_PannelTitleBuffer; memset(m_InfoLines, 0, sizeof(m_InfoLines)); @@ -572,8 +567,8 @@ void CPlugin::GetOpenPluginInfo(struct OpenPluginInfo *info) continue; InfoPanelLine &item = m_InfoLines[numItems++]; - MyStringCopy(item.Text, (const char *)GetNameOfProp2(propID, name)); - MyStringCopy(item.Data, (const char *)PropToString2(prop, propID)); + COPY_STR_LIMITED(item.Text, GetNameOfProp2(propID, name)); + COPY_STR_LIMITED(item.Data, PropToString2(prop, propID)); } } } @@ -614,8 +609,8 @@ void CPlugin::GetOpenPluginInfo(struct OpenPluginInfo *info) if (getProps->GetArchiveProperty(propID, &prop) != S_OK || prop.vt == VT_EMPTY) continue; InfoPanelLine &item = m_InfoLines[numItems++]; - MyStringCopy(item.Text, (const char *)GetNameOfProp2(propID, name)); - MyStringCopy(item.Data, (const char *)PropToString2(prop, propID)); + COPY_STR_LIMITED(item.Text, GetNameOfProp2(propID, name)); + COPY_STR_LIMITED(item.Data, PropToString2(prop, propID)); } } diff --git a/CPP/7zip/UI/Far/Plugin.h b/CPP/7zip/UI/Far/Plugin.h index 06003ba5..ab534e21 100755 --- a/CPP/7zip/UI/Far/Plugin.h +++ b/CPP/7zip/UI/Far/Plugin.h @@ -33,10 +33,8 @@ class CPlugin PanelMode PanelMode; void AddColumn(PROPID aPropID); - - void EnterToDirectory(const UString &aDirName); - - void GetPathParts(UStringVector &aPathParts); + void EnterToDirectory(const UString &dirName); + void GetPathParts(UStringVector &pathParts); void GetCurrentDir(); public: UString m_FileName; @@ -45,55 +43,46 @@ public: CMyComPtr<IInFolderArchive> m_ArchiveHandler; CMyComPtr<IFolderFolder> _folder; - // CArchiverInfo m_ArchiverInfo; UString _archiveTypeName; bool PasswordIsDefined; UString Password; - - CPlugin(const UString &fileName, - // const UString &aDefaultName, - IInFolderArchive *archiveHandler, - UString archiveTypeName - ); + CPlugin(const UString &fileName, IInFolderArchive *archiveHandler, UString archiveTypeName); ~CPlugin(); - void ReadValueSafe(PROPID aPropID, NWindows::NCOM::CPropVariant aPropVariant); - void ReadPluginPanelItem(PluginPanelItem &aPanelItem, UINT32 anItemIndex); - - int GetFindData(PluginPanelItem **pPanelItem,int *pItemsNumber,int OpMode); - void FreeFindData(PluginPanelItem *PanelItem,int ItemsNumber); - int SetDirectory(const char *aDir, int opMode); - void GetOpenPluginInfo(struct OpenPluginInfo *anInfo); - - int DeleteFiles(PluginPanelItem *aPanelItems, int itemsNumber, int opMode); + void ReadPluginPanelItem(PluginPanelItem &panelItem, UInt32 itemIndex); + int GetFindData(PluginPanelItem **panelItems,int *itemsNumber,int opMode); + void FreeFindData(PluginPanelItem *panelItem,int ItemsNumber); + int SetDirectory(const char *aszDir, int opMode); + void GetOpenPluginInfo(struct OpenPluginInfo *info); + int DeleteFiles(PluginPanelItem *panelItems, int itemsNumber, int opMode); HRESULT ExtractFiles( bool decompressAllItems, - const UINT32 *indices, - UINT32 numIndices, + const UInt32 *indices, + UInt32 numIndices, bool silent, NExtract::NPathMode::EEnum pathMode, NExtract::NOverwriteMode::EEnum overwriteMode, const UString &destPath, bool passwordIsDefined, const UString &password); - NFar::NFileOperationReturnCode::EEnum GetFiles(struct PluginPanelItem *aPanelItem, int itemsNumber, - int move, char *destPath, int opMode); + NFar::NFileOperationReturnCode::EEnum GetFiles(struct PluginPanelItem *panelItem, int itemsNumber, + int move, char *destPath, int opMode); - NFar::NFileOperationReturnCode::EEnum GetFilesReal(struct PluginPanelItem *aPanelItems, - int itemsNumber, int move, const char *_aDestPath, int opMode, bool aShowBox); + NFar::NFileOperationReturnCode::EEnum GetFilesReal(struct PluginPanelItem *panelItems, + int itemsNumber, int move, const char *_aDestPath, int opMode, bool showBox); - NFar::NFileOperationReturnCode::EEnum PutFiles(struct PluginPanelItem *aPanelItems, int itemsNumber, - int move, int opMode); + NFar::NFileOperationReturnCode::EEnum PutFiles(struct PluginPanelItem *panelItems, int itemsNumber, + int move, int opMode); HRESULT ShowAttributesWindow(); - int ProcessKey(int aKey, unsigned int aControlState); + int ProcessKey(int key, unsigned int controlState); }; -HRESULT CompressFiles(const CObjectVector<PluginPanelItem> &aPluginPanelItems); +HRESULT CompressFiles(const CObjectVector<PluginPanelItem> &pluginPanelItems); #endif diff --git a/CPP/7zip/UI/Far/PluginDelete.cpp b/CPP/7zip/UI/Far/PluginDelete.cpp index a1dfb915..7d6f0314 100755 --- a/CPP/7zip/UI/Far/PluginDelete.cpp +++ b/CPP/7zip/UI/Far/PluginDelete.cpp @@ -2,21 +2,14 @@ #include "StdAfx.h" -#include <stdio.h> - -#include "Plugin.h" -#include "Messages.h" -#include "UpdateCallback100.h" - #include "Windows/FileDir.h" -#include "../../Common/FileStreams.h" - -#include "Common/StringConvert.h" - -#include "../Common/ZipRegistry.h" #include "../Common/WorkDir.h" +#include "Messages.h" +#include "Plugin.h" +#include "UpdateCallback100.h" + using namespace NFar; using namespace NWindows; using namespace NFile; @@ -24,8 +17,7 @@ using namespace NDirectory; static LPCWSTR kTempArchivePrefix = L"7zA"; -int CPlugin::DeleteFiles(PluginPanelItem *panelItems, int numItems, - int opMode) +int CPlugin::DeleteFiles(PluginPanelItem *panelItems, int numItems, int opMode) { if (numItems == 0) return FALSE; @@ -48,8 +40,7 @@ int CPlugin::DeleteFiles(PluginPanelItem *panelItems, int numItems, char msg[1024]; if (numItems == 1) { - sprintf(msg, g_StartupInfo.GetMsgString(NMessageID::kDeleteFile), - panelItems[0].FindData.cFileName); + sprintf(msg, g_StartupInfo.GetMsgString(NMessageID::kDeleteFile), panelItems[0].FindData.cFileName); msgItems[1] = msg; } else if (numItems > 1) @@ -77,7 +68,7 @@ int CPlugin::DeleteFiles(PluginPanelItem *panelItems, int numItems, } NWorkDir::CInfo workDirInfo; - ReadWorkDirInfo(workDirInfo); + workDirInfo.Load(); UString workDir = GetWorkDir(workDirInfo, m_FileName); CreateComplexDirectory(workDir); @@ -101,8 +92,7 @@ int CPlugin::DeleteFiles(PluginPanelItem *panelItems, int numItems, GetPathParts(pathVector); CMyComPtr<IOutFolderArchive> outArchive; - HRESULT result = m_ArchiveHandler.QueryInterface( - IID_IOutFolderArchive, &outArchive); + HRESULT result = m_ArchiveHandler.QueryInterface(IID_IOutFolderArchive, &outArchive); if(result != S_OK) { g_StartupInfo.ShowMessage(NMessageID::kUpdateNotSupportedForThisArchive); diff --git a/CPP/7zip/UI/Far/PluginRead.cpp b/CPP/7zip/UI/Far/PluginRead.cpp index 7cf7c3c6..45f575fb 100755 --- a/CPP/7zip/UI/Far/PluginRead.cpp +++ b/CPP/7zip/UI/Far/PluginRead.cpp @@ -109,7 +109,7 @@ NFileOperationReturnCode::EEnum CPlugin::GetFilesReal(struct PluginPanelItem *pa { const int kPathIndex = 2; - ReadExtractionInfo(extractionInfo); + extractionInfo.Load(); const int kPathModeRadioIndex = 4; const int kOverwriteModeRadioIndex = kPathModeRadioIndex + 4; @@ -230,7 +230,7 @@ NFileOperationReturnCode::EEnum CPlugin::GetFilesReal(struct PluginPanelItem *pa else throw 31806; - SaveExtractionInfo(extractionInfo); + extractionInfo.Save(); if (dialogItems[kFilesModeIndex].Selected) extractSelectedFiles = true; diff --git a/CPP/7zip/UI/Far/PluginWrite.cpp b/CPP/7zip/UI/Far/PluginWrite.cpp index 44c6fecd..4226aa5c 100755 --- a/CPP/7zip/UI/Far/PluginWrite.cpp +++ b/CPP/7zip/UI/Far/PluginWrite.cpp @@ -78,7 +78,7 @@ NFileOperationReturnCode::EEnum CPlugin::PutFiles( const int kXMid = 38; NCompression::CInfo compressionInfo; - ReadCompressionInfo(compressionInfo); + compressionInfo.Load(); int methodIndex = 0; int i; @@ -145,16 +145,16 @@ NFileOperationReturnCode::EEnum CPlugin::PutFiles( else if (dialogItems[kModeRadioIndex + 1].Selected) actionSet = &kUpdateActionSet; else if (dialogItems[kModeRadioIndex + 2].Selected) - actionSet = &kFreshActionSet; + actionSet = &kFreshActionSet; else if (dialogItems[kModeRadioIndex + 3].Selected) - actionSet = &kSynchronizeActionSet; + actionSet = &kSynchronizeActionSet; else throw 51751; - SaveCompressionInfo(compressionInfo); + compressionInfo.Save(); NWorkDir::CInfo workDirInfo; - ReadWorkDirInfo(workDirInfo); + workDirInfo.Load(); UString workDir = GetWorkDir(workDirInfo, m_FileName); CreateComplexDirectory(workDir); @@ -425,8 +425,7 @@ HRESULT CompressFiles(const CObjectVector<PluginPanelItem> &pluginPanelItems) } NCompression::CInfo compressionInfo; - // CZipRegistryManager aZipRegistryManager; - ReadCompressionInfo(compressionInfo); + compressionInfo.Load(); int archiverIndex = 0; @@ -442,7 +441,7 @@ HRESULT CompressFiles(const CObjectVector<PluginPanelItem> &pluginPanelItems) { if (archiverIndex == -1) archiverIndex = i; - if (arcInfo.Name.CompareNoCase(compressionInfo.ArchiveType) == 0) + if (arcInfo.Name.CompareNoCase(compressionInfo.ArcType) == 0) archiverIndex = i; } } @@ -647,11 +646,11 @@ HRESULT CompressFiles(const CObjectVector<PluginPanelItem> &pluginPanelItems) } const CArcInfoEx &archiverInfoFinal = codecs->Formats[archiverIndex]; - compressionInfo.ArchiveType = archiverInfoFinal.Name; - SaveCompressionInfo(compressionInfo); + compressionInfo.ArcType = archiverInfoFinal.Name; + compressionInfo.Save(); NWorkDir::CInfo workDirInfo; - ReadWorkDirInfo(workDirInfo); + workDirInfo.Load(); UString fullArchiveName; if (!MyGetFullPathName(archiveName, fullArchiveName)) diff --git a/CPP/7zip/UI/Far/makefile b/CPP/7zip/UI/Far/makefile index 01c77ded..29d7bcf4 100755 --- a/CPP/7zip/UI/Far/makefile +++ b/CPP/7zip/UI/Far/makefile @@ -1,6 +1,5 @@ PROG = 7-ZipFar.dll DEF_FILE = Far.def -LIBS = $(LIBS) user32.lib oleaut32.lib advapi32.lib ole32.lib CFLAGS = $(CFLAGS) -I ../../../ \ -DWIN_LONG_PATH \ -DEXTERNAL_CODECS |