2 * @file LanguageSelect.h
4 * @brief Declaration file for CLanguageSelect dialog.
6 // ID line follows -- this is updated by SVN
9 #if !defined(AFX_LANGUAGESELECT_H__4395A84F_E8DF_11D1_BBCB_00A024706EDC__INCLUDED_)
10 #define AFX_LANGUAGESELECT_H__4395A84F_E8DF_11D1_BBCB_00A024706EDC__INCLUDED_
12 #include "CMoveConstraint.h"
17 /////////////////////////////////////////////////////////////////////////////
18 // CLanguageSelect dialog
21 * @brief Dialog for selecting GUI language.
23 * Language select dialog shows list of installed GUI languages and
24 * allows user to select one for use.
26 class CLanguageSelect : public CDialog
30 void SetModuleHandle(HMODULE hModule) { m_hModule = hModule; }
31 CLanguageSelect(UINT idMainMenu, UINT idDocMenu, BOOL bReloadMenu =TRUE, BOOL bUpdateTitle =TRUE, CWnd* pParent = NULL); // standard constructor
32 BOOL AreLangsInstalled() const;
33 WORD GetLangId() { return m_wCurLanguage; };
34 void InitializeLanguage();
35 void UpdateDocTitle();
38 bool TranslateString(size_t line, std::string &) const;
39 bool TranslateString(size_t line, std::wstring &) const;
40 void SetIndicators(CStatusBar &, const UINT *, int) const;
41 void TranslateMenu(HMENU) const;
42 void TranslateDialog(HWND) const;
43 String LoadString(UINT) const;
44 std::wstring LoadDialogCaption(LPCTSTR lpDialogTemplateID) const;
46 // Implementation data
48 prdlg::CMoveConstraint m_constraint;
54 HINSTANCE m_hCurrentDll;
55 LANGID m_wCurLanguage;
56 std::vector<std::string> m_strarray;
58 // Implementation methods
60 String GetFileName(LANGID);
61 BOOL LoadLanguageFile(LANGID);
62 BOOL SetLanguage(LANGID);
64 void LoadAndDisplayLanguages();
67 //{{AFX_DATA(CLanguageSelect)
68 enum { IDD = IDD_LANGUAGE_SELECT };
69 CListBox m_ctlLangList;
74 // ClassWizard generated virtual function overrides
75 //{{AFX_VIRTUAL(CLanguageSelect)
78 virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
82 // Generated message map functions
83 //{{AFX_MSG(CLanguageSelect)
85 virtual BOOL OnInitDialog();
93 //{{AFX_INSERT_LOCATION}}
94 // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
96 #endif // !defined(AFX_LANGUAGESELECT_H__4395A84F_E8DF_11D1_BBCB_00A024706EDC__INCLUDED_)