[MPLAY32]
authorHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sun, 24 Aug 2014 14:59:44 +0000 (14:59 +0000)
committerHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sun, 24 Aug 2014 14:59:44 +0000 (14:59 +0000)
- Add a "Play" menu, add keyboard accelerators and add a repeat mode.
  Patch by Ricardo Henke.
- Few whitespace fixes.
- Fix french resources. TO ALL TRANSLATORS: Please update the translations!

CORE-7929 #resolve #comment Committed, thanks!

svn path=/trunk/; revision=63938

24 files changed:
reactos/base/applications/mplay32/lang/bg-BG.rc
reactos/base/applications/mplay32/lang/cs-CZ.rc
reactos/base/applications/mplay32/lang/de-DE.rc
reactos/base/applications/mplay32/lang/en-US.rc
reactos/base/applications/mplay32/lang/es-ES.rc
reactos/base/applications/mplay32/lang/fr-FR.rc
reactos/base/applications/mplay32/lang/he-IL.rc
reactos/base/applications/mplay32/lang/it-IT.rc
reactos/base/applications/mplay32/lang/ja-JP.rc
reactos/base/applications/mplay32/lang/nl-NL.rc
reactos/base/applications/mplay32/lang/no-NO.rc
reactos/base/applications/mplay32/lang/pl-PL.rc
reactos/base/applications/mplay32/lang/pt-BR.rc
reactos/base/applications/mplay32/lang/ro-RO.rc
reactos/base/applications/mplay32/lang/ru-RU.rc
reactos/base/applications/mplay32/lang/sk-SK.rc
reactos/base/applications/mplay32/lang/sq-AL.rc
reactos/base/applications/mplay32/lang/sv-SE.rc
reactos/base/applications/mplay32/lang/tr-TR.rc
reactos/base/applications/mplay32/lang/uk-UA.rc
reactos/base/applications/mplay32/lang/zh-CN.rc
reactos/base/applications/mplay32/lang/zh-TW.rc
reactos/base/applications/mplay32/mplay32.c
reactos/base/applications/mplay32/resource.h

index 71ad20b..bda39f9 100644 (file)
@@ -8,11 +8,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Файл"
     BEGIN
-        MENUITEM "&Отваряне...", IDM_OPEN_FILE
-        MENUITEM "&Затваряне", IDM_CLOSE_FILE
+        MENUITEM "&Отваряне...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Затваряне\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "Из&ход", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -25,6 +32,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Всички поддържани (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index 05e0528..8922ec8 100644 (file)
@@ -9,11 +9,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Soubor"
     BEGIN
-        MENUITEM "&Otevřít...", IDM_OPEN_FILE
-        MENUITEM "&Zavřít", IDM_CLOSE_FILE
+        MENUITEM "&Otevřít...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Zavřít\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Ukončit", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -26,6 +33,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Všechny podporované (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index 10dfb85..337d3da 100644 (file)
@@ -4,11 +4,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Datei"
     BEGIN
-        MENUITEM "Ö&ffnen...", IDM_OPEN_FILE
-        MENUITEM "Sch&ließen", IDM_CLOSE_FILE
+        MENUITEM "Ö&ffnen...\tStrg+O", IDM_OPEN_FILE
+        MENUITEM "Sch&ließen\tStrg+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Beenden", IDM_EXIT
     END
+    POPUP "&Wiedergabe"
+    BEGIN
+        MENUITEM "Wiedergabe/&Pause\tStrg+P", IDC_PLAY
+        MENUITEM "St&opp\tStrg+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "W&iederholen\tStrg+T", IDM_REPEAT
+    END
     POPUP "&Gerät"
     BEGIN
         MENUITEM "&Eigenschaften", IDM_DEVPROPS
@@ -21,6 +28,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Alle unterstützten (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index ce326d3..b8b57fe 100644 (file)
@@ -4,11 +4,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&File"
     BEGIN
-        MENUITEM "&Open...", IDM_OPEN_FILE
-        MENUITEM "&Close", IDM_CLOSE_FILE
+        MENUITEM "&Open...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Close\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Exit", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -21,6 +28,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "All Supported (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index dbf0f6e..23ea431 100644 (file)
@@ -4,11 +4,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Archivo"
     BEGIN
-        MENUITEM "&Abrir...", IDM_OPEN_FILE
-        MENUITEM "&Cerrar", IDM_CLOSE_FILE
+        MENUITEM "&Abrir...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Cerrar\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Salir", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -21,6 +28,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Todos los ficheros soportados (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index db3b38d..dabaca5 100644 (file)
@@ -4,16 +4,23 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Fichier"
     BEGIN
-        MENUITEM "&Ouvrir...", IDM_OPEN_FILE
-        MENUITEM "&Fermer", IDM_CLOSE_FILE
+        MENUITEM "&Ouvrir...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Fermer\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Quitter", IDM_EXIT
     END
-    POPUP "&Device"
+    POPUP "&Lecture"
     BEGIN
-        MENUITEM "&Properties", IDM_DEVPROPS
+        MENUITEM "Lecture/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
         MENUITEM SEPARATOR
-        MENUITEM "&Volume Control", IDM_VOLUMECTL
+        MENUITEM "Répé&ter\tCtrl+T", IDM_REPEAT
+    END
+    POPUP "Périp&hérique"
+    BEGIN
+        MENUITEM "&Propriétés", IDM_DEVPROPS
+        MENUITEM SEPARATOR
+        MENUITEM "Contrôle du &volume", IDM_VOLUMECTL
     END
     POPUP "&Aide"
     BEGIN
@@ -21,6 +28,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Tous les types supportés (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index 56c18d8..5a4e021 100644 (file)
@@ -4,11 +4,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&קובץ"
     BEGIN
-        MENUITEM "&פתח...", IDM_OPEN_FILE
-        MENUITEM "&סגור", IDM_CLOSE_FILE
+        MENUITEM "&פתח...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&סגור\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&יציאה", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -21,6 +28,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "כל הקבצים הנתמכים (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index c45d241..27758bd 100644 (file)
@@ -4,11 +4,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&File"
     BEGIN
-        MENUITEM "&Apri...", IDM_OPEN_FILE
-        MENUITEM "&Chiudi", IDM_CLOSE_FILE
+        MENUITEM "&Apri...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Chiudi\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Esci", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -21,6 +28,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Tutti i tipi supportati (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index f8856aa..bbc8f8e 100644 (file)
@@ -4,11 +4,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "ファイル(&F)"
     BEGIN
-        MENUITEM "開く(&O)...", IDM_OPEN_FILE
-        MENUITEM "閉じる(&C)", IDM_CLOSE_FILE
+        MENUITEM "開く(&O)...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "閉じる(&C)\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "終了(&E)", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -21,6 +28,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "すべてのサポートされたファイル (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index bf8dc6a..aa4e6a8 100644 (file)
@@ -4,11 +4,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Bestand"
     BEGIN
-        MENUITEM "&Openen...", IDM_OPEN_FILE
-        MENUITEM "&Sluiten", IDM_CLOSE_FILE
+        MENUITEM "&Openen...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Sluiten\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Afsluiten", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -21,6 +28,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Mediabestanden (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index ccc77a5..4aa2da8 100644 (file)
@@ -4,11 +4,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Fil"
     BEGIN
-        MENUITEM "&Åpne...", IDM_OPEN_FILE
-        MENUITEM "&Lukk", IDM_CLOSE_FILE
+        MENUITEM "&Åpne...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Lukk\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Avslutt", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -21,6 +28,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Alle kompaktible filer  (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index fdcb893..2421b38 100644 (file)
@@ -12,11 +12,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Plik"
     BEGIN
-        MENUITEM "&Otwórz...", IDM_OPEN_FILE
-        MENUITEM "&Zamknij", IDM_CLOSE_FILE
+        MENUITEM "&Otwórz...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Zamknij\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Wyjdź", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Urządzenie"
     BEGIN
         MENUITEM "&Właściwości", IDM_DEVPROPS
@@ -29,6 +36,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Wszystkie formaty (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index e1bf6e2..8626936 100644 (file)
@@ -6,11 +6,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Arquivo"
     BEGIN
-        MENUITEM "&Abrir...", IDM_OPEN_FILE
-        MENUITEM "&Fechar", IDM_CLOSE_FILE
+        MENUITEM "&Abrir...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Fechar\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Sair", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -23,6 +30,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Todos os formatos (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index b2c224c..0150923 100644 (file)
@@ -10,11 +10,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Fișier"
     BEGIN
-        MENUITEM "&Deschidere…", IDM_OPEN_FILE
-        MENUITEM "Î&nchide", IDM_CLOSE_FILE
+        MENUITEM "&Deschidere…\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "Î&nchide\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "I&eșire", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Dispozitiv"
     BEGIN
         MENUITEM "&Proprietăți…", IDM_DEVPROPS
@@ -27,6 +34,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Toate admisibile (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index b30e8ad..a6549fd 100644 (file)
@@ -4,11 +4,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Файл"
     BEGIN
-        MENUITEM "&Открыть...", IDM_OPEN_FILE
-        MENUITEM "&Закрыть", IDM_CLOSE_FILE
+        MENUITEM "&Открыть...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Закрыть\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Выход", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Устройство"
     BEGIN
         MENUITEM "&Свойства", IDM_DEVPROPS
@@ -21,6 +28,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Все поддерживаемые (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index 9f52f4f..9aab836 100644 (file)
@@ -9,11 +9,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Súbor"
     BEGIN
-        MENUITEM "&Otvoriť...", IDM_OPEN_FILE
-        MENUITEM "&Zavrieť", IDM_CLOSE_FILE
+        MENUITEM "&Otvoriť...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Zavrieť\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "S&končiť", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -26,6 +33,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Všetky podporované (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index 20d2af1..81f2657 100644 (file)
@@ -8,11 +8,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Skeda"
     BEGIN
-        MENUITEM "&Hape...", IDM_OPEN_FILE
-        MENUITEM "&Mbylle", IDM_CLOSE_FILE
+        MENUITEM "&Hape...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Mbylle\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Dil", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -25,6 +32,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Të gjith suportimet (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index dec2385..577f3b5 100644 (file)
@@ -11,11 +11,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Arkiv"
     BEGIN
-        MENUITEM "&Öppna...", IDM_OPEN_FILE
-        MENUITEM "&Stäng", IDM_CLOSE_FILE
+        MENUITEM "&Öppna...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Stäng\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Avsluta", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -28,6 +35,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Alla kompaktibla filer  (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index e28558a..9cc82e5 100644 (file)
@@ -6,11 +6,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Kütük"
     BEGIN
-        MENUITEM "&Aç...", IDM_OPEN_FILE
-        MENUITEM "&Kapat", IDM_CLOSE_FILE
+        MENUITEM "&Aç...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Kapat\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Çıkış", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Aygıt"
     BEGIN
         MENUITEM "&Husûsiyetler", IDM_DEVPROPS
@@ -23,6 +30,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Desteklenen Kütükler (*.wav, *.cda, *.mid, *.midi, *.avi)\0*.wav;*.cda;*.mid;*.midi;*.avi\0"
index 724bf0f..549a456 100644 (file)
@@ -12,11 +12,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "&Файл"
     BEGIN
-        MENUITEM "&Відкрити...", IDM_OPEN_FILE
-        MENUITEM "&Закрити", IDM_CLOSE_FILE
+        MENUITEM "&Відкрити...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "&Закрити\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "&Вихід", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -29,6 +36,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "Всі підтримувані (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index 3106fc6..a8e188d 100644 (file)
@@ -6,11 +6,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "文件(&F)"
     BEGIN
-        MENUITEM "打开... (&O)", IDM_OPEN_FILE
-        MENUITEM "关闭(&C)", IDM_CLOSE_FILE
+        MENUITEM "打开... (&O)\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "关闭(&C)\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "退出(&E)", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -23,6 +30,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "所有支持的格式 (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index 63689eb..6df4c3f 100644 (file)
@@ -12,11 +12,18 @@ IDR_MAINMENU MENU
 BEGIN
     POPUP "檔案(&F)"
     BEGIN
-        MENUITEM "開啟(&O)...", IDM_OPEN_FILE
-        MENUITEM "關閉(&C)", IDM_CLOSE_FILE
+        MENUITEM "開啟(&O)...\tCtrl+O", IDM_OPEN_FILE
+        MENUITEM "關閉(&C)\tCtrl+W", IDM_CLOSE_FILE
         MENUITEM SEPARATOR
         MENUITEM "結束(&E)", IDM_EXIT
     END
+    POPUP "&Play"
+    BEGIN
+        MENUITEM "Play/&Pause\tCtrl+P", IDC_PLAY
+        MENUITEM "St&op\tCtrl+S", IDC_STOP
+        MENUITEM SEPARATOR
+        MENUITEM "Repea&t\tCtrl+T", IDM_REPEAT
+    END
     POPUP "&Device"
     BEGIN
         MENUITEM "&Properties", IDM_DEVPROPS
@@ -29,6 +36,15 @@ BEGIN
     END
 END
 
+ID_ACCELERATORS ACCELERATORS
+BEGIN
+    "^O", IDM_OPEN_FILE
+    "^W", IDM_CLOSE_FILE
+    "^P", IDC_PLAY
+    "^S", IDC_STOP
+    "^T", IDM_REPEAT
+END
+
 STRINGTABLE
 BEGIN
     IDS_ALL_TYPES_FILTER "所有支援格式 (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0"
index 0e6e408..1173b0e 100644 (file)
@@ -18,6 +18,7 @@ TCHAR szPrevFile[MAX_PATH] = _T("\0");
 WORD wDeviceId;
 BOOL bIsOpened = FALSE;
 BOOL bIsPaused = FALSE;
+BOOL bRepeat = FALSE;
 UINT MaxFilePos = 0;
 
 
@@ -432,6 +433,7 @@ VOID CALLBACK
 PlayTimerProc(HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime)
 {
     MCI_STATUS_PARMS mciStatus;
+    MCI_PLAY_PARMS mciPlay;
     DWORD dwPos;
 
     if (!bIsOpened) KillTimer(hwnd, IDT_PLAYTIMER);
@@ -442,7 +444,16 @@ PlayTimerProc(HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime)
 
     if((UINT)dwPos >= MaxFilePos)
     {
-        StopPlayback(hwnd);
+        if (!bRepeat)
+        {
+            StopPlayback(hwnd);
+        }
+        else
+        {
+            mciSendCommand(wDeviceId, MCI_SEEK, MCI_WAIT | MCI_SEEK_TO_START, 0);
+            mciPlay.dwCallback = (DWORD_PTR)hwnd;
+            mciSendCommand(wDeviceId, MCI_PLAY, MCI_NOTIFY, (DWORD_PTR)&mciPlay);
+        }
     }
     else
     {
@@ -548,9 +559,11 @@ MainWndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
     switch (Message)
     {
         case WM_CREATE:
+        {
             InitControls(hwnd);
             hMainMenu = GetMenu(hwnd);
             break;
+        }
 
         case WM_DROPFILES:
         {
@@ -579,25 +592,25 @@ MainWndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
                     {
                         case IDC_PLAY:
                             lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_PLAY);
-                        break;
+                            break;
                         case IDC_STOP:
                             lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_STOP);
-                        break;
+                            break;
                         case IDC_EJECT:
                             lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_EJECT);
-                        break;
+                            break;
                         case IDC_BACKWARD:
                             lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_BACKWARD);
-                        break;
+                            break;
                         case IDC_SEEKBACK:
                             lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_SEEKBACK);
-                        break;
+                            break;
                         case IDC_SEEKFORW:
                             lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_SEEKFORW);
-                        break;
+                            break;
                         case IDC_FORWARD:
                             lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_FORWARD);
-                        break;
+                            break;
                     }
                     break;
                 }
@@ -652,9 +665,11 @@ MainWndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
         break;
 
         case WM_COMMAND:
+        {
             switch (LOWORD(wParam))
             {
                 case IDC_PLAY:
+                {
                     if (bIsOpened)
                     {
                         if (bIsPaused)
@@ -670,6 +685,7 @@ MainWndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
                             PlayFile(hwnd, NULL);
                     }
                     break;
+                }
 
                 case IDC_STOP:
                     StopPlayback(hwnd);
@@ -701,6 +717,21 @@ MainWndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
                     _tcscpy(szPrevFile, _T("\0"));
                     break;
 
+                case IDM_REPEAT:
+                {
+                    if (!bRepeat)
+                    {
+                        CheckMenuItem(hMainMenu, IDM_REPEAT, MF_BYCOMMAND | MF_CHECKED);
+                        bRepeat = TRUE;
+                    }
+                    else
+                    {
+                        CheckMenuItem(hMainMenu, IDM_REPEAT, MF_BYCOMMAND | MF_UNCHECKED);
+                        bRepeat = FALSE;
+                    }
+                    break;
+                }
+
                 case IDM_DEVPROPS:
                     ShowDeviceProperties(hwnd);
                     break;
@@ -710,17 +741,19 @@ MainWndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
                     break;
 
                 case IDM_ABOUT:
-        {
+                {
                     HICON mplayIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MAIN));
                     ShellAbout(hwnd, szAppTitle, 0, mplayIcon);
-            DeleteObject(mplayIcon);
+                    DeleteObject(mplayIcon);
                     break;
-        }
+                }
+
                 case IDM_EXIT:
                     PostMessage(hwnd, WM_CLOSE, 0, 0);
                     return 0;
             }
             break;
+        }
 
         case WM_DESTROY:
             StopPlayback(hwnd);
@@ -739,6 +772,7 @@ _tWinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPTSTR lpCmdLine, INT nCmdShow)
     HWND hwnd;
     MSG msg;
     DWORD dwError;
+    HANDLE hAccel;
 
     hInstance = hInst;
 
@@ -777,6 +811,8 @@ _tWinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPTSTR lpCmdLine, INT nCmdShow)
         return 0;
     }
 
+    hAccel = LoadAccelerators(hInstance, MAKEINTRESOURCE(ID_ACCELERATORS));
+
     DragAcceptFiles(hwnd, TRUE);
 
     DisableMenuItems();
@@ -796,9 +832,14 @@ _tWinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPTSTR lpCmdLine, INT nCmdShow)
     /* Message Loop */
     while (GetMessage(&msg, NULL, 0, 0))
     {
-        TranslateMessage(&msg);
-        DispatchMessage(&msg);
+        if (!TranslateAccelerator(hwnd, hAccel, &msg))
+        {
+            TranslateMessage(&msg);
+            DispatchMessage(&msg);
+        }
     }
 
+    DestroyAcceleratorTable(hAccel);
+
     return (INT)msg.wParam;
 }
index 19c6d3e..33e57a9 100644 (file)
@@ -30,6 +30,9 @@
 /* Menu */
 #define IDR_MAINMENU 500
 
+/* Accelerators */
+#define ID_ACCELERATORS 800
+
 /* Menu items */
 #define IDM_OPEN_FILE  1000
 #define IDM_CLOSE_FILE 1001
@@ -37,6 +40,7 @@
 #define IDM_ABOUT      1003
 #define IDM_VOLUMECTL  1004
 #define IDM_DEVPROPS   1005
+#define IDM_REPEAT     1006
 
 /* ToolBar Icons */
 #define TBICON_PLAY     0