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

github.com/kornelski/7z.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '7zip/FileManager/App.cpp')
-rwxr-xr-x7zip/FileManager/App.cpp66
1 files changed, 40 insertions, 26 deletions
diff --git a/7zip/FileManager/App.cpp b/7zip/FileManager/App.cpp
index c85d4cef..10e2b850 100755
--- a/7zip/FileManager/App.cpp
+++ b/7zip/FileManager/App.cpp
@@ -114,10 +114,8 @@ void CApp::CreateOnePanel(int panelIndex, const UString &mainPath)
UString path;
if (mainPath.IsEmpty())
{
- CSysString sysPath;
- if (!::ReadPanelPath(panelIndex, sysPath))
- sysPath.Empty();
- path = GetUnicodeString(sysPath);
+ if (!::ReadPanelPath(panelIndex, path))
+ path.Empty();
}
else
path = mainPath;
@@ -165,8 +163,7 @@ struct CButtonInfo
UINT Bitmap2ResID;
UINT StringResID;
UINT32 LangID;
- CSysString GetText()const
- { return LangLoadString(StringResID, LangID); };
+ UString GetText()const { return LangString(StringResID, LangID); };
};
static CButtonInfo g_StandardButtons[] =
@@ -184,7 +181,7 @@ static CButtonInfo g_ArchiveButtons[] =
{ kTestCommand , IDB_TEST, IDB_TEST2, IDS_TEST, 0x03020402}
};
-bool SetButtonText(UINT32 commandID, CButtonInfo *buttons, int numButtons, CSysString &s)
+bool SetButtonText(UINT32 commandID, CButtonInfo *buttons, int numButtons, UString &s)
{
for (int i = 0; i < numButtons; i++)
{
@@ -192,19 +189,19 @@ bool SetButtonText(UINT32 commandID, CButtonInfo *buttons, int numButtons, CSysS
if (b.commandID == commandID)
{
s = b.GetText();
- return true;
+ return true;
}
}
return false;
}
-void SetButtonText(UINT32 commandID, CSysString &s)
+void SetButtonText(UINT32 commandID, UString &s)
{
- if (SetButtonText(commandID, g_StandardButtons, sizeof(g_StandardButtons) /
- sizeof(g_StandardButtons[0]), s))
+ if (SetButtonText(commandID, g_StandardButtons,
+ sizeof(g_StandardButtons) / sizeof(g_StandardButtons[0]), s))
return;
- SetButtonText(commandID, g_ArchiveButtons, sizeof(g_StandardButtons) /
- sizeof(g_ArchiveButtons[0]), s);
+ SetButtonText(commandID, g_ArchiveButtons,
+ sizeof(g_ArchiveButtons) / sizeof(g_ArchiveButtons[0]), s);
}
static void AddButton(
@@ -223,10 +220,10 @@ static void AddButton(
;
but.dwData = 0;
- CSysString s = butInfo.GetText();
+ UString s = butInfo.GetText();
but.iString = 0;
if (showText)
- but.iString = (INT_PTR )(LPCTSTR)s;
+ but.iString = (INT_PTR)(LPCWSTR)s;
but.iBitmap = imageList.GetImageCount();
HBITMAP b = ::LoadBitmap(g_hInstance,
@@ -238,7 +235,11 @@ static void AddButton(
imageList.AddMasked(b, RGB(255, 0, 255));
::DeleteObject(b);
}
+ #ifdef _UNICODE
toolBar.AddButton(1, &but);
+ #else
+ toolBar.AddButtonW(1, &but);
+ #endif
}
static void AddBand(NControl::CReBar &reBar, NControl::CToolBar &toolBar)
@@ -402,7 +403,7 @@ void CApp::Save()
path = panel._currentFolderPrefix;
else
path = GetFolderPath(panel._parentFolders[0].ParentFolder);
- SavePanelPath(i, GetSystemString(path));
+ SavePanelPath(i, path);
listMode.Panels[i] = panel.GetListViewMode();
}
SaveListMode(listMode);
@@ -473,7 +474,7 @@ void CApp::OnCopy(bool move, bool copyToSame, int srcPanelIndex)
if (!srcPanel.DoesItSupportOperations())
{
- srcPanel.MessageBox(LangLoadStringW(IDS_OPERATION_IS_NOT_SUPPORTED, 0x03020208));
+ srcPanel.MessageBox(LangString(IDS_OPERATION_IS_NOT_SUPPORTED, 0x03020208));
return;
}
@@ -511,11 +512,11 @@ void CApp::OnCopy(bool move, bool copyToSame, int srcPanelIndex)
copyDialog.Value = destPath;
copyDialog.Title = move ?
- LangLoadStringW(IDS_MOVE, 0x03020202):
- LangLoadStringW(IDS_COPY, 0x03020201);
+ LangString(IDS_MOVE, 0x03020202):
+ LangString(IDS_COPY, 0x03020201);
copyDialog.Static = move ?
- LangLoadStringW(IDS_MOVE_TO, 0x03020204):
- LangLoadStringW(IDS_COPY_TO, 0x03020203);
+ LangString(IDS_MOVE_TO, 0x03020204):
+ LangString(IDS_COPY_TO, 0x03020203);
if (copyDialog.Create(srcPanel.GetParent()) == IDCANCEL)
return;
@@ -526,7 +527,7 @@ void CApp::OnCopy(bool move, bool copyToSame, int srcPanelIndex)
{
if (!srcPanel.IsFSFolder())
{
- srcPanel.MessageBox(LangLoadStringW(IDS_OPERATION_IS_NOT_SUPPORTED, 0x03020208));
+ srcPanel.MessageBox(LangString(IDS_OPERATION_IS_NOT_SUPPORTED, 0x03020208));
return;
}
destPath = srcPanel._currentFolderPrefix + destPath;
@@ -541,7 +542,7 @@ void CApp::OnCopy(bool move, bool copyToSame, int srcPanelIndex)
{
if (NumPanels < 2 || destPath != destPanel._currentFolderPrefix || !destPanel.DoesItSupportOperations())
{
- srcPanel.MessageBox(LangLoadStringW(IDS_OPERATION_IS_NOT_SUPPORTED, 0x03020208));
+ srcPanel.MessageBox(LangString(IDS_OPERATION_IS_NOT_SUPPORTED, 0x03020208));
return;
}
useDestPanel = true;
@@ -556,7 +557,7 @@ void CApp::OnCopy(bool move, bool copyToSame, int srcPanelIndex)
NDirectory::CreateComplexDirectory(prefix);
if (!CheckFolderPath(prefix))
{
- srcPanel.MessageBox(LangLoadStringW(IDS_OPERATION_IS_NOT_SUPPORTED, 0x03020208));
+ srcPanel.MessageBox(LangString(IDS_OPERATION_IS_NOT_SUPPORTED, 0x03020208));
return;
}
}
@@ -705,7 +706,8 @@ int CApp::GetFocusedPanelIndex() const
}
*/
-static CSysString g_ToolTipBuffer;
+static UString g_ToolTipBuffer;
+static CSysString g_ToolTipBufferSys;
void CApp::OnNotify(int ctrlID, LPNMHDR pnmh)
{
@@ -729,8 +731,20 @@ void CApp::OnNotify(int ctrlID, LPNMHDR pnmh)
info->hinst = 0;
g_ToolTipBuffer.Empty();
SetButtonText(info->hdr.idFrom, g_ToolTipBuffer);
- info->lpszText = (LPTSTR)(LPCTSTR)g_ToolTipBuffer;
+ g_ToolTipBufferSys = GetSystemString(g_ToolTipBuffer);
+ info->lpszText = (LPTSTR)(LPCTSTR)g_ToolTipBufferSys;
+ return;
+ }
+ #ifndef _UNICODE
+ if (pnmh->code == TTN_GETDISPINFOW)
+ {
+ LPNMTTDISPINFOW info = (LPNMTTDISPINFOW)pnmh;
+ info->hinst = 0;
+ g_ToolTipBuffer.Empty();
+ SetButtonText(info->hdr.idFrom, g_ToolTipBuffer);
+ info->lpszText = (LPWSTR)(LPCWSTR)g_ToolTipBuffer;
return;
}
+ #endif
}
}