https://git.reactos.org/?p=reactos.git;a=commitdiff;h=5f4bb73edaaa738759cc8…
commit 5f4bb73edaaa738759cc86bf4cffde85c0765513
Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com>
AuthorDate: Thu Sep 29 07:31:43 2022 +0900
Commit: GitHub <noreply(a)github.com>
CommitDate: Thu Sep 29 07:31:43 2022 +0900
[CPL][INPUT] Make the ListView a TreeView (#4726)
- Make the list a TreeView.
- Modify IDD_PROPPAGESETTINGS resource dialog for UI compatibility.
---
dll/cpl/input/input.rc | 2 +
dll/cpl/input/input_list.c | 116 ++++++-
dll/cpl/input/input_list.h | 11 +-
dll/cpl/input/lang/bg-BG.rc | 20 +-
dll/cpl/input/lang/cs-CZ.rc | 20 +-
dll/cpl/input/lang/de-DE.rc | 20 +-
dll/cpl/input/lang/el-GR.rc | 20 +-
dll/cpl/input/lang/en-US.rc | 20 +-
dll/cpl/input/lang/es-ES.rc | 20 +-
dll/cpl/input/lang/fr-FR.rc | 20 +-
dll/cpl/input/lang/he-IL.rc | 20 +-
dll/cpl/input/lang/id-ID.rc | 20 +-
dll/cpl/input/lang/it-IT.rc | 20 +-
dll/cpl/input/lang/ja-JP.rc | 20 +-
dll/cpl/input/lang/no-NO.rc | 20 +-
dll/cpl/input/lang/pl-PL.rc | 20 +-
dll/cpl/input/lang/pt-BR.rc | 20 +-
dll/cpl/input/lang/pt-PT.rc | 20 +-
dll/cpl/input/lang/ro-RO.rc | 20 +-
dll/cpl/input/lang/ru-RU.rc | 20 +-
dll/cpl/input/lang/sk-SK.rc | 20 +-
dll/cpl/input/lang/sq-AL.rc | 20 +-
dll/cpl/input/lang/tr-TR.rc | 20 +-
dll/cpl/input/lang/uk-UA.rc | 20 +-
dll/cpl/input/lang/zh-CN.rc | 20 +-
dll/cpl/input/lang/zh-HK.rc | 20 +-
dll/cpl/input/lang/zh-TW.rc | 20 +-
dll/cpl/input/resource.h | 5 +-
dll/cpl/input/resources/dot.ico | Bin 0 -> 894 bytes
dll/cpl/input/resources/keyboard.ico | Bin 0 -> 25214 bytes
dll/cpl/input/settings_page.c | 588 ++++++++++++++++++++++++-----------
31 files changed, 815 insertions(+), 387 deletions(-)
diff --git a/dll/cpl/input/input.rc b/dll/cpl/input/input.rc
index 706a14cdb62..52b23b3cc45 100644
--- a/dll/cpl/input/input.rc
+++ b/dll/cpl/input/input.rc
@@ -13,6 +13,8 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#include <reactos/version.rc>
IDI_CPLSYSTEM ICON "resources/keyboard-shortcuts.ico"
+IDI_KEYBOARD ICON "resources/keyboard.ico"
+IDI_DOT ICON "resources/dot.ico"
#include <reactos/manifest_hosted.rc>
diff --git a/dll/cpl/input/input_list.c b/dll/cpl/input/input_list.c
index 97fe16a13b6..ec415b372fe 100644
--- a/dll/cpl/input/input_list.c
+++ b/dll/cpl/input/input_list.c
@@ -7,6 +7,7 @@
*/
#include "input_list.h"
+#define NOTHING
typedef struct
{
@@ -154,7 +155,7 @@ InputList_AppendNode(VOID)
/* Find last node */
for (pCurrent = _InputList; pCurrent->pNext; pCurrent = pCurrent->pNext)
{
- ;
+ NOTHING;
}
/* Add to the end */
@@ -568,13 +569,14 @@ InputList_FindNextDefault(INPUT_LIST_NODE *pNode)
* It marks the input method for deletion, but does not delete it directly.
* To apply the changes using InputList_Process()
*/
-VOID
+BOOL
InputList_Remove(INPUT_LIST_NODE *pNode)
{
+ BOOL ret = FALSE;
BOOL bRemoveNode = FALSE;
if (pNode == NULL)
- return;
+ return FALSE;
if (pNode->wFlags & INPUT_LIST_NODE_FLAG_ADDED)
{
@@ -596,14 +598,39 @@ InputList_Remove(INPUT_LIST_NODE *pNode)
pCurrent->wFlags |= INPUT_LIST_NODE_FLAG_DEFAULT;
pNode->wFlags &= ~INPUT_LIST_NODE_FLAG_DEFAULT;
+ ret = TRUE; /* default input is changed */
}
if (bRemoveNode)
{
InputList_RemoveNode(pNode);
}
+
+ return ret;
}
+BOOL
+InputList_RemoveByLang(LANGID wLangId)
+{
+ BOOL ret = FALSE;
+ INPUT_LIST_NODE *pCurrent;
+
+Retry:
+ for (pCurrent = _InputList; pCurrent; pCurrent = pCurrent->pNext)
+ {
+ if (pCurrent->wFlags & INPUT_LIST_NODE_FLAG_DELETED)
+ continue;
+
+ if (LOWORD(pCurrent->pLocale->dwId) == wLangId)
+ {
+ if (InputList_Remove(pCurrent))
+ ret = TRUE; /* default input is changed */
+ goto Retry;
+ }
+ }
+
+ return ret;
+}
VOID
InputList_Create(VOID)
@@ -662,6 +689,89 @@ InputList_Create(VOID)
free(pLayoutList);
}
+static INT InputList_Compare(INPUT_LIST_NODE *pNode1, INPUT_LIST_NODE *pNode2)
+{
+ INT nCompare = _wcsicmp(pNode1->pszIndicator, pNode2->pszIndicator);
+ if (nCompare != 0)
+ return nCompare;
+
+ return _wcsicmp(pNode1->pLayout->pszName, pNode2->pLayout->pszName);
+}
+
+VOID InputList_Sort(VOID)
+{
+ INPUT_LIST_NODE *pList = _InputList;
+ INPUT_LIST_NODE *pNext, *pPrev;
+ INPUT_LIST_NODE *pMinimum, *pNode;
+
+ _InputList = NULL;
+
+ while (pList)
+ {
+ /* Find the minimum node */
+ pMinimum = NULL;
+ for (pNode = pList; pNode; pNode = pNext)
+ {
+ pNext = pNode->pNext;
+
+ if (pMinimum == NULL)
+ {
+ pMinimum = pNode;
+ }
+ else if (InputList_Compare(pNode, pMinimum) < 0)
+ {
+ pMinimum = pNode;
+ }
+ }
+
+ // Remove pMinimum from pList
+ pNext = pMinimum->pNext;
+ pPrev = pMinimum->pPrev;
+ if (pNext)
+ pNext->pPrev = pPrev;
+ if (pPrev)
+ pPrev->pNext = pNext;
+ else
+ pList = pNext;
+
+ // Append pMinimum to _InputList
+ if (!_InputList)
+ {
+ pMinimum->pPrev = pMinimum->pNext = NULL;
+ _InputList = pMinimum;
+ }
+ else
+ {
+ /* Find last node */
+ for (pNode = _InputList; pNode->pNext; pNode = pNode->pNext)
+ {
+ NOTHING;
+ }
+
+ /* Add to the end */
+ pNode->pNext = pMinimum;
+ pMinimum->pPrev = pNode;
+ pMinimum->pNext = NULL;
+ }
+ }
+}
+
+INT
+InputList_GetAliveCount(VOID)
+{
+ INPUT_LIST_NODE *pNode;
+ INT nCount = 0;
+
+ for (pNode = _InputList; pNode; pNode = pNode->pNext)
+ {
+ if (pNode->wFlags & INPUT_LIST_NODE_FLAG_DELETED)
+ continue;
+
+ ++nCount;
+ }
+
+ return nCount;
+}
INPUT_LIST_NODE*
InputList_GetFirst(VOID)
diff --git a/dll/cpl/input/input_list.h b/dll/cpl/input/input_list.h
index 5c947dbaae2..59785bf8166 100644
--- a/dll/cpl/input/input_list.h
+++ b/dll/cpl/input/input_list.h
@@ -57,9 +57,18 @@ InputList_Add(LOCALE_LIST_NODE *pLocale, LAYOUT_LIST_NODE *pLayout);
VOID
InputList_SetDefault(INPUT_LIST_NODE *pNode);
-VOID
+INT
+InputList_GetAliveCount(VOID);
+
+BOOL
InputList_Remove(INPUT_LIST_NODE *pNode);
+BOOL
+InputList_RemoveByLang(LANGID wLangId);
+
+VOID
+InputList_Sort(VOID);
+
VOID
InputList_Destroy(VOID);
diff --git a/dll/cpl/input/lang/bg-BG.rc b/dll/cpl/input/lang/bg-BG.rc
index ffc54fcc3ab..9833958bd6e 100644
--- a/dll/cpl/input/lang/bg-BG.rc
+++ b/dll/cpl/input/lang/bg-BG.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Настройки"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Посочете избраните от вас услуги за всеки посочен в списъка
език.\nПромяната на списъка става с „Премахване“ и „Добавяне“.", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "&Прилагане на подразбираните", IDC_SET_DEFAULT, 101, 159,
144, 14
- PUSHBUTTON "&Добавяне...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "Пре&махване", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Свойства...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Предпочитания", -1, 7, 185, 240, 36
- PUSHBUTTON "Настройка на &клавишите...", IDC_KEY_SET_BTN, 14, 198, 110,
14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Посочете избраните от вас услуги за всеки посочен в списъка език.
Промяната на списъка става с „Премахване“ и „Добавяне“.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Добавяне...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "Пре&махване", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Свойства...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Предпочитания", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "Настройка на &клавишите...", IDC_KEY_SET_BTN, 133, 205,
110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/cs-CZ.rc b/dll/cpl/input/lang/cs-CZ.rc
index df2c7d2756c..f1046fab271 100644
--- a/dll/cpl/input/lang/cs-CZ.rc
+++ b/dll/cpl/input/lang/cs-CZ.rc
@@ -10,14 +10,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Nastavení"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Zvolte služby pro každý vstupní jazyk v seznamu.\nSeznam lze měnit pomocí
tlačítek Přidat a Odebrat.", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "Nas&tavit výchozí", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "&Přidat...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Odebrat", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Vlastnosti...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Předvolby", -1, 7, 185, 240, 36
- PUSHBUTTON "&Nastavení kláves...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Zvolte služby pro každý vstupní jazyk v seznamu. Seznam lze měnit pomocí
tlačítek Přidat a Odebrat.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Přidat...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Odebrat", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Vlastnosti...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Předvolby", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Nastavení kláves...", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/de-DE.rc b/dll/cpl/input/lang/de-DE.rc
index 702e67219c9..b23641e5cee 100644
--- a/dll/cpl/input/lang/de-DE.rc
+++ b/dll/cpl/input/lang/de-DE.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Einstellungen"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Wählen Sie die Dienste aus, die Sie für die Eingabesprachen in der Liste
verwenden wollen.\nVerwenden Sie ""Hinzufügen"" und
""Entfernen"", um die Liste zu bearbeiten.", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "&Als Standard", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "&Hinzufügen...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "Ent&fernen", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Eigenschaften...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Einstellungen", -1, 7, 185, 240, 36
- PUSHBUTTON "&Tasteneinstellungen...", IDC_KEY_SET_BTN, 14, 198, 110,
14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Wählen Sie die Dienste aus, die Sie für die Eingabesprachen in der Liste
verwenden wollen. Verwenden Sie ""Hinzufügen"" und
""Entfernen"", um die Liste zu bearbeiten.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Hinzufügen...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "Ent&fernen", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Eigenschaften...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Einstellungen", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Tasteneinstellungen...", IDC_KEY_SET_BTN, 133, 205, 110,
14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/el-GR.rc b/dll/cpl/input/lang/el-GR.rc
index 87691f00b1c..464aaa58581 100644
--- a/dll/cpl/input/lang/el-GR.rc
+++ b/dll/cpl/input/lang/el-GR.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Ρυθμίσεις"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Επιλέξτε τις υπηρεσίες που θέλετε για κάθε γλώσσα εισαγωγής που
εμφανίζεται στη λίστα.\nΧρησιμοποιήστε τα κουμπιά Προσθήκη και Κατάργηση για την
τροποποίηση αυτής της λίστας.", -1, 9, 6, 238, 33
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 42, 237, 95
- PUSHBUTTON "&Set Default", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "Π&ροσθήκη...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Κατάργηση", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Ιδιότητες...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Προτιμήσεις", -1, 7, 185, 240, 36
- PUSHBUTTON "&Ρυθμίσεις πλήκτρων...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Επιλέξτε τις υπηρεσίες που θέλετε για κάθε γλώσσα εισαγωγής που
εμφανίζεται στη λίστα. Χρησιμοποιήστε τα κουμπιά Προσθήκη και Κατάργηση για την
τροποποίηση αυτής της λίστας.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "Π&ροσθήκη...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Κατάργηση", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Ιδιότητες...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Προτιμήσεις", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Ρυθμίσεις πλήκτρων...", IDC_KEY_SET_BTN, 133, 205, 110,
14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/en-US.rc b/dll/cpl/input/lang/en-US.rc
index 1abf3968a41..41e07463b91 100644
--- a/dll/cpl/input/lang/en-US.rc
+++ b/dll/cpl/input/lang/en-US.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Settings"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Select the services that you want for each input language shown in the
list.\nUse the Add and Remove buttons to modify this list.", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "&Set Default", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "A&dd...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Remove", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Properties...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Preferences", -1, 7, 185, 240, 36
- PUSHBUTTON "&Key Settings...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Select the services that you want for each input language shown in the
list. Use the Add and Remove buttons to modify this list.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "A&dd...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Remove", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Properties...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Preferences", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Key Settings...", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/es-ES.rc b/dll/cpl/input/lang/es-ES.rc
index 433bb279f5b..c4dd0b014bd 100644
--- a/dll/cpl/input/lang/es-ES.rc
+++ b/dll/cpl/input/lang/es-ES.rc
@@ -14,14 +14,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Configuración"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Seleccione los servicios que desea para cada idioma mostrado en la lista.
Use los botones de Agregar y Quitar para modificar esta lista.", -1, 9, 6, 238, 17
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 28, 237, 109
- PUSHBUTTON "Pr&edeterminado", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "Ag®ar...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Quitar", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Propiedades...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Pre&ferencias ", -1, 7, 185, 240, 36
- PUSHBUTTON "C&onfiguración de teclas...", IDC_KEY_SET_BTN, 14, 198,
110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Seleccione los servicios que desea para cada idioma mostrado en la lista.
Use los botones de Agregar y Quitar para modificar esta lista.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "Ag®ar...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Quitar", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Propiedades...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Pre&ferencias", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "C&onfiguración de teclas...", IDC_KEY_SET_BTN, 133, 205,
110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/fr-FR.rc b/dll/cpl/input/lang/fr-FR.rc
index e6d45431874..26fd2848772 100644
--- a/dll/cpl/input/lang/fr-FR.rc
+++ b/dll/cpl/input/lang/fr-FR.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Paramètres"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Sélectionnez les services que vous désirez pour chaque langue de saisie
affichée dans la liste.\nUtilisez les boutons Ajouter et Supprimer pour modifier la
liste.", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "Par &défaut", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "A&jouter...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "Supp&rimer", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Propriétés...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Pré&férences", -1, 7, 185, 240, 36
- PUSHBUTTON "Para&mètres des touches...", IDC_KEY_SET_BTN, 14, 198, 110,
14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Sélectionnez les services que vous désirez pour chaque langue de saisie
affichée dans la liste. Utilisez les boutons Ajouter et Supprimer pour modifier la
liste.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "A&jouter...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "Supp&rimer", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Propriétés...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Pré&férences", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "Para&mètres des touches...", IDC_KEY_SET_BTN, 133, 205,
110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/he-IL.rc b/dll/cpl/input/lang/he-IL.rc
index 45dc162a539..b88284c27ca 100644
--- a/dll/cpl/input/lang/he-IL.rc
+++ b/dll/cpl/input/lang/he-IL.rc
@@ -7,14 +7,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "הגדרות"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Select the services that you want for each input language shown in the
list.\nUse the Add and Remove buttons to modify this list.", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "קבע כברירת מחדל...", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "הוסף...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "הסר", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "מאפיניים...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "העדפות", -1, 7, 185, 240, 36
- PUSHBUTTON "הגדרות מקשים...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Select the services that you want for each input language shown in the
list. Use the Add and Remove buttons to modify this list.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "הוסף...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "הסר", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "מאפיניים...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "העדפות", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "הגדרות מקשים...", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/id-ID.rc b/dll/cpl/input/lang/id-ID.rc
index 6805553a9b8..0c65a242953 100644
--- a/dll/cpl/input/lang/id-ID.rc
+++ b/dll/cpl/input/lang/id-ID.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Setelan"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Pilih layanan yang anda inginkan untuk setiap bahasa masukan untuk
ditampilkan dalam daftar.\nGunakan tombol Tambah atau Hapus untuk mengubah daftar.",
-1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "&Setelan Asal", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "&Tambah...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Hapus", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Properti...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Preferensi", -1, 7, 185, 240, 36
- PUSHBUTTON "Setelan To&mbol...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Pilih layanan yang anda inginkan untuk setiap bahasa masukan untuk
ditampilkan dalam daftar. Gunakan tombol Tambah atau Hapus untuk mengubah daftar.",
-1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Tambah...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Hapus", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Properti...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Preferensi", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "Setelan To&mbol...", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/it-IT.rc b/dll/cpl/input/lang/it-IT.rc
index 06f46fafb64..872727901f6 100644
--- a/dll/cpl/input/lang/it-IT.rc
+++ b/dll/cpl/input/lang/it-IT.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Impostazioni"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Scegliere i servizi desiderati per ognuna delle lingue nella
lista.\nUsare Aggiungi e Rimuovi per modificare la lista.", -1, 9, 6, 238, 17
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 28, 237, 109
- PUSHBUTTON "&Predefinito", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "&Aggiungi...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Rimuovi", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Proprietà...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Preferenze", -1, 7, 185, 240, 36
- PUSHBUTTON "&Impostazioni tasti...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Scegliere i servizi desiderati per ognuna delle lingue nella lista. Usare
Aggiungi e Rimuovi per modificare la lista.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Aggiungi...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Rimuovi", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Proprietà...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Preferenze", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Impostazioni tasti...", IDC_KEY_SET_BTN, 133, 205, 110,
14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/ja-JP.rc b/dll/cpl/input/lang/ja-JP.rc
index be53b949ef0..7fe83d20e85 100644
--- a/dll/cpl/input/lang/ja-JP.rc
+++ b/dll/cpl/input/lang/ja-JP.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "設定"
FONT 9, "MS UI Gothic"
BEGIN
- LTEXT "リストで示されている各入力言語にご希望のサービスを選択して下さい。\nリストを変更するには、追加または削除ボタンをお使いください。",
-1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "既定にする(&S)", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "追加(&D)...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "削除(&R)", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "プロパティ(&P)...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "プレファレンス", -1, 7, 185, 240, 36
- PUSHBUTTON "キー設定(&K)...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "デフォルトの入力言語(&L)", -1, 5, 5, 246, 55
+ LTEXT "コンピュータ起動時に使う、インストール済みの入力言語の一つを選択して下さい。", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "インストール済みのサービス(&I)", -1, 5, 65, 246, 125
+ LTEXT "リストで示されている各入力言語にご希望のサービスを選択して下さい。リストを変更するには、追加または削除ボタンをお使いください。",
-1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "追加(&D)...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "削除(&R)", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "プロパティ(&P)...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "詳細設定", -1, 5, 195, 245, 30
+ PUSHBUTTON "言語バー(&B)...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "キー設定(&K)...", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/no-NO.rc b/dll/cpl/input/lang/no-NO.rc
index 60bdf8f482f..fa996580e08 100644
--- a/dll/cpl/input/lang/no-NO.rc
+++ b/dll/cpl/input/lang/no-NO.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Innstillinger"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Velg tjenesten som du vil ha for hver inndataspråk som er vist i
listen.\nBruk legg til og fjern knappen for å endre denne listen.", -1, 9, 6, 238,
25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "&Sett Standard", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "Le&gg til...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Fjern", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Egenskaper...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Innstillinger", -1, 7, 185, 240, 36
- PUSHBUTTON "&Tasteinnstillinger...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Velg tjenesten som du vil ha for hver inndataspråk som er vist i listen.
Bruk legg til og fjern knappen for å endre denne listen.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "Le&gg til...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Fjern", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Egenskaper...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Innstillinger", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Tasteinnstillinger...", IDC_KEY_SET_BTN, 133, 205, 110,
14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/pl-PL.rc b/dll/cpl/input/lang/pl-PL.rc
index 93672cc60b1..11603d4c4cb 100644
--- a/dll/cpl/input/lang/pl-PL.rc
+++ b/dll/cpl/input/lang/pl-PL.rc
@@ -13,14 +13,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Ustawienia"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Wybierz usługi dla kadego używanego języka z listy.\nListę można
modyfikować przyciskami Dodaj i Usuń.", -1, 9, 6, 238, 17
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 28, 237, 109
- PUSHBUTTON "&Ustaw domyślne", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "&Dodaj...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "U&suń", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Właściwości...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Preferencje", -1, 7, 185, 240, 36
- PUSHBUTTON "Us&tawienia klawiszy...", IDC_KEY_SET_BTN, 14, 198, 110,
14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Wybierz usługi dla kadego używanego języka z listy. Listę można
modyfikować przyciskami Dodaj i Usuń.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Dodaj...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "U&suń", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Właściwości...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Preferencje", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "Us&tawienia klawiszy...", IDC_KEY_SET_BTN, 133, 205, 110,
14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/pt-BR.rc b/dll/cpl/input/lang/pt-BR.rc
index 855f986998d..af1929f8f9f 100644
--- a/dll/cpl/input/lang/pt-BR.rc
+++ b/dll/cpl/input/lang/pt-BR.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Configurações"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Selecione os serviços desejados para cada idioma de entrada mostrado na
lista. Use os botões 'Adicionar' e 'Remover' para modificar essa
lista.", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "De&finir padrão", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "&Adicionar...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Remover", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Propriedades...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Preferências", -1, 7, 185, 240, 36
- PUSHBUTTON "&Configurações de tecla...", IDC_KEY_SET_BTN, 14, 198, 110,
14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Selecione os serviços desejados para cada idioma de entrada mostrado na
lista. Use os botões 'Adicionar' e 'Remover' para modificar essa
lista.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Adicionar...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Remover", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Propriedades...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Preferências", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Configurações de tecla...", IDC_KEY_SET_BTN, 133, 205,
110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/pt-PT.rc b/dll/cpl/input/lang/pt-PT.rc
index 01df2d6d4a6..58c10e99ca0 100644
--- a/dll/cpl/input/lang/pt-PT.rc
+++ b/dll/cpl/input/lang/pt-PT.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Definições"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Seleccione os serviços desejados para cada idioma de entrada mostrado na
lista. Use os botões 'Adicionar' e 'Remover' para modificar a
lista.", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "De&finir padrão", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "&Adicionar...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Remover", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Propriedades...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Preferências", -1, 7, 185, 240, 36
- PUSHBUTTON "&Definições de tecla...", IDC_KEY_SET_BTN, 14, 198, 110,
14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Seleccione os serviços desejados para cada idioma de entrada mostrado na
lista. Use os botões 'Adicionar' e 'Remover' para modificar a
lista.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Adicionar...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Remover", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Propriedades...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Preferências", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Definições de tecla...", IDC_KEY_SET_BTN, 133, 205, 110,
14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/ro-RO.rc b/dll/cpl/input/lang/ro-RO.rc
index a280fbdd318..e21a9401a53 100644
--- a/dll/cpl/input/lang/ro-RO.rc
+++ b/dll/cpl/input/lang/ro-RO.rc
@@ -7,14 +7,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Configurare"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Gestionați serviciile aferente limbilor de intrare utilizate în sistem.
Utilizați butoanele pentru a aduce modificări listei.", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "&Restabilește opțiunile implicite", IDC_SET_DEFAULT, 101,
159, 144, 14
- PUSHBUTTON "A&dăugare…", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Elimină", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Proprietăți…", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Preferințe", -1, 7, 185, 240, 36
- PUSHBUTTON "&Combinații de taste…", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Gestionați serviciile aferente limbilor de intrare utilizate în sistem.
Utilizați butoanele pentru a aduce modificări listei.", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "A&dăugare…", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Elimină", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Proprietăți…", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Preferințe", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Combinații de taste…", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/ru-RU.rc b/dll/cpl/input/lang/ru-RU.rc
index 2a7bd8646a6..2b45a8cdaa8 100644
--- a/dll/cpl/input/lang/ru-RU.rc
+++ b/dll/cpl/input/lang/ru-RU.rc
@@ -5,14 +5,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Параметры"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Выберите нужные раскладки для каждого языка ввода из списка. Для
изменения списка служат кнопки ""Добавить"" и
""Удалить"".", -1, 9, 6, 238, 17
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 28, 237, 109
- PUSHBUTTON "Ус&тановить по умолчанию", IDC_SET_DEFAULT, 101, 159, 144,
14
- PUSHBUTTON "&Добавить...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Удалить", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Свойства...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Параметры", -1, 7, 185, 240, 36
- PUSHBUTTON "&Параметры клавиатуры...", IDC_KEY_SET_BTN, 14, 198, 110,
14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Выберите нужные раскладки для каждого языка ввода из списка. Для
изменения списка служат кнопки ""Добавить"" и
""Удалить"".", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Добавить...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Удалить", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Свойства...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Параметры", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Параметры клавиатуры...", IDC_KEY_SET_BTN, 133, 205, 110,
14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/sk-SK.rc b/dll/cpl/input/lang/sk-SK.rc
index c0899d3e311..6b93972ee18 100644
--- a/dll/cpl/input/lang/sk-SK.rc
+++ b/dll/cpl/input/lang/sk-SK.rc
@@ -10,14 +10,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Nastavenia"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Vyberte služby, ktoré chcete priradiť ku každému vstupnému jazyku
uvedenému v zozname.\nPoužite tlačidlá Pridať a Odstrániť k úprave zoznamu.", -1, 9,
6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "Pred&voliť", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "&Pridať...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "O&dstrániť", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "Vl&astnosti...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Preferencie", -1, 7, 185, 240, 36
- PUSHBUTTON "Nastavenie &klávesov...", IDC_KEY_SET_BTN, 14, 198, 110,
14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Vyberte služby, ktoré chcete priradiť ku každému vstupnému jazyku
uvedenému v zozname. Použite tlačidlá Pridať a Odstrániť k úprave zoznamu.", -1, 15,
78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Pridať...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "O&dstrániť", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "Vl&astnosti...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Preferencie", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "Nastavenie &klávesov...", IDC_KEY_SET_BTN, 133, 205, 110,
14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/sq-AL.rc b/dll/cpl/input/lang/sq-AL.rc
index 5eda787ad32..a2d95b4a527 100644
--- a/dll/cpl/input/lang/sq-AL.rc
+++ b/dll/cpl/input/lang/sq-AL.rc
@@ -9,14 +9,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Cilësimet"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Zgjidhni shërbimet që ju dëshironi për çdo gjuhë të dhënash treguar në
listë.\nPërdor Shto dhe Hiq butonat për të modifikuar këtë listë.", -1, 9, 6, 238,
25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "&Vendos Parazgjedhur", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "Sh&to...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Hiq", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "&Karakteristikat...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Preferenca", -1, 7, 185, 240, 36
- PUSHBUTTON "&Çeles cilësimesh...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Zgjidhni shërbimet që ju dëshironi për çdo gjuhë të dhënash treguar në
listë. Përdor Shto dhe Hiq butonat për të modifikuar këtë listë.", -1, 15, 78, 230,
25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "Sh&to...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Hiq", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "&Karakteristikat...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Preferenca", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Çeles cilësimesh...", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/tr-TR.rc b/dll/cpl/input/lang/tr-TR.rc
index fc7441526ec..fcfab5246f8 100644
--- a/dll/cpl/input/lang/tr-TR.rc
+++ b/dll/cpl/input/lang/tr-TR.rc
@@ -7,14 +7,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Ayarlar"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Listede gösterilen her bir giriş dili için istediğiniz hizmetleri
seçiniz.\nBu listeyi değiştirmek için Ekle veya Sil tuşlarını kullanınız.", -1, 9, 6,
238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "Ö&n Tanımlı Yap", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "&Ekle...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "&Sil", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "Ö&zellikler...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Tercihler", -1, 7, 185, 240, 36
- PUSHBUTTON "&Tuş Ayarları...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Listede gösterilen her bir giriş dili için istediğiniz hizmetleri
seçiniz. Bu listeyi değiştirmek için Ekle veya Sil tuşlarını kullanınız.", -1, 15,
78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Ekle...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "&Sil", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "Ö&zellikler...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Tercihler", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Tuş Ayarları...", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/uk-UA.rc b/dll/cpl/input/lang/uk-UA.rc
index a341ebaffdb..2d91e093aa6 100644
--- a/dll/cpl/input/lang/uk-UA.rc
+++ b/dll/cpl/input/lang/uk-UA.rc
@@ -13,14 +13,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Параметри"
FONT 8, "MS Shell Dlg"
BEGIN
- LTEXT "Виберіть потрібні розкладки для кожної мови введення зі списку. Для зміни
списку використовуйте кнопки ""Додати"" і
""Видалити"".", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "Встановити за замов&чуванням", IDC_SET_DEFAULT, 101, 159,
144, 14
- PUSHBUTTON "&Додати...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "В&идалити", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "В&ластивості...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "Налаштування", -1, 7, 185, 240, 36
- PUSHBUTTON "&Параметри клавіатури...", IDC_KEY_SET_BTN, 14, 198, 110,
14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "Виберіть потрібні розкладки для кожної мови введення зі списку. Для зміни
списку використовуйте кнопки ""Додати"" і
""Видалити"".", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "&Додати...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "В&идалити", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "В&ластивості...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "Налаштування", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "&Параметри клавіатури...", IDC_KEY_SET_BTN, 133, 205, 110,
14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/zh-CN.rc b/dll/cpl/input/lang/zh-CN.rc
index fbd602efcfd..3a6e20841c4 100644
--- a/dll/cpl/input/lang/zh-CN.rc
+++ b/dll/cpl/input/lang/zh-CN.rc
@@ -7,14 +7,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "设置"
FONT 9, "宋体"
BEGIN
- LTEXT "为列表中显示的每个输入语言选择服务。\n使用“添加”和“删除”按钮来修改这个列表。", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "设为默认值(&S)", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "添加(&D)...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "删除(&R)", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "属性(&P)...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "首选项", -1, 7, 185, 240, 36
- PUSHBUTTON "键设置(&K)...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "为列表中显示的每个输入语言选择服务。使用“添加”和“删除”按钮来修改这个列表。", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "添加(&D)...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "删除(&R)", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "属性(&P)...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "首选项", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "键设置(&K)...", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/zh-HK.rc b/dll/cpl/input/lang/zh-HK.rc
index 79f635bfc88..9430e0ff36e 100644
--- a/dll/cpl/input/lang/zh-HK.rc
+++ b/dll/cpl/input/lang/zh-HK.rc
@@ -13,14 +13,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "設定"
FONT 9, "新細明體"
BEGIN
- LTEXT "為列表中顯示的每個輸入語言選擇服務。\n請按[新增]和[刪除]按鈕來修改這個列表。", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "設為預設值(&S)", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "新增(&D)...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "刪除(&R)", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "內容(&P)...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "偏好設定", -1, 7, 185, 240, 36
- PUSHBUTTON "按鍵設定(&K)...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "為列表中顯示的每個輸入語言選擇服務。請按[新增]和[刪除]按鈕來修改這個列表。", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "新增(&D)...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "刪除(&R)", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "內容(&P)...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "偏好設定", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "按鍵設定(&K)...", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/lang/zh-TW.rc b/dll/cpl/input/lang/zh-TW.rc
index b5902c9b4df..e7ddb4a0ce0 100644
--- a/dll/cpl/input/lang/zh-TW.rc
+++ b/dll/cpl/input/lang/zh-TW.rc
@@ -13,14 +13,18 @@ STYLE DS_SHELLFONT | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "設定"
FONT 9, "新細明體"
BEGIN
- LTEXT "為列表中顯示的每個輸入語言選擇服務。\n請按[新增]和[刪除]按鈕來修改這個列表。", -1, 9, 6, 238, 25
- CONTROL "TEXT", IDC_KEYLAYOUT_LIST, "SYSLISTVIEW32", WS_BORDER |
WS_VSCROLL | WS_TABSTOP | LVS_SINGLESEL | LVS_NOSORTHEADER | LVS_SHOWSELALWAYS |
LVS_REPORT, 8, 36, 237, 101
- PUSHBUTTON "設為預設值(&S)", IDC_SET_DEFAULT, 101, 159, 144, 14
- PUSHBUTTON "新增(&D)...", IDC_ADD_BUTTON, 27, 142, 70, 14
- PUSHBUTTON "刪除(&R)", IDC_REMOVE_BUTTON, 101, 142, 70, 14
- PUSHBUTTON "內容(&P)...", IDC_PROP_BUTTON, 175, 142, 70, 14
- GROUPBOX "偏好設定", -1, 7, 185, 240, 36
- PUSHBUTTON "按鍵設定(&K)...", IDC_KEY_SET_BTN, 14, 198, 110, 14
+ GROUPBOX "Default input &language", -1, 5, 5, 246, 55
+ LTEXT "Select one of the installed input languages to use when your computer
starts.", -1, 15, 15, 230, 23
+ COMBOBOX IDC_DEFAULT_LANGUAGE, 15, 40, 230, 300, CBS_HASSTRINGS | CBS_AUTOHSCROLL |
CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ GROUPBOX "&Installed services", -1, 5, 65, 246, 125
+ LTEXT "為列表中顯示的每個輸入語言選擇服務。請按[新增]和[刪除]按鈕來修改這個列表。", -1, 15, 78, 230, 25
+ CONTROL "", IDC_KEYLAYOUT_LIST, "SysTreeView32",
TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP | WS_BORDER | WS_VSCROLL | WS_TABSTOP, 15, 105,
155, 80
+ PUSHBUTTON "新增(&D)...", IDC_ADD_BUTTON, 175, 105, 70, 14
+ PUSHBUTTON "刪除(&R)", IDC_REMOVE_BUTTON, 175, 125, 70, 14
+ PUSHBUTTON "內容(&P)...", IDC_PROP_BUTTON, 175, 145, 70, 14
+ GROUPBOX "偏好設定", -1, 5, 195, 245, 30
+ PUSHBUTTON "Language &Bar...", IDC_LANGUAGE_BAR, 15, 205, 110, 14
+ PUSHBUTTON "按鍵設定(&K)...", IDC_KEY_SET_BTN, 133, 205, 110, 14
END
IDD_PROPPAGEADVANCEDSETTINGS DIALOGEX 0, 0, 254, 228
diff --git a/dll/cpl/input/resource.h b/dll/cpl/input/resource.h
index 7a76196151b..31a2083f235 100644
--- a/dll/cpl/input/resource.h
+++ b/dll/cpl/input/resource.h
@@ -6,6 +6,8 @@
#define IDI_MIC_ICO 203
#define IDI_INFO_ICO 207
#define IDI_CPLSYSTEM 1502
+#define IDI_KEYBOARD 1503
+#define IDI_DOT 1504
/* IDD */
#define IDD_PROPPAGESETTINGS 500
@@ -17,7 +19,7 @@
/* IDC */
#define IDC_KEYLAYOUT_LIST 1000
-#define IDC_SET_DEFAULT 1001
+#define IDC_DEFAULT_LANGUAGE 1001
#define IDC_ADD_BUTTON 1002
#define IDC_REMOVE_BUTTON 1003
#define IDC_PROP_BUTTON 1004
@@ -37,6 +39,7 @@
#define IDC_CTRL_LAYOUT 1018
#define IDC_LEFT_ALT_LANG 1019
#define IDC_LEFT_ALT_LAYOUT 1020
+#define IDC_LANGUAGE_BAR 1021
/* IDS */
#define IDS_CPLSYSTEMNAME 1
diff --git a/dll/cpl/input/resources/dot.ico b/dll/cpl/input/resources/dot.ico
new file mode 100644
index 00000000000..2ae06af2d03
Binary files /dev/null and b/dll/cpl/input/resources/dot.ico differ
diff --git a/dll/cpl/input/resources/keyboard.ico b/dll/cpl/input/resources/keyboard.ico
new file mode 100644
index 00000000000..ad016fdc47b
Binary files /dev/null and b/dll/cpl/input/resources/keyboard.ico differ
diff --git a/dll/cpl/input/settings_page.c b/dll/cpl/input/settings_page.c
index 86ff2162f66..c49e25d9b29 100644
--- a/dll/cpl/input/settings_page.c
+++ b/dll/cpl/input/settings_page.c
@@ -11,178 +11,360 @@
#include "locale_list.h"
#include "input_list.h"
+static INT s_nAliveLeafCount = 0;
+static INT s_nRootCount = 0;
+static INT s_iKeyboardImage = -1;
+static INT s_iDotImage = -1;
+static BOOL s_bDefaultInputChanged = FALSE;
+
static HICON
-CreateLayoutIcon(LPWSTR szLayout, BOOL bIsDefault)
+CreateLayoutIcon(LANGID LangID)
{
- INT width = GetSystemMetrics(SM_CXSMICON) * 2;
- INT height = GetSystemMetrics(SM_CYSMICON);
+ WCHAR szBuf[4];
HDC hdc;
- HDC hdcsrc;
- HBITMAP hBitmap;
- HICON hIcon = NULL;
-
- hdcsrc = GetDC(NULL);
- hdc = CreateCompatibleDC(hdcsrc);
- hBitmap = CreateCompatibleBitmap(hdcsrc, width, height);
-
- ReleaseDC(NULL, hdcsrc);
-
- if (hdc && hBitmap)
+ HBITMAP hbmColor, hbmMono, hBmpOld;
+ RECT rect;
+ HFONT hFontOld, hFont;
+ ICONINFO IconInfo;
+ HICON hIcon;
+ LOGFONTW lf;
+ BITMAPINFO bmi;
+ INT cxIcon = GetSystemMetrics(SM_CXSMICON);
+ INT cyIcon = GetSystemMetrics(SM_CYSMICON);
+
+ /* Getting "EN", "FR", etc. from English, French, ... */
+ if (!GetLocaleInfoW(LangID, LOCALE_SABBREVLANGNAME | LOCALE_NOUSEROVERRIDE,
+ szBuf, ARRAYSIZE(szBuf)))
{
- HBITMAP hBmpNew;
-
- hBmpNew = CreateBitmap(width, height, 1, 1, NULL);
- if (hBmpNew)
- {
- LOGFONTW lf;
+ StringCchCopyW(szBuf, ARRAYSIZE(szBuf), L"??");
+ }
+ szBuf[2] = UNICODE_NULL; /* Truncate the identifier to two characters:
"ENG" --> "EN" etc. */
+
+ /* Prepare for DIB (device-independent bitmap) */
+ ZeroMemory(&bmi, sizeof(bmi));
+ bmi.bmiHeader.biSize = sizeof(bmi.bmiHeader);
+ bmi.bmiHeader.biWidth = cxIcon;
+ bmi.bmiHeader.biHeight = cyIcon;
+ bmi.bmiHeader.biPlanes = 1;
+ bmi.bmiHeader.biBitCount = 24;
+
+ /* Create hdc, hbmColor and hbmMono */
+ hdc = CreateCompatibleDC(NULL);
+ hbmColor = CreateDIBSection(hdc, &bmi, DIB_RGB_COLORS, NULL, NULL, 0);
+ hbmMono = CreateBitmap(cxIcon, cyIcon, 1, 1, NULL);
+
+ /* Create a font */
+ if (SystemParametersInfoW(SPI_GETICONTITLELOGFONT, sizeof(lf), &lf, 0))
+ hFont = CreateFontIndirectW(&lf);
+ else
+ hFont = (HFONT)GetStockObject(DEFAULT_GUI_FONT);
+
+ /* Checking NULL */
+ if (!hdc || !hbmColor || !hbmMono || !hFont)
+ {
+ if (hdc)
+ DeleteDC(hdc);
+ if (hbmColor)
+ DeleteObject(hbmColor);
+ if (hbmMono)
+ DeleteObject(hbmMono);
+ if (hFont)
+ DeleteObject(hFont);
+ return NULL;
+ }
- if (SystemParametersInfoW(SPI_GETICONTITLELOGFONT, sizeof(lf), &lf, 0))
- {
- ICONINFO IconInfo;
- HFONT hFont;
+ SetRect(&rect, 0, 0, cxIcon, cyIcon);
+
+ /* Draw hbmColor */
+ hBmpOld = SelectObject(hdc, hbmColor);
+ SetDCBrushColor(hdc, GetSysColor(COLOR_HIGHLIGHT));
+ FillRect(hdc, &rect, (HBRUSH)GetStockObject(DC_BRUSH));
+ hFontOld = SelectObject(hdc, hFont);
+ SetTextColor(hdc, GetSysColor(COLOR_HIGHLIGHTTEXT));
+ SetBkMode(hdc, TRANSPARENT);
+ DrawTextW(hdc, szBuf, 2, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER);
+ SelectObject(hdc, hFontOld);
+ SelectObject(hdc, hBmpOld);
+
+ /* Fill hbmMono by black */
+ hBmpOld = SelectObject(hdc, hbmMono);
+ PatBlt(hdc, 0, 0, cxIcon, cyIcon, BLACKNESS);
+ SelectObject(hdc, hBmpOld);
+
+ /* Create an icon from hbmColor and hbmMono */
+ IconInfo.hbmColor = hbmColor;
+ IconInfo.hbmMask = hbmMono;
+ IconInfo.fIcon = TRUE;
+ hIcon = CreateIconIndirect(&IconInfo);
+
+ /* Clean up */
+ DeleteObject(hbmColor);
+ DeleteObject(hbmMono);
+ DeleteObject(hFont);
+ DeleteDC(hdc);
- hFont = CreateFontIndirectW(&lf);
+ return hIcon;
+}
- if (hFont != NULL)
- {
- HBITMAP hBmpOld;
+static VOID InitDefaultLangComboBox(HWND hwndCombo)
+{
+ WCHAR szText[256];
+ INPUT_LIST_NODE *pNode;
+ INT iIndex, nCount, iDefault = (INT)SendMessageW(hwndCombo, CB_GETCURSEL, 0, 0);
- hBmpOld = SelectObject(hdc, hBitmap);
+ SendMessageW(hwndCombo, CB_RESETCONTENT, 0, 0);
- if (hBmpOld != NULL)
- {
- RECT rect;
+ for (pNode = InputList_GetFirst(); pNode != NULL; pNode = pNode->pNext)
+ {
+ if (pNode->wFlags & INPUT_LIST_NODE_FLAG_DELETED)
+ continue;
- SetRect(&rect, 0, 0, width / 2, height);
+ StringCchPrintfW(szText, _countof(szText), L"%s - %s",
+ pNode->pLocale->pszName, pNode->pLayout->pszName);
+ iIndex = (INT)SendMessageW(hwndCombo, CB_ADDSTRING, 0, (LPARAM)szText);
+ SendMessageW(hwndCombo, CB_SETITEMDATA, iIndex, (LPARAM)pNode);
- if (bIsDefault != FALSE)
- {
- SetBkColor(hdc, GetSysColor(COLOR_WINDOW));
- SetTextColor(hdc, GetSysColor(COLOR_WINDOWTEXT));
+ if (pNode->wFlags & INPUT_LIST_NODE_FLAG_DEFAULT)
+ iDefault = iIndex;
+ }
- ExtTextOutW(hdc, rect.left, rect.top, ETO_OPAQUE, &rect,
L"", 0, NULL);
+ nCount = (INT)SendMessageW(hwndCombo, CB_GETCOUNT, 0, 0);
+ if (iDefault >= nCount)
+ SendMessageW(hwndCombo, CB_SETCURSEL, nCount - 1, 0);
+ else
+ SendMessageW(hwndCombo, CB_SETCURSEL, iDefault, 0);
+}
- SelectObject(hdc, hFont);
- DrawFrameControl(hdc, &rect, DFC_MENU, DFCS_MENUBULLET);
- }
- else
- {
- FillRect(hdc, &rect, GetSysColorBrush(COLOR_WINDOW));
- }
+static VOID
+SetControlsState(HWND hwndDlg)
+{
+ HWND hwndList = GetDlgItem(hwndDlg, IDC_KEYLAYOUT_LIST);
+ HWND hwndCombo = GetDlgItem(hwndDlg, IDC_DEFAULT_LANGUAGE);
+ BOOL bIsLeaf, bCanRemove, bCanProp;
+ HTREEITEM hSelected = TreeView_GetSelection(hwndList);
+ TV_ITEM item = { TVIF_PARAM | TVIF_HANDLE };
+ item.hItem = hSelected;
- SetRect(&rect, width / 2, 0, width, height);
+ bIsLeaf = (hSelected && TreeView_GetItem(hwndList, &item) &&
HIWORD(item.lParam));
- SetBkColor(hdc, GetSysColor(COLOR_HIGHLIGHT));
- SetTextColor(hdc, GetSysColor(COLOR_HIGHLIGHTTEXT));
+ bCanRemove = (bIsLeaf && (s_nAliveLeafCount > 1)) || (s_nRootCount >
1);
+ bCanProp = bIsLeaf;
- ExtTextOutW(hdc, rect.left, rect.top, ETO_OPAQUE, &rect,
L"", 0, NULL);
+ EnableWindow(GetDlgItem(hwndDlg, IDC_REMOVE_BUTTON), bCanRemove);
+ EnableWindow(GetDlgItem(hwndDlg, IDC_PROP_BUTTON), bCanProp);
- SelectObject(hdc, hFont);
- DrawTextW(hdc, szLayout, 2, &rect, DT_SINGLELINE | DT_CENTER
| DT_VCENTER);
+ InitDefaultLangComboBox(hwndCombo);
+}
- SelectObject(hdc, hBmpNew);
+static BOOL CALLBACK
+EnumResNameProc(HMODULE hModule, LPCWSTR lpszType, LPWSTR lpszName, LONG_PTR lParam)
+{
+ HICON* phIconSm = (HICON*)lParam;
+ if (*phIconSm)
+ return FALSE;
+
+ *phIconSm = (HICON)LoadImageW(hModule, lpszName, IMAGE_ICON,
+ GetSystemMetrics(SM_CXSMICON),
+ GetSystemMetrics(SM_CYSMICON),
+ 0);
+ return TRUE;
+}
- PatBlt(hdc, 0, 0, width, height, BLACKNESS);
+static HICON LoadIMEIcon(LPCTSTR pszImeFile)
+{
+ WCHAR szSysDir[MAX_PATH], szPath[MAX_PATH];
+ HINSTANCE hImeInst;
+ HICON hIconSm = NULL;
- SelectObject(hdc, hBmpOld);
+ GetSystemDirectoryW(szSysDir, _countof(szSysDir));
+ StringCchPrintfW(szPath, _countof(szPath), L"%s\\%s", szSysDir,
pszImeFile);
- IconInfo.hbmColor = hBitmap;
- IconInfo.hbmMask = hBmpNew;
- IconInfo.fIcon = TRUE;
+ hImeInst = LoadLibraryExW(szPath, NULL, DONT_RESOLVE_DLL_REFERENCES);
+ if (hImeInst == NULL)
+ return NULL;
- hIcon = CreateIconIndirect(&IconInfo);
+ EnumResourceNamesW(hImeInst, RT_GROUP_ICON, EnumResNameProc, (LPARAM)&hIconSm);
+ FreeLibrary(hImeInst);
- DeleteObject(hBmpOld);
- }
+ return hIconSm;
+}
- DeleteObject(hFont);
- }
- }
+static HTREEITEM FindLanguageInList(HWND hwndList, LPCTSTR pszLangName)
+{
+ TV_ITEM item;
+ TCHAR szText[128];
+ HTREEITEM hItem;
- DeleteObject(hBmpNew);
- }
+ hItem = TreeView_GetRoot(hwndList);
+ while (hItem)
+ {
+ szText[0] = 0;
+ item.mask = TVIF_TEXT | TVIF_HANDLE;
+ item.pszText = szText;
+ item.cchTextMax = _countof(szText);
+ item.hItem = hItem;
+ TreeView_GetItem(hwndList, &item);
+ if (_wcsicmp(szText, pszLangName) == 0)
+ return hItem;
+
+ hItem = TreeView_GetNextSibling(hwndList, hItem);
}
- DeleteDC(hdc);
- DeleteObject(hBitmap);
-
- return hIcon;
+ return NULL;
}
-
static VOID
-SetControlsState(HWND hwndDlg)
+AddToInputListView(HWND hwndList, INPUT_LIST_NODE *pInputNode)
{
- HWND hwndList = GetDlgItem(hwndDlg, IDC_KEYLAYOUT_LIST);
- INT iSelected = ListView_GetNextItem(hwndList, -1, LVNI_SELECTED);
- INT nCount = ListView_GetItemCount(hwndList);
- BOOL bCanRemove = (iSelected != -1) && (nCount >= 2);
- BOOL bCanDefault = (iSelected != -1) && (nCount >= 2);
- BOOL bCanProp = (iSelected != -1);
-
- LV_ITEM item = { LVIF_PARAM, iSelected };
- if (ListView_GetItem(hwndList, &item))
+ TV_ITEM item;
+ TV_INSERTSTRUCT insert;
+ HIMAGELIST hImageList = TreeView_GetImageList(hwndList, TVSIL_NORMAL);
+ WCHAR szKeyboard[64];
+ HTREEITEM hItem;
+ BOOL bBold = !!(pInputNode->wFlags & INPUT_LIST_NODE_FLAG_DEFAULT);
+
+ hItem = FindLanguageInList(hwndList, pInputNode->pLocale->pszName);
+ if (hItem == NULL)
{
- INPUT_LIST_NODE *pInput = (INPUT_LIST_NODE*)item.lParam;
+ // Language icon
+ INT LangImageIndex = -1;
+ HICON hLangIcon = CreateLayoutIcon(LOWORD(pInputNode->pLocale->dwId));
+ if (hLangIcon)
+ {
+ LangImageIndex = ImageList_AddIcon(hImageList, hLangIcon);
+ DestroyIcon(hLangIcon);
+ }
- if (pInput && (pInput->wFlags & INPUT_LIST_NODE_FLAG_DEFAULT))
+ // Language
+ ZeroMemory(&item, sizeof(item));
+ item.mask = TVIF_TEXT | TVIF_IMAGE | TVIF_PARAM | TVIF_SELECTEDIMAGE |
TVIF_STATE;
+ item.pszText = pInputNode->pLocale->pszName;
+ item.iImage = LangImageIndex;
+ item.iSelectedImage = LangImageIndex;
+ item.lParam = LOWORD(pInputNode->pLocale->dwId); //
HIWORD(item.lParam) == 0
+ if (bBold)
{
- bCanDefault = FALSE;
+ item.state = item.stateMask = TVIS_BOLD;
}
+ insert.hParent = TVI_ROOT;
+ insert.hInsertAfter = TVI_LAST;
+ insert.item = item;
+ hItem = TreeView_InsertItem(hwndList, &insert);
+
+ // The type of input method (currently keyboard only)
+ LoadStringW(hApplet, IDS_KEYBOARD, szKeyboard, _countof(szKeyboard));
+ ZeroMemory(&item, sizeof(item));
+ item.mask = TVIF_TEXT | TVIF_IMAGE | TVIF_PARAM | TVIF_SELECTEDIMAGE;
+ item.pszText = szKeyboard;
+ item.iImage = s_iKeyboardImage;
+ item.iSelectedImage = s_iKeyboardImage;
+ item.lParam = 0; // HIWORD(item.lParam) == 0
+ insert.hParent = hItem;
+ insert.hInsertAfter = TVI_LAST;
+ insert.item = item;
+ hItem = TreeView_InsertItem(hwndList, &insert);
}
+ else
+ {
+ // Language
+ ZeroMemory(&item, sizeof(item));
+ item.mask = TVIF_STATE | TVIF_HANDLE;
+ item.hItem = hItem;
+ item.stateMask = TVIS_BOLD;
+ if (TreeView_GetItem(hwndList, &item) && bBold &&
!(item.state & TVIS_BOLD))
+ {
+ // Make the item bold
+ item.mask = TVIF_STATE | TVIF_HANDLE;
+ item.hItem = hItem;
+ item.state = item.stateMask = TVIS_BOLD;
+ TreeView_SetItem(hwndList, &item);
+ }
- EnableWindow(GetDlgItem(hwndDlg, IDC_REMOVE_BUTTON), bCanRemove);
- EnableWindow(GetDlgItem(hwndDlg, IDC_PROP_BUTTON), bCanProp);
- EnableWindow(GetDlgItem(hwndDlg, IDC_SET_DEFAULT), bCanDefault);
-}
-
-static VOID
-AddToInputListView(HWND hwndList, INPUT_LIST_NODE *pInputNode)
-{
- INT ItemIndex, ImageIndex = -1;
- LV_ITEM item;
- HIMAGELIST hImageList = ListView_GetImageList(hwndList, LVSIL_SMALL);
+ // The type of input method (currently keyboard only)
+ hItem = TreeView_GetChild(hwndList, hItem);
+ }
- if (hImageList != NULL)
+ // Input method
+ if (hItem)
{
- HICON hLayoutIcon;
+ INT ImeImageIndex = s_iDotImage;
+ if (IS_IME_HKL(pInputNode->hkl) &&
pInputNode->pLayout->pszImeFile) // IME?
+ {
+ HICON hImeIcon = LoadIMEIcon(pInputNode->pLayout->pszImeFile);
+ if (hImeIcon)
+ {
+ ImeImageIndex = ImageList_AddIcon(hImageList, hImeIcon);
+ DestroyIcon(hImeIcon);
+ }
+ }
- hLayoutIcon = CreateLayoutIcon(pInputNode->pszIndicator,
- (pInputNode->wFlags &
INPUT_LIST_NODE_FLAG_DEFAULT));
- if (hLayoutIcon != NULL)
+ ZeroMemory(&item, sizeof(item));
+ item.mask = TVIF_TEXT | TVIF_IMAGE | TVIF_PARAM | TVIF_SELECTEDIMAGE |
TVIF_STATE;
+ item.pszText = pInputNode->pLayout->pszName;
+ item.iImage = ImeImageIndex;
+ item.iSelectedImage = ImeImageIndex;
+ item.lParam = (LPARAM)pInputNode; // HIWORD(item.lParam) != 0
+ if (bBold)
{
- ImageIndex = ImageList_AddIcon(hImageList, hLayoutIcon);
- DestroyIcon(hLayoutIcon);
+ item.state = item.stateMask = TVIS_BOLD; // Make the item bold
}
+ insert.hParent = hItem;
+ insert.hInsertAfter = TVI_LAST;
+ insert.item = item;
+ hItem = TreeView_InsertItem(hwndList, &insert);
}
-
- ZeroMemory(&item, sizeof(item));
- item.mask = LVIF_TEXT | LVIF_PARAM | LVIF_IMAGE;
- item.pszText = pInputNode->pLocale->pszName;
- item.iItem = ListView_GetItemCount(hwndList);
- item.lParam = (LPARAM)pInputNode;
- item.iImage = ImageIndex;
- ItemIndex = ListView_InsertItem(hwndList, &item);
-
- ListView_SetItemText(hwndList, ItemIndex, 1, pInputNode->pLayout->pszName);
}
+static VOID ExpandTreeItem(HWND hwndTree, HTREEITEM hItem)
+{
+ TreeView_Expand(hwndTree, hItem, TVE_EXPAND);
+ hItem = TreeView_GetChild(hwndTree, hItem);
+ while (hItem)
+ {
+ ExpandTreeItem(hwndTree, hItem);
+ hItem = TreeView_GetNextSibling(hwndTree, hItem);
+ }
+}
static VOID
UpdateInputListView(HWND hwndList)
{
INPUT_LIST_NODE *pNode;
- HIMAGELIST hImageList = ListView_GetImageList(hwndList, LVSIL_SMALL);
- INT iSelected = ListView_GetNextItem(hwndList, -1, LVNI_SELECTED);
+ HIMAGELIST hImageList = TreeView_GetImageList(hwndList, TVSIL_NORMAL);
+ HTREEITEM hItem;
+ HICON hKeyboardIcon, hDotIcon;
+
+ ImageList_RemoveAll(hImageList);
+ TreeView_DeleteAllItems(hwndList);
+
+ // Add keyboard icon
+ s_iKeyboardImage = -1;
+ hKeyboardIcon = (HICON)LoadImageW(hApplet, MAKEINTRESOURCEW(IDI_KEYBOARD),
IMAGE_ICON,
+ GetSystemMetrics(SM_CXSMICON),
GetSystemMetrics(SM_CYSMICON),
+ 0);
+ if (hKeyboardIcon)
+ {
+ s_iKeyboardImage = ImageList_AddIcon(hImageList, hKeyboardIcon);
+ DestroyIcon(hKeyboardIcon);
+ }
- if (hImageList)
+ // Add dot icon
+ s_iDotImage = -1;
+ hDotIcon = (HICON)LoadImageW(hApplet, MAKEINTRESOURCEW(IDI_DOT), IMAGE_ICON,
+ GetSystemMetrics(SM_CXSMICON),
GetSystemMetrics(SM_CYSMICON),
+ 0);
+ if (hDotIcon)
{
- ImageList_RemoveAll(hImageList);
+ s_iDotImage = ImageList_AddIcon(hImageList, hDotIcon);
+ DestroyIcon(hDotIcon);
}
- ListView_DeleteAllItems(hwndList);
+ InputList_Sort();
- for (pNode = InputList_GetFirst(); pNode != NULL; pNode = pNode->pNext)
+ s_nAliveLeafCount = InputList_GetAliveCount();
+
+ // Add items to the list
+ for (pNode = InputList_GetFirst(); pNode; pNode = pNode->pNext)
{
if (pNode->wFlags & INPUT_LIST_NODE_FLAG_DELETED)
continue;
@@ -190,62 +372,43 @@ UpdateInputListView(HWND hwndList)
AddToInputListView(hwndList, pNode);
}
- if (iSelected != -1)
+ // Expand all (with counting s_nRootCount)
+ s_nRootCount = 0;
+ hItem = TreeView_GetRoot(hwndList);
+ while (hItem)
{
- INT nCount = ListView_GetItemCount(hwndList);
- LV_ITEM item = { LVIF_STATE };
- item.state = item.stateMask = LVIS_SELECTED;
- item.iItem = ((nCount == iSelected) ? nCount - 1 : iSelected);
- ListView_SetItem(hwndList, &item);
+ ++s_nRootCount;
+ ExpandTreeItem(hwndList, hItem);
+ hItem = TreeView_GetNextSibling(hwndList, hItem);
}
+ // Redraw
InvalidateRect(hwndList, NULL, TRUE);
}
-
static VOID
OnInitSettingsPage(HWND hwndDlg)
{
HWND hwndInputList = GetDlgItem(hwndDlg, IDC_KEYLAYOUT_LIST);
+ HIMAGELIST hLayoutImageList, hOldImageList;
LayoutList_Create();
LocaleList_Create();
InputList_Create();
- if (hwndInputList != NULL)
- {
- WCHAR szBuffer[MAX_STR_LEN];
- HIMAGELIST hLayoutImageList;
- LV_COLUMN column = { LVCF_FMT | LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM };
-
- ListView_SetExtendedListViewStyle(hwndInputList, LVS_EX_FULLROWSELECT);
-
- LoadStringW(hApplet, IDS_LANGUAGE, szBuffer, ARRAYSIZE(szBuffer));
- column.fmt = LVCFMT_LEFT;
- column.iSubItem = 0;
- column.pszText = szBuffer;
- column.cx = 175;
- ListView_InsertColumn(hwndInputList, 0, &column);
-
- LoadStringW(hApplet, IDS_LAYOUT, szBuffer, ARRAYSIZE(szBuffer));
- column.fmt = LVCFMT_RIGHT;
- column.cx = 155;
- column.iSubItem = 1;
- column.pszText = szBuffer;
- ListView_InsertColumn(hwndInputList, 1, &column);
-
- hLayoutImageList = ImageList_Create(GetSystemMetrics(SM_CXSMICON) * 2,
- GetSystemMetrics(SM_CYSMICON),
- ILC_COLOR8 | ILC_MASK, 0, 0);
- if (hLayoutImageList != NULL)
- {
- HIMAGELIST hOldImagelist = ListView_SetImageList(hwndInputList,
hLayoutImageList, LVSIL_SMALL);
- ImageList_Destroy(hOldImagelist);
- }
+ EnableWindow(GetDlgItem(hwndDlg, IDC_LANGUAGE_BAR), FALSE);
- UpdateInputListView(hwndInputList);
+ hLayoutImageList = ImageList_Create(GetSystemMetrics(SM_CXSMICON),
+ GetSystemMetrics(SM_CYSMICON),
+ ILC_COLOR8 | ILC_MASK, 0, 0);
+ if (hLayoutImageList != NULL)
+ {
+ hOldImageList = TreeView_SetImageList(hwndInputList, hLayoutImageList,
TVSIL_NORMAL);
+ ImageList_Destroy(hOldImageList);
}
+ UpdateInputListView(hwndInputList);
+
SetControlsState(hwndDlg);
}
@@ -283,12 +446,30 @@ OnCommandSettingsPage(HWND hwndDlg, WPARAM wParam)
HWND hwndList = GetDlgItem(hwndDlg, IDC_KEYLAYOUT_LIST);
if (hwndList)
{
- LVITEM item = { LVIF_PARAM };
- item.iItem = ListView_GetNextItem(hwndList, -1, LVNI_SELECTED);
+ HTREEITEM hItem = TreeView_GetSelection(hwndList);
+ TV_ITEM item = { TVIF_HANDLE | TVIF_PARAM };
+ item.hItem = hItem;
- if (ListView_GetItem(hwndList, &item))
+ if (hItem && TreeView_GetItem(hwndList, &item))
{
- InputList_Remove((INPUT_LIST_NODE*) item.lParam);
+ if (item.lParam == 0) // Branch? (currently branch is keyboard only)
+ {
+ // Get root of branch
+ item.hItem = TreeView_GetParent(hwndList, hItem);
+ TreeView_GetItem(hwndList, &item);
+ }
+
+ if (HIWORD(item.lParam)) // Leaf?
+ {
+ if (InputList_Remove((INPUT_LIST_NODE*)item.lParam))
+ s_bDefaultInputChanged = TRUE;
+ }
+ else // Root?
+ {
+ if (InputList_RemoveByLang(LOWORD(item.lParam)))
+ s_bDefaultInputChanged = TRUE;
+ }
+
UpdateInputListView(hwndList);
SetControlsState(hwndDlg);
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
@@ -302,10 +483,11 @@ OnCommandSettingsPage(HWND hwndDlg, WPARAM wParam)
HWND hwndList = GetDlgItem(hwndDlg, IDC_KEYLAYOUT_LIST);
if (hwndList)
{
- LVITEM item = { LVIF_PARAM };
- item.iItem = ListView_GetNextItem(hwndList, -1, LVNI_SELECTED);
+ HTREEITEM hItem = TreeView_GetSelection(hwndList);
+ TV_ITEM item = { TVIF_HANDLE | TVIF_PARAM };
+ item.hItem = hItem;
- if (ListView_GetItem(hwndList, &item))
+ if (hItem && TreeView_GetItem(hwndList, &item) &&
HIWORD(item.lParam))
{
if (DialogBoxParamW(hApplet,
MAKEINTRESOURCEW(IDD_INPUT_LANG_PROP),
@@ -322,25 +504,6 @@ OnCommandSettingsPage(HWND hwndDlg, WPARAM wParam)
}
break;
- case IDC_SET_DEFAULT:
- {
- HWND hwndList = GetDlgItem(hwndDlg, IDC_KEYLAYOUT_LIST);
- if (hwndList)
- {
- LVITEM item = { LVIF_PARAM };
- item.iItem = ListView_GetNextItem(hwndList, -1, LVNI_SELECTED);
-
- if (ListView_GetItem(hwndList, &item))
- {
- InputList_SetDefault((INPUT_LIST_NODE*) item.lParam);
- UpdateInputListView(hwndList);
- SetControlsState(hwndDlg);
- PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
- }
- }
- }
- break;
-
case IDC_KEY_SET_BTN:
{
DialogBoxW(hApplet,
@@ -349,6 +512,38 @@ OnCommandSettingsPage(HWND hwndDlg, WPARAM wParam)
KeySettingsDialogProc);
}
break;
+
+ case IDC_LANGUAGE_BAR:
+ {
+ // FIXME
+ break;
+ }
+
+ case IDC_DEFAULT_LANGUAGE:
+ {
+ if (HIWORD(wParam) == CBN_SELENDOK)
+ {
+ HWND hwndList = GetDlgItem(hwndDlg, IDC_KEYLAYOUT_LIST);
+ HWND hwndCombo = GetDlgItem(hwndDlg, IDC_DEFAULT_LANGUAGE);
+ INT iSelected = (INT)SendMessageW(hwndCombo, CB_GETCURSEL, 0, 0);
+ if (iSelected != CB_ERR)
+ {
+ LPARAM lParam = SendMessageW(hwndCombo, CB_GETITEMDATA, iSelected,
0);
+ if (lParam)
+ {
+ INPUT_LIST_NODE* pNode = (INPUT_LIST_NODE*)lParam;
+ if (!(pNode->wFlags & INPUT_LIST_NODE_FLAG_DEFAULT))
+ {
+ s_bDefaultInputChanged = TRUE;
+ InputList_SetDefault(pNode);
+ UpdateInputListView(hwndList);
+ SetControlsState(hwndDlg);
+ PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
+ }
+ }
+ }
+ }
+ }
}
}
@@ -356,6 +551,9 @@ static BOOL IsRebootNeeded(VOID)
{
INPUT_LIST_NODE *pNode;
+ if (s_bDefaultInputChanged)
+ return TRUE;
+
for (pNode = InputList_GetFirst(); pNode != NULL; pNode = pNode->pNext)
{
if (IS_IME_HKL(pNode->hkl)) /* IME? */
@@ -394,21 +592,31 @@ BOOL EnableProcessPrivileges(LPCWSTR lpPrivilegeName, BOOL bEnable)
return Ret;
}
-static VOID
+static INT_PTR
OnNotifySettingsPage(HWND hwndDlg, LPARAM lParam)
{
LPNMHDR header = (LPNMHDR)lParam;
switch (header->code)
{
- case LVN_ITEMCHANGED:
+ case TVN_SELCHANGED:
+ {
+ SetControlsState(hwndDlg);
+ break;
+ }
+
+ case TVN_ITEMEXPANDING:
{
- if (header->idFrom == IDC_KEYLAYOUT_LIST)
+ // FIXME: Prevent collapse (COMCTL32 is buggy)
+ //
https://bugs.winehq.org/show_bug.cgi?id=53727
+ NM_TREEVIEW* pTreeView = (NM_TREEVIEW*)lParam;
+ if ((pTreeView->action & TVE_TOGGLE) == TVE_COLLAPSE)
{
- SetControlsState(hwndDlg);
+ SetWindowLongPtrW(hwndDlg, DWLP_MSGRESULT, TRUE);
+ return TRUE;
}
+ break;
}
- break;
case PSN_APPLY:
{
@@ -429,11 +637,12 @@ OnNotifySettingsPage(HWND hwndDlg, LPARAM lParam)
ExitWindowsEx(EWX_REBOOT | EWX_FORCE, 0);
}
}
+ break;
}
- break;
}
-}
+ return 0;
+}
INT_PTR CALLBACK
SettingsPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
@@ -453,8 +662,7 @@ SettingsPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM
lParam)
break;
case WM_NOTIFY:
- OnNotifySettingsPage(hwndDlg, lParam);
- break;
+ return OnNotifySettingsPage(hwndDlg, lParam);
}
return FALSE;