diff --git a/base/shell/explorer/lang/bg-BG.rc b/base/shell/explorer/lang/bg-BG.rc index dc442b1a563cd..2f0f228fa7c2b 100644 --- a/base/shell/explorer/lang/bg-BG.rc +++ b/base/shell/explorer/lang/bg-BG.rc @@ -198,3 +198,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Свойства на задачната лента и на пусковия изборник" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/cs-CZ.rc b/base/shell/explorer/lang/cs-CZ.rc index 7891b90ff9247..9afc0a70fae38 100644 --- a/base/shell/explorer/lang/cs-CZ.rc +++ b/base/shell/explorer/lang/cs-CZ.rc @@ -204,3 +204,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Vlastnosti hlavního panelu a Start menu" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/de-DE.rc b/base/shell/explorer/lang/de-DE.rc index a9adca299ce57..334ca8447d401 100644 --- a/base/shell/explorer/lang/de-DE.rc +++ b/base/shell/explorer/lang/de-DE.rc @@ -198,3 +198,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Taskleisten- und Startmenüeinstellungen" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/en-US.rc b/base/shell/explorer/lang/en-US.rc index 1b0a76f069295..058373ee50f58 100644 --- a/base/shell/explorer/lang/en-US.rc +++ b/base/shell/explorer/lang/en-US.rc @@ -198,3 +198,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Taskbar and Start Menu" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/es-ES.rc b/base/shell/explorer/lang/es-ES.rc index 87a2365dbe8f5..db3b763e7017f 100644 --- a/base/shell/explorer/lang/es-ES.rc +++ b/base/shell/explorer/lang/es-ES.rc @@ -208,3 +208,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Propiedades de la Barra de tareas y del Menú Inicio" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/et-EE.rc b/base/shell/explorer/lang/et-EE.rc index ad12d0d076c45..b0f8e97e033dc 100644 --- a/base/shell/explorer/lang/et-EE.rc +++ b/base/shell/explorer/lang/et-EE.rc @@ -205,3 +205,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Tegumiriba ja Menüü Start" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/fi-FI.rc b/base/shell/explorer/lang/fi-FI.rc index 795c6da7edc26..5ce999a6a696a 100644 --- a/base/shell/explorer/lang/fi-FI.rc +++ b/base/shell/explorer/lang/fi-FI.rc @@ -198,3 +198,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Tehtäväpalkki ja Käynnistä Valikko" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/fr-FR.rc b/base/shell/explorer/lang/fr-FR.rc index 47a2b5e940a07..36d0965baee78 100644 --- a/base/shell/explorer/lang/fr-FR.rc +++ b/base/shell/explorer/lang/fr-FR.rc @@ -198,3 +198,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Barrre des tâches et menu démarrer" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/he-IL.rc b/base/shell/explorer/lang/he-IL.rc index d1122ffd1b9cc..02f8c86149d2d 100644 --- a/base/shell/explorer/lang/he-IL.rc +++ b/base/shell/explorer/lang/he-IL.rc @@ -198,3 +198,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "שורת המשימות ושולחן העבודה" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/it-IT.rc b/base/shell/explorer/lang/it-IT.rc index 9b702bd46d297..3cef0060054ce 100644 --- a/base/shell/explorer/lang/it-IT.rc +++ b/base/shell/explorer/lang/it-IT.rc @@ -198,3 +198,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Proprietà della Barra delle applicazioni e del Menú di avvio" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/ja-JP.rc b/base/shell/explorer/lang/ja-JP.rc index 5d724a86a9961..19549bed24f6e 100644 --- a/base/shell/explorer/lang/ja-JP.rc +++ b/base/shell/explorer/lang/ja-JP.rc @@ -198,3 +198,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "タスクバーとスタートメニュー" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/ko-KR.rc b/base/shell/explorer/lang/ko-KR.rc index 1e991e54273b4..8aaa1964071b8 100644 --- a/base/shell/explorer/lang/ko-KR.rc +++ b/base/shell/explorer/lang/ko-KR.rc @@ -200,3 +200,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Taskbar and Start Menu" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/lt-LT.rc b/base/shell/explorer/lang/lt-LT.rc index b8f0457445755..c50865336aa62 100644 --- a/base/shell/explorer/lang/lt-LT.rc +++ b/base/shell/explorer/lang/lt-LT.rc @@ -201,3 +201,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Taskbar and Start Menu" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/ms-MY.rc b/base/shell/explorer/lang/ms-MY.rc index 16b9590a90f07..ff49f348c33a2 100644 --- a/base/shell/explorer/lang/ms-MY.rc +++ b/base/shell/explorer/lang/ms-MY.rc @@ -200,3 +200,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Bar Tugas dan Menu Mula" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/nl-NL.rc b/base/shell/explorer/lang/nl-NL.rc index c09e1e5d55bd8..d2057f48f5cd8 100644 --- a/base/shell/explorer/lang/nl-NL.rc +++ b/base/shell/explorer/lang/nl-NL.rc @@ -198,3 +198,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Taakbalk en menu Start eigenschappen" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/no-NO.rc b/base/shell/explorer/lang/no-NO.rc index 0fd9c5127ea57..eba4951939090 100644 --- a/base/shell/explorer/lang/no-NO.rc +++ b/base/shell/explorer/lang/no-NO.rc @@ -199,3 +199,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Egenskaper for oppgavelinjen og startmeny" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/pl-PL.rc b/base/shell/explorer/lang/pl-PL.rc index 062d743656848..49ee6765b34ea 100644 --- a/base/shell/explorer/lang/pl-PL.rc +++ b/base/shell/explorer/lang/pl-PL.rc @@ -208,3 +208,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Właściwości paska zadań i menu Start" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/pt-BR.rc b/base/shell/explorer/lang/pt-BR.rc index 03b7f10c896eb..faa6550a1e78d 100644 --- a/base/shell/explorer/lang/pt-BR.rc +++ b/base/shell/explorer/lang/pt-BR.rc @@ -200,3 +200,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Propriedades do Barra de Tarefas e Menu Iniciar" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/ro-RO.rc b/base/shell/explorer/lang/ro-RO.rc index c27021df73dfd..7b4bd83b937c9 100644 --- a/base/shell/explorer/lang/ro-RO.rc +++ b/base/shell/explorer/lang/ro-RO.rc @@ -200,3 +200,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Bara de activități și meniul „Pornire”" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/ru-RU.rc b/base/shell/explorer/lang/ru-RU.rc index c24292c8e5ad1..1631c47bc0945 100644 --- a/base/shell/explorer/lang/ru-RU.rc +++ b/base/shell/explorer/lang/ru-RU.rc @@ -200,3 +200,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Меню ""Пуск"" и панель задач" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/sk-SK.rc b/base/shell/explorer/lang/sk-SK.rc index b2d8d1a121e15..69878acdef12e 100644 --- a/base/shell/explorer/lang/sk-SK.rc +++ b/base/shell/explorer/lang/sk-SK.rc @@ -203,3 +203,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Vlastnosti panela úloh a ponuky Štart" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/sq-AL.rc b/base/shell/explorer/lang/sq-AL.rc index de3ccbf82d0d2..33b69fc4201f1 100644 --- a/base/shell/explorer/lang/sq-AL.rc +++ b/base/shell/explorer/lang/sq-AL.rc @@ -202,3 +202,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Taskbar dhe Start Menu" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/tr-TR.rc b/base/shell/explorer/lang/tr-TR.rc index 43c207abd4f8d..0cb1352044a36 100644 --- a/base/shell/explorer/lang/tr-TR.rc +++ b/base/shell/explorer/lang/tr-TR.rc @@ -200,3 +200,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Görev Çubuğu ve Başlat Seçkesi" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/uk-UA.rc b/base/shell/explorer/lang/uk-UA.rc index 10be2773658c5..c83c4016a996c 100644 --- a/base/shell/explorer/lang/uk-UA.rc +++ b/base/shell/explorer/lang/uk-UA.rc @@ -206,3 +206,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "Властивості меню Пуск та Панелі завдань" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/zh-CN.rc b/base/shell/explorer/lang/zh-CN.rc index 89bb3b3332ddf..aa456fc336a9b 100644 --- a/base/shell/explorer/lang/zh-CN.rc +++ b/base/shell/explorer/lang/zh-CN.rc @@ -207,3 +207,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "任务栏和开始菜单属性" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/lang/zh-TW.rc b/base/shell/explorer/lang/zh-TW.rc index 87a00dbc2cb04..8cbb5b123f702 100644 --- a/base/shell/explorer/lang/zh-TW.rc +++ b/base/shell/explorer/lang/zh-TW.rc @@ -206,3 +206,18 @@ STRINGTABLE BEGIN IDS_TASKBAR_STARTMENU_PROP_CAPTION "工作列及開始功能表" END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_NAME "Name" + IDS_NOTIF_BEH_BEHAVIOR "Behavior" + IDS_NOTIF_BEH_HIDE_INACTIVE "Hide when inactive" + IDS_NOTIF_BEH_HIDE "Always hide" + IDS_NOTIF_BEH_SHOW "Always show" +END + +STRINGTABLE +BEGIN + IDS_NOTIF_BEH_CURRENT "Current Items" + IDS_NOTIF_BEH_PAST "Past Items" +END diff --git a/base/shell/explorer/notifyiconscust.cpp b/base/shell/explorer/notifyiconscust.cpp index b7adccb35ab04..fe2aa281ca488 100644 --- a/base/shell/explorer/notifyiconscust.cpp +++ b/base/shell/explorer/notifyiconscust.cpp @@ -2,6 +2,7 @@ * ReactOS Explorer * * Copyright 2015 Jared Smudde + * Copyright 2018 Denis Malikov * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -20,31 +21,244 @@ #include "precomp.h" +VOID ShowBehaviorCombo(HWND hwnd, LPNMITEMACTIVATE itemdata) +{ + HWND hListView = GetDlgItem(hwnd, IDC_NOTIFICATION_LIST); + HWND hCombo = GetDlgItem(hwnd, IDC_NOTIFICATION_BEHAVIOUR); + + if (ComboBox_GetCount(hCombo) == 0) + { + WCHAR sShow[100]; + WCHAR sHide[100]; + WCHAR sInactive[100]; + LoadStringW(NULL, IDS_NOTIF_BEH_SHOW, sShow, _countof(sShow)); + LoadStringW(NULL, IDS_NOTIF_BEH_HIDE, sHide, _countof(sHide)); + LoadStringW(NULL, IDS_NOTIF_BEH_HIDE_INACTIVE, sInactive, _countof(sInactive)); + ComboBox_AddString(hCombo, sShow); + ComboBox_AddString(hCombo, sHide); + ComboBox_AddString(hCombo, sInactive); + ComboBox_SetCurSel(hCombo, 0); + } + + int iItem = itemdata->iItem; + if (iItem > -1) + { + POINT pt; + RECT rc; + ListView_GetItemPosition(hListView, iItem, &pt); + GetWindowRect(hListView, &rc); + POINT lv = { rc.left, rc.top }; + ScreenToClient(hwnd, &lv); + + LVITEM lvItem; + lvItem.iItem = iItem; + lvItem.iSubItem = 0; + lvItem.mask = LVIF_PARAM; + ListView_GetItem(hListView, &lvItem); + + ComboBox_SetCurSel(hCombo, lvItem.lParam); + + int iNameWidth = ListView_GetColumnWidth(hListView, 0); + int iBehaviorWidth = ListView_GetColumnWidth(hListView, 1); + + ComboBox_SetItemData(hCombo, 0, iItem); + SetWindowPos(hCombo, HWND_TOP, iNameWidth + lv.x, pt.y + lv.y, iBehaviorWidth, 20, SWP_SHOWWINDOW); + } + else + { + ShowWindow(hCombo, SW_HIDE); + } +} + +VOID SetItemBehavior(HWND hwnd, HWND hCombo) +{ + int iState = ComboBox_GetCurSel(hCombo); + int iItem = (int)ComboBox_GetItemData(hCombo, 0); + HWND hListView = GetDlgItem(hwnd, IDC_NOTIFICATION_LIST); + + WCHAR szBehavior[100]; + int resId = iState == 0 ? IDS_NOTIF_BEH_SHOW : (iState == 1 ? IDS_NOTIF_BEH_HIDE : IDS_NOTIF_BEH_HIDE_INACTIVE); + LoadStringW(NULL, resId, szBehavior, _countof(szBehavior)); + + LVITEM lvItem; + ZeroMemory(&lvItem, sizeof(lvItem)); + lvItem.mask = LVIF_TEXT; + lvItem.iItem = iItem; + lvItem.iSubItem = 1; + lvItem.cchTextMax = 100; + lvItem.pszText = szBehavior; + ListView_SetItem(hListView, &lvItem); + + ZeroMemory(&lvItem, sizeof(lvItem)); + lvItem.mask = LVIF_PARAM; + lvItem.iSubItem = 0; + lvItem.lParam = iState; + lvItem.iItem = iItem; + ListView_SetItem(hListView, &lvItem); + + ShowWindow(hCombo, SW_HIDE); +} + +VOID ResetBehaviors(HWND hwnd) +{ + HWND hListView = GetDlgItem(hwnd, IDC_NOTIFICATION_LIST); + int count = ListView_GetItemCount(hListView); + WCHAR szBehavior[100]; + LoadStringW(NULL, IDS_NOTIF_BEH_HIDE_INACTIVE, szBehavior, _countof(szBehavior)); + + LVITEM lvi; + ZeroMemory(&lvi, sizeof(lvi)); + lvi.cchTextMax = _countof(szBehavior); + lvi.pszText = szBehavior; + lvi.lParam = 2; + + for (int i = 0; i < count; i++) + { + lvi.mask = LVIF_PARAM; + lvi.iItem = i; + lvi.iSubItem = 0; + ListView_SetItem(hListView, &lvi); + + lvi.mask = LVIF_TEXT; + lvi.iItem = i; + lvi.iSubItem = 1; + ListView_SetItem(hListView, &lvi); + } +} + +VOID InitializeListView(HWND hwnd) +{ + HWND hListView = GetDlgItem(hwnd, IDC_NOTIFICATION_LIST); + + LVCOLUMN lvColumn; + WCHAR sName[256]; + + SendMessage(hListView, LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_FULLROWSELECT); + + ZeroMemory(&lvColumn, sizeof(lvColumn)); + lvColumn.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM; + + LoadStringW(NULL, IDS_NOTIF_BEH_NAME, sName, _countof(sName)); + lvColumn.pszText = sName; + lvColumn.cx = 190; + ListView_InsertColumn(hListView, 0, &lvColumn); + + LoadStringW(NULL, IDS_NOTIF_BEH_BEHAVIOR, sName, _countof(sName)); + lvColumn.pszText = sName; + lvColumn.cx = 130; + ListView_InsertColumn(hListView, 1, &lvColumn); + + ListView_EnableGroupView(hListView, TRUE); + + LVGROUP lvGroup; + lvGroup.cbSize = sizeof(LVGROUP); + lvGroup.mask = LVGF_HEADER | LVGF_ALIGN | LVGF_GROUPID | LVGF_STATE; + lvGroup.uAlign = LVGA_FOOTER_LEFT; + lvGroup.state = LVGS_NORMAL; + + LoadStringW(NULL, IDS_NOTIF_BEH_CURRENT, sName, _countof(sName)); + lvGroup.pszHeader = sName; + lvGroup.iGroupId = 0; + ListView_InsertGroup(hListView, -1, &lvGroup); + + LoadStringW(NULL, IDS_NOTIF_BEH_PAST, sName, _countof(sName)); + lvGroup.pszHeader = sName; + lvGroup.iGroupId = 1; + ListView_InsertGroup(hListView, -1, &lvGroup); +} + INT_PTR CALLBACK CustomizeNotifyIconsProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) { switch(Message) { - case WM_INITDIALOG: - - return TRUE; + case WM_INITDIALOG: + InitializeListView(hwnd); + break; + case WM_NOTIFY: + if (LOWORD(wParam) == IDC_NOTIFICATION_LIST && ((LPNMHDR)lParam)->code == NM_CLICK) + { + ShowBehaviorCombo(hwnd, (LPNMITEMACTIVATE)lParam); + } + else return FALSE; + break; case WM_COMMAND: - switch(LOWORD(wParam)) - { - case IDOK: - EndDialog(hwnd, IDOK); - break; - case IDCANCEL: - EndDialog(hwnd, IDCANCEL); - break; - } - break; - default: - return FALSE; + switch(LOWORD(wParam)) + { + case IDOK: + EndDialog(hwnd, IDOK); + break; + case IDCANCEL: + EndDialog(hwnd, IDCANCEL); + break; + case IDC_NOTIFICATION_BEHAVIOUR: + if (HIWORD(wParam) == CBN_SELCHANGE) + { + SetItemBehavior(hwnd, (HWND)lParam); + } + break; + case IDC_TASKBARPROP_NOTIREST: + ResetBehaviors(hwnd); + break; + } + break; + default: + return FALSE; } return TRUE; } -VOID ShowCustomizeNotifyIcons(HINSTANCE hInst, HWND hExplorer) +VOID SetNotifyIcons(HWND hDialog, IUnknown *TrayNotify) +{ + HWND hListView = GetDlgItem(hDialog, IDC_NOTIFICATION_LIST); + CToolbar* toolbar = CTrayNotifyWnd_GetTrayToolbar(TrayNotify); + + if (toolbar == NULL) return; + + HIMAGELIST tbImageList = (HIMAGELIST)toolbar->GetImageList(); + HIMAGELIST lvImageList = ImageList_Duplicate(tbImageList); + ListView_SetImageList(hListView, lvImageList, LVSIL_SMALL); + + WCHAR sShow[100]; + WCHAR sHide[100]; + WCHAR sInactive[100]; + + LoadStringW(NULL, IDS_NOTIF_BEH_SHOW, sShow, _countof(sShow)); + LoadStringW(NULL, IDS_NOTIF_BEH_HIDE, sHide, _countof(sHide)); + LoadStringW(NULL, IDS_NOTIF_BEH_HIDE_INACTIVE, sInactive, _countof(sInactive)); + + LVITEM lvItem; + TBBUTTON tbtn; + + DWORD nButtons = toolbar->GetButtonCount(); + for (UINT i = 0; i != nButtons; i++) + { + if (toolbar->GetButton(i, &tbtn)) + { + ZeroMemory(&lvItem, sizeof(lvItem)); + lvItem.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_GROUPID | LVIF_PARAM; + lvItem.cchTextMax = 256; + lvItem.iImage = tbtn.iBitmap; + lvItem.iItem = i; + lvItem.pszText = ((NOTIFYICONDATA*)tbtn.dwData)->szTip; + lvItem.lParam = i % 3; + ListView_InsertItem(hListView, &lvItem); + + ZeroMemory(&lvItem, sizeof(lvItem)); + lvItem.mask = LVIF_TEXT; + lvItem.iItem = i; + lvItem.iSubItem = 1; + lvItem.cchTextMax = 100; + lvItem.pszText = (i % 3) == 0 ? sShow : ((i % 3) == 1 ? sHide : sInactive); + ListView_SetItem(hListView, &lvItem); + } + } +} + +VOID ShowCustomizeNotifyIcons(HINSTANCE hInst, HWND hExplorer, IUnknown *TrayNotify) { - DialogBoxW(hInst, MAKEINTRESOURCEW(IDD_NOTIFICATIONS_CUSTOMIZE), hExplorer, CustomizeNotifyIconsProc); + HWND hDlg = CreateDialogW(hInst, MAKEINTRESOURCEW(IDD_NOTIFICATIONS_CUSTOMIZE), hExplorer, CustomizeNotifyIconsProc); + + SetNotifyIcons(hDlg, TrayNotify); + + ShowWindow(hDlg, SW_SHOW); } \ No newline at end of file diff --git a/base/shell/explorer/precomp.h b/base/shell/explorer/precomp.h index 228fc75c5f603..be4355db17ff3 100644 --- a/base/shell/explorer/precomp.h +++ b/base/shell/explorer/precomp.h @@ -24,6 +24,10 @@ #include #include #include +#include + +#undef SubclassWindow + #include #include #include @@ -238,7 +242,7 @@ ProcessStartupItems(VOID); */ VOID -DisplayTrayProperties(IN HWND hwndOwner, IN HWND hwndTaskbar); +DisplayTrayProperties(IN HWND hwndOwner, IN HWND hwndTaskbar, IN IUnknown *Tray); /* * desktop.cpp @@ -254,7 +258,7 @@ DesktopDestroyShellWindow(IN HANDLE hDesktop); * notifyiconscust.cpp */ VOID -ShowCustomizeNotifyIcons(HINSTANCE, HWND); +ShowCustomizeNotifyIcons(HINSTANCE, HWND, IUnknown*); /* * taskband.cpp @@ -340,10 +344,18 @@ HRESULT CTrayClockWnd_CreateInstance(HWND hwndParent, REFIID riid, void **ppv); #define NTNWM_REALIGN (0x1) +struct InternalIconData : NOTIFYICONDATA +{ + // Must keep a separate copy since the original is unioned with uTimeout. + UINT uVersionCopy; +}; + HRESULT CTrayNotifyWnd_CreateInstance(HWND hwndParent, REFIID riid, void **ppv); +CToolbar* CTrayNotifyWnd_GetTrayToolbar(IUnknown *pTray); /* SysPagerWnd */ HRESULT CSysPagerWnd_CreateInstance(HWND hwndParent, REFIID riid, void **ppv); +CToolbar* CSysPagerWnd_GetTrayToolbar(IUnknown *pPager); /* * taskswnd.c diff --git a/base/shell/explorer/resource.h b/base/shell/explorer/resource.h index aed1e08a6043a..a4488b73765d5 100644 --- a/base/shell/explorer/resource.h +++ b/base/shell/explorer/resource.h @@ -102,6 +102,15 @@ #define IDS_HELP_COMMAND 732 #define IDS_TASKBAR_STARTMENU_PROP_CAPTION 810 +#define IDS_NOTIF_BEH_NAME 1000 +#define IDS_NOTIF_BEH_BEHAVIOR 1001 +#define IDS_NOTIF_BEH_HIDE_INACTIVE 1002 +#define IDS_NOTIF_BEH_HIDE 1003 +#define IDS_NOTIF_BEH_SHOW 1004 + +#define IDS_NOTIF_BEH_CURRENT 1403 +#define IDS_NOTIF_BEH_PAST 1404 + /*******************************************************************************\ |* Control Resources *| \*******************************************************************************/ diff --git a/base/shell/explorer/syspager.cpp b/base/shell/explorer/syspager.cpp index fa2aa73b3674d..a1904a9ef75ee 100644 --- a/base/shell/explorer/syspager.cpp +++ b/base/shell/explorer/syspager.cpp @@ -21,12 +21,6 @@ #include "precomp.h" -struct InternalIconData : NOTIFYICONDATA -{ - // Must keep a separate copy since the original is unioned with uTimeout. - UINT uVersionCopy; -}; - struct IconWatcherData { HANDLE hProcess; @@ -208,6 +202,7 @@ class CSysPagerWnd : LRESULT OnCopyData(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnSettingChanged(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnGetMinimumSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); + CNotifyToolbar* GetToolbar(); public: @@ -1463,7 +1458,24 @@ HRESULT CSysPagerWnd::Initialize(IN HWND hWndParent) return S_OK; } +CNotifyToolbar* CSysPagerWnd::GetToolbar() +{ + return &Toolbar; +} + HRESULT CSysPagerWnd_CreateInstance(HWND hwndParent, REFIID riid, void **ppv) { return ShellObjectCreatorInit(hwndParent, riid, ppv); } + +CToolbar* CSysPagerWnd_GetTrayToolbar(IUnknown *pPager) +{ + CSysPagerWnd *pager = static_cast(pPager); + + if (pager != NULL) + { + return pager->GetToolbar(); + } + + return NULL; +} diff --git a/base/shell/explorer/trayntfy.cpp b/base/shell/explorer/trayntfy.cpp index 4326ca727ea55..97123d3d5ce81 100644 --- a/base/shell/explorer/trayntfy.cpp +++ b/base/shell/explorer/trayntfy.cpp @@ -330,6 +330,11 @@ class CTrayNotifyWnd : return E_NOTIMPL; } + IUnknown* GetPager() + { + return m_pager; + } + DECLARE_NOT_AGGREGATABLE(CTrayNotifyWnd) DECLARE_PROTECT_FINAL_CONSTRUCT() @@ -369,3 +374,15 @@ HRESULT CTrayNotifyWnd_CreateInstance(HWND hwndParent, REFIID riid, void **ppv) { return ShellObjectCreatorInit(hwndParent, riid, ppv); } + +CToolbar* CTrayNotifyWnd_GetTrayToolbar(IUnknown* pTray) +{ + CTrayNotifyWnd *tray = static_cast(pTray); + + if (tray != NULL) + { + return CSysPagerWnd_GetTrayToolbar(tray->GetPager()); + } + + return NULL; +} diff --git a/base/shell/explorer/trayprop.cpp b/base/shell/explorer/trayprop.cpp index 03823ccf97de7..cae6aded1daa4 100644 --- a/base/shell/explorer/trayprop.cpp +++ b/base/shell/explorer/trayprop.cpp @@ -50,6 +50,7 @@ class CTaskBarSettingsPage : public CPropertyPageImpl HBITMAP m_hbmpTaskbar; HBITMAP m_hbmpTray; HWND m_hwndTaskbar; + IUnknown *m_TrayNotify; void UpdateDialog() { @@ -123,10 +124,11 @@ class CTaskBarSettingsPage : public CPropertyPageImpl CHAIN_MSG_MAP(CPropertyPageImpl) END_MSG_MAP() - CTaskBarSettingsPage(HWND hwnd): + CTaskBarSettingsPage(HWND hwnd, IUnknown *Tray): m_hbmpTaskbar(NULL), m_hbmpTray(NULL), - m_hwndTaskbar(hwnd) + m_hwndTaskbar(hwnd), + m_TrayNotify(Tray) { } @@ -155,7 +157,7 @@ class CTaskBarSettingsPage : public CPropertyPageImpl LRESULT OnCustomizeTrayIcons(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled) { - ShowCustomizeNotifyIcons(hExplorerInstance, m_hWnd); + ShowCustomizeNotifyIcons(hExplorerInstance, m_hWnd, m_TrayNotify); return 0; } @@ -246,11 +248,11 @@ class CStartMenuSettingsPage : public CPropertyPageImpl }; VOID -DisplayTrayProperties(IN HWND hwndOwner, IN HWND hwndTaskbar) +DisplayTrayProperties(IN HWND hwndOwner, IN HWND hwndTaskbar, IN IUnknown *Tray) { PROPSHEETHEADER psh; HPROPSHEETPAGE hpsp[2]; - CTaskBarSettingsPage tbSettingsPage(hwndTaskbar); + CTaskBarSettingsPage tbSettingsPage(hwndTaskbar, Tray); CStartMenuSettingsPage smSettingsPage; CStringW caption; diff --git a/base/shell/explorer/traywnd.cpp b/base/shell/explorer/traywnd.cpp index a3c1f3670f145..425dbf3b1369f 100644 --- a/base/shell/explorer/traywnd.cpp +++ b/base/shell/explorer/traywnd.cpp @@ -405,7 +405,7 @@ class CTrayWindow : m_TrayPropertiesOwner = hwnd; - DisplayTrayProperties(hwnd, m_hWnd); + DisplayTrayProperties(hwnd, m_hWnd, m_TrayNotifyInstance); m_TrayPropertiesOwner = NULL; ::DestroyWindow(hwnd); @@ -515,7 +515,7 @@ class CTrayWindow : break; case ID_SHELL_CMD_CUST_NOTIF: - ShowCustomizeNotifyIcons(hExplorerInstance, m_hWnd); + ShowCustomizeNotifyIcons(hExplorerInstance, m_hWnd, m_TrayNotifyInstance); break; case ID_SHELL_CMD_ADJUST_DAT: @@ -2778,6 +2778,8 @@ class CTrayWindow : SetWindowPos(hWndInsertAfter, 0, 0, 0, 0, SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE | SWP_SHOWWINDOW); } + g_TaskbarSettings.bHideInactiveIcons = newSettings->bHideInactiveIcons; + g_TaskbarSettings.Save(); return 0; } diff --git a/sdk/include/reactos/rosctrls.h b/sdk/include/reactos/rosctrls.h index f332aca915a25..59eda94080236 100644 --- a/sdk/include/reactos/rosctrls.h +++ b/sdk/include/reactos/rosctrls.h @@ -400,6 +400,11 @@ class CToolbar : return SendMessageW(TB_SETIMAGELIST, 0, reinterpret_cast(himl)); } + HIMAGELIST GetImageList() + { + return (HIMAGELIST)SendMessageW(TB_GETIMAGELIST, 0, 0); + } + public: // Other methods INT HitTest(PPOINT ppt) {