From bfd56391b6a0c844784de134b12a75d9d514d2a6 Mon Sep 17 00:00:00 2001 From: Alexandre Julliard Date: Thu, 13 Jan 2011 21:01:23 +0100 Subject: [PATCH] oleview: Build the file filter by hand instead of hardcoding it in resource strings. --- programs/oleview/Da.rc | 3 ++- programs/oleview/De.rc | 3 ++- programs/oleview/En.rc | 3 ++- programs/oleview/Fr.rc | 3 ++- programs/oleview/He.rc | 3 ++- programs/oleview/It.rc | 3 ++- programs/oleview/Ja.rc | 3 ++- programs/oleview/Ko.rc | 3 ++- programs/oleview/Lt.rc | 3 ++- programs/oleview/Nl.rc | 3 ++- programs/oleview/No.rc | 3 ++- programs/oleview/Pl.rc | 3 ++- programs/oleview/Pt.rc | 6 ++++-- programs/oleview/Ro.rc | 3 ++- programs/oleview/Ru.rc | 3 ++- programs/oleview/Sv.rc | 3 ++- programs/oleview/Uk.rc | 3 ++- programs/oleview/Zh.rc | 6 ++++-- programs/oleview/oleview.c | 10 +++++++--- programs/oleview/resource.h | 3 ++- 20 files changed, 49 insertions(+), 24 deletions(-) diff --git a/programs/oleview/Da.rc b/programs/oleview/Da.rc index 8461c010b69..483c04d0c39 100644 --- a/programs/oleview/Da.rc +++ b/programs/oleview/Da.rc @@ -98,7 +98,8 @@ STRINGTABLE IDS_ABOUTVER "version 1.0" IDS_TYPELIBTITLE "ITypeLib viser" IDS_OPEN "Åben" - IDS_OPEN_TYPELIB_FILTER "TypeLib Filer (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0All Files (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib Filer (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "All Files (*.*)" IDM_BIND, "Knyt til fil via File Moniker" IDM_TYPELIB, "Åben en TypeLib fil og vis indholdet" diff --git a/programs/oleview/De.rc b/programs/oleview/De.rc index 9c78efa1887..6790c1fd923 100644 --- a/programs/oleview/De.rc +++ b/programs/oleview/De.rc @@ -100,7 +100,8 @@ STRINGTABLE IDS_ABOUTVER "Version 1.0" IDS_TYPELIBTITLE "ITypeLib-Betrachter" IDS_OPEN "Öffnen" - IDS_OPEN_TYPELIB_FILTER "TypeLib Dateien (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0Alle Dateien (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib Dateien (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Alle Dateien (*.*)" IDM_BIND, "An Datei via Datei-Moniker binden" IDM_TYPELIB, "TypeLib-Datei öffnen und Inhalt betrachten" diff --git a/programs/oleview/En.rc b/programs/oleview/En.rc index c1ea7e47368..c351245210c 100644 --- a/programs/oleview/En.rc +++ b/programs/oleview/En.rc @@ -98,7 +98,8 @@ STRINGTABLE IDS_ABOUTVER "version 1.0" IDS_TYPELIBTITLE "ITypeLib viewer" IDS_OPEN "Open" - IDS_OPEN_TYPELIB_FILTER "TypeLib Files (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0All Files (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib Files (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "All Files (*.*)" IDM_BIND, "Bind to file via a File Moniker" IDM_TYPELIB, "Open a TypeLib file and view the contents" diff --git a/programs/oleview/Fr.rc b/programs/oleview/Fr.rc index c1f933e7efc..1a02950860e 100644 --- a/programs/oleview/Fr.rc +++ b/programs/oleview/Fr.rc @@ -101,7 +101,8 @@ STRINGTABLE IDS_ABOUTVER "version 1.0" IDS_TYPELIBTITLE "Visionneur d'ITypeLib" IDS_OPEN "Ouvrir" - IDS_OPEN_TYPELIB_FILTER "Fichiers TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0Tous les fichiers (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "Fichiers TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Tous les fichiers (*.*)" IDM_BIND, "Lier à un fichier à l'aide d'un File Moniker" IDM_TYPELIB, "Ouvrir un fichier TypeLib et afficher son contenu" diff --git a/programs/oleview/He.rc b/programs/oleview/He.rc index 6fae62d046e..7e552e1b123 100644 --- a/programs/oleview/He.rc +++ b/programs/oleview/He.rc @@ -101,7 +101,8 @@ STRINGTABLE IDS_ABOUTVER "גרסה 1.0" IDS_TYPELIBTITLE "מציג ITypeLib" IDS_OPEN "פתיחה" - IDS_OPEN_TYPELIB_FILTER "קובצי TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)‏\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0כל הקבצים (*.*)‏\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "קובצי TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)‏" + IDS_OPEN_FILTER_ALL "כל הקבצים (*.*)‏" IDM_BIND, "איגוד לקובץ באמצעות מכנה קבצים" IDM_TYPELIB, "פתיחת קובץ TypeLib וצפייה בתכנים" diff --git a/programs/oleview/It.rc b/programs/oleview/It.rc index a14e0d068c1..0bf715f192c 100644 --- a/programs/oleview/It.rc +++ b/programs/oleview/It.rc @@ -101,7 +101,8 @@ STRINGTABLE IDS_ABOUTVER "versione 1.0" IDS_TYPELIBTITLE "Visore ITypeLib" IDS_OPEN "Apri" - IDS_OPEN_TYPELIB_FILTER "File TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0Tutti i file (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "File TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Tutti i file (*.*)" IDM_BIND, "Fissa su un file con un File Moniker" IDM_TYPELIB, "Apri un file TypeLib e visualizza i contenuti" diff --git a/programs/oleview/Ja.rc b/programs/oleview/Ja.rc index 11ace6d5b5f..6d029556e0d 100644 --- a/programs/oleview/Ja.rc +++ b/programs/oleview/Ja.rc @@ -101,7 +101,8 @@ STRINGTABLE IDS_ABOUTVER "バージョン 1.0" IDS_TYPELIBTITLE "ITypeLib ビュアー" IDS_OPEN "開く" - IDS_OPEN_TYPELIB_FILTER "TypeLib ファイル (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0すべてのファイル (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib ファイル (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "すべてのファイル (*.*)" IDM_BIND, "File Moniker を通じてファイルにバインドします" IDM_TYPELIB, "TypeLib ファイルを開いて中身を表示します" diff --git a/programs/oleview/Ko.rc b/programs/oleview/Ko.rc index 4cf1df1b344..4a9d9d43d2d 100644 --- a/programs/oleview/Ko.rc +++ b/programs/oleview/Ko.rc @@ -102,7 +102,8 @@ STRINGTABLE IDS_ABOUTVER "버젼 1.0" IDS_TYPELIBTITLE "ITypeLib 뷰어" IDS_OPEN "열기" - IDS_OPEN_TYPELIB_FILTER "TypeLib 파일 (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0All Files (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib 파일 (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "All Files (*.*)" IDM_BIND, "파일 별명으로 파일 연결" IDM_TYPELIB, "타입 라이브러리 파일을 열고 내용 보기" diff --git a/programs/oleview/Lt.rc b/programs/oleview/Lt.rc index 251dcfe1cdb..88fe7cc0ade 100644 --- a/programs/oleview/Lt.rc +++ b/programs/oleview/Lt.rc @@ -101,7 +101,8 @@ STRINGTABLE IDS_ABOUTVER "versija 1.0" IDS_TYPELIBTITLE "ITypeLib žiūryklė" IDS_OPEN "Atverti" - IDS_OPEN_TYPELIB_FILTER "TypeLib failai (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0Visi failai (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib failai (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Visi failai (*.*)" IDM_BIND, "Susieti su failu per failo vardą" IDM_TYPELIB, "Atverti TypeLib failą ir peržiūrėti jo turinį" diff --git a/programs/oleview/Nl.rc b/programs/oleview/Nl.rc index 09069cd99f0..7ee39a3bd28 100644 --- a/programs/oleview/Nl.rc +++ b/programs/oleview/Nl.rc @@ -100,7 +100,8 @@ STRINGTABLE IDS_ABOUTVER "versie 1.0" IDS_TYPELIBTITLE "ITypeLib-viewer" IDS_OPEN "Open" - IDS_OPEN_TYPELIB_FILTER "TypeLib bestanden (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0Alle bestanden (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib bestanden (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Alle bestanden (*.*)" IDM_BIND, "Verbind aan een bestand via een Bestandsbeschrijver (Moniker)" IDM_TYPELIB, "Open een TypeLib bestand en bekijk de inhoud" diff --git a/programs/oleview/No.rc b/programs/oleview/No.rc index 4cad4896e64..79bee71d5c3 100644 --- a/programs/oleview/No.rc +++ b/programs/oleview/No.rc @@ -98,7 +98,8 @@ STRINGTABLE IDS_ABOUTVER "versjon 1.0" IDS_TYPELIBTITLE "ITypeLib-viser" IDS_OPEN "Åpne" - IDS_OPEN_TYPELIB_FILTER "TypeLib Files (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0All Files (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib Files (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "All Files (*.*)" IDM_BIND, "Bind til fil via File Moniker" IDM_TYPELIB, "Åpne en TypeLib-fil og vis innholdet" diff --git a/programs/oleview/Pl.rc b/programs/oleview/Pl.rc index 157c1abdb38..ad04aeb5a68 100644 --- a/programs/oleview/Pl.rc +++ b/programs/oleview/Pl.rc @@ -99,7 +99,8 @@ STRINGTABLE IDS_ABOUTVER "wersja 1.0" IDS_TYPELIBTITLE "Przegl¹darka ITypeLib" IDS_OPEN "Otwórz" - IDS_OPEN_TYPELIB_FILTER "Pliki TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0Wszystkie pliki (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "Pliki TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Wszystkie pliki (*.*)" IDM_BIND, "Dowi¹¿ do pliku za pomoc¹ obiektu File Moniker" IDM_TYPELIB, "Otwórz plik z biblioteki typów (TypeLib) i wyœwietl jego zawartoœæ" diff --git a/programs/oleview/Pt.rc b/programs/oleview/Pt.rc index e170ea84323..97030f96cd9 100644 --- a/programs/oleview/Pt.rc +++ b/programs/oleview/Pt.rc @@ -176,7 +176,8 @@ STRINGTABLE IDS_ABOUTVER "versão 1.0" IDS_TYPELIBTITLE "Visualizador ITypeLib" IDS_OPEN "Abrir" - IDS_OPEN_TYPELIB_FILTER "Arquivos TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0Todos os Ficheiros (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "Arquivos TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Todos os Ficheiros (*.*)" IDM_BIND, "Juntar ao arquivo através de um File Moniker" IDM_TYPELIB, "Abrir um arquivo TypeLib e ver o conteúdo" @@ -238,7 +239,8 @@ STRINGTABLE IDS_ABOUTVER "versão 1.0" IDS_TYPELIBTITLE "Visualizador ITypeLib" IDS_OPEN "Abrir" - IDS_OPEN_TYPELIB_FILTER "Ficheiros TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0Todos os Ficheiros (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "Ficheiros TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Todos os Ficheiros (*.*)" IDM_BIND, "Juntar a ficheiro através de um File Moniker" IDM_TYPELIB, "Abrir um ficheiro TypeLib e ver os conteúdos" diff --git a/programs/oleview/Ro.rc b/programs/oleview/Ro.rc index fcae4aaf409..35c32087ed0 100644 --- a/programs/oleview/Ro.rc +++ b/programs/oleview/Ro.rc @@ -101,7 +101,8 @@ STRINGTABLE IDS_ABOUTVER "versiunea 1.0" IDS_TYPELIBTITLE "Vizualizator ITypeLib" IDS_OPEN "Deschide" - IDS_OPEN_TYPELIB_FILTER "Fișiere TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)\\0*.tlb;*.olb;*.dll;*.ocx;*.exe\\0Toate fișierele (*.*)\\0*.*\\0\\0" + IDS_OPEN_FILTER_TYPELIB "Fișiere TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Toate fișierele (*.*)" IDM_BIND, "Leagă la fișier printr-un File Moniker" IDM_TYPELIB, "Deschide un fișier TypeLib și afișează conținutul" diff --git a/programs/oleview/Ru.rc b/programs/oleview/Ru.rc index 970719dc0f1..00e727f1bd9 100644 --- a/programs/oleview/Ru.rc +++ b/programs/oleview/Ru.rc @@ -101,7 +101,8 @@ STRINGTABLE IDS_ABOUTVER "версия 1.0" IDS_TYPELIBTITLE "ITypeLib viewer" IDS_OPEN "Открыть" - IDS_OPEN_TYPELIB_FILTER "Файлы TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0All Files (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "Файлы TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "All Files (*.*)" IDM_BIND, "Привязать к файлу через File Moniker" IDM_TYPELIB, "Открыть файл TypeLib и просмотреть содержимое" diff --git a/programs/oleview/Sv.rc b/programs/oleview/Sv.rc index 359f67378f3..fa21a675813 100644 --- a/programs/oleview/Sv.rc +++ b/programs/oleview/Sv.rc @@ -98,7 +98,8 @@ STRINGTABLE IDS_ABOUTVER "version 1.0" IDS_TYPELIBTITLE "ITypeLib-visare" IDS_OPEN "Öppna" - IDS_OPEN_TYPELIB_FILTER "TypeLib-filer (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0Alla filer (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib-filer (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Alla filer (*.*)" IDM_BIND, "Bind till fil via File Moniker" IDM_TYPELIB, "Öppna en TypeLib-fil och visa innehållet" diff --git a/programs/oleview/Uk.rc b/programs/oleview/Uk.rc index 481ebfa1cb9..acee174e14f 100644 --- a/programs/oleview/Uk.rc +++ b/programs/oleview/Uk.rc @@ -102,7 +102,8 @@ STRINGTABLE IDS_ABOUTVER "версія 1.0" IDS_TYPELIBTITLE "ITypeLib viewer" IDS_OPEN "Відкрити" - IDS_OPEN_TYPELIB_FILTER "Файли TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0Всі файли (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "Файли TypeLib (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "Всі файли (*.*)" IDM_BIND, "Прив'язати до файлу через File Moniker" IDM_TYPELIB, "Відкрити файл TypeLib і переглянути вміст" diff --git a/programs/oleview/Zh.rc b/programs/oleview/Zh.rc index aef68c3d86b..2b92f9de092 100644 --- a/programs/oleview/Zh.rc +++ b/programs/oleview/Zh.rc @@ -101,7 +101,8 @@ STRINGTABLE IDS_ABOUTVER "版本 1.0" IDS_TYPELIBTITLE "ITypeLib 查看器" IDS_OPEN "打开" - IDS_OPEN_TYPELIB_FILTER "TypeLib 文件 (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0All Files (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib 文件 (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "All Files (*.*)" IDM_BIND, "通过文件绰号绑定到文件" IDM_TYPELIB, "打开 TypeLib 文件并查看内容" @@ -294,7 +295,8 @@ STRINGTABLE IDS_ABOUTVER "版本 1.0 " IDS_TYPELIBTITLE "ITypeLib 查看器" IDS_OPEN "開啟" - IDS_OPEN_TYPELIB_FILTER "TypeLib 檔案 (*.tlb;*.olb;*.dll;*.ocx;*.exe)\0*.tlb;*.olb;*.dll;*.ocx;*.exe\0All Files (*.*)\0*.*\0\0" + IDS_OPEN_FILTER_TYPELIB "TypeLib 檔案 (*.tlb;*.olb;*.dll;*.ocx;*.exe)" + IDS_OPEN_FILTER_ALL "All Files (*.*)" IDM_BIND, "通過檔案綽號綁定到檔案" IDM_TYPELIB, "開啟 TypeLib 檔案並查看內容" diff --git a/programs/oleview/oleview.c b/programs/oleview/oleview.c index b1fb7c9fe5b..7901d606ae5 100644 --- a/programs/oleview/oleview.c +++ b/programs/oleview/oleview.c @@ -19,6 +19,7 @@ */ #include "main.h" +#include "wine/unicode.h" GLOBALS globals; static const WCHAR wszRegEdit[] = { '\\','r','e','g','e','d','i','t','.','e','x','e','\0' }; @@ -410,14 +411,17 @@ static int MenuCommand(WPARAM wParam, HWND hWnd) break; case IDM_TYPELIB: { + static const WCHAR filterW[] = {'%','s','%','c','*','.','t','l','b',';','*','.','o','l','b',';','*','.','d','l','l',';','*','.','o','c','x',';','*','.','e','x','e','%','c','%','s','%','c','*','.','*','%','c',0}; OPENFILENAMEW ofn; static WCHAR wszTitle[MAX_LOAD_STRING]; static WCHAR wszName[MAX_LOAD_STRING]; - static WCHAR wszFilter[MAX_LOAD_STRING]; + WCHAR filter_typelib[MAX_LOAD_STRING], filter_all[MAX_LOAD_STRING], filter[MAX_PATH]; LoadStringW(globals.hMainInst, IDS_OPEN, wszTitle, sizeof(wszTitle)/sizeof(wszTitle[0])); - LoadStringW(globals.hMainInst, IDS_OPEN_TYPELIB_FILTER, wszFilter, sizeof(wszFilter)/sizeof(wszFilter[0])); - InitOpenFileName(hWnd, &ofn, wszFilter, wszTitle, wszName); + LoadStringW(globals.hMainInst, IDS_OPEN_FILTER_TYPELIB, filter_typelib, sizeof(filter_typelib)/sizeof(WCHAR)); + LoadStringW(globals.hMainInst, IDS_OPEN_FILTER_ALL, filter_all, sizeof(filter_all)/sizeof(WCHAR)); + snprintfW( filter, MAX_PATH, filterW, filter_typelib, 0, 0, filter_all, 0, 0 ); + InitOpenFileName(hWnd, &ofn, filter, wszTitle, wszName); if(GetOpenFileNameW(&ofn)) CreateTypeLibWindow(globals.hMainInst, wszName); break; } diff --git a/programs/oleview/resource.h b/programs/oleview/resource.h index 9e732e6f08c..18ab3b79ffc 100644 --- a/programs/oleview/resource.h +++ b/programs/oleview/resource.h @@ -33,7 +33,8 @@ #define IDS_ABOUTVER 21 #define IDS_OPEN 30 -#define IDS_OPEN_TYPELIB_FILTER 31 +#define IDS_OPEN_FILTER_TYPELIB 31 +#define IDS_OPEN_FILTER_ALL 32 #define IDM_BIND 100 #define IDM_TYPELIB 101 -- 2.11.4.GIT