blob: efc74cc838520d8f6370d7e40ed8e467b2091213 [file] [log] [blame]
// 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;
}