-don't show SystemComponents
authorChristoph von Wittich <christoph_vw@reactos.org>
Sun, 7 May 2006 18:05:51 +0000 (18:05 +0000)
committerChristoph von Wittich <christoph_vw@reactos.org>
Sun, 7 May 2006 18:05:51 +0000 (18:05 +0000)
-added a "Show updates" checkbox

svn path=/trunk/; revision=21832

14 files changed:
reactos/dll/cpl/appwiz/Cz.rc
reactos/dll/cpl/appwiz/De.rc
reactos/dll/cpl/appwiz/Dk.rc
reactos/dll/cpl/appwiz/En.rc
reactos/dll/cpl/appwiz/Es.rc
reactos/dll/cpl/appwiz/Fr.rc
reactos/dll/cpl/appwiz/Gr.rc
reactos/dll/cpl/appwiz/Hu.rc
reactos/dll/cpl/appwiz/Ja.rc
reactos/dll/cpl/appwiz/Nl.rc
reactos/dll/cpl/appwiz/Pl.rc
reactos/dll/cpl/appwiz/Ru.rc
reactos/dll/cpl/appwiz/appwiz.c
reactos/dll/cpl/appwiz/resource.h

index eaf4151..d4122e7 100644 (file)
@@ -11,8 +11,9 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
   
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
   LTEXT "Následující aplikace mohou být automaticky odstranìny. K odstranìní aplikace nebo k nastavení jejích komponent, ji vyberte ze seznamu a klepnìte na tlaèítko Pøidat/Odebrat.",-1,36,72,PROPSHEETWIDTH-48,32
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
   PUSHBUTTON "Pøidat/&Odebrat", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
 END
 
index e8466d4..22e7fe7 100644 (file)
@@ -11,9 +11,10 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
   
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
+  CONTROL "&Updates anzeigen",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
   LTEXT "Die folgende Software kann automatisch entfernt werden. Um ein Programm zu entfernen oder die installierten Programmpakete zu ändern, wählen Sie das Programm in der Liste und klicken auf Ändern/Entfernen.",-1,36,72,PROPSHEETWIDTH-48,32
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
-  PUSHBUTTON "Ändern/Entfe&rnen", IDC_ADDREMOVE, PROPSHEETWIDTH-(82), 198, 70, 14
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
+  PUSHBUTTON "Ändern/Entfe&rnen", IDC_ADDREMOVE, PROPSHEETWIDTH-(82), 205, 70, 14
 END
 
 IDD_PROPPAGEROSSETUP DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
index 41fc802..258a9a7 100644 (file)
@@ -11,8 +11,9 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
   
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
   LTEXT "Følgende Software kan automatisk blive Fjernet. For at fjerne programmer eller ændre hvilken typer komponeter der skal være installeret, vælg fra listen og klik på Tilføj/Fjern.",-1,36,72,PROPSHEETWIDTH-48,32
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
   PUSHBUTTON "Tilføj/&Fjern", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
 END
 
index 861986d..9a3c677 100644 (file)
@@ -11,8 +11,9 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
   
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
   LTEXT "The following Software can be automatically removed. To remove a program or to modify its installed components, select it from the list and click Add/Remove.",-1,36,72,PROPSHEETWIDTH-48,32
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
   PUSHBUTTON "Modify/&Remove", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
 END
 
index 8b51cb4..fcf505c 100644 (file)
@@ -17,8 +17,9 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
   
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
   LTEXT "El siguiente software puede ser removido automaticamente. Para remover un programa o modificar sus componentes instalados, seleccionalo en la lista y pulsa Añadir/Remover.",-1,36,72,PROPSHEETWIDTH-48,32
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
   PUSHBUTTON "Añadir/&Remover", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
 END
 
index a42c545..ce92ff0 100644 (file)
@@ -1,52 +1,53 @@
 /* French translation by Benoit Plante 2005 (cmoibenlepro AT hotmail DOT com) */\r
 \r
-LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
-
-IDD_PROPPAGEINSTALL DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
-CAPTION "Ajout/Supression de programmes"
-FONT 8, "MS Shell Dlg", 0, 0, 0x0
-BEGIN
-  ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,18,16,16
-  LTEXT "Pour installer un nouveau programme, cliquez sur Installer",-1,36,18,PROPSHEETWIDTH-48,8
-  PUSHBUTTON "&Installer...", IDC_INSTALL, PROPSHEETWIDTH-(72), 36, 60, 14
-  LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
-  
-  ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
-  LTEXT "Les logiciels suivant peuvent être supprimés automatiquement. Pour supprimer un programme ou modifier ses composantes installées, sélectionnez-le dans la liste et cliquez sur Ajouter/Supprimer.",-1,36,72,PROPSHEETWIDTH-48,32
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
-  PUSHBUTTON "Ajouter/Supp&rimer", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
-END
-
-IDD_PROPPAGEROSSETUP DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
-CAPTION "Configuration de ReactOS"
-FONT 8, "MS Shell Dlg", 0, 0, 0x0
-BEGIN
-
-END
-
-IDD_FIRSTPAGE DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
-CAPTION "Créer un raccourci"
-FONT 8, "MS Shell Dlg", 0, 0, 0x0
-BEGIN
-  LTEXT "Texte 1", -1, 115, 15, 160, 24
-  LTEXT "Texte 2", -1, 115, 35, 160, 17
-END
-
-IDD_SUBMIT_REPORT DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
-CAPTION "Créer un raccourci"
-FONT 8, "MS Shell Dlg", 0, 0, 0x0
-BEGIN
-  LTEXT "Texte 1",-1,10,0,225,40
-  LTEXT "Texte 2",-1,10,40,120,20
-  LTEXT "Texte 3",-1,10,55,120,20
-END
-
-STRINGTABLE 
-BEGIN
-  IDS_CPLSYSTEMNAME "Ajout/Supression de programmes"
-  IDS_CPLSYSTEMDESCRIPTION "Installe et supprime les programmes et les composantes de ReactOS, ainsi que les raccourcis."
-END
+LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL\r
+\r
+IDD_PROPPAGEINSTALL DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT\r
+STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION\r
+CAPTION "Ajout/Supression de programmes"\r
+FONT 8, "MS Shell Dlg", 0, 0, 0x0\r
+BEGIN\r
+  ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,18,16,16\r
+  LTEXT "Pour installer un nouveau programme, cliquez sur Installer",-1,36,18,PROPSHEETWIDTH-48,8\r
+  PUSHBUTTON "&Installer...", IDC_INSTALL, PROPSHEETWIDTH-(72), 36, 60, 14\r
+  LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN\r
+  \r
+  ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16\r
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18\r
+  LTEXT "Les logiciels suivant peuvent être supprimés automatiquement. Pour supprimer un programme ou modifier ses composantes installées, sélectionnez-le dans la liste et cliquez sur Ajouter/Supprimer.",-1,36,72,PROPSHEETWIDTH-48,32\r
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP\r
+  PUSHBUTTON "Ajouter/Supp&rimer", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14\r
+END\r
+\r
+IDD_PROPPAGEROSSETUP DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT\r
+STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION\r
+CAPTION "Configuration de ReactOS"\r
+FONT 8, "MS Shell Dlg", 0, 0, 0x0\r
+BEGIN\r
+\r
+END\r
+\r
+IDD_FIRSTPAGE DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT\r
+STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION\r
+CAPTION "Créer un raccourci"\r
+FONT 8, "MS Shell Dlg", 0, 0, 0x0\r
+BEGIN\r
+  LTEXT "Texte 1", -1, 115, 15, 160, 24\r
+  LTEXT "Texte 2", -1, 115, 35, 160, 17\r
+END\r
+\r
+IDD_SUBMIT_REPORT DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT\r
+STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION\r
+CAPTION "Créer un raccourci"\r
+FONT 8, "MS Shell Dlg", 0, 0, 0x0\r
+BEGIN\r
+  LTEXT "Texte 1",-1,10,0,225,40\r
+  LTEXT "Texte 2",-1,10,40,120,20\r
+  LTEXT "Texte 3",-1,10,55,120,20\r
+END\r
+\r
+STRINGTABLE \r
+BEGIN\r
+  IDS_CPLSYSTEMNAME "Ajout/Supression de programmes"\r
+  IDS_CPLSYSTEMDESCRIPTION "Installe et supprime les programmes et les composantes de ReactOS, ainsi que les raccourcis."\r
+END\r
index 567f2bc..5eec6f6 100644 (file)
@@ -11,8 +11,9 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
   
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
   LTEXT "Ôï áêüëïõèï ëïãéóìéêü ìðïñåß íá áðåãêáôáóôáèåß áõôïìÜôùò. Ãéá íá áðåãêáôáóôÞóåôå Ýíá ðñüãñáììá Þ íá áëëÜîåôå ôá åãêáôåóôçìÝíá ôïõ áñ÷åßá, åðéëÝîôå ôï áðü ôç ëßóôá êáé êÜíôå êëéê óôï ÐñïóèÞêç/Áöáßñåóç.",-1,36,72,PROPSHEETWIDTH-48,32
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
   PUSHBUTTON "ÐñïóèÞêç/&Áöáßñåóç", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
 END
 
index 1141855..a1935ca 100644 (file)
@@ -12,8 +12,9 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN\r
   \r
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16\r
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18\r
   LTEXT "A következõ szoftvereket lehet eltávolítani. A szoftver törléséhez vagy összetevõinek modosításához kattints a szoftverre a listában, majd kattints a Hozzáadás/eltávolítás gombra.",-1,36,72,PROPSHEETWIDTH-48,32\r
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP\r
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP\r
   PUSHBUTTON "Hozzáadás/eltávolítás", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14\r
 END\r
 \r
index d949a5a..eb296e0 100644 (file)
@@ -11,8 +11,9 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
   
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
   LTEXT "\82±\82ê\82ç\82Ì\83v\83\8d\83O\83\89\83\80\82Í\8e©\93®\82Å\8dí\8f\9c\82·\82é\82±\82Æ\82ª\82Å\82«\82Ü\82·\81B\83v\83\8d\83O\83\89\83\80\82ð\95Ï\8dX\82µ\82½\82è\81A\83R\83\93\83s\83\85\81[\83^\82©\82ç\8dí\8f\9c\82µ\82½\82è\82·\82é\82É\82Í\81A\88ê\97\97\82©\82ç\96Ú\93I\82Ì\83v\83\8d\83O\83\89\83\80\82ð\91I\91ð\82µ\81A[\95Ï\8dX\82Æ\8dí\8f\9c\82ð\83N\83\8a\83b\83N\82µ\82Ä\82­\82¾\82³\82¢\81B",-1,36,72,PROPSHEETWIDTH-48,32
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
   PUSHBUTTON "\95Ï\8dX\82Æ\8dí\8f\9c(&R)", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
 END
 
index 97565a2..02dfcd7 100644 (file)
@@ -11,8 +11,9 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
   
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
   LTEXT "&De volgende software kan automatisch worden verwijderd. U verwijdert een programma of wijzigt de geïnstalleerde onderdelen door het programma te selecteren en op Toevoegen/verwijderen te klikken.",-1,36,72,PROPSHEETWIDTH-48,32
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
   PUSHBUTTON "Toe&voegen/verwijderen", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14
 END
 
index f5eabf4..9f8bcfa 100644 (file)
@@ -13,8 +13,9 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN\r
   \r
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16\r
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18\r
   LTEXT "Nastêpuj¹ce oprogramowanie mo¿e byæ automatycznie usuniête. ¯eby usun¹c program, albo zmodyfikowaæ zainstalowane komponenty, wybierz program z listy i kliknij Dodaj/Usuñ.",-1,36,72,PROPSHEETWIDTH-48,32\r
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP\r
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP\r
   PUSHBUTTON "Dodaj/&Usuñ", IDC_ADDREMOVE, PROPSHEETWIDTH-72, 198, 60, 14\r
 END\r
 \r
index 0db9c75..a62fd27 100644 (file)
@@ -11,8 +11,9 @@ BEGIN
   LTEXT "", -1, PROPSHEETPADDING, 63, PROPSHEETWIDTH-12, 1, NOT WS_GROUP | SS_SUNKEN
   
   ICON            IDI_CPLSYSTEM,-1,PROPSHEETPADDING,76,16,16
+  CONTROL "&Show updates",IDC_SHOWUPDATES,"button",BS_AUTOCHECKBOX | WS_TABSTOP,PROPSHEETPADDING, 105, 119, 18
   LTEXT "×òîáû óñòàíîâèòü ïðîãðàììó èëè èçìåíèòü å¸ óñòàíîâëåííûå êîìïîíåíòû, âûäåëèòå å¸ â ñïèñêå è íàæìèòå ""Çàìåíèòü/Óäàëèòü"".",-1,36,72,PROPSHEETWIDTH-48,32
-  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 105, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
+  LISTBOX IDC_SOFTWARELIST, PROPSHEETPADDING, 123, PROPSHEETWIDTH-12, 88, LBS_STANDARD | WS_TABSTOP
   PUSHBUTTON "&Çàìåíèòü/Óäàëèòü", IDC_ADDREMOVE, PROPSHEETWIDTH-98, 198, 85, 14
 END
 
index 5709834..6db3a56 100644 (file)
@@ -105,65 +105,113 @@ CallUninstall(HWND hwndDlg)
 }
 
 
-/* Property page dialog callback */
-static INT_PTR CALLBACK
-InstallPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam)
+static void FillSoftwareList(HWND hwndDlg)
 {
   TCHAR pszName[MAX_PATH];
   TCHAR pszDisplayName[MAX_PATH];
+  TCHAR pszParentKeyName[MAX_PATH];
   FILETIME FileTime;
   HKEY hKey;
   HKEY hSubKey;
   DWORD dwType;
   DWORD dwSize;
+  DWORD dwValue = 0;
+  BOOL bIsUpdate = FALSE;
+  BOOL bIsSystemComponent = FALSE;
+  BOOL bShowUpdates = FALSE;
   int i;
   ULONG index;
 
-  switch (uMsg)
+  bShowUpdates = (SendMessage(GetDlgItem(hwndDlg, IDC_SHOWUPDATES), BM_GETCHECK, 0, 0) == BST_CHECKED);
+
+  if (RegOpenKey(HKEY_LOCAL_MACHINE,
+                 _TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall"),
+                 &hKey) != ERROR_SUCCESS)
   {
-    case WM_INITDIALOG:
-      EnableWindow(GetDlgItem(hwndDlg,IDC_INSTALL), FALSE);
-      if (RegOpenKey(HKEY_LOCAL_MACHINE,
-                     _TEXT("Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall"),
-                     &hKey) != ERROR_SUCCESS)
+    MessageBox(hwndDlg,
+               _TEXT("Unable to open Uninstall Key"),
+               _TEXT("Error"),
+               MB_ICONSTOP);
+    return;
+  }
+
+  i = 0;
+  dwSize = MAX_PATH;
+  while (RegEnumKeyEx (hKey, i, pszName, &dwSize, NULL, NULL, NULL, &FileTime) == ERROR_SUCCESS)
+  {
+    if (RegOpenKey(hKey,pszName,&hSubKey)==ERROR_SUCCESS)
+    {
+      dwType = REG_DWORD;
+      dwSize = sizeof(DWORD);
+      if (RegQueryValueEx(hSubKey,
+                          _TEXT("SystemComponent"),
+                          NULL,
+                          &dwType,
+                          (LPBYTE)&dwValue,
+                          &dwSize) == ERROR_SUCCESS)
       {
-        MessageBox(hwndDlg,
-                   _TEXT("Unable to open Uninstall Key"),
-                   _TEXT("Error"),
-                   MB_ICONSTOP);
-        return FALSE;
+        bIsSystemComponent = (dwValue == 0x1);
       }
-
-      i = 0;
+      else {
+        bIsSystemComponent = FALSE;
+      }
+      dwType = REG_SZ;
+      dwSize = MAX_PATH;
+      bIsUpdate = (RegQueryValueEx(hSubKey,
+                          _TEXT("ParentKeyName"),
+                          NULL,
+                          &dwType,
+                          (LPBYTE)pszParentKeyName,
+                          &dwSize) == ERROR_SUCCESS);
       dwSize = MAX_PATH;
-      while (RegEnumKeyEx (hKey, i, pszName, &dwSize, NULL, NULL, NULL, &FileTime) == ERROR_SUCCESS)
+      if (RegQueryValueEx(hSubKey,
+                          _TEXT("DisplayName"),
+                          NULL,
+                          &dwType,
+                          (LPBYTE)pszDisplayName,
+                          &dwSize) == ERROR_SUCCESS)
       {
-        if (RegOpenKey(hKey,pszName,&hSubKey)==ERROR_SUCCESS)
+        if ((!bIsUpdate) && (!bIsSystemComponent))
         {
-          dwType = REG_SZ;
-          dwSize = MAX_PATH;
-          if (RegQueryValueEx(hSubKey,
-                              _TEXT("DisplayName"),
-                              NULL,
-                              &dwType,
-                              (LPBYTE)pszDisplayName,
-                              &dwSize) == ERROR_SUCCESS)
-          {
-            index = SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_ADDSTRING,0,(LPARAM)pszDisplayName);
-            SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_SETITEMDATA,index,(LPARAM)hSubKey);
-          }
+          index = SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_ADDSTRING,0,(LPARAM)pszDisplayName);
+          SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_SETITEMDATA,index,(LPARAM)hSubKey);
+        }
+        else if (bIsUpdate && bShowUpdates)
+        {
+          index = SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_ADDSTRING,0,(LPARAM)pszDisplayName);
+          SendDlgItemMessage(hwndDlg,IDC_SOFTWARELIST,LB_SETITEMDATA,index,(LPARAM)hSubKey);
         }
-
-        dwSize = MAX_PATH;
-        i++;
       }
+    }
+
+    dwSize = MAX_PATH;
+    i++;
+  }
+
+  RegCloseKey(hKey);
+}
 
-      RegCloseKey(hKey);
+/* Property page dialog callback */
+static INT_PTR CALLBACK
+InstallPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam)
+{
+  switch (uMsg)
+  {
+    case WM_INITDIALOG:
+      EnableWindow(GetDlgItem(hwndDlg,IDC_INSTALL), FALSE);
+      FillSoftwareList(hwndDlg);
       break;
 
     case WM_COMMAND:
       switch (LOWORD(wParam))
       {
+        case IDC_SHOWUPDATES:
+          if (HIWORD(wParam) == BN_CLICKED)
+          {
+            SendDlgItemMessage(hwndDlg, IDC_SOFTWARELIST, LB_RESETCONTENT, 0, 0);
+            FillSoftwareList(hwndDlg);
+          }
+          break;
         case IDC_SOFTWARELIST:
           if (HIWORD(wParam) == LBN_DBLCLK)
           {
index 361158b..f636191 100644 (file)
@@ -23,8 +23,9 @@
 
 /* controls */
 #define IDC_INSTALL 101
-#define IDC_SOFTWARELIST       102
-#define IDC_ADDREMOVE   103
+#define IDC_SOFTWARELIST               102
+#define IDC_ADDREMOVE                  103
+#define IDC_SHOWUPDATES                        104
 
 #endif /* __CPL_RESOURCE_H */