void CDialogInstall::TabContents::Create(HWND owner) { Tab::CreateTabWindow(10, 50, 380, 135, owner); static const ControlTemplate::Control s_Controls[] = { CT_LABEL(-1, 6, 0, 3, 107, 9, WS_VISIBLE, 0), CT_COMBOBOX(Id_LanguageComboBox, 0, 107, 0, 222, 14, WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL, 0), CT_LABEL(-1, 17, 0, 21, 107, 9, WS_VISIBLE, 0), CT_COMBOBOX(Id_InstallationTypeComboBox, 0, 107, 18, 222, 14, WS_VISIBLE | WS_TABSTOP | CBS_DROPDOWNLIST | WS_VSCROLL, 0), CT_LABEL(-1, 7, 0, 43, 107, 9, WS_VISIBLE, 0), CT_EDIT(Id_DestinationEdit, 14, 107, 40, 192, 14, WS_VISIBLE | WS_TABSTOP | ES_AUTOHSCROLL | ES_READONLY, WS_EX_CLIENTEDGE), CT_BUTTON(Id_DestinationBrowseButton, 9, 303, 40, 25, 14, WS_VISIBLE | WS_TABSTOP, 0), CT_CHECKBOX(Id_LaunchOnLoginCheckBox, 10, 0, 69, 250, 9, WS_VISIBLE | WS_TABSTOP, 0), }; CreateControls(s_Controls, _countof(s_Controls), c_Dialog->m_Font, GetString); HWND item = GetControl(Id_LanguageComboBox); ComboBox_AddString(item, L"English - English (United States)"); ComboBox_SetCurSel(item, 0); item = GetControl(Id_InstallationTypeComboBox); ComboBox_AddString(item, L"Standard 64-bit installation (reccomended)"); ComboBox_SetItemData(item, 0, MAKELPARAM(InstallType::Standard, InstallArch::X64)); ComboBox_AddString(item, L"Standard 32-bit installation"); ComboBox_SetItemData(item, 1, MAKELPARAM(InstallType::Standard, InstallArch::X32)); ComboBox_AddString(item, L"Portable 64-bit installation"); ComboBox_SetItemData(item, 2, MAKELPARAM(InstallType::Portable, InstallArch::X64)); ComboBox_AddString(item, L"Portable 32-bit installation"); ComboBox_SetItemData(item, 3, MAKELPARAM(InstallType::Portable, InstallArch::X32)); ComboBox_SetCurSel(item, 0); }
INT_PTR CDialogInstall::OnInitDialog(WPARAM wParam, LPARAM lParam) { static const ControlTemplate::Control s_Controls[] = { CT_ICON(Id_HeaderIcon, 0, 10, 10, 24, 24, WS_VISIBLE, 0), CT_LABEL(Id_HeaderTitleLabel, 2, 40, 6, 250, 14, WS_VISIBLE | SS_ENDELLIPSIS | SS_NOPREFIX, 0), CT_LABEL(-1, 3, 40, 20, 250, 9, WS_VISIBLE | SS_ENDELLIPSIS | SS_NOPREFIX, 0), CT_BUTTON(Id_InstallButton, 1, 199, 191, 70, 14, WS_VISIBLE | WS_TABSTOP | BS_DEFPUSHBUTTON, 0), CT_BUTTON(Id_CancelButton, 13, 274, 191, 70, 14, WS_VISIBLE | WS_TABSTOP | BS_DEFPUSHBUTTON, 0), CT_TAB(Id_Tab, 0, -2, 36, 400, 150, WS_VISIBLE | WS_TABSTOP | TCS_FIXEDWIDTH, 0) // Last for correct tab order. }; CreateControls(s_Controls, _countof(s_Controls), m_Font, GetString); m_TabContents.Create(m_Window); m_TabContents.Activate(); SendMessage(m_Window, WM_SETICON, ICON_SMALL, (LPARAM)GetIcon(IDI_APPICON, false)); HWND item = GetControl(Id_HeaderIcon); Static_SetIcon(item, GetIcon(IDI_APPICON, true)); item = GetControl(Id_HeaderTitleLabel); SendMessage(item, WM_SETFONT, (WPARAM)m_FontBold, 0); item = GetControl(Id_InstallButton); SendMessage(m_Window, WM_NEXTDLGCTL, (WPARAM)item, TRUE); if (Platform::IsAtLeastWinVista() && !Util::IsProcessUserAdmin()) { Button_SetElevationRequiredState(item, TRUE); } return TRUE; }
void DialogAbout::TabVersion::Create(HWND owner) { Tab::CreateTabWindow(15, 30, 370, 148, owner); // FIXME: Temporary hack. short buttonWidth = (short)_wtoi(GetString(ID_STR_NUM_BUTTONWIDTH)); const ControlTemplate::Control s_Controls[] = { CT_ICON(Id_AppIcon, 0, 0, 8, 24, 24, WS_VISIBLE, 0), CT_LABEL(Id_VersionLabel, 0, 28, 0, 300, 9, WS_VISIBLE, 0), CT_LINKLABEL(Id_HomeLink, ID_STR_GETLATESTVERSION, 28, 13, 300, 9, WS_VISIBLE, 0), CT_LINKLABEL(Id_LicenseLink, ID_STR_COPYRIGHTNOTICE, 28, 26, 300, 9, WS_VISIBLE, 0), CT_LABEL(Id_WinVerLabel, 0, 0, 43, 360, 9, WS_VISIBLE | SS_ENDELLIPSIS | SS_NOPREFIX, 0), CT_LABEL(Id_PathLabel, 0, 0, 56, 360, 9, WS_VISIBLE | SS_ENDELLIPSIS | SS_NOPREFIX, 0), CT_LABEL(Id_IniFileLabel, 0, 0, 69, 360, 9, WS_VISIBLE | SS_ENDELLIPSIS | SS_NOPREFIX, 0), CT_LABEL(Id_SkinPathLabel, 0, 0, 82, 360, 9, WS_VISIBLE | SS_ENDELLIPSIS | SS_NOPREFIX, 0), CT_BUTTON(Id_CopyButton, ID_STR_COPYTOCLIPBOARD, 0, 98, buttonWidth + 25, 14, WS_VISIBLE | WS_TABSTOP, 0) }; CreateControls(s_Controls, _countof(s_Controls), c_Dialog->m_Font, GetString); }