[ACPPAGE] Usability: Convert the edit box to a combobox, ask the user if they want...
authorMark Jansen <mark.jansen@reactos.org>
Sun, 16 Jul 2017 13:47:16 +0000 (13:47 +0000)
committerMark Jansen <mark.jansen@reactos.org>
Sun, 16 Jul 2017 13:47:16 +0000 (13:47 +0000)
svn path=/trunk/; revision=75357

25 files changed:
reactos/dll/shellext/acppage/CLayerUIPropPage.cpp
reactos/dll/shellext/acppage/lang/bg-BG.rc
reactos/dll/shellext/acppage/lang/cs-CZ.rc
reactos/dll/shellext/acppage/lang/de-DE.rc
reactos/dll/shellext/acppage/lang/en-US.rc
reactos/dll/shellext/acppage/lang/es-ES.rc
reactos/dll/shellext/acppage/lang/eu-ES.rc
reactos/dll/shellext/acppage/lang/fr-FR.rc
reactos/dll/shellext/acppage/lang/he-IL.rc
reactos/dll/shellext/acppage/lang/hu-HU.rc
reactos/dll/shellext/acppage/lang/id-ID.rc
reactos/dll/shellext/acppage/lang/it-IT.rc
reactos/dll/shellext/acppage/lang/nl-NL.rc
reactos/dll/shellext/acppage/lang/no-NO.rc
reactos/dll/shellext/acppage/lang/pl-PL.rc
reactos/dll/shellext/acppage/lang/ro-RO.rc
reactos/dll/shellext/acppage/lang/ru-RU.rc
reactos/dll/shellext/acppage/lang/sk-SK.rc
reactos/dll/shellext/acppage/lang/sq-AL.rc
reactos/dll/shellext/acppage/lang/sv-SE.rc
reactos/dll/shellext/acppage/lang/tr-TR.rc
reactos/dll/shellext/acppage/lang/uk-UA.rc
reactos/dll/shellext/acppage/lang/zh-CN.rc
reactos/dll/shellext/acppage/lang/zh-TW.rc
reactos/dll/shellext/acppage/resource.h

index 764e9af..fb4cd44 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2015-2017 Mark Jansen
+ * Copyright 2015-2017 Mark Jansen (mark.jansen@reactos.org)
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -442,9 +442,36 @@ static void ListboxChanged(HWND hWnd)
     EnableWindow(GetDlgItem(hWnd, IDC_DELETE), Sel >= 0);
 }
 
+static void OnAdd(HWND hWnd)
+{
+    HWND Combo = GetDlgItem(hWnd, IDC_NEWCOMPATIBILITYMODE);
+    
+    int Length = ComboBox_GetTextLength(Combo);
+    CComBSTR Str(Length);
+    ComboBox_GetText(Combo, Str, Length+1);
+    HWND List = GetDlgItem(hWnd, IDC_COMPATIBILITYMODE);
+    int Index = ListBox_FindStringExact(List, -1, Str);
+    if (Index == LB_ERR)
+        Index = ListBox_AddString(List, Str);
+    ListBox_SetCurSel(List, Index);
+    ListboxChanged(hWnd);
+    ComboBox_SetText(Combo, TEXT(""));
+    SetFocus(Combo);
+}
+
+static BOOL ComboHasData(HWND hWnd)
+{
+    HWND Combo = GetDlgItem(hWnd, IDC_NEWCOMPATIBILITYMODE);
+    if (ComboBox_GetCurSel(Combo) >= 0)
+        return TRUE;
+    ULONG Len = ComboBox_GetTextLength(Combo);
+    return Len > 0;
+}
+
 INT_PTR CALLBACK CLayerUIPropPage::EditModesProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 {
     CLayerUIPropPage* page = NULL;
+
     switch (uMsg)
     {
     case WM_INITDIALOG:
@@ -452,19 +479,16 @@ INT_PTR CALLBACK CLayerUIPropPage::EditModesProc(HWND hWnd, UINT uMsg, WPARAM wP
         page->AddRef();
         SetProp(hWnd, ACP_WNDPROP, page);
         {
-            CComPtr<IAutoComplete> autoComplete;
-            HRESULT hr = CoCreateInstance(CLSID_AutoComplete, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(IAutoComplete, &autoComplete));
-            if (SUCCEEDED(hr))
+            HWND Combo = GetDlgItem(hWnd, IDC_NEWCOMPATIBILITYMODE);
+            CComObject<CLayerStringList> pList;
+
+            while (TRUE)
             {
-                CComPtr<IAutoComplete2> autoComplete2;
-                hr = autoComplete->QueryInterface(IID_PPV_ARG(IAutoComplete2, &autoComplete2));
-                if (SUCCEEDED(hr))
-                {
-                    autoComplete2->SetOptions(ACO_AUTOSUGGEST | ACO_UPDOWNKEYDROPSLIST);
-                    HWND Edit = GetDlgItem(hWnd, IDC_NEWCOMPATIBILITYMODE);
-                    CComObject<CLayerStringList>* pList = new CComObject<CLayerStringList>();
-                    hr = autoComplete2->Init(Edit, pList, NULL, NULL);
-                }
+                CComBSTR str;
+                HRESULT hr = pList.Next(1, &str, NULL);
+                if (hr != S_OK)
+                    break;
+                ComboBox_AddString(Combo, str);
             }
 
             HWND List = GetDlgItem(hWnd, IDC_COMPATIBILITYMODE);
@@ -483,24 +507,12 @@ INT_PTR CALLBACK CLayerUIPropPage::EditModesProc(HWND hWnd, UINT uMsg, WPARAM wP
         RemoveProp(hWnd, ACP_WNDPROP);
         page->Release();
         break;
+
     case WM_COMMAND:
         switch(LOWORD(wParam))
         {
         case IDC_ADD:
-        {
-            HWND Edit = GetDlgItem(hWnd, IDC_NEWCOMPATIBILITYMODE);
-            int Length = GetWindowTextLengthW(Edit);
-            CComBSTR Str(Length);
-            GetWindowTextW(Edit, Str, Length+1);
-            HWND List = GetDlgItem(hWnd, IDC_COMPATIBILITYMODE);
-            int Index = ListBox_FindStringExact(List, -1, Str);
-            if (Index == LB_ERR)
-                Index = ListBox_AddString(List, Str);
-            ListBox_SetCurSel(List, Index);
-            ListboxChanged(hWnd);
-            Edit_SetText(Edit, TEXT(""));
-            SetFocus(Edit);
-        }
+            OnAdd(hWnd);
             break;
         case IDC_EDIT:
         {
@@ -510,11 +522,11 @@ INT_PTR CALLBACK CLayerUIPropPage::EditModesProc(HWND hWnd, UINT uMsg, WPARAM wP
             CComBSTR Str(Length);
             ListBox_GetText(List, Cur, Str);
             ListBox_DeleteString(List, Cur);
-            HWND Edit = GetDlgItem(hWnd, IDC_NEWCOMPATIBILITYMODE);
-            Edit_SetText(Edit, Str);
+            HWND Combo = GetDlgItem(hWnd, IDC_NEWCOMPATIBILITYMODE);
+            ComboBox_SetText(Combo, Str);
             ListboxChanged(hWnd);
-            Edit_SetSel(Edit, 30000, 30000);
-            SetFocus(Edit);
+            ComboBox_SetEditSel(Combo, 30000, 30000);
+            SetFocus(Combo);
         }
             break;
         case IDC_DELETE:
@@ -528,11 +540,31 @@ INT_PTR CALLBACK CLayerUIPropPage::EditModesProc(HWND hWnd, UINT uMsg, WPARAM wP
             ListboxChanged(hWnd);
             break;
         case IDC_NEWCOMPATIBILITYMODE:
-            EnableWindow(GetDlgItem(hWnd, IDC_ADD), Edit_GetTextLength(GetDlgItem(hWnd, IDC_NEWCOMPATIBILITYMODE)) > 0);
+        {
+            EnableWindow(GetDlgItem(hWnd, IDC_ADD), ComboHasData(hWnd));
+        }
             break;
         case IDOK:
             /* Copy from list! */
         {
+            if (ComboHasData(hWnd))
+            {
+                CComBSTR question, title;
+                title.LoadString(g_hModule, IDS_TABTITLE);
+                question.LoadString(g_hModule, IDS_YOU_DID_NOT_ADD);
+                int result = MessageBoxW(hWnd, question, title, MB_YESNOCANCEL | MB_ICONQUESTION);
+                switch (result)
+                {
+                case IDYES:
+                    OnAdd(hWnd);
+                    break;
+                case IDNO:
+                    break;
+                case IDCANCEL:
+                    return FALSE;
+                }
+            }
+
             page = (CLayerUIPropPage*)GetProp(hWnd, ACP_WNDPROP);
 
             HWND List = GetDlgItem(hWnd, IDC_COMPATIBILITYMODE);
index 999782d..abd7a8f 100644 (file)
@@ -22,7 +22,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Промяна на режимите за съвместимост"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Добавяне...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Обработка...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -36,4 +36,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 27ef746..14cc9f3 100644 (file)
@@ -27,7 +27,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Upravit režimy kompatibility"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Přidat...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Upravit...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -41,4 +41,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 1ba11e5..bf32ed7 100644 (file)
@@ -22,7 +22,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Kompatibilitätsmodus ändern"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Hinzufügen...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Ändern...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -36,4 +36,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 22eef7b..0f5f42f 100644 (file)
@@ -22,7 +22,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Edit Compatibility Modes"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Add...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Edit...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -36,5 +36,6 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
 
index 007de0c..55a0e54 100644 (file)
@@ -24,7 +24,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Editar modos de compatibilidad"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Añadir...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Editar...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -38,4 +38,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 41eee7c..cbcafbf 100644 (file)
@@ -22,7 +22,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Konpatibilitate moduak editatu"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Gehitu...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Editatu...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -36,4 +36,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 19d4ba8..299e56e 100644 (file)
@@ -22,7 +22,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Editer les Modes de compatibilité"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Ajouter...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Editer...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -36,4 +36,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 27bbc2b..91fd272 100644 (file)
@@ -24,7 +24,7 @@ EXSTYLE WS_EX_LAYOUTRTL
 CAPTION "עריכת מצבי תאימות"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "הוסף...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "ערוך...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -38,4 +38,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index b29ff33..a0ea969 100644 (file)
@@ -24,7 +24,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Sémák szerkesztése"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Hozzáadás...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Szerkesztés...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -38,4 +38,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 3dce0eb..cbb5330 100644 (file)
@@ -22,7 +22,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Edit Mode Kompatibilitas"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Tambah...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Edit...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -36,4 +36,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 4d8ce82..21b3751 100644 (file)
@@ -24,7 +24,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Modifica la modalità compatibile"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Aggiungi...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Modifica...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -38,4 +38,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index dd6bfef..9488cf3 100644 (file)
@@ -22,7 +22,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Edit Compatibility Modes"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Add...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Edit...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -36,4 +36,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index ce0e72f..6be87ec 100644 (file)
@@ -22,7 +22,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Rediger kompaktibilitetsmodus"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Legg til...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Rediger...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -36,4 +36,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index a520a0b..3d9a4ac 100644 (file)
@@ -24,7 +24,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Edycja trybów zgodności"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Dodaj...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Edytuj...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -38,4 +38,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 2f67490..e3d4d7e 100644 (file)
@@ -22,7 +22,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Modurile de compatibilitate"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Adăugare…", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "E&ditare…", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -36,5 +36,6 @@ BEGIN
     IDS_TABTITLE "Compatibilitate"
     IDS_FAILED_NETWORK "Modurile de compatibilitate nu pot fi instituite pentru acest program deoarece rezidă pe o unitate de stocare în rețea."
     IDS_FAILED_PROTECTED "Modurile de compatibilitate nu pot fi instituite pentru acest program deoarece este parte din ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
 
index 2423478..cd1d9ce 100644 (file)
@@ -24,7 +24,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Изменить режимы совместимости"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Добавить...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Редактировать...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -38,4 +38,5 @@ BEGIN
     IDS_TABTITLE "Совместимость"
     IDS_FAILED_NETWORK "Режим совместимости не может быть установлен для этой программы, потому что она находится на сетевом диске."
     IDS_FAILED_PROTECTED "Режим совместимости не может быть использован для компонентов ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index d63a7a9..e971d38 100644 (file)
@@ -29,7 +29,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Úprava režimov kompatibility"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "Prid&ať...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Upraviť...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -43,4 +43,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index b4344f7..57bf880 100644 (file)
@@ -26,7 +26,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Modifiko Mjetin e Pajtueshmerise"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "Shto...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "Modifiko...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -40,4 +40,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index f02a872..e1eb306 100644 (file)
@@ -24,7 +24,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Redigera kompatibilitetslägen"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Lägg till...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Ändra...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -38,4 +38,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 1d448c9..bc40a24 100644 (file)
@@ -24,7 +24,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Uyumluluk Kiplerini Düzenle"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Ekle...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Düzenle...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -38,5 +38,6 @@ BEGIN
     IDS_TABTITLE "Uyumluluk"
     IDS_FAILED_NETWORK "Bir ağ sürücüsü üzerinde olduğundan bu izlencede uyumluluk kipleri ayarlanamaz."
     IDS_FAILED_PROTECTED "ReactOS'un bir parçası olduğundan bu izlencede uyumluluk kipleri ayarlanamaz."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
 
index 26f0aa3..2f6db49 100644 (file)
@@ -30,7 +30,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "Редагування режимів сумісності"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "&Додати...", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "&Редагувати...", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -44,4 +44,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 9ad9701..c410c9d 100644 (file)
@@ -24,7 +24,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "编辑兼容模式"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "添加...(&A)", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "编辑...(&E)", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -38,4 +38,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 6da9308..0e8e6f1 100644 (file)
@@ -24,7 +24,7 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYS
 CAPTION "編輯相容模式"
 FONT 8, "MS Shell Dlg", 0, 0, 0x0
 BEGIN
-    EDITTEXT IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, ES_AUTOHSCROLL
+    COMBOBOX IDC_NEWCOMPATIBILITYMODE, 9, 6, 148, 14, CBS_HASSTRINGS | CBS_DROPDOWN | WS_VSCROLL
     LISTBOX IDC_COMPATIBILITYMODE, 9, 25, 148, 86, LBS_NOTIFY | LBS_NOINTEGRALHEIGHT | LBS_WANTKEYBOARDINPUT | WS_BORDER
     PUSHBUTTON "添加...(&A)", IDC_ADD, 162, 6, 60, 14, WS_DISABLED
     PUSHBUTTON "編輯...(&E)", IDC_EDIT, 162, 24, 60, 14, WS_DISABLED
@@ -38,4 +38,5 @@ BEGIN
     IDS_TABTITLE "Compatibility"
     IDS_FAILED_NETWORK "Compatibility modes cannot be set on this program because it is on a network drive."
     IDS_FAILED_PROTECTED "Compatibility modes cannot be set on this program because it is a part of ReactOS."
+    IDS_YOU_DID_NOT_ADD "You did not add the mode, do you want to add it now?"
 END
index 57d72e2..7f45ee6 100644 (file)
@@ -23,6 +23,7 @@
 #define IDS_TABTITLE                    2000
 #define IDS_FAILED_NETWORK              2001
 #define IDS_FAILED_PROTECTED            2002
+#define IDS_YOU_DID_NOT_ADD             2003
 
 
 /* registry stuff */