[OLEDLG] Sync with Wine Staging 1.7.55. CORE-10536

svn path=/trunk/; revision=70074
This commit is contained in:
Amine Khaldi 2015-11-23 20:43:09 +00:00
parent a6868a267c
commit 7ba250efe5
27 changed files with 76 additions and 18 deletions

View file

@ -31,7 +31,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Soubor není platným OLE modulem. Nelze registrovat OLE propojení."
IDS_NOTOLEMODCAPTION "Přidat propojení"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -28,7 +28,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Filen ser ikke ud til at være et gyldig OLE modul. Kunne ikke registrere OLE control'en."
IDS_NOTOLEMODCAPTION "Tilføj control"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -28,7 +28,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Die Datei ist offenbar kein gültiges OLE-Steuermodul. Die OLE-Steuerung konnte nicht registriert werden."
IDS_NOTOLEMODCAPTION "Steuerung hinzufügen"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -26,7 +26,9 @@ STRINGTABLE
IDS_NOTOLEMOD "File does not appear to be a valid OLE module. Unable to register OLE control."
IDS_NOTOLEMODCAPTION "Add Control"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -26,7 +26,9 @@ STRINGTABLE
IDS_NOTOLEMOD "El archivo no parece ser un módulo OLE válido. Incapaz de registrar el control OLE."
IDS_NOTOLEMODCAPTION "Añadir control"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -33,7 +33,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Le fichier ne semble pas être un module OLE valide. Impossible d'enregistrer le contrôle OLE."
IDS_NOTOLEMODCAPTION "Ajouter un contrôle"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -28,7 +28,9 @@ STRINGTABLE
IDS_NOTOLEMOD "File does not appear to be a valid OLE module. Unable to register OLE control."
IDS_NOTOLEMODCAPTION "הוספת בקר"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -29,7 +29,9 @@ STRINGTABLE
IDS_NOTOLEMOD "A fájl úgy tűnik nem egy érvényes OLE modul. Nem tudom regisztrálni az OLE vezérlőt."
IDS_NOTOLEMODCAPTION "Vezérlő hozzáadása"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -30,7 +30,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Il file non sembra essere un modulo OLE valido. Impossibile registrare il controllo OLE."
IDS_NOTOLEMODCAPTION "Aggiungi Controllo"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -29,7 +29,9 @@ STRINGTABLE
IDS_NOTOLEMOD "ファイルは有効なOLEモジュールではないようです。OLEコントロールを登録できません。"
IDS_NOTOLEMODCAPTION "コントロールを追加"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -27,7 +27,9 @@ STRINGTABLE
IDS_NOTOLEMOD "이 파일은 올바른 OLE모듈이 아닌거로 보입니다. OLE컨트롤을 등록할수 없습니다."
IDS_NOTOLEMODCAPTION "컨트롤 더하기"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -29,7 +29,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Panašu, kad failas nėra galiojantis OLE modulis. Nepavyko užregistruoti OLE valdiklio."
IDS_NOTOLEMODCAPTION "Pridėti valdiklį"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -30,7 +30,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Het bestand is geen geldig OLE bestand. De registratie is mislukt."
IDS_NOTOLEMODCAPTION "Toevoegen"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -26,7 +26,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Filen ser ikke ut til å være en gyldig OLE-modul. Kunne ikke registrere OLE-kontroller."
IDS_NOTOLEMODCAPTION "Legg til kontroller"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -27,7 +27,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Plik nie wydaje się być poprawnym modułem OLE. Nie udało się zarejestrować kontrolki OLE."
IDS_NOTOLEMODCAPTION "Dodaj kontrolkę"
IDS_VERBMENU_OBJECT "&Obiekt"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Konwertuj..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -31,7 +31,9 @@ STRINGTABLE
IDS_NOTOLEMOD "O arquivo não parece ser um módulo OLE válido. Impossível registrar o controle OLE."
IDS_NOTOLEMODCAPTION "Adicionar Controle"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE
@ -111,7 +113,9 @@ STRINGTABLE
IDS_NOTOLEMOD "O ficheiro não parece ser um módulo OLE válido. Impossível registrar o controlo OLE."
IDS_NOTOLEMODCAPTION "Adicionar Controlo"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -31,7 +31,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Fișierul nu pare a fi un modul OLE valid. Nu se poate înregistra controlul OLE."
IDS_NOTOLEMODCAPTION "Adaugă un control"
IDS_VERBMENU_OBJECT "&Obiect"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convertire…"
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -29,7 +29,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Файл не является корректным модулем OLE. Невозможно зарегистрировать элемент управления OLE."
IDS_NOTOLEMODCAPTION "Добавить элемент управления"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -28,7 +28,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Datoteka ni veljaven OLE modul. OLE kontrole ni mogoče registrirati."
IDS_NOTOLEMODCAPTION "Dodajanje kontrole"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -29,7 +29,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Dokument nuk duket të ketë një modul të vlefshme OLE. Në pamundësi për të regjistruar kontrollin OLE."
IDS_NOTOLEMODCAPTION "Shto Kontroll"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -26,7 +26,9 @@ STRINGTABLE
IDS_NOTOLEMOD "File does not appear to be a valid OLE module. Unable to register OLE control."
IDS_NOTOLEMODCAPTION "Add Control"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -28,7 +28,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Kütük, geçerli bir OLE parçası olarak görünmüyor. OLE denetimi saklanamıyor."
IDS_NOTOLEMODCAPTION "Denetim Ekle"
IDS_VERBMENU_OBJECT "&Nesne"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Dönüştür..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -29,7 +29,9 @@ STRINGTABLE
IDS_NOTOLEMOD "Файл не є модулем управління OLE. Не вдається зареєструвати елемент управління OLE."
IDS_NOTOLEMODCAPTION "Додати елемент управління"
IDS_VERBMENU_OBJECT "&Object"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "&Convert..."
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -31,7 +31,9 @@ STRINGTABLE
IDS_NOTOLEMOD "本文件不像是一个有效的 OLE 模型. 不能注册 OLE 控件."
IDS_NOTOLEMODCAPTION "添加控件"
IDS_VERBMENU_OBJECT "对象 (&O)"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "转换... (&C)"
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE
@ -111,7 +113,9 @@ STRINGTABLE
IDS_NOTOLEMOD "本檔案不像是一個有效的 OLE 模型. 不能註冊 OLE 控件."
IDS_NOTOLEMODCAPTION "添加控件"
IDS_VERBMENU_OBJECT "對象 (&O)"
IDS_VERBMENU_OBJECT_WITH_NAME "%1 &Object"
IDS_VERBMENU_CONVERT "轉換... (&C)"
IDS_VERBMENU_SINGLEVERB_OBJECT "%1 %2 &Object"
}
STRINGTABLE

View file

@ -143,14 +143,15 @@ static void insert_verb_to_menu(HMENU menu, UINT idmin, const OLEVERB *verb)
BOOL WINAPI OleUIAddVerbMenuW(IOleObject *object, LPCWSTR shorttype,
HMENU hMenu, UINT uPos, UINT idmin, UINT idmax, BOOL addConvert, UINT idConvert, HMENU *ret_submenu)
{
static const WCHAR spaceW[] = {' ',0};
IEnumOLEVERB *enumverbs = NULL;
WCHAR *rootname, *objecttype;
LPOLESTR usertype = NULL;
OLEVERB firstverb, verb;
WCHAR *objecttype;
WCHAR resstrW[32]; /* should be enough */
DWORD_PTR args[2];
BOOL singleverb;
HMENU submenu;
WCHAR *str;
TRACE("(%p, %s, %p, %d, %d, %d, %d, %d, %p)\n", object, debugstr_w(shorttype),
hMenu, uPos, idmin, idmax, addConvert, idConvert, ret_submenu);
@ -167,7 +168,7 @@ BOOL WINAPI OleUIAddVerbMenuW(IOleObject *object, LPCWSTR shorttype,
LoadStringW(OLEDLG_hInstance, IDS_VERBMENU_OBJECT, resstrW, sizeof(resstrW)/sizeof(WCHAR));
/* no object, or object without enumeration support */
if (!object || (object && !enumverbs)) {
if (!object || !enumverbs) {
InsertMenuW(hMenu, uPos, MF_BYPOSITION|MF_STRING|MF_GRAYED, idmin, resstrW);
return FALSE;
}
@ -178,12 +179,6 @@ BOOL WINAPI OleUIAddVerbMenuW(IOleObject *object, LPCWSTR shorttype,
else
objecttype = (WCHAR*)shorttype;
rootname = CoTaskMemAlloc((strlenW(objecttype) + strlenW(resstrW) + 2)*sizeof(WCHAR));
strcpyW(rootname, objecttype);
strcatW(rootname, spaceW);
strcatW(rootname, resstrW);
CoTaskMemFree(usertype);
/* iterate through verbs */
/* find first suitable verb */
@ -191,18 +186,20 @@ BOOL WINAPI OleUIAddVerbMenuW(IOleObject *object, LPCWSTR shorttype,
singleverb = get_next_insertable_verb(enumverbs, idmin, idmax, &verb) != S_OK;
if (singleverb && !addConvert) {
WCHAR *str = CoTaskMemAlloc((strlenW(rootname) + strlenW(firstverb.lpszVerbName) + 2)*sizeof(WCHAR));
LoadStringW(OLEDLG_hInstance, IDS_VERBMENU_SINGLEVERB_OBJECT, resstrW, sizeof(resstrW)/sizeof(WCHAR));
strcpyW(str, firstverb.lpszVerbName);
strcatW(str, spaceW);
strcatW(str, rootname);
args[0] = (DWORD_PTR)firstverb.lpszVerbName;
args[1] = (DWORD_PTR)objecttype;
FormatMessageW(FORMAT_MESSAGE_FROM_STRING|FORMAT_MESSAGE_ALLOCATE_BUFFER|FORMAT_MESSAGE_ARGUMENT_ARRAY,
resstrW, 0, 0, (WCHAR*)&str, 0, (__ms_va_list*)args);
RemoveMenu(hMenu, uPos, MF_BYPOSITION);
InsertMenuW(hMenu, uPos, MF_BYPOSITION|MF_STRING, idmin, str);
CoTaskMemFree(firstverb.lpszVerbName);
CoTaskMemFree(rootname);
CoTaskMemFree(str);
HeapFree(GetProcessHeap(), 0, str);
IEnumOLEVERB_Release(enumverbs);
CoTaskMemFree(usertype);
return TRUE;
}
@ -231,9 +228,16 @@ BOOL WINAPI OleUIAddVerbMenuW(IOleObject *object, LPCWSTR shorttype,
*ret_submenu = submenu;
/* now submenu is ready, add root entry to original menu, attach submenu */
InsertMenuW(hMenu, uPos, MF_BYPOSITION|MF_POPUP|MF_STRING, (UINT_PTR)submenu, rootname);
LoadStringW(OLEDLG_hInstance, IDS_VERBMENU_OBJECT_WITH_NAME, resstrW, sizeof(resstrW)/sizeof(WCHAR));
args[0] = (DWORD_PTR)objecttype;
FormatMessageW(FORMAT_MESSAGE_FROM_STRING|FORMAT_MESSAGE_ALLOCATE_BUFFER|FORMAT_MESSAGE_ARGUMENT_ARRAY,
resstrW, 0, 0, (WCHAR*)&str, 0, (__ms_va_list*)args);
InsertMenuW(hMenu, uPos, MF_BYPOSITION|MF_POPUP|MF_STRING, (UINT_PTR)submenu, str);
HeapFree(GetProcessHeap(), 0, str);
IEnumOLEVERB_Release(enumverbs);
CoTaskMemFree(rootname);
CoTaskMemFree(usertype);
return TRUE;
}

View file

@ -43,6 +43,8 @@
/* String ids for verb menu */
#define IDS_VERBMENU_CONVERT 0x130
#define IDS_VERBMENU_SINGLEVERB_OBJECT 0x132
#define IDS_VERBMENU_OBJECT_WITH_NAME 0x134
#define IDS_VERBMENU_OBJECT 0x135
/* String ids for Paste Special */

View file

@ -147,7 +147,7 @@ reactos/dll/win32/ole32 # Synced to WineStaging-1.7.55
reactos/dll/win32/oleacc # Synced to WineStaging-1.7.47
reactos/dll/win32/oleaut32 # Synced to WineStaging-1.7.55
reactos/dll/win32/olecli32 # Synced to WineStaging-1.7.47
reactos/dll/win32/oledlg # Synced to WineStaging-1.7.47
reactos/dll/win32/oledlg # Synced to WineStaging-1.7.55
reactos/dll/win32/olepro32 # Synced to WineStaging-1.7.47
reactos/dll/win32/olesvr32 # Synced to WineStaging-1.7.47
reactos/dll/win32/olethk32 # Synced to WineStaging-1.7.47