mirror of
https://github.com/reactos/reactos.git
synced 2024-12-29 10:35:28 +00:00
Autosyncing with Wine HEAD
svn path=/trunk/; revision=26501
This commit is contained in:
parent
a8e8588392
commit
dee6701b2c
17 changed files with 1182 additions and 42 deletions
|
@ -57,7 +57,7 @@ typedef struct
|
|||
|
||||
} InsertObjectDlgInfo;
|
||||
|
||||
INT_PTR CALLBACK UIInsertObjectDlgProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
static INT_PTR CALLBACK UIInsertObjectDlgProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
||||
static LRESULT UIINSOBJDLG_OnWMCommand(HWND hwnd, WPARAM wParam, LPARAM lParam);
|
||||
static void UIINSERTOBJECTDLG_InitDialog(InsertObjectDlgInfo* pdlgInfo);
|
||||
static void UIINSERTOBJECTDLG_SelectCreateCtrl(InsertObjectDlgInfo* pdlgInfo);
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
<library>ntdll</library>
|
||||
<file>insobjdlg.c</file>
|
||||
<file>oledlg_main.c</file>
|
||||
<file>pastespl.c</file>
|
||||
<file>rsrc.rc</file>
|
||||
<file>oledlg.spec</file>
|
||||
</module>
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_GERMAN, SUBLANG_DEFAULT
|
||||
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
|
||||
|
||||
UIINSERTOBJECT DIALOG DISCARDABLE 0, 0, 294, 151
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
|
@ -53,3 +53,43 @@ STRINGTABLE DISCARDABLE
|
|||
IDS_NOTOLEMOD "Die Datei ist offenbar kein gültiges OLE - Steuermodul. Die OLE - Steuerung konnte nicht registiert werden."
|
||||
IDS_NOTOLEMODCAPTION "Steuerung hinzufügen"
|
||||
}
|
||||
|
||||
IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 293, 140
|
||||
STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Inhalte einfügen"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "Quelle:", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
|
||||
CONTROL "&Einfügen", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
|
||||
6, 38, 55, 10
|
||||
CONTROL "&Verknüpfung einfügen", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
|
||||
6, 63, 55, 10
|
||||
LTEXT "&Als:", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
|
||||
LISTBOX IDC_PS_PASTELIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_DISPLAYLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
|
||||
CONTROL "OK", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 224, 6, 66, 14
|
||||
CONTROL "Abbrechen", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 23, 66, 14
|
||||
CONTROL "&Hilfe", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 42, 66, 14
|
||||
CONTROL "Als Symbol &darstellen", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 66, 14
|
||||
CONTROL "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 224, 75, 66, 44
|
||||
CONTROL "&Symbol ändern...", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 123, 66, 14
|
||||
CONTROL "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
|
||||
CONTROL "<< result text goes here >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
|
||||
CONTROL "Ergebnis", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
|
||||
CONTROL "", IDC_PS_SOURCETEXT, "Edit", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_PS_PASTE_DATA "Fügt den Inhalt der Zwischenablage in Ihr Dokument als %s ein."
|
||||
IDS_PS_PASTE_OBJECT "Fügt den Inhalt der Zwischenablage so in Ihr Dokument ein dass Sie es mit %s aktivieren können."
|
||||
IDS_PS_PASTE_OBJECT_AS_ICON "Fügt den Inhalt der Zwischenablage so in Ihr Dokument ein dass Sie es mit %s aktivieren können. Wird als Symbol dargestellt."
|
||||
IDS_PS_PASTE_LINK_DATA "Fügt den Inhalt der Zwischenablage in Ihr Dokument als %s ein. Die Daten sind mit der Ursprungsdatei verknüpft so dass Änderungen an dieser in Ihrem Dokument erscheinen."
|
||||
IDS_PS_PASTE_LINK_OBJECT "Fügt ein Bild des Zwischenablagen-Inhalts in Ihr Dokument ein. Das Bild ist mit der Ursprungsdatei verknüpft so dass Änderungen an dieser in Ihrem Dokument erscheinen."
|
||||
IDS_PS_PASTE_LINK_OBJECT_AS_ICON "Fügt eine Verknüpfung ein die auf den Ort des Zwischenablagen-Inhalts zeigt. Die Verknüpfung ist mit der Ursprungsdatei verknüpft so dass Änderungen an dieser in Ihrem Dokument erscheinen."
|
||||
IDS_PS_NON_OLE "Fügt den Inhalt der Zwischenablage in Ihr Dokument als ein."
|
||||
IDS_PS_UNKNOWN_TYPE "Unbekannter Typ"
|
||||
IDS_PS_UNKNOWN_SRC "Unbekannte Quelle"
|
||||
IDS_PS_UNKNOWN_APP "dem Erzeugerprogramm"
|
||||
}
|
||||
|
|
|
@ -53,3 +53,43 @@ STRINGTABLE DISCARDABLE
|
|||
IDS_NOTOLEMOD "File does not appear to be a valid OLE module. Unable to register OLE control."
|
||||
IDS_NOTOLEMODCAPTION "Add Control"
|
||||
}
|
||||
|
||||
IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 293, 140
|
||||
STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Paste Special"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "Source:", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
|
||||
CONTROL "&Paste", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
|
||||
6, 38, 55, 10
|
||||
CONTROL "Paste &Link", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
|
||||
6, 63, 55, 10
|
||||
LTEXT "&As:", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
|
||||
LISTBOX IDC_PS_PASTELIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_DISPLAYLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
|
||||
CONTROL "OK", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 224, 6, 66, 14
|
||||
CONTROL "Cancel", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 23, 66, 14
|
||||
CONTROL "&Help", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 42, 66, 14
|
||||
CONTROL "&Display As Icon", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 66, 14
|
||||
CONTROL "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 224, 75, 66, 44
|
||||
CONTROL "Change &Icon...", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 123, 66, 14
|
||||
CONTROL "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
|
||||
CONTROL "<< result text goes here >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
|
||||
CONTROL "Result", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
|
||||
CONTROL "", IDC_PS_SOURCETEXT, "Edit", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_PS_PASTE_DATA "Inserts the contents of the clipboard into your document as %s."
|
||||
IDS_PS_PASTE_OBJECT "Inserts the contents of the clipboard into your document so that you can activate it using %s."
|
||||
IDS_PS_PASTE_OBJECT_AS_ICON "Inserts the contents of the clipboard into your document so that you can activate it using %s. It will be displayed as an icon."
|
||||
IDS_PS_PASTE_LINK_DATA "Inserts the contents of the clipboard into your document as %s. The data is linked to the source file so that changes to the file will be reflected in your document."
|
||||
IDS_PS_PASTE_LINK_OBJECT "Inserts a picture of the clipboard contents into your document. The picture is linked to the source file so that changes to the file will be reflected in your document."
|
||||
IDS_PS_PASTE_LINK_OBJECT_AS_ICON "Inserts a shortcut which points to the location of the clipboard contents. The shortcut is linked to the source file so that changes to the file will be reflected in your document."
|
||||
IDS_PS_NON_OLE "Inserts the contents of the clipboard into your document."
|
||||
IDS_PS_UNKNOWN_TYPE "Unknown Type"
|
||||
IDS_PS_UNKNOWN_SRC "Unknown Source"
|
||||
IDS_PS_UNKNOWN_APP "the program which created it"
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* oledlg dll resources
|
||||
* French language support
|
||||
*
|
||||
* Copyright (C) 2005 Jonathan Ernst
|
||||
* Copyright (C) 2005-2006 Jonathan Ernst
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -30,30 +30,70 @@ BEGIN
|
|||
LISTBOX IDC_OBJTYPELIST,82,19,131,66,LBS_SORT |
|
||||
LBS_NOINTEGRALHEIGHT | WS_VISIBLE | WS_VSCROLL |
|
||||
WS_TABSTOP
|
||||
LTEXT "Type d'objet:",IDC_OBJTYPELBL,82,7,53,8,WS_VISIBLE
|
||||
LTEXT "Type d'objet :",IDC_OBJTYPELBL,82,7,53,8,WS_VISIBLE
|
||||
DEFPUSHBUTTON "OK",IDOK,221,7,66,14
|
||||
PUSHBUTTON "Annuler",IDCANCEL,221,24,66,14
|
||||
GROUPBOX "Résultat",IDC_RESULT,7,103,208,41
|
||||
CONTROL "Créer Nouveau",IDC_CREATENEW,"Button",BS_AUTORADIOBUTTON |
|
||||
CONTROL "Créer nouveau",IDC_CREATENEW,"Button",BS_AUTORADIOBUTTON |
|
||||
WS_GROUP,7,20,62,10
|
||||
CONTROL "Créer Contrôle",IDC_CREATECONTROL,"Button",
|
||||
CONTROL "Créer le contrôle",IDC_CREATECONTROL,"Button",
|
||||
BS_AUTORADIOBUTTON | NOT WS_VISIBLE,7,54,62,10
|
||||
CONTROL "Créer Depuis Fichier",IDC_CREATEFROMFILE,"Button",
|
||||
CONTROL "Créer depuis le fichier",IDC_CREATEFROMFILE,"Button",
|
||||
BS_AUTORADIOBUTTON,7,37,67,10
|
||||
LTEXT "",IDC_RESULTDESC,49,112,159,23
|
||||
PUSHBUTTON "&Ajoute Contrôle...",IDC_ADDCONTROL,81,88,63,14,NOT WS_VISIBLE
|
||||
CONTROL "Afficher Comme Icône",IDC_ASICON,"Button",BS_AUTOCHECKBOX |
|
||||
CONTROL "Afficher comme icône",IDC_ASICON,"Button",BS_AUTOCHECKBOX |
|
||||
WS_TABSTOP | NOT WS_VISIBLE,223,58,64,10
|
||||
PUSHBUTTON "Parcourir...",IDC_BROWSE,83,53,50,14,NOT WS_VISIBLE
|
||||
LTEXT "Fichier:",IDC_FILELBL,83,27,20,8, NOT WS_VISIBLE
|
||||
LTEXT "Fichier :",IDC_FILELBL,83,27,20,8, NOT WS_VISIBLE
|
||||
EDITTEXT IDC_FILE,83,37,132,13,ES_AUTOHSCROLL | NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_RESULTOBJDESC "Insérer un nouvel object %s dans votre document"
|
||||
IDS_RESULTFILEOBJDESC "Insère le contenu du fichier comme un objet dans votre document afin que vous puissiez l'activer en utilisant le programme avec lequel vous l'avez créé."
|
||||
IDS_RESULTFILEOBJDESC "Insère le contenu du fichier comme un objet dans votre document afin que vous puissiez l'activer en utilisant le programme avec lequel il a été créé."
|
||||
IDS_BROWSE "Parcourir"
|
||||
IDS_NOTOLEMOD "Le fichier ne semble pas être un module OLE valide. Impossible d'enregistrer le contrôle OLE."
|
||||
IDS_NOTOLEMODCAPTION "Ajouter Contrôle"
|
||||
IDS_NOTOLEMODCAPTION "Ajouter un contrôle"
|
||||
}
|
||||
|
||||
IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 293, 140
|
||||
STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Collage spécial"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "Source :", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
|
||||
CONTROL "C&oller", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
|
||||
6, 38, 55, 10
|
||||
CONTROL "Coller le &lien", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
|
||||
6, 63, 55, 10
|
||||
LTEXT "&Comme :", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
|
||||
LISTBOX IDC_PS_PASTELIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_DISPLAYLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
|
||||
CONTROL "OK", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 224, 6, 66, 14
|
||||
CONTROL "Annuler", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 23, 66, 14
|
||||
CONTROL "Aid&e", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 42, 66, 14
|
||||
CONTROL "&Afficher comme icône", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 66, 14
|
||||
CONTROL "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 224, 75, 66, 44
|
||||
CONTROL "Changer l'&icône...", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 123, 66, 14
|
||||
CONTROL "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
|
||||
CONTROL "<< le résultat vient ici >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
|
||||
CONTROL "Résultat", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
|
||||
CONTROL "", IDC_PS_SOURCETEXT, "Edit", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_PS_PASTE_DATA "Insère le contenu du presse-papiers dans votre document comme %s."
|
||||
IDS_PS_PASTE_OBJECT "Insère le contenu du presse-papiers dans votre document de sorte que vous puissiez l'activer en utilisant %s."
|
||||
IDS_PS_PASTE_OBJECT_AS_ICON "Insère le contenu du presse-papiers dans votre document de sorte que vous puissiez l'activer en utilisant %s. Il sera affiché comme une icône."
|
||||
IDS_PS_PASTE_LINK_DATA "Insère le contenu du presse-papiers dans votre document comme %s. Les données sont liées au fichier source de sorte que les modifications de celles-ci seront répercutées dans votre document."
|
||||
IDS_PS_PASTE_LINK_OBJECT "Insère le contenu du presse-papiers dans votre document. L'image est liée au fichier source de sorte que les modifications de celle-ci seront répercutées dans votre document."
|
||||
IDS_PS_PASTE_LINK_OBJECT_AS_ICON "Insère un raccourci qui pointe vers l'emplacement du contenu du presse-papiers. Le raccourci est lié au fichier source de sorte que les modifications de celui-ci seront répercutées dans votre document."
|
||||
IDS_PS_NON_OLE "Insère le contenu du presse-papiers dans votre document."
|
||||
IDS_PS_UNKNOWN_TYPE "Type inconnu"
|
||||
IDS_PS_UNKNOWN_SRC "Source inconnue"
|
||||
IDS_PS_UNKNOWN_APP "le programme avec lequel il a été créé"
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_ITALIAN, SUBLANG_DEFAULT
|
||||
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
|
||||
|
||||
UIINSERTOBJECT DIALOG DISCARDABLE 0, 0, 294, 151
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
|
||||
LANGUAGE LANG_KOREAN, SUBLANG_NEUTRAL
|
||||
|
||||
UIINSERTOBJECT DIALOG DISCARDABLE 0, 0, 294, 151
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
|
@ -53,3 +53,43 @@ STRINGTABLE DISCARDABLE
|
|||
IDS_NOTOLEMOD "이 파일은 올바른 OLE모듈이 아닌거로 보입니다. OLE컨트롤을 등록할수 없습니다."
|
||||
IDS_NOTOLEMODCAPTION "컨트롤 더하기"
|
||||
}
|
||||
|
||||
IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 293, 140
|
||||
STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "특별하게 붙여넣기"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "원본:", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
|
||||
CONTROL "붙여넣기(&P)", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
|
||||
6, 38, 55, 10
|
||||
CONTROL "링크로 붙여넣기(&L)", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
|
||||
6, 63, 55, 10
|
||||
LTEXT "&As:", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
|
||||
LISTBOX IDC_PS_PASTELIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_DISPLAYLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
|
||||
CONTROL "확인", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 224, 6, 66, 14
|
||||
CONTROL "취소", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 23, 66, 14
|
||||
CONTROL "도움말(&H)", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 42, 66, 14
|
||||
CONTROL "아이콘으로 보기(&D)", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 66, 14
|
||||
CONTROL "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 224, 75, 66, 44
|
||||
CONTROL "아이콘 바꾸기(&I)...", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 123, 66, 14
|
||||
CONTROL "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
|
||||
CONTROL "<< 결과 텍스트는 여기다가 >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
|
||||
CONTROL "결과", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
|
||||
CONTROL "", IDC_PS_SOURCETEXT, "Edit", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_PS_PASTE_DATA "당신의 문서 %s에 클립보드의 내용 삽입하기."
|
||||
IDS_PS_PASTE_OBJECT "당신의 문서에 클립보드의 내용들을 첨부하면 %s를 사용해서 이것을 실행할 수 있습니다."
|
||||
IDS_PS_PASTE_OBJECT_AS_ICON "당신의 문서에 클립보드의 내용들을 첨부하면 %s를 사용해서 이것을 실행할 수 있습니다. 이것은 아이콘으로 나타내질 겁니다."
|
||||
IDS_PS_PASTE_LINK_DATA "당신의 문서 %s에 클립보드의 내용 삽입하기. 이 데이터는 원본 파일에 연결되어 있어서 파일이 바뀌면 당신의 문서도 바뀔겁니다."
|
||||
IDS_PS_PASTE_LINK_OBJECT "당신의 문서에 클립보드에 있는 그림을 집어넣습니다. 이 그림은 원본 파일에 연결되어 있어서 파일이 바뀌면 당신의 문서도 바뀔겁니다."
|
||||
IDS_PS_PASTE_LINK_OBJECT_AS_ICON "당신의 문서에 클립보드에 있는 단축아이콘을 집어넣습니다. 이 단축아이콘은 원본 파일에 연결되어 있어서 파일이 바뀌면 당신의 문서도 바뀔겁니다t."
|
||||
IDS_PS_NON_OLE "당신의 문서에 클립보드의 내용 삽입하기."
|
||||
IDS_PS_UNKNOWN_TYPE "알수 없는 형식"
|
||||
IDS_PS_UNKNOWN_SRC "알수 없는 원본"
|
||||
IDS_PS_UNKNOWN_APP "이 프로그램은 알 수 없는 프로그램으로 만들어졌습니다"
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_DUTCH, SUBLANG_DEFAULT
|
||||
LANGUAGE LANG_DUTCH, SUBLANG_NEUTRAL
|
||||
|
||||
UIINSERTOBJECT DIALOG DISCARDABLE 0, 0, 294, 151
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
|
@ -33,7 +33,7 @@ BEGIN
|
|||
GROUPBOX "Resultaat",IDC_RESULT,7,103,208,41
|
||||
CONTROL "Nieuw",IDC_CREATENEW,"Button",BS_AUTORADIOBUTTON |
|
||||
WS_GROUP,7,20,62,10
|
||||
CONTROL "Creëren",IDC_CREATECONTROL,"Button",
|
||||
CONTROL "Creëren",IDC_CREATECONTROL,"Button",
|
||||
BS_AUTORADIOBUTTON | NOT WS_VISIBLE,7,54,62,10
|
||||
CONTROL "Bestand gebruiken",IDC_CREATEFROMFILE,"Button",
|
||||
BS_AUTORADIOBUTTON,7,37,67,10
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2005 Alexander N. Sørnes <alex@thehandofagony.com>
|
||||
* Copyright 2005-2006 Alexander N. Sørnes <alex@thehandofagony.com>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -53,3 +53,43 @@ STRINGTABLE DISCARDABLE
|
|||
IDS_NOTOLEMOD "Filen ser ikke ut til å være en gyldig OLE-modul. Kunne ikke registrere OLE-kontroller."
|
||||
IDS_NOTOLEMODCAPTION "Legg til kontroller"
|
||||
}
|
||||
|
||||
IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 293, 140
|
||||
STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Lim inn spesiell"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "Kilde:", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
|
||||
CONTROL "Lim in&n", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
|
||||
6, 38, 55, 10
|
||||
CONTROL "Lim inn kob&ling", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
|
||||
6, 63, 55, 10
|
||||
LTEXT "&Som:", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
|
||||
LISTBOX IDC_PS_PASTELIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_DISPLAYLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
|
||||
CONTROL "OK", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 224, 6, 66, 14
|
||||
CONTROL "Avbryt", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 23, 66, 14
|
||||
CONTROL "&Hjelp", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 42, 66, 14
|
||||
CONTROL "&Vis som ikon", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 66, 14
|
||||
CONTROL "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 224, 75, 66, 44
|
||||
CONTROL "Endre &ikon . . .", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 224, 123, 66, 14
|
||||
CONTROL "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
|
||||
CONTROL "<< resultatet kommer her >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
|
||||
CONTROL "Resultat", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
|
||||
CONTROL "", IDC_PS_SOURCETEXT, "Rediger", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_PS_PASTE_DATA "Setter innholdet fra utklippstavlen inn i dokumentet som %s."
|
||||
IDS_PS_PASTE_OBJECT "Setter innholdet fra utklippstavlen inn i dokumentet så du kan aktivere det med %s."
|
||||
IDS_PS_PASTE_OBJECT_AS_ICON "Setter innholdet fra utklippstavlen inn i dokumentet så du kan aktivere det med %s. Det vises som et ikon."
|
||||
IDS_PS_PASTE_LINK_DATA "Setter innholdet fra utklippstavlen inn i dokumentet som %s. Det kobles til kildefilen så endrer i denne også skjer i dokumentet."
|
||||
IDS_PS_PASTE_LINK_OBJECT "Setter inn et bilde av utklippstavleinnholdet i dokumentet. Bildet kobles til kildefilen så endringer i denne også skjer i dokumentet ."
|
||||
IDS_PS_PASTE_LINK_OBJECT_AS_ICON "Setter inn en snarvei som peker til plasseringen av innholdet på utklippstavlen. Snarveien kobles til kildefilen så endringer i denne også skjer i dokumentet."
|
||||
IDS_PS_NON_OLE "Setter innholdet fra utklippstavlen inn i dokumentet."
|
||||
IDS_PS_UNKNOWN_TYPE "Ukjent type"
|
||||
IDS_PS_UNKNOWN_SRC "Ukjent kilde"
|
||||
IDS_PS_UNKNOWN_APP "programmet som laget det"
|
||||
}
|
||||
|
|
96
reactos/dll/win32/oledlg/oledlg_Pl.rc
Normal file
96
reactos/dll/win32/oledlg/oledlg_Pl.rc
Normal file
|
@ -0,0 +1,96 @@
|
|||
/*
|
||||
* Copyright 2003 Ulrich Czekalla for CodeWeavers
|
||||
* Copyright 2006 Mikolaj Zalewski
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
|
||||
|
||||
UIINSERTOBJECT DIALOG DISCARDABLE 0, 0, 310, 151
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Wstaw objekt"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LISTBOX IDC_OBJTYPELIST,82,19,131,66,LBS_SORT |
|
||||
LBS_NOINTEGRALHEIGHT | WS_VISIBLE | WS_VSCROLL |
|
||||
WS_TABSTOP
|
||||
LTEXT "Typ obiektu:",IDC_OBJTYPELBL,82,7,53,8,WS_VISIBLE
|
||||
DEFPUSHBUTTON "OK",IDOK,229,7,66,14
|
||||
PUSHBUTTON "Anuluj",IDCANCEL,229,24,66,14
|
||||
GROUPBOX "Wynik",IDC_RESULT,7,103,208,41
|
||||
CONTROL "Utwórz nowy",IDC_CREATENEW,"Button",BS_AUTORADIOBUTTON |
|
||||
WS_GROUP,7,20,62,10
|
||||
CONTROL "Utwórz kontrolkê",IDC_CREATECONTROL,"Button",
|
||||
BS_AUTORADIOBUTTON | NOT WS_VISIBLE,7,54,72,10
|
||||
CONTROL "Utwórz z pliku",IDC_CREATEFROMFILE,"Button",
|
||||
BS_AUTORADIOBUTTON,7,37,67,10
|
||||
LTEXT "",IDC_RESULTDESC,49,112,159,23
|
||||
PUSHBUTTON "&Dodaj kontrolkê...",IDC_ADDCONTROL,81,88,63,14,NOT WS_VISIBLE
|
||||
CONTROL "Wyœwietlaj jako ikonê",IDC_ASICON,"Button",BS_AUTOCHECKBOX |
|
||||
WS_TABSTOP | NOT WS_VISIBLE,223,58,84,10
|
||||
PUSHBUTTON "Przegl¹daj...",IDC_BROWSE,83,53,50,14,NOT WS_VISIBLE
|
||||
LTEXT "Plik:",IDC_FILELBL,83,27,20,8, NOT WS_VISIBLE
|
||||
EDITTEXT IDC_FILE,83,37,132,13,ES_AUTOHSCROLL | NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_RESULTOBJDESC "Wstaw nowy objekt %s do dokumentu"
|
||||
IDS_RESULTFILEOBJDESC "Wstaw zawartoœæ pliku jako obiekt do dokumentu. Bêdzie mo¿na go aktywowaæ u¿ywaj¹c programu, który go stworzy³."
|
||||
IDS_BROWSE "Przegl¹daj"
|
||||
IDS_NOTOLEMOD "Plik nie wydaje siê byæ poprawnym modu³em OLE. Nie uda³o siê zarejestrowaæ kontrolki OLE."
|
||||
IDS_NOTOLEMODCAPTION "Dodaj kontrolkê"
|
||||
}
|
||||
|
||||
IDD_PASTESPECIAL4 DIALOG DISCARDABLE 3, 15, 309, 140
|
||||
STYLE DS_MODALFRAME | DS_SETFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Wklej specjalnie"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LTEXT "<22>ród³o:", -1, 6, 9, 30, 8, WS_VISIBLE | WS_GROUP
|
||||
CONTROL "&Wklej", IDC_PS_PASTE, "Button", BS_AUTORADIOBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE,
|
||||
6, 38, 55, 10
|
||||
CONTROL "Wklej &³¹czê", IDC_PS_PASTELINK, "Button", BS_AUTORADIOBUTTON | WS_VISIBLE,
|
||||
6, 63, 55, 10
|
||||
LTEXT "&Jako:", -1, 65, 25, 16, 8, WS_VISIBLE | WS_GROUP
|
||||
LISTBOX IDC_PS_PASTELIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_PASTELINKLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | NOT WS_VISIBLE
|
||||
LISTBOX IDC_PS_DISPLAYLIST, 65, 36, 153, 57, LBS_NOTIFY | LBS_USETABSTOPS | WS_VSCROLL | WS_BORDER | WS_VISIBLE
|
||||
CONTROL "OK", IDOK, "Button", BS_DEFPUSHBUTTON | WS_TABSTOP | WS_GROUP | WS_VISIBLE, 232, 6, 66, 14
|
||||
CONTROL "Anuluj", IDCANCEL, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 232, 23, 66, 14
|
||||
CONTROL "&Pomoc", IDC_OLEUIHELP, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 232, 42, 66, 14
|
||||
CONTROL "W&yœwietlaj jako ikonê", IDC_PS_DISPLAYASICON, "Button", BS_AUTOCHECKBOX | WS_TABSTOP | WS_VISIBLE, 224, 59, 84, 14
|
||||
CONTROL "", IDC_PS_ICONDISPLAY, "Static", SS_ICON | WS_VISIBLE, 232, 75, 66, 44
|
||||
CONTROL "Zmieñ &ikonê...", IDC_PS_CHANGEICON, "Button", BS_PUSHBUTTON | WS_TABSTOP | WS_VISIBLE, 232, 123, 66, 14
|
||||
CONTROL "", IDC_PS_RESULTIMAGE, "Static", SS_ICON | WS_VISIBLE, 8, 101, 42, 34
|
||||
CONTROL "<< result text goes here >>", IDC_PS_RESULTTEXT, "Static", SS_NOPREFIX | WS_VISIBLE, 54, 100, 159, 35
|
||||
CONTROL "Wynik", -1, "Button", BS_GROUPBOX | WS_GROUP | WS_VISIBLE, 6, 90, 212, 48
|
||||
CONTROL "", IDC_PS_SOURCETEXT, "Edit", ES_READONLY | ES_AUTOHSCROLL | WS_VISIBLE, 37, 9, 180, 8
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_PS_PASTE_DATA "Wstawia zawartoϾ schowka do documentu jako %s."
|
||||
IDS_PS_PASTE_OBJECT "Wstawia zawartoœæ schowka do dokumentu, tak aby móg³ byæ aktywowany za pomoc¹ %s."
|
||||
IDS_PS_PASTE_OBJECT_AS_ICON "Wstawia zawartoœæ schowka do dokumentu, tak aby móg³ byæ aktywowany za pomoc¹ %s. Bêdzie wyœwietlany jako ikona."
|
||||
IDS_PS_PASTE_LINK_DATA "Wstawia zawartoœæ schowka do documentu jako %s. Dane bêd¹ po³¹czone z plikiem Ÿród³owym, dziêki czemu zmiany w pliku bêd¹ odzwierciedlone w dokumencie."
|
||||
IDS_PS_PASTE_LINK_OBJECT "Wstawia zawartoœæ schowka do documentu jako obraz. Obraz bêdzie po³¹czony z plikiem Ÿród³owym, dziêki czemu zmiany w pliku bêd¹ odzwierciedlone w dokumencie."
|
||||
IDS_PS_PASTE_LINK_OBJECT_AS_ICON "Wstawia do documentu skrót do zawartoœci schowka. Skrót bêdzie po³¹czony z plikiem Ÿród³owym, dziêki czemu zmiany w pliku bêd¹ odzwierciedlone w dokumencie."
|
||||
IDS_PS_NON_OLE "Wstawia zawartoϾ schowka do dokumentu"
|
||||
IDS_PS_UNKNOWN_TYPE "Nieznany typ"
|
||||
IDS_PS_UNKNOWN_SRC "Nieznane Ÿród³o"
|
||||
IDS_PS_UNKNOWN_APP "program który go stworzy³"
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
/*
|
||||
* Copyright 2004 Marcelo Duarte
|
||||
* Copyright 2006 Américo José Melo
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -16,7 +17,7 @@
|
|||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_PORTUGUESE, SUBLANG_DEFAULT
|
||||
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
|
||||
|
||||
UIINSERTOBJECT DIALOG DISCARDABLE 0, 0, 294, 151
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
|
@ -45,6 +46,38 @@ BEGIN
|
|||
EDITTEXT IDC_FILE,83,37,132,13,ES_AUTOHSCROLL | NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE
|
||||
|
||||
UIINSERTOBJECT DIALOG DISCARDABLE 0, 0, 294, 151
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Inserir objecto"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
BEGIN
|
||||
LISTBOX IDC_OBJTYPELIST,82,19,131,66,LBS_SORT |
|
||||
LBS_NOINTEGRALHEIGHT | WS_VISIBLE | WS_VSCROLL |
|
||||
WS_TABSTOP
|
||||
LTEXT "Tipo de objecto:",IDC_OBJTYPELBL,82,7,53,8,WS_VISIBLE
|
||||
DEFPUSHBUTTON "OK",IDOK,221,7,66,14
|
||||
PUSHBUTTON "Cancelar",IDCANCEL,221,24,66,14
|
||||
GROUPBOX "Resultado",IDC_RESULT,7,103,208,41
|
||||
CONTROL "Criar novo",IDC_CREATENEW,"Button",BS_AUTORADIOBUTTON |
|
||||
WS_GROUP,7,20,62,10
|
||||
CONTROL "Criar controlo",IDC_CREATECONTROL,"Button",
|
||||
BS_AUTORADIOBUTTON | NOT WS_VISIBLE,7,54,62,10
|
||||
CONTROL "Criar do ficheiro",IDC_CREATEFROMFILE,"Button",
|
||||
BS_AUTORADIOBUTTON,7,37,67,10
|
||||
LTEXT "",IDC_RESULTDESC,49,112,159,23
|
||||
PUSHBUTTON "&Adicionar Controlo...",IDC_ADDCONTROL,81,88,63,14,NOT WS_VISIBLE
|
||||
CONTROL "Mostrar como ícone",IDC_ASICON,"Button",BS_AUTOCHECKBOX |
|
||||
WS_TABSTOP | NOT WS_VISIBLE,223,58,64,10
|
||||
PUSHBUTTON "Procurar...",IDC_BROWSE,83,53,50,14,NOT WS_VISIBLE
|
||||
LTEXT "Ficheiro:",IDC_FILELBL,83,27,20,8, NOT WS_VISIBLE
|
||||
EDITTEXT IDC_FILE,83,37,132,13,ES_AUTOHSCROLL | NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
|
||||
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_RESULTOBJDESC "Inserir um novo objeto %s no documento"
|
||||
|
@ -53,3 +86,14 @@ STRINGTABLE DISCARDABLE
|
|||
IDS_NOTOLEMOD "O arquivo não parece ser um módulo OLE válido. Impossível registrar o controle OLE."
|
||||
IDS_NOTOLEMODCAPTION "Adicionar Controle"
|
||||
}
|
||||
|
||||
LANGUAGE LANG_PORTUGUESE, SUBLANG_PORTUGUESE
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_RESULTOBJDESC "Inserir novo objecto %s no documento"
|
||||
IDS_RESULTFILEOBJDESC "Inserir conteúdo do ficheiro como um objecto no documento de modo que opossa activar usando o programa que o criou."
|
||||
IDS_BROWSE "Procurar"
|
||||
IDS_NOTOLEMOD "O ficheiro não parece ser um módulo OLE válido. Impossível registrar o controlo OLE."
|
||||
IDS_NOTOLEMODCAPTION "Adicionar Controlo"
|
||||
}
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
#define COM_NO_WINDOWS_H
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
|
@ -27,24 +26,69 @@
|
|||
#include "wingdi.h"
|
||||
#include "winuser.h"
|
||||
#include "oledlg.h"
|
||||
#include "wine/debug.h"
|
||||
#include "ole2.h"
|
||||
#include "oledlg_private.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(ole);
|
||||
|
||||
HINSTANCE OLEDLG_hInstance = 0;
|
||||
|
||||
UINT cf_embed_source;
|
||||
UINT cf_embedded_object;
|
||||
UINT cf_link_source;
|
||||
UINT cf_object_descriptor;
|
||||
UINT cf_link_src_descriptor;
|
||||
UINT cf_ownerlink;
|
||||
UINT cf_filename;
|
||||
UINT cf_filenamew;
|
||||
|
||||
UINT oleui_msg_help;
|
||||
UINT oleui_msg_enddialog;
|
||||
|
||||
static void register_clipboard_formats(void)
|
||||
{
|
||||
/* These used to be declared in olestd.h, but that seems to have been removed from the api */
|
||||
static const WCHAR CF_EMBEDSOURCEW[] = { 'E','m','b','e','d',' ','S','o','u','r','c','e',0 };
|
||||
static const WCHAR CF_EMBEDDEDOBJECTW[] = { 'E','m','b','e','d','d','e','d',' ','O','b','j','e','c','t',0 };
|
||||
static const WCHAR CF_LINKSOURCEW[] = { 'L','i','n','k',' ','S','o','u','r','c','e',0 };
|
||||
static const WCHAR CF_OBJECTDESCRIPTORW[] = { 'O','b','j','e','c','t',' ','D','e','s','c','r','i','p','t','o','r',0 };
|
||||
static const WCHAR CF_LINKSRCDESCRIPTORW[] = { 'L','i','n','k',' ','S','o','u','r','c','e',' ','D','e','s','c','r','i','p','t','o','r',0 };
|
||||
static const WCHAR CF_OWNERLINKW[] = { 'O','w','n','e','r','L','i','n','k',0 };
|
||||
static const WCHAR CF_FILENAMEW[] = { 'F','i','l','e','N','a','m','e',0 };
|
||||
static const WCHAR CF_FILENAMEWW[] = { 'F','i','l','e','N','a','m','e','W',0 };
|
||||
|
||||
/* Load in the same order as native to make debugging easier */
|
||||
cf_object_descriptor = RegisterClipboardFormatW(CF_OBJECTDESCRIPTORW);
|
||||
cf_link_src_descriptor = RegisterClipboardFormatW(CF_LINKSRCDESCRIPTORW);
|
||||
cf_embed_source = RegisterClipboardFormatW(CF_EMBEDSOURCEW);
|
||||
cf_embedded_object = RegisterClipboardFormatW(CF_EMBEDDEDOBJECTW);
|
||||
cf_link_source = RegisterClipboardFormatW(CF_LINKSOURCEW);
|
||||
cf_ownerlink = RegisterClipboardFormatW(CF_OWNERLINKW);
|
||||
cf_filename = RegisterClipboardFormatW(CF_FILENAMEW);
|
||||
cf_filenamew = RegisterClipboardFormatW(CF_FILENAMEWW);
|
||||
}
|
||||
|
||||
static void register_messages(void)
|
||||
{
|
||||
oleui_msg_help = RegisterWindowMessageW(SZOLEUI_MSG_HELPW);
|
||||
oleui_msg_enddialog = RegisterWindowMessageW(SZOLEUI_MSG_ENDDIALOGW);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DllMain
|
||||
*/
|
||||
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID fImpLoad)
|
||||
{
|
||||
TRACE("%p 0x%lx %p\n", hinstDLL, fdwReason, fImpLoad);
|
||||
TRACE("%p 0x%x %p\n", hinstDLL, fdwReason, fImpLoad);
|
||||
|
||||
switch(fdwReason) {
|
||||
case DLL_PROCESS_ATTACH:
|
||||
DisableThreadLibraryCalls(hinstDLL);
|
||||
OLEDLG_hInstance = hinstDLL;
|
||||
register_clipboard_formats();
|
||||
register_messages();
|
||||
break;
|
||||
|
||||
case DLL_PROCESS_DETACH:
|
||||
|
@ -112,26 +156,6 @@ UINT WINAPI OleUIInsertObjectW(LPOLEUIINSERTOBJECTW lpOleUIInsertObject)
|
|||
return OLEUI_FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* OleUIPasteSpecialA (OLEDLG.4)
|
||||
*/
|
||||
UINT WINAPI OleUIPasteSpecialA(LPOLEUIPASTESPECIALA lpOleUIPasteSpecial)
|
||||
{
|
||||
FIXME("(%p): stub\n", lpOleUIPasteSpecial);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return OLEUI_FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* OleUIPasteSpecialW (OLEDLG.22)
|
||||
*/
|
||||
UINT WINAPI OleUIPasteSpecialW(LPOLEUIPASTESPECIALW lpOleUIPasteSpecial)
|
||||
{
|
||||
FIXME("(%p): stub\n", lpOleUIPasteSpecial);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return OLEUI_FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* OleUIEditLinksA (OLEDLG.5)
|
||||
*/
|
||||
|
|
38
reactos/dll/win32/oledlg/oledlg_private.h
Normal file
38
reactos/dll/win32/oledlg/oledlg_private.h
Normal file
|
@ -0,0 +1,38 @@
|
|||
/*
|
||||
* oledlg internal header file
|
||||
*
|
||||
* Copyright (C) 2006 Huw Davies
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
#ifndef __OLEDLG_PRIVATE_H__
|
||||
#define __OLEDLG_PRIVATE_H__
|
||||
|
||||
extern HINSTANCE OLEDLG_hInstance;
|
||||
|
||||
extern UINT cf_embed_source;
|
||||
extern UINT cf_embedded_object;
|
||||
extern UINT cf_link_source;
|
||||
extern UINT cf_object_descriptor;
|
||||
extern UINT cf_link_src_descriptor;
|
||||
extern UINT cf_ownerlink;
|
||||
extern UINT cf_filename;
|
||||
extern UINT cf_filenamew;
|
||||
|
||||
extern UINT oleui_msg_help;
|
||||
extern UINT oleui_msg_enddialog;
|
||||
|
||||
#endif /* __OLEDLG_PRIVATE_H__ */
|
|
@ -58,8 +58,8 @@ Index: rsrc.rc
|
|||
===================================================================
|
||||
--- rsrc.rc (revision 25690)
|
||||
+++ rsrc.rc (revision working copy)
|
||||
@@ -44,3 +44,4 @@
|
||||
#include "oledlg_No.rc"
|
||||
@@ -47,3 +47,4 @@
|
||||
#include "oledlg_Pl.rc"
|
||||
#include "oledlg_Pt.rc"
|
||||
#include "oledlg_Tr.rc"
|
||||
+#include "oledlg_Uk.rc"
|
||||
|
|
722
reactos/dll/win32/oledlg/pastespl.c
Normal file
722
reactos/dll/win32/oledlg/pastespl.c
Normal file
|
@ -0,0 +1,722 @@
|
|||
/*
|
||||
* OleUIPasteSpecial implementation
|
||||
*
|
||||
* Copyright 2006 Huw Davies
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
#define COBJMACROS
|
||||
#define NONAMELESSSTRUCT
|
||||
#define NONAMELESSUNION
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "winerror.h"
|
||||
#include "wingdi.h"
|
||||
#include "winuser.h"
|
||||
#include "winnls.h"
|
||||
#include "oledlg.h"
|
||||
|
||||
#include "oledlg_private.h"
|
||||
#include "resource.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
#include "wine/unicode.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(ole);
|
||||
|
||||
typedef struct
|
||||
{
|
||||
OLEUIPASTESPECIALW *ps;
|
||||
DWORD flags;
|
||||
WCHAR *source_name;
|
||||
WCHAR *link_source_name;
|
||||
WCHAR *type_name;
|
||||
WCHAR *link_type_name;
|
||||
LPOLESTR app_name;
|
||||
} ps_struct_t;
|
||||
|
||||
static const struct ps_flag
|
||||
{
|
||||
DWORD flag;
|
||||
const char *name;
|
||||
} ps_flags[] = {
|
||||
#define PS_FLAG_ENTRY(p) {p, #p}
|
||||
PS_FLAG_ENTRY(PSF_SHOWHELP),
|
||||
PS_FLAG_ENTRY(PSF_SELECTPASTE),
|
||||
PS_FLAG_ENTRY(PSF_SELECTPASTELINK),
|
||||
PS_FLAG_ENTRY(PSF_CHECKDISPLAYASICON),
|
||||
PS_FLAG_ENTRY(PSF_DISABLEDISPLAYASICON),
|
||||
PS_FLAG_ENTRY(PSF_HIDECHANGEICON),
|
||||
PS_FLAG_ENTRY(PSF_STAYONCLIPBOARDCHANGE),
|
||||
PS_FLAG_ENTRY(PSF_NOREFRESHDATAOBJECT),
|
||||
{-1, NULL}
|
||||
#undef PS_FLAG_ENTRY
|
||||
};
|
||||
|
||||
static void dump_ps_flags(DWORD flags)
|
||||
{
|
||||
char flagstr[1000] = "";
|
||||
|
||||
const struct ps_flag *flag = ps_flags;
|
||||
for( ; flag->name; flag++) {
|
||||
if(flags & flag->flag) {
|
||||
strcat(flagstr, flag->name);
|
||||
strcat(flagstr, "|");
|
||||
}
|
||||
}
|
||||
TRACE("flags %08x %s\n", flags, flagstr);
|
||||
}
|
||||
|
||||
static void dump_pastespecial(LPOLEUIPASTESPECIALW ps)
|
||||
{
|
||||
UINT i;
|
||||
dump_ps_flags(ps->dwFlags);
|
||||
TRACE("hwnd %p caption %s hook %p custdata %lx\n",
|
||||
ps->hWndOwner, debugstr_w(ps->lpszCaption), ps->lpfnHook, ps->lCustData);
|
||||
if(IS_INTRESOURCE(ps->lpszTemplate))
|
||||
TRACE("hinst %p template %04x hresource %p\n", ps->hInstance, (WORD)(ULONG_PTR)ps->lpszTemplate, ps->hResource);
|
||||
else
|
||||
TRACE("hinst %p template %s hresource %p\n", ps->hInstance, debugstr_w(ps->lpszTemplate), ps->hResource);
|
||||
TRACE("dataobj %p arrpasteent %p cpasteent %d arrlinktype %p clinktype %d\n",
|
||||
ps->lpSrcDataObj, ps->arrPasteEntries, ps->cPasteEntries,
|
||||
ps->arrLinkTypes, ps->cLinkTypes);
|
||||
TRACE("cclsidex %d lpclsidex %p nselect %d flink %d hmetapict %p size(%d,%d)\n",
|
||||
ps->cClsidExclude, ps->lpClsidExclude, ps->nSelectedIndex, ps->fLink,
|
||||
ps->hMetaPict, ps->sizel.cx, ps->sizel.cy);
|
||||
for(i = 0; i < ps->cPasteEntries; i++)
|
||||
{
|
||||
TRACE("arrPasteEntries[%d]: cFormat %08x pTargetDevice %p dwAspect %d lindex %d tymed %d\n",
|
||||
i, ps->arrPasteEntries[i].fmtetc.cfFormat, ps->arrPasteEntries[i].fmtetc.ptd,
|
||||
ps->arrPasteEntries[i].fmtetc.dwAspect, ps->arrPasteEntries[i].fmtetc.lindex,
|
||||
ps->arrPasteEntries[i].fmtetc.tymed);
|
||||
TRACE("\tformat name %s result text %s flags %04x\n", debugstr_w(ps->arrPasteEntries[i].lpstrFormatName),
|
||||
debugstr_w(ps->arrPasteEntries[i].lpstrResultText), ps->arrPasteEntries[i].dwFlags);
|
||||
}
|
||||
for(i = 0; i < ps->cLinkTypes; i++)
|
||||
TRACE("arrLinkTypes[%d] %08x\n", i, ps->arrLinkTypes[i]);
|
||||
for(i = 0; i < ps->cClsidExclude; i++)
|
||||
TRACE("lpClsidExclude[%d] %s\n", i, debugstr_guid(&ps->lpClsidExclude[i]));
|
||||
|
||||
}
|
||||
|
||||
static inline WCHAR *strdupAtoW(const char *str)
|
||||
{
|
||||
DWORD len;
|
||||
WCHAR *ret;
|
||||
if(!str) return NULL;
|
||||
len = MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, 0);
|
||||
ret = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR));
|
||||
MultiByteToWideChar(CP_ACP, 0, str, -1, ret, len);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static inline WCHAR *strdupW(const WCHAR *str)
|
||||
{
|
||||
DWORD len;
|
||||
WCHAR *ret;
|
||||
if(!str) return NULL;
|
||||
len = lstrlenW(str) + 1;
|
||||
ret = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR));
|
||||
memcpy(ret, str, len * sizeof(WCHAR));
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void get_descriptors(HWND hdlg, ps_struct_t *ps_struct)
|
||||
{
|
||||
FORMATETC fmtetc;
|
||||
STGMEDIUM stg;
|
||||
|
||||
fmtetc.tymed = TYMED_HGLOBAL;
|
||||
fmtetc.dwAspect = DVASPECT_CONTENT;
|
||||
fmtetc.ptd = NULL;
|
||||
fmtetc.lindex = -1;
|
||||
|
||||
fmtetc.cfFormat = cf_object_descriptor;
|
||||
if(IDataObject_GetData(ps_struct->ps->lpSrcDataObj, &fmtetc, &stg) == S_OK)
|
||||
{
|
||||
OBJECTDESCRIPTOR *obj_desc = GlobalLock(stg.u.hGlobal);
|
||||
if(obj_desc->dwSrcOfCopy)
|
||||
ps_struct->source_name = strdupW((WCHAR*)((char*)obj_desc + obj_desc->dwSrcOfCopy));
|
||||
if(obj_desc->dwFullUserTypeName)
|
||||
ps_struct->type_name = strdupW((WCHAR*)((char*)obj_desc + obj_desc->dwFullUserTypeName));
|
||||
OleRegGetUserType(&obj_desc->clsid, USERCLASSTYPE_APPNAME, &ps_struct->app_name);
|
||||
/* Get the icon here. If dwDrawAspect & DVASCPECT_ICON call GetData(CF_METAFILEPICT), otherwise
|
||||
native calls OleGetIconFromClass(obj_desc->clsid) */
|
||||
GlobalUnlock(stg.u.hGlobal);
|
||||
GlobalFree(stg.u.hGlobal);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Try to get some data using some of the other clipboard formats */
|
||||
}
|
||||
|
||||
fmtetc.cfFormat = cf_link_src_descriptor;
|
||||
if(IDataObject_GetData(ps_struct->ps->lpSrcDataObj, &fmtetc, &stg) == S_OK)
|
||||
{
|
||||
OBJECTDESCRIPTOR *obj_desc = GlobalLock(stg.u.hGlobal);
|
||||
if(obj_desc->dwSrcOfCopy)
|
||||
ps_struct->link_source_name = strdupW((WCHAR*)((char*)obj_desc + obj_desc->dwSrcOfCopy));
|
||||
if(obj_desc->dwFullUserTypeName)
|
||||
ps_struct->link_type_name = strdupW((WCHAR*)((char*)obj_desc + obj_desc->dwFullUserTypeName));
|
||||
GlobalUnlock(stg.u.hGlobal);
|
||||
GlobalFree(stg.u.hGlobal);
|
||||
}
|
||||
|
||||
if(ps_struct->source_name == NULL && ps_struct->link_source_name == NULL)
|
||||
{
|
||||
WCHAR buf[200];
|
||||
LoadStringW(OLEDLG_hInstance, IDS_PS_UNKNOWN_SRC, buf, sizeof(buf)/sizeof(WCHAR));
|
||||
ps_struct->source_name = strdupW(buf);
|
||||
}
|
||||
|
||||
if(ps_struct->type_name == NULL && ps_struct->link_type_name == NULL)
|
||||
{
|
||||
WCHAR buf[200];
|
||||
LoadStringW(OLEDLG_hInstance, IDS_PS_UNKNOWN_TYPE, buf, sizeof(buf)/sizeof(WCHAR));
|
||||
ps_struct->type_name = strdupW(buf);
|
||||
}
|
||||
}
|
||||
|
||||
static BOOL add_entry_to_lb(HWND hdlg, UINT id, OLEUIPASTEENTRYW *pe)
|
||||
{
|
||||
HWND hwnd = GetDlgItem(hdlg, id);
|
||||
BOOL ret = FALSE;
|
||||
|
||||
/* FIXME %s handling */
|
||||
|
||||
/* Note that this suffers from the same bug as native, in that if a new string
|
||||
is a substring of an already added string, then the FINDSTRING will succeed
|
||||
this is probably not what we want */
|
||||
if(SendMessageW(hwnd, LB_FINDSTRING, 0, (LPARAM)pe->lpstrFormatName) == -1)
|
||||
{
|
||||
LRESULT pos = SendMessageW(hwnd, LB_ADDSTRING, 0, (LPARAM)pe->lpstrFormatName);
|
||||
SendMessageW(hwnd, LB_SETITEMDATA, pos, (LPARAM)pe);
|
||||
ret = TRUE;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
static DWORD init_pastelist(HWND hdlg, OLEUIPASTESPECIALW *ps)
|
||||
{
|
||||
IEnumFORMATETC *penum;
|
||||
HRESULT hr;
|
||||
FORMATETC fmts[20];
|
||||
DWORD fetched, items_added = 0;
|
||||
|
||||
hr = IDataObject_EnumFormatEtc(ps->lpSrcDataObj, DATADIR_GET, &penum);
|
||||
if(FAILED(hr))
|
||||
{
|
||||
WARN("Unable to create IEnumFORMATETC\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* The native version grabs only the first 20 fmts and we do the same */
|
||||
hr = IEnumFORMATETC_Next(penum, sizeof(fmts)/sizeof(fmts[0]), fmts, &fetched);
|
||||
TRACE("got %d formats hr %08x\n", fetched, hr);
|
||||
|
||||
if(SUCCEEDED(hr))
|
||||
{
|
||||
DWORD src_fmt, req_fmt;
|
||||
for(req_fmt = 0; req_fmt < ps->cPasteEntries; req_fmt++)
|
||||
{
|
||||
/* This is used by update_structure() to set nSelectedIndex on exit */
|
||||
ps->arrPasteEntries[req_fmt].dwScratchSpace = req_fmt;
|
||||
TRACE("req_fmt %x\n", ps->arrPasteEntries[req_fmt].fmtetc.cfFormat);
|
||||
for(src_fmt = 0; src_fmt < fetched; src_fmt++)
|
||||
{
|
||||
TRACE("\tenum'ed fmt %x\n", fmts[src_fmt].cfFormat);
|
||||
if(ps->arrPasteEntries[req_fmt].fmtetc.cfFormat == fmts[src_fmt].cfFormat)
|
||||
{
|
||||
add_entry_to_lb(hdlg, IDC_PS_PASTELIST, ps->arrPasteEntries + req_fmt);
|
||||
items_added++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
IEnumFORMATETC_Release(penum);
|
||||
EnableWindow(GetDlgItem(hdlg, IDC_PS_PASTE), items_added ? TRUE : FALSE);
|
||||
return items_added;
|
||||
}
|
||||
|
||||
static DWORD init_linklist(HWND hdlg, OLEUIPASTESPECIALW *ps)
|
||||
{
|
||||
HRESULT hr;
|
||||
DWORD supported_mask = 0;
|
||||
DWORD items_added = 0;
|
||||
int link, req_fmt;
|
||||
FORMATETC fmt = {0, NULL, DVASPECT_CONTENT, -1, -1};
|
||||
|
||||
for(link = 0; link < ps->cLinkTypes && link < PS_MAXLINKTYPES; link++)
|
||||
{
|
||||
fmt.cfFormat = ps->arrLinkTypes[link];
|
||||
hr = IDataObject_QueryGetData(ps->lpSrcDataObj, &fmt);
|
||||
if(hr == S_OK)
|
||||
supported_mask |= 1 << link;
|
||||
}
|
||||
TRACE("supported_mask %02x\n", supported_mask);
|
||||
for(req_fmt = 0; req_fmt < ps->cPasteEntries; req_fmt++)
|
||||
{
|
||||
DWORD linktypes;
|
||||
if(ps->arrPasteEntries[req_fmt].dwFlags & OLEUIPASTE_LINKANYTYPE)
|
||||
linktypes = 0xff;
|
||||
else
|
||||
linktypes = ps->arrPasteEntries[req_fmt].dwFlags & 0xff;
|
||||
|
||||
if(linktypes & supported_mask)
|
||||
{
|
||||
add_entry_to_lb(hdlg, IDC_PS_PASTELINKLIST, ps->arrPasteEntries + req_fmt);
|
||||
items_added++;
|
||||
}
|
||||
}
|
||||
|
||||
EnableWindow(GetDlgItem(hdlg, IDC_PS_PASTELINK), items_added ? TRUE : FALSE);
|
||||
return items_added;
|
||||
}
|
||||
|
||||
/* copies src_list_id into the display list */
|
||||
static void update_display_list(HWND hdlg, UINT src_list_id)
|
||||
{
|
||||
LONG count, i, old_pos;
|
||||
WCHAR txt[256];
|
||||
LONG item_data;
|
||||
HWND display_list = GetDlgItem(hdlg, IDC_PS_DISPLAYLIST);
|
||||
HWND list = GetDlgItem(hdlg, src_list_id);
|
||||
|
||||
old_pos = SendMessageW(display_list, LB_GETCURSEL, 0, 0);
|
||||
if(old_pos == -1) old_pos = 0;
|
||||
|
||||
SendMessageW(display_list, WM_SETREDRAW, 0, 0);
|
||||
SendMessageW(display_list, LB_RESETCONTENT, 0, 0);
|
||||
count = SendMessageW(list, LB_GETCOUNT, 0, 0);
|
||||
for(i = 0; i < count; i++)
|
||||
{
|
||||
SendMessageW(list, LB_GETTEXT, i, (LPARAM)txt);
|
||||
item_data = SendMessageW(list, LB_GETITEMDATA, i, 0);
|
||||
SendMessageW(display_list, LB_INSERTSTRING, i, (LPARAM)txt);
|
||||
SendMessageW(display_list, LB_SETITEMDATA, i, item_data);
|
||||
}
|
||||
old_pos = max(old_pos, count);
|
||||
SendMessageW(display_list, LB_SETCURSEL, 0, 0);
|
||||
SendMessageW(display_list, WM_SETREDRAW, 1, 0);
|
||||
if(GetForegroundWindow() == hdlg)
|
||||
SetFocus(display_list);
|
||||
}
|
||||
|
||||
static void init_lists(HWND hdlg, ps_struct_t *ps_struct)
|
||||
{
|
||||
DWORD pastes_added = init_pastelist(hdlg, ps_struct->ps);
|
||||
DWORD links_added = init_linklist(hdlg, ps_struct->ps);
|
||||
UINT check_id, list_id;
|
||||
|
||||
if((ps_struct->flags & (PSF_SELECTPASTE | PSF_SELECTPASTELINK)) == 0)
|
||||
ps_struct->flags |= PSF_SELECTPASTE;
|
||||
|
||||
if(!pastes_added && !links_added)
|
||||
ps_struct->flags &= ~(PSF_SELECTPASTE | PSF_SELECTPASTELINK);
|
||||
else if(!pastes_added && (ps_struct->flags & PSF_SELECTPASTE))
|
||||
{
|
||||
ps_struct->flags &= ~PSF_SELECTPASTE;
|
||||
ps_struct->flags |= PSF_SELECTPASTELINK;
|
||||
}
|
||||
else if(!links_added && (ps_struct->flags & PSF_SELECTPASTELINK))
|
||||
{
|
||||
ps_struct->flags &= ~PSF_SELECTPASTELINK;
|
||||
ps_struct->flags |= PSF_SELECTPASTE;
|
||||
}
|
||||
|
||||
check_id = 0;
|
||||
list_id = 0;
|
||||
if(ps_struct->flags & PSF_SELECTPASTE)
|
||||
{
|
||||
check_id = IDC_PS_PASTE;
|
||||
list_id = IDC_PS_PASTELIST;
|
||||
}
|
||||
else if(ps_struct->flags & PSF_SELECTPASTELINK)
|
||||
{
|
||||
check_id = IDC_PS_PASTELINK;
|
||||
list_id = IDC_PS_PASTELINKLIST;
|
||||
}
|
||||
|
||||
CheckRadioButton(hdlg, IDC_PS_PASTE, IDC_PS_PASTELINK, check_id);
|
||||
|
||||
if(list_id)
|
||||
update_display_list(hdlg, list_id);
|
||||
else
|
||||
EnableWindow(GetDlgItem(hdlg, IDOK), 0);
|
||||
}
|
||||
|
||||
static void update_src_text(HWND hdlg, ps_struct_t *ps_struct)
|
||||
{
|
||||
WCHAR *str;
|
||||
|
||||
if(ps_struct->flags & PSF_SELECTPASTE)
|
||||
{
|
||||
if(ps_struct->source_name)
|
||||
str = ps_struct->source_name;
|
||||
else
|
||||
str = ps_struct->link_source_name;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
if(ps_struct->link_source_name)
|
||||
str = ps_struct->link_source_name;
|
||||
else
|
||||
str = ps_struct->source_name;
|
||||
|
||||
}
|
||||
SetDlgItemTextW(hdlg, IDC_PS_SOURCETEXT, str);
|
||||
}
|
||||
|
||||
static void update_as_icon(HWND hdlg, ps_struct_t *ps_struct)
|
||||
{
|
||||
HWND icon_display = GetDlgItem(hdlg, IDC_PS_ICONDISPLAY);
|
||||
HWND display_as_icon = GetDlgItem(hdlg, IDC_PS_DISPLAYASICON);
|
||||
HWND change_icon = GetDlgItem(hdlg, IDC_PS_CHANGEICON);
|
||||
|
||||
/* FIXME. No as icon handling */
|
||||
ps_struct->flags &= ~PSF_CHECKDISPLAYASICON;
|
||||
|
||||
CheckDlgButton(hdlg, IDC_PS_DISPLAYASICON, ps_struct->flags & PSF_CHECKDISPLAYASICON);
|
||||
EnableWindow(display_as_icon, 0);
|
||||
ShowWindow(icon_display, SW_HIDE);
|
||||
EnableWindow(icon_display, 0);
|
||||
ShowWindow(change_icon, SW_HIDE);
|
||||
EnableWindow(change_icon, 0);
|
||||
}
|
||||
|
||||
static void update_result_text(HWND hdlg, ps_struct_t *ps_struct)
|
||||
{
|
||||
WCHAR resource_txt[200];
|
||||
UINT res_id;
|
||||
OLEUIPASTEENTRYW *pent;
|
||||
LONG cur_sel;
|
||||
static const WCHAR percent_s[] = {'%','s',0};
|
||||
WCHAR *result_txt, *ptr;
|
||||
|
||||
cur_sel = SendMessageW(GetDlgItem(hdlg, IDC_PS_DISPLAYLIST), LB_GETCURSEL, 0, 0);
|
||||
if(cur_sel == -1) return;
|
||||
pent = (OLEUIPASTEENTRYW*)SendMessageW(GetDlgItem(hdlg, IDC_PS_DISPLAYLIST), LB_GETITEMDATA, cur_sel, 0);
|
||||
|
||||
if(ps_struct->flags & PSF_SELECTPASTE)
|
||||
{
|
||||
if(ps_struct->flags & PSF_CHECKDISPLAYASICON)
|
||||
res_id = IDS_PS_PASTE_OBJECT_AS_ICON;
|
||||
else
|
||||
res_id = IDS_PS_PASTE_DATA;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(ps_struct->flags & PSF_CHECKDISPLAYASICON)
|
||||
res_id = IDS_PS_PASTE_LINK_OBJECT_AS_ICON;
|
||||
else
|
||||
res_id = IDS_PS_PASTE_LINK_DATA;
|
||||
}
|
||||
|
||||
LoadStringW(OLEDLG_hInstance, res_id, resource_txt, sizeof(resource_txt)/sizeof(WCHAR));
|
||||
if((ptr = strstrW(resource_txt, percent_s)))
|
||||
{
|
||||
/* FIXME handle %s in ResultText. Sub appname if IDS_PS_PASTE_OBJECT{_AS_ICON}. Else sub appropiate type name */
|
||||
size_t result_txt_len = strlenW(pent->lpstrResultText);
|
||||
ptrdiff_t offs = (char*)ptr - (char*)resource_txt;
|
||||
result_txt = HeapAlloc(GetProcessHeap(), 0, (strlenW(resource_txt) + result_txt_len - 1) * sizeof(WCHAR));
|
||||
memcpy(result_txt, resource_txt, offs);
|
||||
memcpy((char*)result_txt + offs, pent->lpstrResultText, result_txt_len * sizeof(WCHAR));
|
||||
memcpy((char*)result_txt + offs + result_txt_len * sizeof(WCHAR), ptr + 2, (strlenW(ptr + 2) + 1) * sizeof(WCHAR));
|
||||
}
|
||||
else
|
||||
result_txt = resource_txt;
|
||||
|
||||
SetDlgItemTextW(hdlg, IDC_PS_RESULTTEXT, result_txt);
|
||||
|
||||
if(result_txt != resource_txt)
|
||||
HeapFree(GetProcessHeap(), 0, result_txt);
|
||||
|
||||
}
|
||||
|
||||
static void selection_change(HWND hdlg, ps_struct_t *ps_struct)
|
||||
{
|
||||
update_as_icon(hdlg, ps_struct);
|
||||
update_result_text(hdlg, ps_struct);
|
||||
}
|
||||
|
||||
static void mode_change(HWND hdlg, ps_struct_t *ps_struct, UINT id)
|
||||
{
|
||||
if(id == IDC_PS_PASTE)
|
||||
{
|
||||
ps_struct->flags &= ~PSF_SELECTPASTELINK;
|
||||
ps_struct->flags |= PSF_SELECTPASTE;
|
||||
}
|
||||
else
|
||||
{
|
||||
ps_struct->flags &= ~PSF_SELECTPASTE;
|
||||
ps_struct->flags |= PSF_SELECTPASTELINK;
|
||||
}
|
||||
|
||||
update_src_text(hdlg, ps_struct);
|
||||
update_display_list(hdlg, id == IDC_PS_PASTE ? IDC_PS_PASTELIST : IDC_PS_PASTELINKLIST);
|
||||
selection_change(hdlg, ps_struct);
|
||||
}
|
||||
|
||||
static void post_help_msg(HWND hdlg, ps_struct_t *ps_struct)
|
||||
{
|
||||
PostMessageW(ps_struct->ps->hWndOwner, oleui_msg_help, (WPARAM)hdlg, IDD_PASTESPECIAL);
|
||||
}
|
||||
|
||||
static void send_end_dialog_msg(HWND hdlg, ps_struct_t *ps_struct, UINT id)
|
||||
{
|
||||
SendMessageW(hdlg, oleui_msg_enddialog, id, 0);
|
||||
}
|
||||
|
||||
static void update_structure(HWND hdlg, ps_struct_t *ps_struct)
|
||||
{
|
||||
LONG cur_sel = SendMessageW(GetDlgItem(hdlg, IDC_PS_DISPLAYLIST), LB_GETCURSEL, 0, 0);
|
||||
if(cur_sel != -1)
|
||||
{
|
||||
OLEUIPASTEENTRYW *pent;
|
||||
pent = (OLEUIPASTEENTRYW *)SendMessageW(GetDlgItem(hdlg, IDC_PS_DISPLAYLIST), LB_GETITEMDATA, cur_sel, 0);
|
||||
ps_struct->ps->nSelectedIndex = pent->dwScratchSpace;
|
||||
}
|
||||
ps_struct->ps->dwFlags = ps_struct->flags;
|
||||
ps_struct->ps->fLink = (ps_struct->flags & PSF_SELECTPASTELINK) ? TRUE : FALSE;
|
||||
}
|
||||
|
||||
static void free_structure(ps_struct_t *ps_struct)
|
||||
{
|
||||
HeapFree(GetProcessHeap(), 0, ps_struct->type_name);
|
||||
HeapFree(GetProcessHeap(), 0, ps_struct->source_name);
|
||||
HeapFree(GetProcessHeap(), 0, ps_struct->link_type_name);
|
||||
HeapFree(GetProcessHeap(), 0, ps_struct->link_source_name);
|
||||
CoTaskMemFree(ps_struct->app_name);
|
||||
HeapFree(GetProcessHeap(), 0, ps_struct);
|
||||
}
|
||||
|
||||
static INT_PTR CALLBACK ps_dlg_proc(HWND hdlg, UINT msg, WPARAM wp, LPARAM lp)
|
||||
{
|
||||
/* native uses prop name "Structure", but we're not compatible
|
||||
with that so we'll prepend "Wine_". */
|
||||
static const WCHAR prop_name[] = {'W','i','n','e','_','S','t','r','u','c','t','u','r','e',0};
|
||||
ps_struct_t *ps_struct;
|
||||
|
||||
TRACE("(%p, %04x, %08x, %08lx)\n", hdlg, msg, wp, lp);
|
||||
|
||||
ps_struct = GetPropW(hdlg, prop_name);
|
||||
|
||||
if(msg != WM_INITDIALOG)
|
||||
{
|
||||
if(!ps_struct)
|
||||
return 0;
|
||||
|
||||
if(ps_struct->ps->lpfnHook)
|
||||
{
|
||||
INT_PTR ret = ps_struct->ps->lpfnHook(hdlg, msg, wp, lp);
|
||||
if(ret) return ret;
|
||||
}
|
||||
}
|
||||
|
||||
switch(msg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
{
|
||||
ps_struct = HeapAlloc(GetProcessHeap(), 0, sizeof(*ps_struct));
|
||||
ps_struct->ps = (OLEUIPASTESPECIALW*)lp;
|
||||
ps_struct->type_name = NULL;
|
||||
ps_struct->source_name = NULL;
|
||||
ps_struct->link_type_name = NULL;
|
||||
ps_struct->link_source_name = NULL;
|
||||
ps_struct->app_name = NULL;
|
||||
ps_struct->flags = ps_struct->ps->dwFlags;
|
||||
|
||||
SetPropW(hdlg, prop_name, ps_struct);
|
||||
|
||||
if(!(ps_struct->ps->dwFlags & PSF_SHOWHELP))
|
||||
{
|
||||
ShowWindow(GetDlgItem(hdlg, IDC_OLEUIHELP), SW_HIDE);
|
||||
EnableWindow(GetDlgItem(hdlg, IDC_OLEUIHELP), 0);
|
||||
}
|
||||
|
||||
if(ps_struct->ps->lpszCaption)
|
||||
SetWindowTextW(hdlg, ps_struct->ps->lpszCaption);
|
||||
|
||||
get_descriptors(hdlg, ps_struct);
|
||||
|
||||
init_lists(hdlg, ps_struct);
|
||||
|
||||
update_src_text(hdlg, ps_struct);
|
||||
|
||||
selection_change(hdlg, ps_struct);
|
||||
|
||||
SetFocus(GetDlgItem(hdlg, IDC_PS_DISPLAYLIST));
|
||||
|
||||
if(ps_struct->ps->lpfnHook)
|
||||
ps_struct->ps->lpfnHook(hdlg, msg, 0, 0);
|
||||
return FALSE; /* use new focus */
|
||||
}
|
||||
case WM_COMMAND:
|
||||
switch(LOWORD(wp))
|
||||
{
|
||||
case IDC_PS_DISPLAYLIST:
|
||||
switch(HIWORD(wp))
|
||||
{
|
||||
case LBN_SELCHANGE:
|
||||
selection_change(hdlg, ps_struct);
|
||||
return FALSE;
|
||||
default:
|
||||
return FALSE;
|
||||
}
|
||||
case IDC_PS_PASTE:
|
||||
case IDC_PS_PASTELINK:
|
||||
switch(HIWORD(wp))
|
||||
{
|
||||
case BN_CLICKED:
|
||||
mode_change(hdlg, ps_struct, LOWORD(wp));
|
||||
return FALSE;
|
||||
|
||||
default:
|
||||
return FALSE;
|
||||
}
|
||||
case IDC_OLEUIHELP:
|
||||
switch(HIWORD(wp))
|
||||
{
|
||||
case BN_CLICKED:
|
||||
post_help_msg(hdlg, ps_struct);
|
||||
return FALSE;
|
||||
default:
|
||||
return FALSE;
|
||||
}
|
||||
case IDOK:
|
||||
case IDCANCEL:
|
||||
switch(HIWORD(wp))
|
||||
{
|
||||
case BN_CLICKED:
|
||||
send_end_dialog_msg(hdlg, ps_struct, LOWORD(wp));
|
||||
return FALSE;
|
||||
default:
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
default:
|
||||
if(msg == oleui_msg_enddialog)
|
||||
{
|
||||
if(wp == IDOK)
|
||||
update_structure(hdlg, ps_struct);
|
||||
EndDialog(hdlg, wp);
|
||||
/* native does its cleanup in WM_DESTROY */
|
||||
RemovePropW(hdlg, prop_name);
|
||||
free_structure(ps_struct);
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* OleUIPasteSpecialA (OLEDLG.4)
|
||||
*/
|
||||
UINT WINAPI OleUIPasteSpecialA(LPOLEUIPASTESPECIALA psA)
|
||||
{
|
||||
OLEUIPASTESPECIALW ps;
|
||||
UINT ret;
|
||||
TRACE("(%p)\n", psA);
|
||||
|
||||
memcpy(&ps, psA, psA->cbStruct);
|
||||
|
||||
ps.lpszCaption = strdupAtoW(psA->lpszCaption);
|
||||
if(!IS_INTRESOURCE(ps.lpszTemplate))
|
||||
ps.lpszTemplate = strdupAtoW(psA->lpszTemplate);
|
||||
|
||||
if(psA->cPasteEntries > 0)
|
||||
{
|
||||
DWORD size = psA->cPasteEntries * sizeof(ps.arrPasteEntries[0]);
|
||||
UINT i;
|
||||
|
||||
ps.arrPasteEntries = HeapAlloc(GetProcessHeap(), 0, size);
|
||||
memcpy(ps.arrPasteEntries, psA->arrPasteEntries, size);
|
||||
for(i = 0; i < psA->cPasteEntries; i++)
|
||||
{
|
||||
ps.arrPasteEntries[i].lpstrFormatName =
|
||||
strdupAtoW(psA->arrPasteEntries[i].lpstrFormatName);
|
||||
ps.arrPasteEntries[i].lpstrResultText =
|
||||
strdupAtoW(psA->arrPasteEntries[i].lpstrResultText);
|
||||
}
|
||||
}
|
||||
|
||||
ret = OleUIPasteSpecialW(&ps);
|
||||
|
||||
if(psA->cPasteEntries > 0)
|
||||
{
|
||||
UINT i;
|
||||
for(i = 0; i < psA->cPasteEntries; i++)
|
||||
{
|
||||
HeapFree(GetProcessHeap(), 0, (WCHAR*)ps.arrPasteEntries[i].lpstrFormatName);
|
||||
HeapFree(GetProcessHeap(), 0, (WCHAR*)ps.arrPasteEntries[i].lpstrResultText);
|
||||
}
|
||||
HeapFree(GetProcessHeap(), 0, ps.arrPasteEntries);
|
||||
}
|
||||
if(!IS_INTRESOURCE(ps.lpszTemplate))
|
||||
HeapFree(GetProcessHeap(), 0, (WCHAR*)ps.lpszTemplate);
|
||||
HeapFree(GetProcessHeap(), 0, (WCHAR*)ps.lpszCaption);
|
||||
|
||||
/* Copy back the output fields */
|
||||
psA->dwFlags = ps.dwFlags;
|
||||
psA->lpSrcDataObj = ps.lpSrcDataObj;
|
||||
psA->nSelectedIndex = ps.nSelectedIndex;
|
||||
psA->fLink = ps.fLink;
|
||||
psA->hMetaPict = ps.hMetaPict;
|
||||
psA->sizel = ps.sizel;
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* OleUIPasteSpecialW (OLEDLG.22)
|
||||
*/
|
||||
UINT WINAPI OleUIPasteSpecialW(LPOLEUIPASTESPECIALW ps)
|
||||
{
|
||||
LPCDLGTEMPLATEW dlg_templ = (LPCDLGTEMPLATEW)ps->hResource;
|
||||
UINT ret;
|
||||
|
||||
TRACE("(%p)\n", ps);
|
||||
|
||||
if(TRACE_ON(ole)) dump_pastespecial(ps);
|
||||
|
||||
if(!ps->lpSrcDataObj)
|
||||
OleGetClipboard(&ps->lpSrcDataObj);
|
||||
|
||||
if(ps->hInstance || !ps->hResource)
|
||||
{
|
||||
HINSTANCE hInst = ps->hInstance ? ps->hInstance : OLEDLG_hInstance;
|
||||
const WCHAR *name = ps->hInstance ? ps->lpszTemplate : MAKEINTRESOURCEW(IDD_PASTESPECIAL4);
|
||||
HRSRC hrsrc;
|
||||
|
||||
if(name == NULL) return OLEUI_ERR_LPSZTEMPLATEINVALID;
|
||||
hrsrc = FindResourceW(hInst, name, MAKEINTRESOURCEW(RT_DIALOG));
|
||||
if(!hrsrc) return OLEUI_ERR_FINDTEMPLATEFAILURE;
|
||||
dlg_templ = LoadResource(hInst, hrsrc);
|
||||
if(!dlg_templ) return OLEUI_ERR_LOADTEMPLATEFAILURE;
|
||||
}
|
||||
|
||||
ret = DialogBoxIndirectParamW(OLEDLG_hInstance, dlg_templ, ps->hWndOwner, ps_dlg_proc, (LPARAM)ps);
|
||||
|
||||
return ret;
|
||||
}
|
|
@ -38,3 +38,15 @@
|
|||
#define IDC_BROWSE 1009
|
||||
#define IDC_FILELBL 1010
|
||||
#define IDC_FILE 1011
|
||||
|
||||
/* String ids for Paste Special */
|
||||
#define IDS_PS_PASTE_DATA 0x190
|
||||
#define IDS_PS_PASTE_OBJECT 0x191
|
||||
#define IDS_PS_PASTE_OBJECT_AS_ICON 0x192
|
||||
#define IDS_PS_PASTE_LINK_DATA 0x193
|
||||
#define IDS_PS_PASTE_LINK_OBJECT 0x194
|
||||
#define IDS_PS_PASTE_LINK_OBJECT_AS_ICON 0x195
|
||||
#define IDS_PS_NON_OLE 0x196
|
||||
#define IDS_PS_UNKNOWN_TYPE 0x197
|
||||
#define IDS_PS_UNKNOWN_SRC 0x198
|
||||
#define IDS_PS_UNKNOWN_APP 0x199
|
||||
|
|
|
@ -22,6 +22,8 @@
|
|||
#include "winbase.h"
|
||||
#include "winuser.h"
|
||||
#include "winnls.h"
|
||||
#include "oledlg.h"
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
/*
|
||||
|
@ -42,6 +44,7 @@
|
|||
#include "oledlg_Ko.rc"
|
||||
#include "oledlg_Nl.rc"
|
||||
#include "oledlg_No.rc"
|
||||
#include "oledlg_Pl.rc"
|
||||
#include "oledlg_Pt.rc"
|
||||
#include "oledlg_Tr.rc"
|
||||
#include "oledlg_Uk.rc"
|
||||
|
|
Loading…
Reference in a new issue