Here comes the new installer front end. (Work in Progress)

This commit is contained in:
ben%bengoodger.com 2003-10-12 01:24:53 +00:00
Родитель f2d2906229
Коммит 69121415a5
14 изменённых файлов: 364 добавлений и 299 удалений

Просмотреть файл

@ -69,7 +69,7 @@ MOZ_WINCONSOLE = 0
include $(topsrcdir)/config/rules.mk
_OS_LIBS = ole32 comdlg32 shell32 version
_OS_LIBS = ole32 comdlg32 comctl32 shell32 version
ifdef GNU_CC
_OS_LIBS += gdi32 ws2_32 uuid
endif

Просмотреть файл

@ -248,6 +248,7 @@ void SaveWindowPosition(HWND aDlg)
LRESULT CALLBACK DlgProcWelcome(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam)
{
char szBuf[MAX_BUF];
LPNMHDR notifyMessage;
switch(msg)
{
@ -259,8 +260,7 @@ LRESULT CALLBACK DlgProcWelcome(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam)
SetDlgItemText(hDlg, IDC_STATIC0, szBuf);
SetDlgItemText(hDlg, IDC_STATIC1, diWelcome.szMessage1);
SetDlgItemText(hDlg, IDC_STATIC2, diWelcome.szMessage2);
RepositionWindow(hDlg, NO_BANNER_IMAGE);
SetDlgItemText(hDlg, IDC_STATIC3, diWelcome.szMessage3);
SetDlgItemText(hDlg, IDWIZNEXT, sgInstallGui.szNext_);
SetDlgItemText(hDlg, IDCANCEL, sgInstallGui.szCancel_);
@ -271,6 +271,22 @@ LRESULT CALLBACK DlgProcWelcome(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam)
SendDlgItemMessage (hDlg, IDCANCEL, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
break;
case WM_NOTIFY:
notifyMessage = (LPNMHDR)lParam;
switch (notifyMessage->code)
{
case PSN_SETACTIVE:
PropSheet_SetWizButtons(GetParent(hDlg), PSWIZB_NEXT);
break;
case PSN_WIZNEXT:
break;
case PSN_RESET:
break;
default:
break;
}
break;
case WM_COMMAND:
switch(LOWORD(wParam))
{
@ -301,6 +317,7 @@ LRESULT CALLBACK DlgProcLicense(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam)
DWORD dwBytesRead;
HANDLE hFLicense;
FILE *fLicense;
LPNMHDR notifyMessage;
switch(msg)
{
@ -344,6 +361,22 @@ LRESULT CALLBACK DlgProcLicense(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam)
SendDlgItemMessage (hDlg, IDCANCEL, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
break;
case WM_NOTIFY:
notifyMessage = (LPNMHDR)lParam;
switch (notifyMessage->code)
{
case PSN_SETACTIVE:
PropSheet_SetWizButtons(GetParent(hDlg), PSWIZB_NEXT|PSWIZB_BACK);
break;
case PSN_WIZNEXT:
break;
case PSN_RESET:
break;
default:
break;
}
break;
case WM_COMMAND:
switch(LOWORD(wParam))
{
@ -652,12 +685,7 @@ LRESULT CALLBACK DlgProcSetupType(HWND hDlg, UINT msg, WPARAM wParam, LONG lPara
HWND hStaticSt0;
HWND hRadioSt1;
HWND hStaticSt1;
HWND hRadioSt2;
HWND hStaticSt2;
HWND hRadioSt3;
HWND hStaticSt3;
HWND hReadme;
HWND hDestinationPath;
char szBuf[MAX_BUF];
char szBufTemp[MAX_BUF];
@ -665,10 +693,6 @@ LRESULT CALLBACK DlgProcSetupType(HWND hDlg, UINT msg, WPARAM wParam, LONG lPara
hStaticSt0 = GetDlgItem(hDlg, IDC_STATIC_ST0_DESCRIPTION);
hRadioSt1 = GetDlgItem(hDlg, IDC_RADIO_ST1);
hStaticSt1 = GetDlgItem(hDlg, IDC_STATIC_ST1_DESCRIPTION);
hRadioSt2 = GetDlgItem(hDlg, IDC_RADIO_ST2);
hStaticSt2 = GetDlgItem(hDlg, IDC_STATIC_ST2_DESCRIPTION);
hRadioSt3 = GetDlgItem(hDlg, IDC_RADIO_ST3);
hStaticSt3 = GetDlgItem(hDlg, IDC_STATIC_ST3_DESCRIPTION);
hReadme = GetDlgItem(hDlg, IDC_README);
switch(msg)
@ -677,9 +701,6 @@ LRESULT CALLBACK DlgProcSetupType(HWND hDlg, UINT msg, WPARAM wParam, LONG lPara
DisableSystemMenuItems(hDlg, FALSE);
SetWindowText(hDlg, diSetupType.szTitle);
hDestinationPath = GetDlgItem(hDlg, IDC_EDIT_DESTINATION); /* handle to the static destination path text window */
TruncateString(hDestinationPath, szTempSetupPath, szBuf, sizeof(szBuf));
SetDlgItemText(hDlg, IDC_EDIT_DESTINATION, szBuf);
SetDlgItemText(hDlg, IDC_STATIC_MSG0, diSetupType.szMessage0);
@ -709,32 +730,6 @@ LRESULT CALLBACK DlgProcSetupType(HWND hDlg, UINT msg, WPARAM wParam, LONG lPara
ShowWindow(hStaticSt1, SW_HIDE);
}
if(diSetupType.stSetupType2.bVisible)
{
SetDlgItemText(hDlg, IDC_RADIO_ST2, diSetupType.stSetupType2.szDescriptionShort);
SetDlgItemText(hDlg, IDC_STATIC_ST2_DESCRIPTION, diSetupType.stSetupType2.szDescriptionLong);
ShowWindow(hRadioSt2, SW_SHOW);
ShowWindow(hStaticSt2, SW_SHOW);
}
else
{
ShowWindow(hRadioSt2, SW_HIDE);
ShowWindow(hStaticSt2, SW_HIDE);
}
if(diSetupType.stSetupType3.bVisible)
{
SetDlgItemText(hDlg, IDC_RADIO_ST3, diSetupType.stSetupType3.szDescriptionShort);
SetDlgItemText(hDlg, IDC_STATIC_ST3_DESCRIPTION, diSetupType.stSetupType3.szDescriptionLong);
ShowWindow(hRadioSt3, SW_SHOW);
ShowWindow(hStaticSt3, SW_SHOW);
}
else
{
ShowWindow(hRadioSt3, SW_HIDE);
ShowWindow(hStaticSt3, SW_HIDE);
}
/* enable the appropriate radio button */
switch(dwTempSetupType)
{
@ -747,40 +742,18 @@ LRESULT CALLBACK DlgProcSetupType(HWND hDlg, UINT msg, WPARAM wParam, LONG lPara
CheckDlgButton(hDlg, IDC_RADIO_ST1, BST_CHECKED);
SetFocus(hRadioSt1);
break;
case ST_RADIO2:
CheckDlgButton(hDlg, IDC_RADIO_ST2, BST_CHECKED);
SetFocus(hRadioSt2);
break;
case ST_RADIO3:
CheckDlgButton(hDlg, IDC_RADIO_ST3, BST_CHECKED);
SetFocus(hRadioSt3);
break;
}
RepositionWindow(hDlg, NO_BANNER_IMAGE);
if((*diSetupType.szReadmeFilename == '\0') || (FileExists(diSetupType.szReadmeFilename) == FALSE))
ShowWindow(hReadme, SW_HIDE);
else
ShowWindow(hReadme, SW_SHOW);
SetDlgItemText(hDlg, IDC_DESTINATION, sgInstallGui.szDestinationDirectory);
SetDlgItemText(hDlg, IDC_BUTTON_BROWSE, sgInstallGui.szBrowse_);
SetDlgItemText(hDlg, IDWIZBACK, sgInstallGui.szBack_);
SetDlgItemText(hDlg, IDWIZNEXT, sgInstallGui.szNext_);
SetDlgItemText(hDlg, IDCANCEL, sgInstallGui.szCancel_);
SetDlgItemText(hDlg, IDC_README, sgInstallGui.szReadme_);
SendDlgItemMessage (hDlg, IDC_STATIC_MSG0, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
SendDlgItemMessage (hDlg, IDC_RADIO_ST0, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
SendDlgItemMessage (hDlg, IDC_RADIO_ST1, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
SendDlgItemMessage (hDlg, IDC_RADIO_ST2, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
SendDlgItemMessage (hDlg, IDC_RADIO_ST3, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
SendDlgItemMessage (hDlg, IDC_STATIC_ST0_DESCRIPTION, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
SendDlgItemMessage (hDlg, IDC_STATIC_ST1_DESCRIPTION, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
SendDlgItemMessage (hDlg, IDC_STATIC_ST2_DESCRIPTION, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
SendDlgItemMessage (hDlg, IDC_STATIC_ST3_DESCRIPTION, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
SendDlgItemMessage (hDlg, IDC_STATIC, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
SendDlgItemMessage (hDlg, IDC_EDIT_DESTINATION, WM_SETFONT, (WPARAM)sgInstallGui.systemFont, 0L);
SendDlgItemMessage (hDlg, IDC_BUTTON_BROWSE, WM_SETFONT, (WPARAM)sgInstallGui.definedFont, 0L);
@ -799,31 +772,6 @@ LRESULT CALLBACK DlgProcSetupType(HWND hDlg, UINT msg, WPARAM wParam, LONG lPara
case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDC_BUTTON_BROWSE:
SaveWindowPosition(hDlg);
if(IsDlgButtonChecked(hDlg, IDC_RADIO_ST0) == BST_CHECKED)
dwTempSetupType = ST_RADIO0;
else if(IsDlgButtonChecked(hDlg, IDC_RADIO_ST1) == BST_CHECKED)
dwTempSetupType = ST_RADIO1;
else if(IsDlgButtonChecked(hDlg, IDC_RADIO_ST2) == BST_CHECKED)
dwTempSetupType = ST_RADIO2;
else if(IsDlgButtonChecked(hDlg, IDC_RADIO_ST3) == BST_CHECKED)
dwTempSetupType = ST_RADIO3;
BrowseForDirectory(hDlg, szTempSetupPath);
hDestinationPath = GetDlgItem(hDlg, IDC_EDIT_DESTINATION); /* handle to the static destination path text window */
TruncateString(hDestinationPath, szTempSetupPath, szBuf, sizeof(szBuf));
SetDlgItemText(hDlg, IDC_EDIT_DESTINATION, szBuf);
break;
case IDC_README:
if(*diSetupType.szReadmeApp == '\0')
WinSpawn(diSetupType.szReadmeFilename, NULL, szSetupDir, SW_SHOWNORMAL, FALSE);
else
WinSpawn(diSetupType.szReadmeApp, diSetupType.szReadmeFilename, szSetupDir, SW_SHOWNORMAL, FALSE);
break;
case IDWIZNEXT:
SaveWindowPosition(hDlg);
lstrcpy(sgProduct.szPath, szTempSetupPath);
@ -890,10 +838,6 @@ LRESULT CALLBACK DlgProcSetupType(HWND hDlg, UINT msg, WPARAM wParam, LONG lPara
dwSetupType = ST_RADIO0;
else if(IsDlgButtonChecked(hDlg, IDC_RADIO_ST1) == BST_CHECKED)
dwSetupType = ST_RADIO1;
else if(IsDlgButtonChecked(hDlg, IDC_RADIO_ST2) == BST_CHECKED)
dwSetupType = ST_RADIO2;
else if(IsDlgButtonChecked(hDlg, IDC_RADIO_ST3) == BST_CHECKED)
dwSetupType = ST_RADIO3;
dwTempSetupType = dwSetupType;
SiCNodeSetItemsSelected(dwSetupType);
@ -1403,6 +1347,47 @@ LRESULT CALLBACK DlgProcSelectComponents(HWND hDlg, UINT msg, WPARAM wParam, LON
return(bReturn);
}
LRESULT CALLBACK DlgProcSelectInstallPath(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam)
{
BOOL bReturn = FALSE;
HWND hDestinationPath;
char szBuf[MAX_BUF];
switch(msg)
{
case WM_INITDIALOG:
DisableSystemMenuItems(hDlg, FALSE);
SetWindowText(hDlg, diSelectInstallPath.szTitle);
SetDlgItemText(hDlg, IDC_STATIC_MSG0, diSelectInstallPath.szMessage0);
hDestinationPath = GetDlgItem(hDlg, IDC_EDIT_DESTINATION); /* handle to the static destination path text window */
TruncateString(hDestinationPath, szTempSetupPath, szBuf, sizeof(szBuf));
SetDlgItemText(hDlg, IDC_DESTINATION, sgInstallGui.szDestinationDirectory);
SetDlgItemText(hDlg, IDC_BUTTON_BROWSE, sgInstallGui.szBrowse_);
break;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case IDC_BUTTON_BROWSE:
BrowseForDirectory(hDlg, szTempSetupPath);
hDestinationPath = GetDlgItem(hDlg, IDC_EDIT_DESTINATION); /* handle to the static destination path text window */
TruncateString(hDestinationPath, szTempSetupPath, szBuf, sizeof(szBuf));
SetDlgItemText(hDlg, IDC_EDIT_DESTINATION, szBuf);
break;
default:
break;
}
break;
}
return(bReturn);
}
LRESULT CALLBACK DlgProcSelectAdditionalComponents(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam)
{
BOOL bReturn = FALSE;
@ -2082,14 +2067,6 @@ LPSTR GetStartInstallMessage()
switch(dwSetupType)
{
case ST_RADIO3:
dwBufSize += lstrlen(diSetupType.stSetupType3.szDescriptionShort) + 2; // the extra 2 bytes is for the \r\n characters
break;
case ST_RADIO2:
dwBufSize += lstrlen(diSetupType.stSetupType2.szDescriptionShort) + 2; // the extra 2 bytes is for the \r\n characters
break;
case ST_RADIO1:
dwBufSize += lstrlen(diSetupType.stSetupType1.szDescriptionShort) + 2; // the extra 2 bytes is for the \r\n characters
break;
@ -2194,14 +2171,6 @@ LPSTR GetStartInstallMessage()
switch(dwSetupType)
{
case ST_RADIO3:
AppendStringWOAmpersand(szMessageBuf, dwBufSize, diSetupType.stSetupType3.szDescriptionShort);
break;
case ST_RADIO2:
AppendStringWOAmpersand(szMessageBuf, dwBufSize, diSetupType.stSetupType2.szDescriptionShort);
break;
case ST_RADIO1:
AppendStringWOAmpersand(szMessageBuf, dwBufSize, diSetupType.stSetupType1.szDescriptionShort);
break;
@ -2407,7 +2376,9 @@ LRESULT CALLBACK DlgProcStartInstall(HWND hDlg, UINT msg, WPARAM wParam, LONG lP
DisableSystemMenuItems(hDlg, FALSE);
SetWindowText(hDlg, diStartInstall.szTitle);
SetDlgItemText(hDlg, IDC_STATIC, sgInstallGui.szCurrentSettings);
SetDlgItemText(hDlg, IDC_MESSAGE1, diStartInstall.szMessage0);
SetDlgItemText(hDlg, IDC_MESSAGE2, sgInstallGui.szProxyMessage);
SetDlgItemText(hDlg, IDC_CONNECTION_SETTINGS, sgInstallGui.szProxyButton);
SetDlgItemText(hDlg, IDWIZBACK, sgInstallGui.szBack_);
SetDlgItemText(hDlg, IDWIZNEXT, sgInstallGui.szInstall_);
SetDlgItemText(hDlg, IDCANCEL, sgInstallGui.szCancel_);
@ -2709,6 +2680,99 @@ void SetTurboArgs(void)
}
}
void InitSequence(HINSTANCE hInstance)
{
PROPSHEETPAGE psp;
HPROPSHEETPAGE pages[11] = {0};
PROPSHEETHEADER psh;
int count = 0;
psp.dwSize = sizeof(psp);
psp.hInstance = hSetupRscInst;
psp.lParam = NULL;
// Welcome Page
if (diWelcome.bShowDialog) {
psp.dwFlags = PSP_DEFAULT|PSP_HIDEHEADER;
psp.pfnDlgProc = DlgProcWelcome;
psp.pszTemplate = MAKEINTRESOURCE(DLG_WELCOME);
pages[count++] = CreatePropertySheetPage(&psp);
}
// License Page
if (diLicense.bShowDialog) {
psp.dwFlags = PSP_DEFAULT|PSP_USEHEADERTITLE|PSP_USEHEADERSUBTITLE;
psp.pszHeaderTitle = diLicense.szTitle;
psp.pszHeaderSubTitle = diLicense.szSubTitle;
psp.pfnDlgProc = DlgProcLicense;
psp.pszTemplate = MAKEINTRESOURCE(DLG_LICENSE);
pages[count++] = CreatePropertySheetPage(&psp);
}
// License Page
if (diSetupType.bShowDialog) {
psp.dwFlags = PSP_DEFAULT|PSP_USEHEADERTITLE|PSP_USEHEADERSUBTITLE;
psp.pszHeaderTitle = diSetupType.szTitle;
psp.pszHeaderSubTitle = diSetupType.szSubTitle;
psp.pfnDlgProc = DlgProcSetupType;
psp.pszTemplate = MAKEINTRESOURCE(DLG_SETUP_TYPE);
pages[count++] = CreatePropertySheetPage(&psp);
}
if (diSelectInstallPath.bShowDialog) {
psp.dwFlags = PSP_DEFAULT|PSP_USEHEADERTITLE|PSP_USEHEADERSUBTITLE;
psp.pszHeaderTitle = diSelectInstallPath.szTitle;
psp.pszHeaderSubTitle = diSelectInstallPath.szSubTitle;
psp.pfnDlgProc = DlgProcSelectInstallPath;
psp.pszTemplate = MAKEINTRESOURCE(DLG_SELECT_INSTALL_PATH);
pages[count++] = CreatePropertySheetPage(&psp);
}
if (diSelectComponents.bShowDialog) {
psp.dwFlags = PSP_DEFAULT|PSP_USEHEADERTITLE|PSP_USEHEADERSUBTITLE;
psp.pszHeaderTitle = diSelectComponents.szTitle;
psp.pszHeaderSubTitle = diSelectComponents.szSubTitle;
psp.pfnDlgProc = DlgProcSelectComponents;
psp.pszTemplate = MAKEINTRESOURCE(DLG_SELECT_COMPONENTS);
pages[count++] = CreatePropertySheetPage(&psp);
}
if (diStartInstall.bShowDialog) {
psp.dwFlags = PSP_DEFAULT|PSP_USEHEADERTITLE|PSP_USEHEADERSUBTITLE;
psp.pszHeaderTitle = diStartInstall.szTitle;
psp.pszHeaderSubTitle = diStartInstall.szSubTitle;
psp.pfnDlgProc = DlgProcStartInstall;
psp.pszTemplate = MAKEINTRESOURCE(DLG_START_INSTALL);
pages[count++] = CreatePropertySheetPage(&psp);
}
// Property Sheet
psh.dwSize = sizeof(psh);
psh.hInstance = hSetupRscInst;
psh.hwndParent = NULL;
psh.phpage = pages;
psh.dwFlags = PSH_WIZARD97|PSH_WATERMARK|PSH_HEADER;
psh.pszbmWatermark = MAKEINTRESOURCE(IDB_WATERMARK);
psh.pszbmHeader = MAKEINTRESOURCE(IDB_HEADER);
psh.nStartPage = 0;
psh.nPages = count;
// Start the Wizard.
PropertySheet(&psh);
}
void DlgSequence(int iDirection)
{
return;
}
#if 0
void DlgSequence(int iDirection)
{
HRESULT hrValue;
@ -2738,34 +2802,27 @@ void DlgSequence(int iDirection)
dwWizardState = DLG_SELECT_COMPONENTS;
break;
case DLG_SELECT_COMPONENTS:
dwWizardState = DLG_SELECT_ADDITIONAL_COMPONENTS;
dwWizardState = DLG_PRE_INSTALL_SUMMARY;
break;
case DLG_SELECT_ADDITIONAL_COMPONENTS:
case DLG_PRE_INSTALL_SUMMARY:
dwWizardState = DLG_DOWNLOADING;
break;
case DLG_DOWNLOADING:
dwWizardState = DLG_INSTALLING;
break;
case DLG_INSTALLING:
dwWizardState = DLG_WINDOWS_INTEGRATION;
break;
case DLG_WINDOWS_INTEGRATION:
dwWizardState = DLG_PROGRAM_FOLDER;
dwWizardState = DLG_POST_INSTALL_SUMMARY;
break;
case DLG_PROGRAM_FOLDER:
dwWizardState = DLG_QUICK_LAUNCH;
case DLG_POST_INSTALL_SUMMARY:
// XXXben Goat.
break;
case DLG_QUICK_LAUNCH:
dwWizardState = DLG_ADDITIONAL_OPTIONS;
break;
case DLG_ADDITIONAL_OPTIONS:
dwWizardState = DLG_START_INSTALL;
break;
case DLG_START_INSTALL:
dwWizardState = DLG_COMMIT_INSTALL;
break;
case DLG_ADVANCED_SETTINGS:
dwWizardState = DLG_ADDITIONAL_OPTIONS;
break;
default:
dwWizardState = DLG_WELCOME;
break; }
break;
}
}
else if(iDirection == PREV_DLG)
{
@ -2783,32 +2840,12 @@ void DlgSequence(int iDirection)
case DLG_SELECT_COMPONENTS:
dwWizardState = DLG_SETUP_TYPE;
break;
case DLG_SELECT_ADDITIONAL_COMPONENTS:
case DLG_PRE_INSTALL_SUMAMRY:
dwWizardState = DLG_SELECT_COMPONENTS;
break;
case DLG_WINDOWS_INTEGRATION:
dwWizardState = DLG_SELECT_ADDITIONAL_COMPONENTS;
break;
case DLG_PROGRAM_FOLDER:
case DLG_POST_INSTALL_SUMMARY:
dwWizardState = DLG_WINDOWS_INTEGRATION;
break;
case DLG_QUICK_LAUNCH:
dwWizardState = DLG_PROGRAM_FOLDER;
break;
case DLG_ADDITIONAL_OPTIONS:
dwWizardState = DLG_QUICK_LAUNCH;
break;
case DLG_START_INSTALL:
dwWizardState = DLG_ADDITIONAL_OPTIONS;
break;
case DLG_ADVANCED_SETTINGS:
dwWizardState = DLG_ADDITIONAL_OPTIONS;
break;
default:
dwWizardState = DLG_WELCOME;
break;
}
}
else if(iDirection == OTHER_DLG_1)
@ -2986,6 +3023,7 @@ void DlgSequence(int iDirection)
}
} while(!bDone);
}
#endif
void CommitInstall(void)
{

Просмотреть файл

@ -30,6 +30,7 @@ LRESULT CALLBACK DlgProcWelcome(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam
LRESULT CALLBACK DlgProcLicense(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam);
LRESULT CALLBACK DlgProcSetupType(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam);
LRESULT CALLBACK DlgProcSelectComponents(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam);
LRESULT CALLBACK DlgProcSelectInstallPath(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam);
LRESULT CALLBACK DlgProcSelectAdditionalComponents(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam);
LRESULT CALLBACK DlgProcWindowsIntegration(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam);
LRESULT CALLBACK DlgProcProgramFolder(HWND hDlg, UINT msg, WPARAM wParam, LONG lParam);
@ -47,6 +48,7 @@ void ToggleCheck(HWND hwndListBox, DWORD dwIndex, DWORD dwACFlag);
BOOL AskCancelDlg(HWND hDlg);
void lbAddItem(HWND hList, siC *siCComponent);
HWND InstantiateDialog(HWND hParent, DWORD dwDlgID, LPSTR szTitle, WNDPROC wpDlgProc);
void InitSequence(HINSTANCE hInstance);
void DlgSequence(int iDirection);
void PaintGradientShade(HWND hWnd, HDC hdc);
BOOL BrowseForDirectory(HWND hDlg, char *szCurrDir);

Просмотреть файл

@ -87,6 +87,7 @@ extern diQL diQuickLaunch;
extern diL diLicense;
extern diST diSetupType;
extern diSC diSelectComponents;
extern diSIP diSelectInstallPath;
extern diSC diSelectAdditionalComponents;
extern diWI diWindowsIntegration;
extern diPF diProgramFolder;

Просмотреть файл

@ -3341,6 +3341,8 @@ HRESULT InitDlgWelcome(diW *diDialog)
return(1);
if((diDialog->szMessage2 = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessage3 = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
return(0);
}
@ -3351,6 +3353,7 @@ void DeInitDlgWelcome(diW *diDialog)
FreeMemory(&(diDialog->szMessage0));
FreeMemory(&(diDialog->szMessage1));
FreeMemory(&(diDialog->szMessage2));
FreeMemory(&(diDialog->szMessage3));
}
HRESULT InitDlgLicense(diL *diDialog)
@ -3358,12 +3361,18 @@ HRESULT InitDlgLicense(diL *diDialog)
diDialog->bShowDialog = FALSE;
if((diDialog->szTitle = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szSubTitle = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szLicenseFilename = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessage0 = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessage1 = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessage2 = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessage3 = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
return(0);
}
@ -3371,9 +3380,12 @@ HRESULT InitDlgLicense(diL *diDialog)
void DeInitDlgLicense(diL *diDialog)
{
FreeMemory(&(diDialog->szTitle));
FreeMemory(&(diDialog->szSubTitle));
FreeMemory(&(diDialog->szLicenseFilename));
FreeMemory(&(diDialog->szMessage0));
FreeMemory(&(diDialog->szMessage1));
FreeMemory(&(diDialog->szMessage2));
FreeMemory(&(diDialog->szMessage3));
}
HRESULT InitDlgQuickLaunch(diQL *diDialog)
@ -3407,17 +3419,13 @@ HRESULT InitDlgSetupType(diST *diDialog)
if((diDialog->szTitle = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szSubTitle = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessage0 = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szReadmeFilename = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szReadmeApp = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
diDialog->stSetupType0.dwCItems = 0;
diDialog->stSetupType1.dwCItems = 0;
diDialog->stSetupType2.dwCItems = 0;
diDialog->stSetupType3.dwCItems = 0;
if((diDialog->stSetupType0.szDescriptionShort = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->stSetupType0.szDescriptionLong = NS_GlobalAlloc(MAX_BUF)) == NULL)
@ -3428,34 +3436,19 @@ HRESULT InitDlgSetupType(diST *diDialog)
if((diDialog->stSetupType1.szDescriptionLong = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->stSetupType2.szDescriptionShort = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->stSetupType2.szDescriptionLong = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->stSetupType3.szDescriptionShort = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->stSetupType3.szDescriptionLong = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
return(0);
}
void DeInitDlgSetupType(diST *diDialog)
{
FreeMemory(&(diDialog->szTitle));
FreeMemory(&(diDialog->szSubTitle));
FreeMemory(&(diDialog->szMessage0));
FreeMemory(&(diDialog->szReadmeFilename));
FreeMemory(&(diDialog->szReadmeApp));
FreeMemory(&(diDialog->stSetupType0.szDescriptionShort));
FreeMemory(&(diDialog->stSetupType0.szDescriptionLong));
FreeMemory(&(diDialog->stSetupType1.szDescriptionShort));
FreeMemory(&(diDialog->stSetupType1.szDescriptionLong));
FreeMemory(&(diDialog->stSetupType2.szDescriptionShort));
FreeMemory(&(diDialog->stSetupType2.szDescriptionLong));
FreeMemory(&(diDialog->stSetupType3.szDescriptionShort));
FreeMemory(&(diDialog->stSetupType3.szDescriptionLong));
}
HRESULT InitDlgSelectComponents(diSC *diDialog, DWORD dwSM)
@ -3466,6 +3459,8 @@ HRESULT InitDlgSelectComponents(diSC *diDialog, DWORD dwSM)
diDialog->bShowDialogSM = dwSM;
if((diDialog->szTitle = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szSubTitle = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessage0 = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
@ -3475,6 +3470,29 @@ HRESULT InitDlgSelectComponents(diSC *diDialog, DWORD dwSM)
void DeInitDlgSelectComponents(diSC *diDialog)
{
FreeMemory(&(diDialog->szTitle));
FreeMemory(&(diDialog->szSubTitle));
FreeMemory(&(diDialog->szMessage0));
}
HRESULT InitDlgSelectInstallPath(diSIP *diDialog)
{
diDialog->bShowDialog = FALSE;
/* set to show the Single dialog or the Multi dialog for the SelectComponents dialog */
if((diDialog->szTitle = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szSubTitle = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessage0 = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
return(0);
}
void DeInitDlgSelectInstallPath(diSIP *diDialog)
{
FreeMemory(&(diDialog->szTitle));
FreeMemory(&(diDialog->szSubTitle));
FreeMemory(&(diDialog->szMessage0));
}
@ -3612,10 +3630,14 @@ HRESULT InitDlgStartInstall(diSI *diDialog)
diDialog->bShowDialog = FALSE;
if((diDialog->szTitle = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szSubTitle = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessageInstall = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessageDownload = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
if((diDialog->szMessage0 = NS_GlobalAlloc(MAX_BUF)) == NULL)
return(1);
return(0);
}
@ -3623,8 +3645,10 @@ HRESULT InitDlgStartInstall(diSI *diDialog)
void DeInitDlgStartInstall(diSI *diDialog)
{
FreeMemory(&(diDialog->szTitle));
FreeMemory(&(diDialog->szSubTitle));
FreeMemory(&(diDialog->szMessageInstall));
FreeMemory(&(diDialog->szMessageDownload));
FreeMemory(&(diDialog->szMessage0));
}
HRESULT InitDlgDownload(diD *diDialog)
@ -6988,6 +7012,8 @@ HRESULT ParseConfigIni(LPSTR lpszCmdLine)
return(1);
if(InitDlgSelectComponents(&diSelectComponents, SM_SINGLE))
return(1);
if(InitDlgSelectInstallPath(&diSelectInstallPath))
return(1);
if(InitDlgSelectComponents(&diSelectAdditionalComponents, SM_SINGLE))
return(1);
if(InitDlgWindowsIntegration(&diWindowsIntegration))
@ -7222,24 +7248,27 @@ HRESULT ParseConfigIni(LPSTR lpszCmdLine)
GetPrivateProfileString("Dialog Welcome", "Message0", "", diWelcome.szMessage0, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Welcome", "Message1", "", diWelcome.szMessage1, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Welcome", "Message2", "", diWelcome.szMessage2, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Welcome", "Message3", "", diWelcome.szMessage3, MAX_BUF, szFileIniConfig);
if(lstrcmpi(szShowDialog, "TRUE") == 0)
diWelcome.bShowDialog = TRUE;
/* License dialog */
GetPrivateProfileString("Dialog License", "Show Dialog", "", szShowDialog, sizeof(szShowDialog), szFileIniConfig);
GetPrivateProfileString("Dialog License", "Title", "", diLicense.szTitle, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog License", "Sub Title", "", diLicense.szSubTitle, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog License", "License File", "", diLicense.szLicenseFilename, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog License", "Message0", "", diLicense.szMessage0, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog License", "Message1", "", diLicense.szMessage1, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog License", "Message2", "", diLicense.szMessage2, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog License", "Message3", "", diLicense.szMessage3, MAX_BUF, szFileIniConfig);
if(lstrcmpi(szShowDialog, "TRUE") == 0)
diLicense.bShowDialog = TRUE;
/* Setup Type dialog */
GetPrivateProfileString("Dialog Setup Type", "Show Dialog", "", szShowDialog, sizeof(szShowDialog), szFileIniConfig);
GetPrivateProfileString("Dialog Setup Type", "Title", "", diSetupType.szTitle, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Setup Type", "Sub Title", "", diSetupType.szSubTitle, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Setup Type", "Message0", "", diSetupType.szMessage0, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Setup Type", "Readme Filename", "", diSetupType.szReadmeFilename, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Setup Type", "Readme App", "", diSetupType.szReadmeApp, MAX_BUF, szFileIniConfig);
if(lstrcmpi(szShowDialog, "TRUE") == 0)
diSetupType.bShowDialog = TRUE;
@ -7252,24 +7281,24 @@ HRESULT ParseConfigIni(LPSTR lpszCmdLine)
GetPrivateProfileString("Setup Type1", "Description Long", "", diSetupType.stSetupType1.szDescriptionLong, MAX_BUF, szFileIniConfig);
STSetVisibility(&diSetupType.stSetupType1);
GetPrivateProfileString("Setup Type2", "Description Short", "", diSetupType.stSetupType2.szDescriptionShort, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Setup Type2", "Description Long", "", diSetupType.stSetupType2.szDescriptionLong, MAX_BUF, szFileIniConfig);
STSetVisibility(&diSetupType.stSetupType2);
GetPrivateProfileString("Setup Type3", "Description Short", "", diSetupType.stSetupType3.szDescriptionShort, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Setup Type3", "Description Long", "", diSetupType.stSetupType3.szDescriptionLong, MAX_BUF, szFileIniConfig);
STSetVisibility(&diSetupType.stSetupType3);
/* remember the radio button that is considered the Custom type (the last radio button) */
SetCustomType();
/* Select Components dialog */
GetPrivateProfileString("Dialog Select Components", "Show Dialog", "", szShowDialog, sizeof(szShowDialog), szFileIniConfig);
GetPrivateProfileString("Dialog Select Components", "Title", "", diSelectComponents.szTitle, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Select Components", "Sub Title", "", diSelectComponents.szSubTitle, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Select Components", "Message0", "", diSelectComponents.szMessage0, MAX_BUF, szFileIniConfig);
if(lstrcmpi(szShowDialog, "TRUE") == 0)
diSelectComponents.bShowDialog = TRUE;
GetPrivateProfileString("Dialog Select Install Path", "Show Dialog", "", szShowDialog, sizeof(szShowDialog), szFileIniConfig);
GetPrivateProfileString("Dialog Select Install Path", "Title", "", diSelectInstallPath.szTitle, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Select Install Path", "Sub Title", "", diSelectInstallPath.szSubTitle, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Select Install Path", "Message0", "", diSelectInstallPath.szMessage0, MAX_BUF, szFileIniConfig);
if(lstrcmpi(szShowDialog, "TRUE") == 0)
diSelectInstallPath.bShowDialog = TRUE;
/* Select Additional Components dialog */
GetPrivateProfileString("Dialog Select Additional Components", "Show Dialog", "", szShowDialog, sizeof(szShowDialog), szFileIniConfig);
GetPrivateProfileString("Dialog Select Additional Components", "Title", "", diSelectAdditionalComponents.szTitle, MAX_BUF, szFileIniConfig);
@ -7367,6 +7396,7 @@ HRESULT ParseConfigIni(LPSTR lpszCmdLine)
/* Start Install dialog */
GetPrivateProfileString("Dialog Start Install", "Show Dialog", "", szShowDialog, sizeof(szShowDialog), szFileIniConfig);
GetPrivateProfileString("Dialog Start Install", "Title", "", diStartInstall.szTitle, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Start Install", "Sub Title", "", diStartInstall.szSubTitle, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Start Install", "Message Install", "", diStartInstall.szMessageInstall, MAX_BUF, szFileIniConfig);
GetPrivateProfileString("Dialog Start Install", "Message Download", "", diStartInstall.szMessageDownload, MAX_BUF, szFileIniConfig);
if(lstrcmpi(szShowDialog, "TRUE") == 0)
@ -7467,16 +7497,6 @@ HRESULT ParseConfigIni(LPSTR lpszCmdLine)
dwSetupType = ST_RADIO1;
dwTempSetupType = dwSetupType;
}
else if((lstrcmpi(szBuf, "Setup Type 2") == 0) && diSetupType.stSetupType2.bVisible)
{
dwSetupType = ST_RADIO2;
dwTempSetupType = dwSetupType;
}
else if((lstrcmpi(szBuf, "Setup Type 3") == 0) && diSetupType.stSetupType3.bVisible)
{
dwSetupType = ST_RADIO3;
dwTempSetupType = dwSetupType;
}
else
{
if(diSetupType.stSetupType0.bVisible)
@ -7489,16 +7509,6 @@ HRESULT ParseConfigIni(LPSTR lpszCmdLine)
dwSetupType = ST_RADIO1;
dwTempSetupType = dwSetupType;
}
else if(diSetupType.stSetupType2.bVisible)
{
dwSetupType = ST_RADIO2;
dwTempSetupType = dwSetupType;
}
else if(diSetupType.stSetupType3.bVisible)
{
dwSetupType = ST_RADIO3;
dwTempSetupType = dwSetupType;
}
}
SiCNodeSetItemsSelected(dwSetupType);
@ -7636,6 +7646,8 @@ HRESULT ParseInstallIni()
GetPrivateProfileString("General", "NEXT_", "", sgInstallGui.szNext_, sizeof(sgInstallGui.szNext_), szFileIniInstall);
GetPrivateProfileString("General", "BACK_", "", sgInstallGui.szBack_, sizeof(sgInstallGui.szBack_), szFileIniInstall);
GetPrivateProfileString("General", "IGNORE_", "", sgInstallGui.szIgnore_, sizeof(sgInstallGui.szIgnore_), szFileIniInstall);
GetPrivateProfileString("General", "PROXY_MESSAGE", "", sgInstallGui.szProxyMessage, sizeof(sgInstallGui.szProxyMessage), szFileIniInstall);
GetPrivateProfileString("General", "PROXY_BUTTON", "", sgInstallGui.szProxyButton, sizeof(sgInstallGui.szProxyButton), szFileIniInstall);
GetPrivateProfileString("General", "PROXYSETTINGS_", "", sgInstallGui.szProxySettings_, sizeof(sgInstallGui.szProxySettings_), szFileIniInstall);
GetPrivateProfileString("General", "PROXYSETTINGS", "", sgInstallGui.szProxySettings, sizeof(sgInstallGui.szProxySettings), szFileIniInstall);
GetPrivateProfileString("General", "SERVER", "", sgInstallGui.szServer, sizeof(sgInstallGui.szServer), szFileIniInstall);
@ -7889,11 +7901,7 @@ BOOL LocatePath(LPSTR szSection, LPSTR szPath, DWORD dwPathSize)
void SetCustomType()
{
if(diSetupType.stSetupType3.bVisible == TRUE)
sgProduct.dwCustomType = ST_RADIO3;
else if(diSetupType.stSetupType2.bVisible == TRUE)
sgProduct.dwCustomType = ST_RADIO2;
else if(diSetupType.stSetupType1.bVisible == TRUE)
if(diSetupType.stSetupType1.bVisible == TRUE)
sgProduct.dwCustomType = ST_RADIO1;
else if(diSetupType.stSetupType0.bVisible == TRUE)
sgProduct.dwCustomType = ST_RADIO0;
@ -8942,6 +8950,7 @@ void DeInitialize()
DeInitDlgProgramFolder(&diProgramFolder);
DeInitDlgWindowsIntegration(&diWindowsIntegration);
DeInitDlgSelectComponents(&diSelectAdditionalComponents);
DeInitDlgSelectInstallPath(&diSelectInstallPath);
DeInitDlgSelectComponents(&diSelectComponents);
DeInitDlgSetupType(&diSetupType);
DeInitDlgWelcome(&diWelcome);
@ -9061,9 +9070,6 @@ void SaveInstallerFiles()
/* copy the license file */
if(*diLicense.szLicenseFilename != '\0')
FileCopy(diLicense.szLicenseFilename, destInstallDir, FALSE, FALSE);
/* copy the readme file */
if(*diSetupType.szReadmeFilename != '\0')
FileCopy(diLicense.szLicenseFilename, destInstallDir, FALSE, FALSE);
/* The dir for xpi files is just "." as opposed to ".\xpi"
* because the setup.exe (not the self-extracting .exe) will look for the

Просмотреть файл

@ -51,6 +51,7 @@ HRESULT InitDlgLicense(diL *diDialog);
HRESULT InitDlgQuickLaunch(diQL *diDialog);
HRESULT InitDlgSetupType(diST *diDialog);
HRESULT InitDlgSelectComponents(diSC *diDialog, DWORD dwSM);
HRESULT InitDlgSelectInstallPath(diSIP *diDialog);
HRESULT InitDlgWindowsIntegration(diWI *diDialog);
HRESULT InitDlgProgramFolder(diPF *diDialog);
HRESULT InitDlgStartInstall(diSI *diDialog);
@ -92,6 +93,7 @@ void DeInitDlgLicense(diL *diDialog);
void DeInitDlgQuickLaunch(diQL *diDialog);
void DeInitDlgSetupType(diST *diDialog);
void DeInitDlgSelectComponents(diSC *diDialog);
void DeInitDlgSelectInstallPath(diSIP *diDialog);
void DeInitDlgWindowsIntegration(diWI *diDialog);
void DeInitDlgProgramFolder(diPF *diDialog);
void DeInitDlgStartInstall(diSI *diDialog);

Просмотреть файл

@ -142,16 +142,6 @@ void LogISSetupType(void)
switch(dwSetupType)
{
case ST_RADIO3:
wsprintf(szBuf, "\n Setup Type: %s\n",
diSetupType.stSetupType3.szDescriptionShort);
break;
case ST_RADIO2:
wsprintf(szBuf, "\n Setup Type: %s\n",
diSetupType.stSetupType2.szDescriptionShort);
break;
case ST_RADIO1:
wsprintf(szBuf, "\n Setup Type: %s\n",
diSetupType.stSetupType1.szDescriptionShort);

Просмотреть файл

@ -88,6 +88,7 @@ diL diLicense;
diQL diQuickLaunch;
diST diSetupType;
diSC diSelectComponents;
diSIP diSelectInstallPath;
diSC diSelectAdditionalComponents;
diWI diWindowsIntegration;
diPF diProgramFolder;
@ -190,10 +191,11 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmd
}
else
{
DlgSequence(NEXT_DLG);
InitSequence(hInstance);
}
}
#if 0
while(GetMessage(&msg, NULL, 0, 0))
{
if((!IsDialogMessage(hDlgCurrent, &msg)) && (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)))
@ -211,5 +213,10 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmd
DeInitSetupGeneral();
return(msg.wParam);
} /* End of WinMain */
#endif
return 0;
}

Просмотреть файл

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="X86"
name="Microsoft.Winweb.MantaRay"
type="win32"
/>
<description>.NET control deployment tool</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>

Просмотреть файл

@ -323,15 +323,19 @@ typedef struct dlgWelcome
LPSTR szMessage0;
LPSTR szMessage1;
LPSTR szMessage2;
LPSTR szMessage3;
} diW;
typedef struct dlgLicense
{
BOOL bShowDialog;
LPSTR szTitle;
LPSTR szSubTitle;
LPSTR szLicenseFilename;
LPSTR szMessage0;
LPSTR szMessage1;
LPSTR szMessage2;
LPSTR szMessage3;
} diL;
typedef struct dlgQuickLaunch
@ -359,13 +363,10 @@ typedef struct dlgSetupType
{
BOOL bShowDialog;
LPSTR szTitle;
LPSTR szSubTitle;
LPSTR szMessage0;
LPSTR szReadmeFilename;
LPSTR szReadmeApp;
st stSetupType0;
st stSetupType1;
st stSetupType2;
st stSetupType3;
} diST;
typedef struct dlgSelectComponents
@ -373,9 +374,18 @@ typedef struct dlgSelectComponents
BOOL bShowDialog;
DWORD bShowDialogSM;
LPSTR szTitle;
LPSTR szSubTitle;
LPSTR szMessage0;
} diSC;
typedef struct dlgSelectInstallPath
{
BOOL bShowDialog;
LPSTR szTitle;
LPSTR szSubTitle;
LPSTR szMessage0;
} diSIP;
typedef struct wiCBstruct
{
BOOL bEnabled;
@ -432,8 +442,10 @@ typedef struct dlgStartInstall
{
BOOL bShowDialog;
LPSTR szTitle;
LPSTR szSubTitle;
LPSTR szMessageInstall;
LPSTR szMessageDownload;
LPSTR szMessage0;
} diSI;
typedef struct dlgDownload
@ -568,6 +580,8 @@ typedef struct dlgInstall
char szNext_[MAX_BUF];
char szBack_[MAX_BUF];
char szIgnore_[MAX_BUF];
char szProxyMessage[MAX_BUF];
char szProxyButton[MAX_BUF];
char szProxySettings_[MAX_BUF];
char szProxySettings[MAX_BUF];
char szServer[MAX_BUF];

Двоичные данные
toolkit/mozapps/installer/windows/wizard/setuprsc/Header.bmp Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 59 KiB

Двоичные данные
toolkit/mozapps/installer/windows/wizard/setuprsc/Watermrk.bmp Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 293 KiB

Просмотреть файл

@ -18,6 +18,9 @@
#define DLG_MESSAGE 110
#define IDB_BITMAP_BANNER 114
#define IDB_QUICK_LAUNCH 115
#define IDB_HEADER 116
#define IDB_WATERMARK 117
#define DLG_SELECT_INSTALL_PATH 118
#define DLG_BROWSE_DIR 503
#define IDC_STATUS 1001
#define IDC_STATUS1 1001
@ -77,6 +80,7 @@
#define IDC_BUTTON1 1055
#define IDC_README 1055
#define IDC_BUTTON_SITE_SELECTOR 1055
#define IDC_CONNECTION_SETTINGS 1056
#define IDC_DOWNLOAD_SIZE 1058
#define IDC_SITE_SELECTOR 1059
#define IDC_LIST_SITE_SELECTOR 1059
@ -99,6 +103,7 @@
#define IDC_DESTINATION 1074
#define IDC_CHECK_TURBO_MODE 1075
#define IDC_CHECK_RECAPTURE_HOMEPAGE 1076
#define IDC_STATIC_MSG1 1079
#define DLG_WELCOME 2001
#define DLG_LICENSE 2002
#define DLG_SETUP_TYPE 2003

Просмотреть файл

@ -52,82 +52,44 @@ END
// Dialog
//
DLG_WELCOME DIALOG DISCARDABLE 51, 56, 315, 205
DLG_WELCOME DIALOG DISCARDABLE 51, 56, 317, 193
STYLE DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION |
WS_SYSMENU
CLASS "MozillaSetupDlg"
FONT 8, "MS Sans Serif"
BEGIN
DEFPUSHBUTTON "",IDWIZNEXT,188,186,53,14
PUSHBUTTON "",IDCANCEL,252,186,53,14
LTEXT "",IDC_STATIC0,101,11,202,37,NOT WS_GROUP
LTEXT "",IDC_STATIC1,102,53,201,37,NOT WS_GROUP
LTEXT "",IDC_STATIC2,102,96,201,37,NOT WS_GROUP
CONTROL 108,IDC_STATIC,"Static",SS_BITMAP,11,11,83,162,
WS_EX_CLIENTEDGE
CONTROL "",IDC_STATIC,"Static",SS_ETCHEDHORZ,11,179,295,1,
WS_EX_STATICEDGE
LTEXT "",IDC_STATIC0,115,11,195,37,NOT WS_GROUP
LTEXT "",IDC_STATIC1,115,53,195,37,NOT WS_GROUP
LTEXT "",IDC_STATIC2,115,96,195,37,NOT WS_GROUP
LTEXT "",IDC_STATIC3,115,169,195,15
END
DLG_SETUP_TYPE DIALOG DISCARDABLE 51, 56, 315, 205
DLG_SETUP_TYPE DIALOG DISCARDABLE 51, 56, 315, 143
STYLE DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION |
WS_SYSMENU
CLASS "MozillaSetupDlg"
FONT 8, "MS Sans Serif"
BEGIN
CONTROL "",IDC_RADIO_ST0,"Button",BS_AUTORADIOBUTTON |
WS_TABSTOP,102,29,65,12
CONTROL "",IDC_RADIO_ST1,"Button",BS_AUTORADIOBUTTON,102,57,65,
12
CONTROL "",IDC_RADIO_ST2,"Button",BS_AUTORADIOBUTTON,102,84,64,
12
CONTROL "",IDC_RADIO_ST3,"Button",BS_AUTORADIOBUTTON,102,112,64,
12
LTEXT "",IDC_STATIC_ST0_DESCRIPTION,175,31,126,24
LTEXT "",IDC_STATIC_ST1_DESCRIPTION,175,59,126,24
LTEXT "",IDC_STATIC_ST2_DESCRIPTION,175,86,126,24
LTEXT "",IDC_STATIC_ST3_DESCRIPTION,175,114,126,25
GROUPBOX "",IDC_DESTINATION,101,147,204,27
CONTROL "",IDC_EDIT_DESTINATION,"Static",SS_LEFTNOWORDWRAP |
WS_GROUP,107,160,143,9
PUSHBUTTON "",IDC_BUTTON_BROWSE,255,156,46,14
PUSHBUTTON "",IDC_README,11,186,83,14
PUSHBUTTON "",IDWIZBACK,134,186,53,14
DEFPUSHBUTTON "",IDWIZNEXT,188,186,53,14
PUSHBUTTON "",IDCANCEL,252,186,53,14
LTEXT "",IDC_STATIC_MSG0,101,11,204,17,NOT WS_GROUP
CONTROL 108,IDC_STATIC,"Static",SS_BITMAP,11,11,83,162,
WS_EX_CLIENTEDGE
CONTROL "",IDC_STATIC,"Static",SS_ETCHEDHORZ,11,179,295,1,
WS_EX_STATICEDGE
WS_TABSTOP,21,29,65,12
CONTROL "",IDC_RADIO_ST1,"Button",BS_AUTORADIOBUTTON,21,57,65,12
LTEXT "",IDC_STATIC_ST0_DESCRIPTION,32,44,263,12
LTEXT "",IDC_STATIC_ST1_DESCRIPTION,32,72,263,24
LTEXT "",IDC_STATIC_MSG0,11,8,294,17,NOT WS_GROUP
END
DLG_SELECT_COMPONENTS DIALOG DISCARDABLE 51, 56, 315, 205
DLG_SELECT_COMPONENTS DIALOG DISCARDABLE 51, 56, 315, 143
STYLE DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION |
WS_SYSMENU
CLASS "MozillaSetupDlg"
FONT 8, "MS Sans Serif"
BEGIN
LTEXT "",IDC_STATIC1,101,32,103,8
LISTBOX IDC_LIST_COMPONENTS,101,42,204,67,LBS_OWNERDRAWFIXED |
LISTBOX IDC_LIST_COMPONENTS,11,28,295,42,LBS_OWNERDRAWFIXED |
LBS_HASSTRINGS | LBS_USETABSTOPS | LBS_NOINTEGRALHEIGHT |
WS_VSCROLL | WS_HSCROLL | WS_GROUP | WS_TABSTOP
PUSHBUTTON "",IDWIZBACK,134,186,53,14
DEFPUSHBUTTON "",IDWIZNEXT,188,186,53,14
PUSHBUTTON "",IDCANCEL,252,186,53,14
LTEXT "",IDC_MESSAGE0,101,10,204,19,NOT WS_GROUP
GROUPBOX "",IDC_STATIC2,101,115,204,22
LTEXT "",IDC_STATIC_DESCRIPTION,106,124,195,8,SS_NOPREFIX
GROUPBOX "",IDC_STATIC,101,140,204,33
LTEXT "",IDC_DOWNLOAD_SIZE,105,160,92,8,NOT WS_GROUP
LTEXT "",IDC_SPACE_AVAILABLE,206,160,94,8,NOT WS_GROUP
CONTROL 108,IDC_STATIC,"Static",SS_BITMAP,11,11,83,162,
WS_EX_CLIENTEDGE
CONTROL "",IDC_STATIC,"Static",SS_ETCHEDHORZ,11,179,295,1,
WS_EX_STATICEDGE
LTEXT "",IDC_STATIC,201,32,103,8,0,WS_EX_RIGHT
LTEXT "",IDC_STATIC3,105,148,92,9
LTEXT "",IDC_STATIC4,206,148,94,9
LTEXT "",IDC_MESSAGE0,11,1,295,19,NOT WS_GROUP
GROUPBOX "",IDC_STATIC2,11,75,295,37
LTEXT "",IDC_STATIC_DESCRIPTION,18,87,282,16,SS_NOPREFIX
END
DLG_WINDOWS_INTEGRATION DIALOG DISCARDABLE 51, 56, 315, 205
@ -176,21 +138,16 @@ BEGIN
WS_EX_STATICEDGE
END
DLG_LICENSE DIALOG DISCARDABLE 51, 56, 315, 205
DLG_LICENSE DIALOG DISCARDABLE 51, 56, 315, 143
STYLE DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION |
WS_SYSMENU
CLASS "MozillaSetupDlg"
FONT 8, "MS Sans Serif"
BEGIN
DEFPUSHBUTTON "",IDWIZNEXT,188,186,53,14
PUSHBUTTON "",IDWIZBACK,134,186,53,14
PUSHBUTTON "",IDCANCEL,252,186,53,14
EDITTEXT IDC_EDIT_LICENSE,11,29,295,119,ES_MULTILINE |
EDITTEXT IDC_EDIT_LICENSE,11,29,295,83,ES_MULTILINE |
ES_OEMCONVERT | ES_READONLY | WS_VSCROLL | WS_GROUP
LTEXT "",IDC_MESSAGE0,11,8,295,17,NOT WS_GROUP
LTEXT "",IDC_MESSAGE1,11,152,295,19,NOT WS_GROUP
CONTROL "",-1,"Static",SS_ETCHEDHORZ,11,179,295,1,
WS_EX_STATICEDGE
LTEXT "",IDC_MESSAGE1,11,119,295,15,NOT WS_GROUP
END
DLG_QUICK_LAUNCH DIALOG DISCARDABLE 51, 56, 315, 205
@ -390,22 +347,28 @@ BEGIN
SS_NOPREFIX | WS_GROUP,49,91,253,8
END
DLG_START_INSTALL DIALOG DISCARDABLE 51, 56, 315, 205
DLG_START_INSTALL DIALOG DISCARDABLE 51, 56, 315, 143
STYLE DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION |
WS_SYSMENU
CLASS "MozillaSetupDlg"
FONT 8, "MS Sans Serif"
BEGIN
DEFPUSHBUTTON "",IDWIZNEXT,188,186,53,14
PUSHBUTTON "",IDWIZBACK,134,186,53,14
PUSHBUTTON "",IDCANCEL,252,186,53,14
EDITTEXT IDC_CURRENT_SETTINGS,101,67,204,102,ES_MULTILINE |
EDITTEXT IDC_CURRENT_SETTINGS,11,16,295,79,ES_MULTILINE |
ES_OEMCONVERT | ES_READONLY | WS_VSCROLL | WS_HSCROLL
LTEXT "",IDC_MESSAGE0,101,11,204,52,NOT WS_GROUP
CONTROL 108,IDC_STATIC,"Static",SS_BITMAP,11,11,83,162,
WS_EX_CLIENTEDGE
CONTROL "",IDC_STATIC,"Static",SS_ETCHEDHORZ,11,179,295,1,
WS_EX_STATICEDGE
LTEXT "",IDC_MESSAGE0,11,1,295,8,NOT WS_GROUP
LTEXT "",IDC_MESSAGE1,11,103,295,8
PUSHBUTTON "",IDC_CONNECTION_SETTINGS,250,118,56,14
LTEXT "",IDC_MESSAGE2,11,118,232,19
END
DLG_SELECT_INSTALL_PATH DIALOG DISCARDABLE 0, 0, 315, 143
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
FONT 8, "MS Sans Serif"
BEGIN
CONTROL "",IDC_EDIT_DESTINATION,"Static",SS_LEFTNOWORDWRAP |
WS_GROUP,19,23,219,9
PUSHBUTTON "",IDC_BUTTON_BROWSE,260,22,46,14
LTEXT "",IDC_STATIC_MSG0,11,1,295,9
END
@ -429,6 +392,8 @@ IDB_BITMAP_WELCOME BITMAP DISCARDABLE "bitmap1.bmp"
IDB_BOX_CHECKED_DISABLED BITMAP FIXED IMPURE "box_ch_d.bmp"
IDB_BITMAP_BANNER BITMAP DISCARDABLE "downloadLogo.bmp"
IDB_QUICK_LAUNCH BITMAP DISCARDABLE "turbo-systray.bmp"
IDB_HEADER BITMAP DISCARDABLE "Header.bmp"
IDB_WATERMARK BITMAP DISCARDABLE "Watermrk.bmp"
/////////////////////////////////////////////////////////////////////////////
//
@ -438,6 +403,11 @@ IDB_QUICK_LAUNCH BITMAP DISCARDABLE "turbo-systray.bmp"
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
DLG_WELCOME, DIALOG
BEGIN
RIGHTMARGIN, 315
END
DLG_EXTRACTING, DIALOG
BEGIN
BOTTOMMARGIN, 153
@ -447,6 +417,14 @@ BEGIN
BEGIN
BOTTOMMARGIN, 165
END
DLG_SELECT_INSTALL_PATH, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 308
TOPMARGIN, 7
BOTTOMMARGIN, 136
END
END
#endif // APSTUDIO_INVOKED