mirror of
https://github.com/Xevion/easy7zip.git
synced 2025-12-06 07:14:55 -06:00
82 lines
1.5 KiB
C++
Executable File
82 lines
1.5 KiB
C++
Executable File
// AboutDialog.cpp
|
|
|
|
#include "StdAfx.h"
|
|
|
|
#include "../../../../C/CpuArch.h"
|
|
|
|
#include "../../MyVersion.h"
|
|
|
|
#include "../Common/LoadCodecs.h"
|
|
|
|
#include "AboutDialog.h"
|
|
#include "PropertyNameRes.h"
|
|
|
|
#include "HelpUtils.h"
|
|
#include "LangUtils.h"
|
|
|
|
#ifdef Z7_LANG
|
|
static const UInt32 kLangIDs[] =
|
|
{
|
|
IDT_ABOUT_INFO
|
|
};
|
|
#endif
|
|
|
|
#define kHomePageURL TEXT("https://www.7-zip.org/")
|
|
#define kHelpTopic "start.htm"
|
|
|
|
#define LLL_(quote) L##quote
|
|
#define LLL(quote) LLL_(quote)
|
|
|
|
extern CCodecs *g_CodecsObj;
|
|
|
|
bool CAboutDialog::OnInit()
|
|
{
|
|
#ifdef Z7_EXTERNAL_CODECS
|
|
if (g_CodecsObj)
|
|
{
|
|
UString s;
|
|
g_CodecsObj->GetCodecsErrorMessage(s);
|
|
if (!s.IsEmpty())
|
|
MessageBoxW(GetParent(), s, L"7-Zip", MB_ICONERROR);
|
|
}
|
|
#endif
|
|
|
|
#ifdef Z7_LANG
|
|
LangSetWindowText(*this, IDD_ABOUT);
|
|
LangSetDlgItems(*this, kLangIDs, Z7_ARRAY_SIZE(kLangIDs));
|
|
#endif
|
|
SetItemText(IDT_ABOUT_VERSION, UString("7-Zip " MY_VERSION_CPU));
|
|
SetItemText(IDT_ABOUT_DATE, LLL(MY_DATE));
|
|
|
|
NormalizePosition();
|
|
return CModalDialog::OnInit();
|
|
}
|
|
|
|
void CAboutDialog::OnHelp()
|
|
{
|
|
ShowHelpWindow(kHelpTopic);
|
|
}
|
|
|
|
bool CAboutDialog::OnButtonClicked(unsigned buttonID, HWND buttonHWND)
|
|
{
|
|
LPCTSTR url;
|
|
switch (buttonID)
|
|
{
|
|
case IDB_ABOUT_HOMEPAGE: url = kHomePageURL; break;
|
|
default:
|
|
return CModalDialog::OnButtonClicked(buttonID, buttonHWND);
|
|
}
|
|
|
|
#ifdef UNDER_CE
|
|
SHELLEXECUTEINFO s;
|
|
memset(&s, 0, sizeof(s));
|
|
s.cbSize = sizeof(s);
|
|
s.lpFile = url;
|
|
::ShellExecuteEx(&s);
|
|
#else
|
|
::ShellExecute(NULL, NULL, url, NULL, NULL, SW_SHOWNORMAL);
|
|
#endif
|
|
|
|
return true;
|
|
}
|