diff --git a/reactos/dll/win32/comctl32/animate.c b/reactos/dll/win32/comctl32/animate.c index 3c2c64825f9..b6309cddf7d 100644 --- a/reactos/dll/win32/comctl32/animate.c +++ b/reactos/dll/win32/comctl32/animate.c @@ -18,7 +18,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * @@ -660,7 +660,7 @@ static BOOL ANIMATE_GetAviCodec(ANIMATE_INFO *infoPtr) return FALSE; if (fnIC.fnICSendMessage(infoPtr->hic, ICM_DECOMPRESS_GET_FORMAT, - (DWORD_PTR)infoPtr->inbih, (DWORD_PTR)infoPtr->outbih) != outSize) + (DWORD_PTR)infoPtr->inbih, (DWORD_PTR)infoPtr->outbih) != ICERR_OK) { WARN("Can't get output BIH\n"); return FALSE; diff --git a/reactos/dll/win32/comctl32/comboex.c b/reactos/dll/win32/comctl32/comboex.c index b2ed2ac69d8..1f29024d48f 100644 --- a/reactos/dll/win32/comctl32/comboex.c +++ b/reactos/dll/win32/comctl32/comboex.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTE * diff --git a/reactos/dll/win32/comctl32/comctl32.h b/reactos/dll/win32/comctl32/comctl32.h index 8053accb36f..f6d233ff2fd 100644 --- a/reactos/dll/win32/comctl32/comctl32.h +++ b/reactos/dll/win32/comctl32/comctl32.h @@ -18,7 +18,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef __WINE_COMCTL32_H @@ -145,10 +145,11 @@ VOID COMCTL32_RefreshSysColors(void); void COMCTL32_DrawInsertMark(HDC hDC, const RECT *lpRect, COLORREF clrInsertMark, BOOL bHorizontal); INT Str_GetPtrWtoA (LPCWSTR lpSrc, LPSTR lpDest, INT nMaxLen); BOOL Str_SetPtrAtoW (LPWSTR *lppDest, LPCSTR lpSrc); +BOOL Str_SetPtrWtoA (LPSTR *lppDest, LPCWSTR lpSrc); -#define COMCTL32_VERSION_MINOR 80 -#define WINE_FILEVERSION 5, COMCTL32_VERSION_MINOR, 0, 0 -#define WINE_FILEVERSIONSTR "5.80" +#define COMCTL32_VERSION_MINOR 81 +#define WINE_FILEVERSION 5, COMCTL32_VERSION_MINOR, 4704, 1100 +#define WINE_FILEVERSIONSTR "5.81" /* Our internal stack structure of the window procedures to subclass */ typedef struct _SUBCLASSPROCS { diff --git a/reactos/dll/win32/comctl32/comctl32.spec b/reactos/dll/win32/comctl32/comctl32.spec index 349db0b84aa..7f9c06f8d76 100644 --- a/reactos/dll/win32/comctl32/comctl32.spec +++ b/reactos/dll/win32/comctl32/comctl32.spec @@ -106,13 +106,13 @@ 412 stdcall -noname RemoveWindowSubclass(long ptr long) 413 stdcall -noname DefSubclassProc(long long long long) 414 stdcall -noname MirrorIcon(ptr ptr) -415 stdcall DrawTextWrap(long wstr long ptr long) user32.DrawTextW -416 stdcall DrawTextExPrivWrap(long wstr long ptr long ptr) user32.DrawTextExW -417 stdcall ExtTextOutWrap(long long long long ptr wstr long ptr) gdi32.ExtTextOutW -418 stdcall GetCharWidthWrap(long long long long) gdi32.GetCharWidthW -419 stdcall GetTextExtentPointWrap(long wstr long ptr) gdi32.GetTextExtentPointW -420 stdcall GetTextExtentPoint32Wrap(long wstr long ptr) gdi32.GetTextExtentPoint32W -421 stdcall TextOutWrap(long long long wstr long) gdi32.TextOutW +415 stdcall -noname DrawTextWrap(long wstr long ptr long) user32.DrawTextW +416 stdcall -noname DrawTextExPrivWrap(long wstr long ptr long ptr) user32.DrawTextExW +417 stdcall -noname ExtTextOutWrap(long long long long ptr wstr long ptr) gdi32.ExtTextOutW +418 stdcall -noname GetCharWidthWrap(long long long long) gdi32.GetCharWidthW +419 stdcall -noname GetTextExtentPointWrap(long wstr long ptr) gdi32.GetTextExtentPointW +420 stdcall -noname GetTextExtentPoint32Wrap(long wstr long ptr) gdi32.GetTextExtentPoint32W +421 stdcall -noname TextOutWrap(long long long wstr long) gdi32.TextOutW # Functions imported by name diff --git a/reactos/dll/win32/comctl32/comctl32undoc.c b/reactos/dll/win32/comctl32/comctl32undoc.c index aa79f8896b2..4a4d6fbd921 100644 --- a/reactos/dll/win32/comctl32/comctl32undoc.c +++ b/reactos/dll/win32/comctl32/comctl32undoc.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * All of these functions are UNDOCUMENTED!! And I mean UNDOCUMENTED!!!! @@ -386,10 +386,8 @@ INT WINAPI FindMRUData (HANDLE hList, LPCVOID lpData, DWORD cbData, UINT i; LPSTR dataA = NULL; - if (!mp->extview.lpfnCompare) { - ERR("MRU list not properly created. No compare procedure.\n"); + if (!mp->extview.lpfnCompare) return -1; - } if(!(mp->extview.dwFlags & MRUF_BINARY_LIST) && !mp->isUnicode) { DWORD len = WideCharToMultiByte(CP_ACP, 0, lpData, -1, @@ -1109,6 +1107,46 @@ BOOL Str_SetPtrAtoW (LPWSTR *lppDest, LPCSTR lpSrc) return TRUE; } +/************************************************************************** + * Str_SetPtrWtoA [internal] + * + * Converts a unicode string to a multi byte string. + * If the pointer to the destination buffer is NULL a buffer is allocated. + * If the destination buffer is too small to keep the converted wide + * string the destination buffer is reallocated. If the source pointer is + * NULL, the destination buffer is freed. + * + * PARAMS + * lppDest [I/O] pointer to a pointer to the destination buffer + * lpSrc [I] pointer to a wide string + * + * RETURNS + * TRUE: conversion successful + * FALSE: error + */ +BOOL Str_SetPtrWtoA (LPSTR *lppDest, LPCWSTR lpSrc) +{ + TRACE("(%p %s)\n", lppDest, debugstr_w(lpSrc)); + + if (lpSrc) { + INT len = WideCharToMultiByte(CP_ACP,0,lpSrc,-1,NULL,0,NULL,FALSE); + LPSTR ptr = ReAlloc (*lppDest, len*sizeof(CHAR)); + + if (!ptr) + return FALSE; + WideCharToMultiByte(CP_ACP,0,lpSrc,-1,ptr,len,NULL,FALSE); + *lppDest = ptr; + } + else { + if (*lppDest) { + Free (*lppDest); + *lppDest = NULL; + } + } + + return TRUE; +} + /************************************************************************** * Notification functions diff --git a/reactos/dll/win32/comctl32/comctl_Bg.rc b/reactos/dll/win32/comctl32/comctl_Bg.rc index fefdb9db1ef..b14e7681b86 100644 --- a/reactos/dll/win32/comctl32/comctl_Bg.rc +++ b/reactos/dll/win32/comctl32/comctl_Bg.rc @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT diff --git a/reactos/dll/win32/comctl32/comctl_Cn.rc b/reactos/dll/win32/comctl32/comctl_Cn.rc index b25556d32bb..87741b44e6d 100644 --- a/reactos/dll/win32/comctl32/comctl_Cn.rc +++ b/reactos/dll/win32/comctl32/comctl_Cn.rc @@ -1,90 +1,90 @@ -/* - * Copyright 2002 Tisheng Chen - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED -#pragma code_page(936) - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "属性 " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "确定", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "取消", IDCANCEL,58,122,50,14 - PUSHBUTTON "应用(&A)", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "帮助", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Wizard" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< 上一步(&B)", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "下一步(&N) >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "结束", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "取消", IDCANCEL,178,138,50,14 - PUSHBUTTON "帮助", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "自定义工具栏" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "关闭(&C)", IDCANCEL,308,6,44,14 - PUSHBUTTON "重置(&e)", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "帮助(&H)", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "上移(&U)", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "下移(&D)", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "可用工具栏按钮(&V):", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "添加(&A) ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- 删除(&R)", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "当前工具栏按钮(&T):", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "关闭" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Today:" - IDM_GOTODAY "Go to today" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "分隔符" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "None" -} - -#pragma code_page(default) +/* + * Copyright 2002 Tisheng Chen + * + * 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_CHINESE, SUBLANG_CHINESE_SIMPLIFIED +#pragma code_page(936) + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "属性 " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "确定", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "取消", IDCANCEL,58,122,50,14 + PUSHBUTTON "应用(&A)", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "帮助", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Wizard" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< 上一步(&B)", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "下一步(&N) >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "结束", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "取消", IDCANCEL,178,138,50,14 + PUSHBUTTON "帮助", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "自定义工具栏" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "关闭(&C)", IDCANCEL,308,6,44,14 + PUSHBUTTON "重置(&e)", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "帮助(&H)", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "上移(&U)", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "下移(&D)", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "可用工具栏按钮(&V):", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "添加(&A) ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- 删除(&R)", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "当前工具栏按钮(&T):", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "关闭" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Today:" + IDM_GOTODAY "Go to today" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "分隔符" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "None" +} + +#pragma code_page(default) diff --git a/reactos/dll/win32/comctl32/comctl_Cs.rc b/reactos/dll/win32/comctl32/comctl_Cs.rc index 18eee5bde6e..bd693339fb2 100644 --- a/reactos/dll/win32/comctl32/comctl_Cs.rc +++ b/reactos/dll/win32/comctl32/comctl_Cs.rc @@ -1,90 +1,93 @@ -/* - * Copyright 1999 Eric Kohl - * - * Czech resources for comctl32 - * Copyright 2004 David Kredba - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_CZECH, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Vlastnosti " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "Storno", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Pou卷t", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "N醦ov靌a", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Pr鵹odce" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &Zp靦", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&Dal鬼 >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "Dokon鑙t", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "Storno", IDCANCEL,178,138,50,14 - PUSHBUTTON "N醦ov靌a", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Nastaven panelu" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Zavt", IDCANCEL,308,6,44,14 - PUSHBUTTON "&V齝hoz", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&N醦ov靌a", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "Nahor&u", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "&Dol", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "D&ostupn tla桧tka:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "P鴌d&at ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- Odeb&rat", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "&Tla桧tka panelu:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Zavt" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Dnes:" - IDM_GOTODAY "Jdi na dne筫k" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Odd靗ova" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "dn" -} +/* Hey, Emacs, open this file with -*- coding: cp1250 -*- + * + * Copyright 1999 Eric Kohl + * + * Czech resources for comctl32 + * Copyright 2004 David Kredba + * + * 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_CZECH, SUBLANG_DEFAULT + +/* Czech strings in CP1250 */ + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Vlastnosti " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "Storno", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Pou烅t", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "N醦ov靌a", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Pr鵹odce" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &Zp靦", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&Dal氻 >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "Dokon鑙t", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "Storno", IDCANCEL,178,138,50,14 + PUSHBUTTON "N醦ov靌a", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Nastaven panelu" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Zavt", IDCANCEL,308,6,44,14 + PUSHBUTTON "&V齝hoz", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&N醦ov靌a", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "Nahor&u", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "&Dol", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "D&ostupn tla桧tka:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "P鴌d&at ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- Odeb&rat", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&Tla桧tka panelu:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Zavt" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Dnes:" + IDM_GOTODAY "Jdi na dne歟k" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Odd靗ova" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "庒dn" +} diff --git a/reactos/dll/win32/comctl32/comctl_De.rc b/reactos/dll/win32/comctl32/comctl_De.rc index 82a132ad5d6..aad08482aff 100644 --- a/reactos/dll/win32/comctl32/comctl_De.rc +++ b/reactos/dll/win32/comctl32/comctl_De.rc @@ -1,87 +1,87 @@ -/* - * Copyright 2000 Uwe Bonnes - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_GERMAN, SUBLANG_DEFAULT - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Schlie遝n" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Heute:" - IDM_GOTODAY "Gehe zu Heute" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Trennzeichen" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "Keiner" -} - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Eigenschaften f黵 " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "A&bbrechen", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Anwenden", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "&Hilfe", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Wizard" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &Zur點k", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&Weiter >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "&Beenden", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "Abbrechen", IDCANCEL,178,138,50,14 - PUSHBUTTON "&Hilfe", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Toolbar einrichten" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Schlie遝n", IDCANCEL,308,6,44,14 - PUSHBUTTON "&Zur點ksetzen", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&Hilfe", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "Nach &Oben verschieben", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "Nach &Unten verschieben", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "&Vorhandene Kn鰌fe:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "H&inzuf黦en ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &L鰏chen", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "&Toolbarkn鰌fe:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END +/* + * Copyright 2000 Uwe Bonnes + * + * 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_GERMAN, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Schlie遝n" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Heute:" + IDM_GOTODAY "Gehe zu Heute" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Trennzeichen" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "Keiner" +} + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Eigenschaften f黵 " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "A&bbrechen", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Anwenden", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "&Hilfe", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Wizard" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &Zur點k", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&Weiter >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "&Beenden", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "Abbrechen", IDCANCEL,178,138,50,14 + PUSHBUTTON "&Hilfe", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Toolbar einrichten" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Schlie遝n", IDCANCEL,308,6,44,14 + PUSHBUTTON "&Zur點ksetzen", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&Hilfe", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "Nach &Oben verschieben", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "Nach &Unten verschieben", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "&Vorhandene Kn鰌fe:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "H&inzuf黦en ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &L鰏chen", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&Toolbarkn鰌fe:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END diff --git a/reactos/dll/win32/comctl32/comctl_En.rc b/reactos/dll/win32/comctl32/comctl_En.rc index 199e82224d2..1e5bc147abd 100644 --- a/reactos/dll/win32/comctl32/comctl_En.rc +++ b/reactos/dll/win32/comctl32/comctl_En.rc @@ -1,87 +1,87 @@ -/* - * Copyright 1999 Eric Kohl - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_ENGLISH, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Properties for " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "Cancel", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Apply", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "Help", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Wizard" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &Back", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&Next >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "Finish", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "Cancel", IDCANCEL,178,138,50,14 - PUSHBUTTON "Help", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Customize Toolbar" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Close", IDCANCEL,308,6,44,14 - PUSHBUTTON "R&eset", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&Help", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "Move &Up", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "Move &Down", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "A&vailable buttons:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "&Add ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &Remove", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "&Toolbar buttons:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Close" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Today:" - IDM_GOTODAY "Go to today" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Separator" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "None" -} +/* + * Copyright 1999 Eric Kohl + * + * 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_ENGLISH, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Properties for " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "Cancel", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Apply", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "Help", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Wizard" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &Back", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&Next >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "Finish", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "Cancel", IDCANCEL,178,138,50,14 + PUSHBUTTON "Help", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Customize Toolbar" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Close", IDCANCEL,308,6,44,14 + PUSHBUTTON "R&eset", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&Help", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "Move &Up", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "Move &Down", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "A&vailable buttons:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "&Add ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &Remove", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&Toolbar buttons:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Close" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Today:" + IDM_GOTODAY "Go to today" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Separator" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "None" +} diff --git a/reactos/dll/win32/comctl32/comctl_Es.rc b/reactos/dll/win32/comctl32/comctl_Es.rc index 032c2c74151..1b1adbc888e 100644 --- a/reactos/dll/win32/comctl32/comctl_Es.rc +++ b/reactos/dll/win32/comctl32/comctl_Es.rc @@ -1,87 +1,87 @@ -/* - * Copyright 2003 Jos Manuel Ferrer Ortiz - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Propiedades de " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "Aceptar", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "Cancelar", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Aplicar", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "Ayuda", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Ayudante" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &Anterior", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&Siguiente >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "Terminar", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "Cancelar", IDCANCEL,178,138,50,14 - PUSHBUTTON "Ayuda", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Personalizar barra de herramientas" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Cerrar", IDCANCEL,308,6,44,14 - PUSHBUTTON "R&estaurar", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&Ayuda", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "Mover A&rriba", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "Mover A&bajo", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "Botones &disponibles:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "A&馻dir ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &Eliminar", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "B&otones de la barra:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Cerrar" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Hoy:" - IDM_GOTODAY "Ir a hoy" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Separador" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "Ninguno" -} +/* + * Copyright 2003 Jos Manuel Ferrer Ortiz + * + * 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_SPANISH, SUBLANG_NEUTRAL + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Propiedades de " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "Aceptar", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "Cancelar", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Aplicar", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "Ayuda", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Ayudante" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &Anterior", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&Siguiente >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "Terminar", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "Cancelar", IDCANCEL,178,138,50,14 + PUSHBUTTON "Ayuda", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Personalizar barra de herramientas" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Cerrar", IDCANCEL,308,6,44,14 + PUSHBUTTON "R&estaurar", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&Ayuda", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "Mover A&rriba", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "Mover A&bajo", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "Botones &disponibles:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "A&馻dir ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &Eliminar", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "B&otones de la barra:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Cerrar" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Hoy:" + IDM_GOTODAY "Ir a hoy" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Separador" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "Ninguno" +} diff --git a/reactos/dll/win32/comctl32/comctl_Fr.rc b/reactos/dll/win32/comctl32/comctl_Fr.rc index dc2aea54213..03626632709 100644 --- a/reactos/dll/win32/comctl32/comctl_Fr.rc +++ b/reactos/dll/win32/comctl32/comctl_Fr.rc @@ -1,91 +1,91 @@ -/* - * Comctl32 - * French language support - * - * Copyright 1999 Eric Kohl - * Copyright 2003 Vincent B閞on - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Propri閠閟 pour " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "Annuler", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Appliquer", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "Aide", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "onglet", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Assistant" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &Pr閏閐ent", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&Suivant >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "Terminer", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "Annuler", IDCANCEL,178,138,50,14 - PUSHBUTTON "Aide", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Onglet", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Personnaliser la barre d'outils" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Fermer", IDCANCEL,308,6,44,14 - PUSHBUTTON "&R閕nitialiser", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&Aide", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "&Monter", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "&Descendre", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "Boutons disponibles :", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "A&jouter ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &Enlever", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "&Boutons de la barre d'outils :", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Fermer" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Aujourd'hui:" - IDM_GOTODAY "Aller aujourd'hui" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "S閜arateur" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "Aucun" -} +/* + * Comctl32 + * French language support + * + * Copyright 1999 Eric Kohl + * Copyright 2003 Vincent B閞on + * + * 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_FRENCH, SUBLANG_NEUTRAL + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Propri閠閟 pour " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "Annuler", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Appliquer", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "Aide", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "onglet", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Assistant" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &Pr閏閐ent", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&Suivant >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "Terminer", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "Annuler", IDCANCEL,178,138,50,14 + PUSHBUTTON "Aide", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Onglet", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Personnaliser la barre d'outils" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Fermer", IDCANCEL,308,6,44,14 + PUSHBUTTON "&R閕nitialiser", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "Aid&e", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "&Monter", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "&Descendre", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "Boutons disponibles :", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "A&jouter ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- E&nlever", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&Boutons de la barre d'outils :", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Fermer" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Aujourd'hui:" + IDM_GOTODAY "Aller aujourd'hui" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "S閜arateur" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "Aucun" +} diff --git a/reactos/dll/win32/comctl32/comctl_Hu.rc b/reactos/dll/win32/comctl32/comctl_Hu.rc index 14035618aa9..acf06ee328e 100644 --- a/reactos/dll/win32/comctl32/comctl_Hu.rc +++ b/reactos/dll/win32/comctl32/comctl_Hu.rc @@ -1,90 +1,87 @@ -/* - * Hungarian resources for comctl32 - * - * Copyright 1999 Eric Kohl - * Copyright 2005 Robert Horvath - Hungarian translation - talley at cubeclub.hu - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_HUNGARIAN, SUBLANG_NEUTRAL - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Be醠l韙醩ok " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "M間se", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Alkalmaz", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "&S鷊", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Telep韙" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &Vissza", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&Tov醔b >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "Befejez閟", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "M間se", IDCANCEL,178,138,50,14 - PUSHBUTTON "S鷊", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Eszk鰖t醨 testreszab醩a" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Bez醨", IDCANCEL,308,6,44,14 - PUSHBUTTON "V&issza醠l韙", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&S鷊", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "&Fel", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "&Le", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "&El閞het gombok:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "&Hozz醓d ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &T鰎鰈", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "Eszk鰖&t醨 gombjai:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Bez醨" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Ma:" - IDM_GOTODAY "Mai nap" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Separator" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "Ismeretlen" -} +/* + * Copyright 2006 Andras Kovacs + * + * 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_HUNGARIAN, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Tulajdons醙ok: " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "M間se", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Alkalmaz醩", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "S鷊", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "F黮", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Var醶sl" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &El鮶", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&K鰒etkez >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "K閟z", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "M間se", IDCANCEL,178,138,50,14 + PUSHBUTTON "S鷊", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "F黮", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Eszk鰖t醨 testreszab醩a" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Bez醨醩", IDCANCEL,308,6,44,14 + PUSHBUTTON "Alaph&elyzet", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&S鷊", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "&Fel", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "&Le", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "El&閞het gombok:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "&Hozz醓d ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- El&vesz", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "E&szk鰖t醨 gombok:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Bez醨醩" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Ma:" + IDM_GOTODAY "Ugr醩 m醨a" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Elv醠aszt" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "Nincs" +} diff --git a/reactos/dll/win32/comctl32/comctl_It.rc b/reactos/dll/win32/comctl32/comctl_It.rc index 8c4a880b8e3..20609dc2b7e 100644 --- a/reactos/dll/win32/comctl32/comctl_It.rc +++ b/reactos/dll/win32/comctl32/comctl_It.rc @@ -1,88 +1,88 @@ -/* - * Copyright 1999 Eric Kohl - * Copyright 2003 Ivan Leo Puoti - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_ITALIAN, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Propriet per " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "Annulla", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Applica", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "Aiuto", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Linguetta", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Wizard" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &Indietro", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&Avanti >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "Fine", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "Anulla", IDCANCEL,178,138,50,14 - PUSHBUTTON "Aiuto", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Linguetta", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Personalitta la barra degli strumenti" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Chiudi", IDCANCEL,308,6,44,14 - PUSHBUTTON "R&eimpostare", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&Aiuto", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "Muovi &Su", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "Muovi &gi", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "&Tasti disponibili:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "&Aggiungi ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &Rimuovi", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "&Tast della barra degli strumenti:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Chiudi" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Oggi:" - IDM_GOTODAY "Vai a oggi" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Separatore" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "Nessuno" -} +/* + * Copyright 1999 Eric Kohl + * Copyright 2003 Ivan Leo Puoti + * + * 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_ITALIAN, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Propriet per " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "Annulla", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Applica", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "Aiuto", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Linguetta", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Procedura guidata" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &Indietro", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&Avanti >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "Fine", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "Annulla", IDCANCEL,178,138,50,14 + PUSHBUTTON "Aiuto", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Linguetta", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Personalizza la barra degli strumenti" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Chiudi", IDCANCEL,308,6,44,14 + PUSHBUTTON "R&eimpostare", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&Aiuto", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "Muovi &Su", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "Muovi &Gi", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "&Tasti disponibili:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "&Aggiungi ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &Rimuovi", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&Tasti della barra degli strumenti:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Chiudi" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Oggi:" + IDM_GOTODAY "Vai a oggi" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Separatore" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "Nessuno" +} diff --git a/reactos/dll/win32/comctl32/comctl_Ja.rc b/reactos/dll/win32/comctl32/comctl_Ja.rc index 4a072baa994..8ff8c58002c 100644 --- a/reactos/dll/win32/comctl32/comctl_Ja.rc +++ b/reactos/dll/win32/comctl32/comctl_Ja.rc @@ -1,87 +1,87 @@ -/* - * Copyright 2003 Hajime Segawa - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_JAPANESE, SUBLANG_NEUTRAL - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Properties for " -FONT 9, "MS UI Gothic" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "僉儍儞僙儖", IDCANCEL,58,122,50,14 - PUSHBUTTON "揔梡(&A)", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "僿儖僾", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "僞僽", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "僂傿僓乕僪" -FONT 9, "MS UI Gothic" -BEGIN - PUSHBUTTON "< 栠傞(&B)", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "恑傓(&N) >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "姰椆", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "僉儍儞僙儖", IDCANCEL,178,138,50,14 - PUSHBUTTON "僿儖僾", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "僞僽", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "僣乕儖 僶乕偺僇僗僞儅僀僘" -FONT 9, "MS UI Gothic" -BEGIN - DEFPUSHBUTTON "暵偠傞(&C)", IDCANCEL,308,6,44,14 - PUSHBUTTON "儕僙僢僩(&E)", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "僿儖僾(&H)", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "忋傊 (&U)", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "壓傊 (&D)", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "巊梡偱偒傞儃僞儞(&V):", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "捛壛(&A) ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- 嶍彍(&R)", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "僣乕儖 僶乕偺儃僞儞(&T):", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "暵偠傞" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "崱擔:" - IDM_GOTODAY "崱擔傊堏摦" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "嬫愗傝慄" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "側偟" -} +/* + * Copyright 2003 Hajime Segawa + * + * 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_JAPANESE, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Properties for " +FONT 9, "MS UI Gothic" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "僉儍儞僙儖", IDCANCEL,58,122,50,14 + PUSHBUTTON "揔梡(&A)", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "僿儖僾", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Wizard" +FONT 9, "MS UI Gothic" +BEGIN + PUSHBUTTON "< 栠傞(&B)", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "恑傓(&N) >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "姰椆", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "僉儍儞僙儖", IDCANCEL,178,138,50,14 + PUSHBUTTON "僿儖僾", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Customize Toolbar" +FONT 9, "MS UI Gothic" +BEGIN + DEFPUSHBUTTON "暵偠傞(&C)", IDCANCEL,308,6,44,14 + PUSHBUTTON "儕僙僢僩(R&)", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "僿儖僾(&H)", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "忋傊 (&U)", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "壓傊 (&D)", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "A&vailable buttons:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "捛壛(&A) ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- 嶍彍(&R)", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&Toolbar buttons:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Close" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Today:" + IDM_GOTODAY "Go to today" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Separator" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "None" +} diff --git a/reactos/dll/win32/comctl32/comctl_Ko.rc b/reactos/dll/win32/comctl32/comctl_Ko.rc index f7cf69faeaf..5b3f36ae36f 100644 --- a/reactos/dll/win32/comctl32/comctl_Ko.rc +++ b/reactos/dll/win32/comctl32/comctl_Ko.rc @@ -1,83 +1,83 @@ -/* - * Copyright 2002 Won-kyu Park - * Copyright 2005 YunSong Hwang - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "加己" -FONT 9, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "犬牢", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "秒家", IDCANCEL,58,122,50,14 - PUSHBUTTON "利侩(&A)", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "档框富", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "徘", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "付过荤" -FONT 9, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< 捞傈(&B)", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "促澜(&N) >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "辆丰", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "秒家", IDCANCEL,178,138,50,14 - PUSHBUTTON "档框富", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "徘", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "档备官 荤侩磊 沥狼" -FONT 9, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "摧扁(&C)", IDCANCEL,308,6,44,14 - PUSHBUTTON "促矫(&e)", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "档框富(&H)", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "困肺 捞悼(&U)", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "酒贰肺 捞悼(&D)", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "啊瓷茄 滚瓢(&v)", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "歹窍扁(&A) ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- 力芭窍扁(&R)", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "档备官 滚瓢(&T):", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "摧扁" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "坷疵:" - IDM_GOTODAY "坷疵肺 啊扁" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "盒府磊" -} +/* + * Copyright 2002 Won-kyu Park + * Copyright 2005 YunSong Hwang + * + * 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_KOREAN, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "加己" +FONT 9, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "犬牢", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "秒家", IDCANCEL,58,122,50,14 + PUSHBUTTON "利侩(&A)", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "档框富", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "徘", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "付过荤" +FONT 9, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< 捞傈(&B)", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "促澜(&N) >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "辆丰", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "秒家", IDCANCEL,178,138,50,14 + PUSHBUTTON "档框富", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "徘", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "档备官 荤侩磊 沥狼" +FONT 9, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "摧扁(&C)", IDCANCEL,308,6,44,14 + PUSHBUTTON "促矫(&e)", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "档框富(&H)", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "困肺 捞悼(&U)", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "酒贰肺 捞悼(&D)", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "啊瓷茄 滚瓢(&v)", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "歹窍扁(&A) ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- 力芭窍扁(&R)", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "档备官 滚瓢(&T):", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "摧扁" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "坷疵:" + IDM_GOTODAY "坷疵肺 啊扁" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "盒府磊" +} diff --git a/reactos/dll/win32/comctl32/comctl_Nl.rc b/reactos/dll/win32/comctl32/comctl_Nl.rc index 2d7d0c73134..464b14b6796 100644 --- a/reactos/dll/win32/comctl32/comctl_Nl.rc +++ b/reactos/dll/win32/comctl32/comctl_Nl.rc @@ -1,89 +1,89 @@ -/* - * comctl (Dutch resources) - * - * Copyright 2003 Hans Leidekker - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_DUTCH, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Eigenschappen van " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "Annuleren", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Toepassen", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "Help", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tabblad", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Assistent" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< V&orige", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&Volgende >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "Be毛indigen", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "Annuleren", IDCANCEL,178,138,50,14 - PUSHBUTTON "Help", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tabblad", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Gereedschappenbalk aanpassen" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Afsluiten", IDCANCEL,308,6,44,14 - PUSHBUTTON "&Reset", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&Help", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "Verplaats Om&hoog", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "Verplaats Om&laag", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "&Beschikbare knoppen:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "&Toevoegen ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &Verwijderen", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "&Knoppen:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Sluiten" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Vandaag:" - IDM_GOTODAY "Ga vandaag naar" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Scheidingsteken" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "Geen" -} +/* + * comctl (Dutch resources) + * + * Copyright 2003 Hans Leidekker + * + * 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_DUTCH, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Eigenschappen van " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "Annuleren", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Toepassen", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "Help", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tabblad", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Assistent" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< V&orige", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&Volgende >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "Be毛indigen", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "Annuleren", IDCANCEL,178,138,50,14 + PUSHBUTTON "Help", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tabblad", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Gereedschappenbalk aanpassen" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Afsluiten", IDCANCEL,308,6,44,14 + PUSHBUTTON "&Reset", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&Help", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "Verplaats Om&hoog", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "Verplaats Om&laag", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "&Beschikbare knoppen:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "&Toevoegen ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &Verwijderen", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&Knoppen:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Sluiten" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Vandaag:" + IDM_GOTODAY "Ga vandaag naar" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Scheidingsteken" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "Geen" +} diff --git a/reactos/dll/win32/comctl32/comctl_No.rc b/reactos/dll/win32/comctl32/comctl_No.rc index 49ec8985af4..743405cf03e 100644 --- a/reactos/dll/win32/comctl32/comctl_No.rc +++ b/reactos/dll/win32/comctl32/comctl_No.rc @@ -13,7 +13,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ LANGUAGE LANG_NORWEGIAN, SUBLANG_NORWEGIAN_BOKMAL diff --git a/reactos/dll/win32/comctl32/comctl_Pl.rc b/reactos/dll/win32/comctl32/comctl_Pl.rc index 3a8f2399ff3..6131d089745 100644 --- a/reactos/dll/win32/comctl32/comctl_Pl.rc +++ b/reactos/dll/win32/comctl32/comctl_Pl.rc @@ -1,83 +1,83 @@ -/* - * Copyright 1999 Eric Kohl - * Copyright 2002 Jacek Bator - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_POLISH, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "W砤渃iwo渃i " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "Anuluj", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Zastosuj", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "Pomoc", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Kreator" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &Wstecz", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&Dalej >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "Zako馽z", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "Anuluj", IDCANCEL,178,138,50,14 - PUSHBUTTON "Pomoc", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Dostosowywanie paska narz阣zi" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Zamknij", IDCANCEL,308,6,44,14 - PUSHBUTTON "Z&resetuj", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&Pomoc", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "Przenie &w g髍", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "Przenie w &d蟪", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "Do&st阷ne przyciski:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "D&odaj ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &Usu", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "&Przyciski paska narz阣zi:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Zamknij" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Dzi:" - IDM_GOTODAY "Id do dzi" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Odst阷" -} +/* + * Copyright 1999 Eric Kohl + * Copyright 2002 Jacek Bator + * + * 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 + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "W砤渃iwo渃i " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "Anuluj", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Zastosuj", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "Pomoc", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Kreator" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &Wstecz", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&Dalej >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "Zako馽z", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "Anuluj", IDCANCEL,178,138,50,14 + PUSHBUTTON "Pomoc", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Dostosowywanie paska narz阣zi" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Zamknij", IDCANCEL,308,6,44,14 + PUSHBUTTON "Z&resetuj", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&Pomoc", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "Przenie &w g髍", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "Przenie w &d蟪", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "Do&st阷ne przyciski:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "D&odaj ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &Usu", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&Przyciski paska narz阣zi:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Zamknij" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Dzi:" + IDM_GOTODAY "Id do dzi" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Odst阷" +} diff --git a/reactos/dll/win32/comctl32/comctl_Pt.rc b/reactos/dll/win32/comctl32/comctl_Pt.rc index 0c4e3753ef6..1cf207f7466 100644 --- a/reactos/dll/win32/comctl32/comctl_Pt.rc +++ b/reactos/dll/win32/comctl32/comctl_Pt.rc @@ -1,87 +1,87 @@ -/* - * Copyright 2003 Marcelo Duarte - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_PORTUGUESE, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Propriedades para " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "Cancelar", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Aplicar", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "Ajuda", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Assistente" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &Voltar", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&Avan鏰r >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "Finalizar", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "Cancelar", IDCANCEL,178,138,50,14 - PUSHBUTTON "Ajuda", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Personalizar barra de ferramentas" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Fechar", IDCANCEL,308,6,44,14 - PUSHBUTTON "R&estaurar", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&Ajuda", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "A&cima", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "A&baixo", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "Bot鮡s &dispon韛eis:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "&Adicionar ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &Remover", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "&Bot鮡s da barra de ferramentas:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Fechar" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Hoje:" - IDM_GOTODAY "Ir para hoje" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Separador" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "Nenhum" -} +/* + * Copyright 2003 Marcelo Duarte + * + * 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_PORTUGUESE, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Propriedades para " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "Cancelar", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Aplicar", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "Ajuda", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Assistente" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &Voltar", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&Avan鏰r >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "Finalizar", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "Cancelar", IDCANCEL,178,138,50,14 + PUSHBUTTON "Ajuda", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Personalizar barra de ferramentas" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Fechar", IDCANCEL,308,6,44,14 + PUSHBUTTON "R&estaurar", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&Ajuda", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "A&cima", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "A&baixo", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "Bot鮡s &dispon韛eis:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "&Adicionar ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &Remover", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&Bot鮡s da barra de ferramentas:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Fechar" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Hoje:" + IDM_GOTODAY "Ir para hoje" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Separador" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "Nenhum" +} diff --git a/reactos/dll/win32/comctl32/comctl_Ru.rc b/reactos/dll/win32/comctl32/comctl_Ru.rc index d9fc971b953..bb9bc68580b 100644 --- a/reactos/dll/win32/comctl32/comctl_Ru.rc +++ b/reactos/dll/win32/comctl32/comctl_Ru.rc @@ -1,89 +1,89 @@ -/* - * comctl (Russian resources) - * - * Copyright 2003 Igor Stepin - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "砚铋耱忄 潆 " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "悟戾磬", IDCANCEL,58,122,50,14 - PUSHBUTTON "橡&戾龛螯", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "&扬疣怅", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "锑耱屦" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &袜玎", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&泥脲 >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "青忮瘌栩", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "悟戾磬", IDCANCEL,178,138,50,14 - PUSHBUTTON "&扬疣怅", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "袜耱痤殛 镟礤腓 桧耱痼戾眚钼" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&青牮", IDCANCEL,308,6,44,14 - PUSHBUTTON "&狃铖栩", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&扬疣怅", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "襄疱戾耱栩 &忖屦", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "襄疱戾耱栩 &忭桤", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "&念耱箫睇 觏铒觇:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "&念徉忤螯 ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &愉嚯栩", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "&薯铒觇 镟礤腓 桧耱痼戾眚钼:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "青牮" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "彦泐漤:" - IDM_GOTODAY "义牦 溧蜞" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "朽玟咫栩咫" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "湾" -} +/* + * comctl (Russian resources) + * + * Copyright 2003 Igor Stepin + * + * 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_RUSSIAN, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "砚铋耱忄 潆 " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "悟戾磬", IDCANCEL,58,122,50,14 + PUSHBUTTON "橡&戾龛螯", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "&扬疣怅", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "锑耱屦" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &袜玎", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&泥脲 >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "青忮瘌栩", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "悟戾磬", IDCANCEL,178,138,50,14 + PUSHBUTTON "&扬疣怅", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "袜耱痤殛 镟礤腓 桧耱痼戾眚钼" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&青牮", IDCANCEL,308,6,44,14 + PUSHBUTTON "&狃铖栩", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&扬疣怅", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "襄疱戾耱栩 &忖屦", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "襄疱戾耱栩 &忭桤", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "&念耱箫睇 觏铒觇:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "&念徉忤螯 ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &愉嚯栩", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&薯铒觇 镟礤腓 桧耱痼戾眚钼:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "青牮" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "彦泐漤:" + IDM_GOTODAY "义牦 溧蜞" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "朽玟咫栩咫" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "湾" +} diff --git a/reactos/dll/win32/comctl32/comctl_Si.rc b/reactos/dll/win32/comctl32/comctl_Si.rc index 272452f2d67..51fc3281285 100644 --- a/reactos/dll/win32/comctl32/comctl_Si.rc +++ b/reactos/dll/win32/comctl32/comctl_Si.rc @@ -1,82 +1,82 @@ -/* - * Copyright 2002-2003 Rok Mandeljc - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_SLOVENIAN, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Lastnosti" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "V redu", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "Prekli鑙", IDCANCEL,58,122,50,14 - PUSHBUTTON "&Uporabi", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "Pomo", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "萢rovnik" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< Na&zaj", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "Naprej >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "Dokon鑑j", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "Prekli鑙", IDCANCEL,178,138,50,14 - PUSHBUTTON "Pomo", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Prilagoditev orodne vrstice" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&Zapri", IDCANCEL,308,6,44,14 - PUSHBUTTON "Po&nastavi", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&Pomo", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "N&avzgor", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "Na&vzdol", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "&Gumbi na voljo:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "&Dodaj ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &Odstrani", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "G&umbi orodne vrstice:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "Zapri" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "Danes:" - IDM_GOTODAY "&Poglejte danes" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Lo鑙lo" -} +/* + * Copyright 2002-2003 Rok Mandeljc + * + * 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_SLOVENIAN, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Lastnosti" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "V redu", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "Prekli鑙", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Uporabi", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "Pomo", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "萢rovnik" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< Na&zaj", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "Naprej >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "Dokon鑑j", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "Prekli鑙", IDCANCEL,178,138,50,14 + PUSHBUTTON "Pomo", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Prilagoditev orodne vrstice" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Zapri", IDCANCEL,308,6,44,14 + PUSHBUTTON "Po&nastavi", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&Pomo", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "N&avzgor", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "Na&vzdol", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "&Gumbi na voljo:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "&Dodaj ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &Odstrani", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "G&umbi orodne vrstice:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Zapri" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Danes:" + IDM_GOTODAY "&Poglejte danes" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Lo鑙lo" +} diff --git a/reactos/dll/win32/comctl32/comctl_Sv.rc b/reactos/dll/win32/comctl32/comctl_Sv.rc index 60f27a2b4e3..e67f1ff233c 100644 --- a/reactos/dll/win32/comctl32/comctl_Sv.rc +++ b/reactos/dll/win32/comctl32/comctl_Sv.rc @@ -13,7 +13,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ LANGUAGE LANG_SWEDISH, SUBLANG_DEFAULT diff --git a/reactos/dll/win32/comctl32/comctl_Th.rc b/reactos/dll/win32/comctl32/comctl_Th.rc index ed98b56b917..4895b9b97b3 100644 --- a/reactos/dll/win32/comctl32/comctl_Th.rc +++ b/reactos/dll/win32/comctl32/comctl_Th.rc @@ -1,87 +1,87 @@ -/* - * Copyright 2003 Jon Griffiths - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_THAI, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "へ呈梁训寓艇 " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "怠脓", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "隆嗯浴", IDCANCEL,58,122,50,14 - PUSHBUTTON "琳寂费狗", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "锹嗨耪", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Wizard" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< 麻凸∨押", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "佃弯 >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "讽毅碎嗍苗", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "隆嗯浴", IDCANCEL,178,138,50,14 - PUSHBUTTON "锹嗨耪", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "幻押岬瑙岫亨っ阻艇磷" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "辉", IDCANCEL,308,6,44,14 - PUSHBUTTON "帷橥汀", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "锹嗨耪", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "麻衣⒅楣", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "麻衣脓", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "氛嗯淄′撮:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "呵 ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- 锻赐汀", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "∫谩眯讽裔逗啶米柰Я淄:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "徽" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "茄构臻:" - IDM_GOTODAY "浠吨压拐" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "Separator" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "淞枇锗怕" -} +/* + * Copyright 2003 Jon Griffiths + * + * 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_THAI, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "へ呈梁训寓艇 " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "怠脓", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "隆嗯浴", IDCANCEL,58,122,50,14 + PUSHBUTTON "琳寂费狗", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "锹嗨耪", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Wizard" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< 麻凸∨押", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "佃弯 >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "讽毅碎嗍苗", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "隆嗯浴", IDCANCEL,178,138,50,14 + PUSHBUTTON "锹嗨耪", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "幻押岬瑙岫亨っ阻艇磷" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "辉", IDCANCEL,308,6,44,14 + PUSHBUTTON "帷橥汀", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "锹嗨耪", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "麻衣⒅楣", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "麻衣脓", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "氛嗯淄′撮:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "呵 ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- 锻赐汀", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "∫谩眯讽裔逗啶米柰Я淄:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "徽" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "茄构臻:" + IDM_GOTODAY "浠吨压拐" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Separator" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "淞枇锗怕" +} diff --git a/reactos/dll/win32/comctl32/comctl_Tr.rc b/reactos/dll/win32/comctl32/comctl_Tr.rc new file mode 100644 index 00000000000..1429af83552 --- /dev/null +++ b/reactos/dll/win32/comctl32/comctl_Tr.rc @@ -0,0 +1,87 @@ +/* + * Copyright 2006 Fatih Ac + * + * 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_TURKISH, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "謟ellikler: " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "Tamam", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "輕tal", IDCANCEL,58,122,50,14 + PUSHBUTTON "&Uygula", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "Yard齧", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Sekme", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "Sihirbaz" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &Geri", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&輑eri >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "Son", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "輕tal", IDCANCEL,178,138,50,14 + PUSHBUTTON "Yard齧", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Sekme", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "Ara 莡bu饀nu 謟elle⺶ir" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&Kapat", IDCANCEL,308,6,44,14 + PUSHBUTTON "S&齠齬la", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&Yard齧", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "&Yukar Ta", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "&A瘕 Ta", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "K&ullan齦abilir butonlar:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "&Ekle ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &Kald齬", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&Ara 莡bu饀 butonlar:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "Kapat" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "Bug黱:" + IDM_GOTODAY "Bug黱e git" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "Ayra" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "Hi鏱iri" +} diff --git a/reactos/dll/win32/comctl32/comctl_Uk.rc b/reactos/dll/win32/comctl32/comctl_Uk.rc index 59b3fcd21dd..eb9497e7aae 100644 --- a/reactos/dll/win32/comctl32/comctl_Uk.rc +++ b/reactos/dll/win32/comctl32/comctl_Uk.rc @@ -1,89 +1,89 @@ -/* - * comctl (Ukrainian resources) - * - * Copyright 2004 Ilya Korniyko - * - * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT - -IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 -STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "码囫蜩忸耱 潆 " -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "&鲁潇稠", IDCANCEL,58,122,50,14 - PUSHBUTTON "&青耱铖筲囹", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED - PUSHBUTTON "&念獬潢", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 -END - - -IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "锑耱屦" -FONT 8, "MS Shell Dlg" -BEGIN - PUSHBUTTON "< &袜玎", IDC_BACK_BUTTON,71,138,50,14 - DEFPUSHBUTTON "&泥氤 >", IDC_NEXT_BUTTON,121,138,50,14 - DEFPUSHBUTTON "&青忮瘌栩", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "&鲁潇稠", IDCANCEL,178,138,50,14 - PUSHBUTTON "&念獬潢", IDHELP,235,138,50,14,WS_GROUP - LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 - LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE -END - - -IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 -STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "袜耱痤殛 镟礤氤 稠耱痼戾眚斥" -FONT 8, "MS Shell Dlg" -BEGIN - DEFPUSHBUTTON "&青牮栩", IDCANCEL,308,6,44,14 - PUSHBUTTON "&殃桧篁", IDC_RESET_BTN,308,23,44,14 - PUSHBUTTON "&念獬潢", IDC_HELP_BTN,308,40,44,14 - PUSHBUTTON "襄疱耋眢蜩 &泐痼", IDC_MOVEUP_BTN,308,74,44,14 - PUSHBUTTON "襄疱耋眢蜩 漕&龛珞", IDC_MOVEDN_BTN,308,91,44,14 - LTEXT "袜&忭 觏铒觇:", -1,4,5,84,10 - LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP - PUSHBUTTON "&念溧蜩 ->", IDOK, 131, 42, 44, 14 - PUSHBUTTON "<- &橡栳疣蜩", IDC_REMOVE_BTN,131,62,44,14 - LTEXT "&薯铒觇 镟礤氤 稠耱痼戾眚斥:", -1,182,5,78,10 - LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP -END - -STRINGTABLE DISCARDABLE -{ - IDS_CLOSE "青牮栩" -} - -STRINGTABLE DISCARDABLE -{ - IDM_TODAY "腰钽钿沓:" - IDM_GOTODAY "项蝾黜 溧蜞" -} - -STRINGTABLE DISCARDABLE -{ - IDS_SEPARATOR "蓄玟畴桕" -} - -STRINGTABLE DISCARDABLE -{ - HKY_NONE "湾爨" -} +/* + * comctl (Ukrainian resources) + * + * Copyright 2004 Ilya Korniyko + * + * 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_UKRAINIAN, SUBLANG_DEFAULT + +IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 +STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "码囫蜩忸耱 潆 " +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP + PUSHBUTTON "&鲁潇稠", IDCANCEL,58,122,50,14 + PUSHBUTTON "&青耱铖筲囹", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED + PUSHBUTTON "&念獬潢", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 +END + + +IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE +CAPTION "锑耱屦" +FONT 8, "MS Shell Dlg" +BEGIN + PUSHBUTTON "< &袜玎", IDC_BACK_BUTTON,71,138,50,14 + DEFPUSHBUTTON "&泥氤 >", IDC_NEXT_BUTTON,121,138,50,14 + DEFPUSHBUTTON "&青忮瘌栩", IDC_FINISH_BUTTON,121,138,50,14 + PUSHBUTTON "&鲁潇稠", IDCANCEL,178,138,50,14 + PUSHBUTTON "&念獬潢", IDHELP,235,138,50,14,WS_GROUP + LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN + CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 + LTEXT "", IDC_SUNKEN_LINEHEADER,0,35,290,1,SS_LEFT | SS_SUNKEN | WS_CHILD | WS_VISIBLE +END + + +IDD_TBCUSTOMIZE DIALOG DISCARDABLE 10, 20, 357, 125 +STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU +CAPTION "袜耱痤殛 镟礤氤 稠耱痼戾眚斥" +FONT 8, "MS Shell Dlg" +BEGIN + DEFPUSHBUTTON "&青牮栩", IDCANCEL,308,6,44,14 + PUSHBUTTON "&殃桧篁", IDC_RESET_BTN,308,23,44,14 + PUSHBUTTON "&念獬潢", IDC_HELP_BTN,308,40,44,14 + PUSHBUTTON "襄疱耋眢蜩 &泐痼", IDC_MOVEUP_BTN,308,74,44,14 + PUSHBUTTON "襄疱耋眢蜩 漕&龛珞", IDC_MOVEDN_BTN,308,91,44,14 + LTEXT "袜&忭 觏铒觇:", -1,4,5,84,10 + LISTBOX IDC_AVAILBTN_LBOX,4,17,120,100, LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP + PUSHBUTTON "&念溧蜩 ->", IDOK, 131, 42, 44, 14 + PUSHBUTTON "<- &橡栳疣蜩", IDC_REMOVE_BTN,131,62,44,14 + LTEXT "&薯铒觇 镟礤氤 稠耱痼戾眚斥:", -1,182,5,78,10 + LISTBOX IDC_TOOLBARBTN_LBOX, 182,17,120,100,LBS_NOTIFY | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | LBS_DISABLENOSCROLL | WS_BORDER | WS_VSCROLL | WS_HSCROLL | WS_TABSTOP +END + +STRINGTABLE DISCARDABLE +{ + IDS_CLOSE "青牮栩" +} + +STRINGTABLE DISCARDABLE +{ + IDM_TODAY "腰钽钿沓:" + IDM_GOTODAY "项蝾黜 溧蜞" +} + +STRINGTABLE DISCARDABLE +{ + IDS_SEPARATOR "蓄玟畴桕" +} + +STRINGTABLE DISCARDABLE +{ + HKY_NONE "湾爨" +} diff --git a/reactos/dll/win32/comctl32/commctrl.c b/reactos/dll/win32/comctl32/commctrl.c index 629fe084b62..5cfc24cf844 100644 --- a/reactos/dll/win32/comctl32/commctrl.c +++ b/reactos/dll/win32/comctl32/commctrl.c @@ -16,7 +16,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * diff --git a/reactos/dll/win32/comctl32/datetime.c b/reactos/dll/win32/comctl32/datetime.c index 83d53af56ee..b5596ba71ae 100644 --- a/reactos/dll/win32/comctl32/datetime.c +++ b/reactos/dll/win32/comctl32/datetime.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTE * diff --git a/reactos/dll/win32/comctl32/dpa.c b/reactos/dll/win32/comctl32/dpa.c index 618dd2358dd..e4e60b6ba09 100644 --- a/reactos/dll/win32/comctl32/dpa.c +++ b/reactos/dll/win32/comctl32/dpa.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * These functions were involuntarily documented by Microsoft in 2002 as diff --git a/reactos/dll/win32/comctl32/draglist.c b/reactos/dll/win32/comctl32/draglist.c index 3f333739757..c8e5e136c6a 100644 --- a/reactos/dll/win32/comctl32/draglist.c +++ b/reactos/dll/win32/comctl32/draglist.c @@ -16,7 +16,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * diff --git a/reactos/dll/win32/comctl32/dsa.c b/reactos/dll/win32/comctl32/dsa.c index 9b247b91366..5edb4fc084e 100644 --- a/reactos/dll/win32/comctl32/dsa.c +++ b/reactos/dll/win32/comctl32/dsa.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * These functions were involuntarily documented by Microsoft in 2002 as diff --git a/reactos/dll/win32/comctl32/flatsb.c b/reactos/dll/win32/comctl32/flatsb.c index dd227b881c7..d6b2b63a7f2 100644 --- a/reactos/dll/win32/comctl32/flatsb.c +++ b/reactos/dll/win32/comctl32/flatsb.c @@ -16,7 +16,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * This is just a dummy control. An author is needed! Any volunteers? diff --git a/reactos/dll/win32/comctl32/header.c b/reactos/dll/win32/comctl32/header.c index 3657019ee13..41c4071ca81 100644 --- a/reactos/dll/win32/comctl32/header.c +++ b/reactos/dll/win32/comctl32/header.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * TODO: * - Imagelist support (partially). @@ -32,6 +32,7 @@ */ #include +#include #include #include "windef.h" @@ -61,6 +62,7 @@ typedef struct BOOL bDown; /* is item pressed? (used for drawing) */ RECT rect; /* bounding rectangle of the item */ + DWORD callbackMask; /* HDI_* flags for items that are callback */ } HEADER_ITEM; @@ -76,13 +78,15 @@ typedef struct HCURSOR hcurDivopen; /* handle to a cursor (used over dividers) <-||-> */ BOOL bCaptured; /* Is the mouse captured? */ BOOL bPressed; /* Is a header item pressed (down)? */ + BOOL bDragging; /* Are we dragging an item? */ BOOL bTracking; /* Is in tracking mode? */ - BOOL bUnicode; /* Unicode flag */ + POINT ptLButtonDown; /* The point where the left button was pressed */ INT iMoveItem; /* index of tracked item. (Tracking mode) */ INT xTrackOffset; /* distance between the right side of the tracked item and the cursor */ INT xOldTrack; /* track offset (see above) after the last WM_MOUSEMOVE */ INT nOldWidth; /* width of a sizing item after the last WM_MOUSEMOVE */ INT iHotItem; /* index of hot item (cursor is over this item) */ + INT iHotDivider; /* index of the hot divider (used while dragging an item or by HDM_SETHOTDIVIDER) */ INT iMargin; /* width of the margin that surrounds a bitmap */ HIMAGELIST himl; /* handle to an image list (may be 0) */ @@ -92,13 +96,84 @@ typedef struct } HEADER_INFO; -#define VERT_BORDER 3 +#define VERT_BORDER 4 #define DIVIDER_WIDTH 10 +#define HOT_DIVIDER_WIDTH 2 +#define MAX_HEADER_TEXT_LEN 260 +#define HDN_UNICODE_OFFSET 20 +#define HDN_FIRST_UNICODE (HDN_FIRST-HDN_UNICODE_OFFSET) + +#define HDI_SUPPORTED_FIELDS (HDI_WIDTH|HDI_TEXT|HDI_FORMAT|HDI_LPARAM|HDI_BITMAP|HDI_IMAGE|HDI_ORDER) +#define HDI_UNSUPPORTED_FIELDS (HDI_FILTER) +#define HDI_UNKNOWN_FIELDS (~(HDI_SUPPORTED_FIELDS|HDI_UNSUPPORTED_FIELDS|HDI_DI_SETITEM)) +#define HDI_COMCTL32_4_0_FIELDS (HDI_WIDTH|HDI_TEXT|HDI_FORMAT|HDI_LPARAM|HDI_BITMAP) #define HEADER_GetInfoPtr(hwnd) ((HEADER_INFO *)GetWindowLongPtrW(hwnd,0)) -static const WCHAR themeClass[] = {'H','e','a','d','e','r',0}; +static BOOL HEADER_PrepareCallbackItems(HWND hwnd, INT iItem, INT reqMask); +static void HEADER_FreeCallbackItems(HEADER_ITEM *lpItem); +static const WCHAR themeClass[] = {'H','e','a','d','e','r',0}; +static WCHAR emptyString[] = {0}; + +static void HEADER_DisposeItem(HEADER_ITEM *lpItem) +{ + if (lpItem->pszText) + { + Free(lpItem->pszText); + } +} + +static void HEADER_StoreHDItemInHeader(HEADER_ITEM *lpItem, UINT mask, HDITEMW *phdi, BOOL fUnicode) +{ + if (mask & HDI_UNSUPPORTED_FIELDS) + FIXME("unsupported header fields %x\n", (mask & HDI_UNSUPPORTED_FIELDS)); + + if (mask & HDI_BITMAP) + lpItem->hbm = phdi->hbm; + + if (mask & HDI_FORMAT) + lpItem->fmt = phdi->fmt; + + if (mask & HDI_LPARAM) + lpItem->lParam = phdi->lParam; + + if (mask & HDI_WIDTH) + lpItem->cxy = phdi->cxy; + + if (mask & HDI_IMAGE) + { + lpItem->iImage = phdi->iImage; + if (phdi->iImage == I_IMAGECALLBACK) + lpItem->callbackMask |= HDI_IMAGE; + else + lpItem->callbackMask &= ~HDI_IMAGE; + } + + if (mask & HDI_TEXT) + { + if (lpItem->pszText) + { + Free(lpItem->pszText); + lpItem->pszText = NULL; + } + + if (phdi->pszText != LPSTR_TEXTCALLBACKW) /* covers != TEXTCALLBACKA too */ + { + LPWSTR pszText = (phdi->pszText != NULL ? phdi->pszText : emptyString); + if (fUnicode) + Str_SetPtrW(&lpItem->pszText, pszText); + else + Str_SetPtrAtoW(&lpItem->pszText, (LPSTR)pszText); + lpItem->callbackMask &= ~HDI_TEXT; + } + else + { + lpItem->pszText = NULL; + lpItem->callbackMask |= HDI_TEXT; + } + } +} inline static LRESULT HEADER_IndexToOrder (HWND hwnd, INT iItem) @@ -120,6 +195,45 @@ HEADER_OrderToIndex(HWND hwnd, WPARAM wParam) return infoPtr->order[iorder]; } +static void +HEADER_ChangeItemOrder(HEADER_INFO *infoPtr, INT iItem, INT iNewOrder) +{ + HEADER_ITEM *lpItem = &infoPtr->items[iItem]; + INT i, nMin, nMax; + + TRACE("%d: %d->%d\n", iItem, lpItem->iOrder, iNewOrder); + if (lpItem->iOrder < iNewOrder) + { + memmove(&infoPtr->order[lpItem->iOrder], + &infoPtr->order[lpItem->iOrder + 1], + (iNewOrder - lpItem->iOrder) * sizeof(INT)); + } + if (iNewOrder < lpItem->iOrder) + { + memmove(&infoPtr->order[iNewOrder + 1], + &infoPtr->order[iNewOrder], + (lpItem->iOrder - iNewOrder) * sizeof(INT)); + } + infoPtr->order[iNewOrder] = iItem; + nMin = min(lpItem->iOrder, iNewOrder); + nMax = max(lpItem->iOrder, iNewOrder); + for (i = nMin; i <= nMax; i++) + infoPtr->items[infoPtr->order[i]].iOrder = i; +} + +/* Note: if iItem is the last item then this function returns infoPtr->uNumItem */ +static INT +HEADER_NextItem(HWND hwnd, INT iItem) +{ + return HEADER_OrderToIndex(hwnd, HEADER_IndexToOrder(hwnd, iItem)+1); +} + +static INT +HEADER_PrevItem(HWND hwnd, INT iItem) +{ + return HEADER_OrderToIndex(hwnd, HEADER_IndexToOrder(hwnd, iItem)-1); +} + static void HEADER_SetItemBounds (HWND hwnd) { @@ -157,6 +271,37 @@ HEADER_Size (HWND hwnd, WPARAM wParam) return 0; } +static void HEADER_GetHotDividerRect(HWND hwnd, HEADER_INFO *infoPtr, RECT *r) +{ + INT iDivider = infoPtr->iHotDivider; + if (infoPtr->uNumItem > 0) + { + HEADER_ITEM *lpItem; + + if (iDivider < infoPtr->uNumItem) + { + lpItem = &infoPtr->items[iDivider]; + r->left = lpItem->rect.left - HOT_DIVIDER_WIDTH/2; + r->right = lpItem->rect.left + HOT_DIVIDER_WIDTH/2; + } + else + { + lpItem = &infoPtr->items[HEADER_OrderToIndex(hwnd, infoPtr->uNumItem-1)]; + r->left = lpItem->rect.right - HOT_DIVIDER_WIDTH/2; + r->right = lpItem->rect.right + HOT_DIVIDER_WIDTH/2; + } + r->top = lpItem->rect.top; + r->bottom = lpItem->rect.bottom; + } + else + { + RECT clientRect; + GetClientRect(hwnd, &clientRect); + *r = clientRect; + r->right = r->left + HOT_DIVIDER_WIDTH/2; + } +} + static INT HEADER_DrawItem (HWND hwnd, HDC hdc, INT iItem, BOOL bHotTrack) @@ -166,8 +311,9 @@ HEADER_DrawItem (HWND hwnd, HDC hdc, INT iItem, BOOL bHotTrack) RECT r; INT oldBkMode, cxEdge = GetSystemMetrics(SM_CXEDGE); HTHEME theme = GetWindowTheme (hwnd); + NMCUSTOMDRAW nmcd; - TRACE("DrawItem(iItem %d bHotTrack %d unicode flag %d)\n", iItem, bHotTrack, infoPtr->bUnicode); + TRACE("DrawItem(iItem %d bHotTrack %d unicode flag %d)\n", iItem, bHotTrack, (infoPtr->nNotifyFormat == NFR_UNICODE)); if (!infoPtr->bRectsValid) HEADER_SetItemBounds(hwnd); @@ -205,22 +351,24 @@ HEADER_DrawItem (HWND hwnd, HDC hdc, INT iItem, BOOL bHotTrack) r.left -= cxEdge; r.right += cxEdge; + /* Set the colors before sending NM_CUSTOMDRAW so that it can change them */ + SetTextColor (hdc, (bHotTrack && !theme) ? COLOR_HIGHLIGHT : COLOR_BTNTEXT); + SetBkColor(hdc, GetSysColor(COLOR_3DFACE)); + + nmcd.hdr.hwndFrom = hwnd; + nmcd.hdr.idFrom = GetWindowLongPtrW (hwnd, GWLP_ID); + nmcd.hdr.code = NM_CUSTOMDRAW; + nmcd.dwDrawStage = CDDS_PREPAINT | CDDS_ITEM | CDDS_ITEMPOSTERASE; + nmcd.hdc = hdc; + nmcd.dwItemSpec = iItem; + nmcd.rc = r; + nmcd.uItemState = phdi->bDown ? CDIS_SELECTED : 0; + nmcd.lItemlParam = phdi->lParam; + + SendMessageW (infoPtr->hwndNotify, WM_NOTIFY, nmcd.hdr.idFrom, (LPARAM)&nmcd); + if (phdi->fmt & HDF_OWNERDRAW) { DRAWITEMSTRUCT dis; - NMCUSTOMDRAW nmcd; - - nmcd.hdr.hwndFrom = hwnd; - nmcd.hdr.idFrom = GetWindowLongPtrW (hwnd, GWLP_ID); - nmcd.hdr.code = NM_CUSTOMDRAW; - nmcd.dwDrawStage = CDDS_PREPAINT | CDDS_ITEM | CDDS_ITEMPOSTERASE; - nmcd.hdc = hdc; - nmcd.dwItemSpec = iItem; - nmcd.rc = r; - nmcd.uItemState = phdi->bDown ? CDIS_SELECTED : 0; - nmcd.lItemlParam = phdi->lParam; - - SendMessageW (infoPtr->hwndNotify, WM_NOTIFY, - (WPARAM)nmcd.hdr.idFrom, (LPARAM)&nmcd); dis.CtlType = ODT_HEADER; dis.CtlID = GetWindowLongPtrW (hwnd, GWLP_ID); @@ -245,10 +393,20 @@ HEADER_DrawItem (HWND hwnd, HDC hdc, INT iItem, BOOL bHotTrack) cw, tw, iw, bw; BITMAP bmp; + HEADER_PrepareCallbackItems(hwnd, iItem, HDI_TEXT|HDI_IMAGE); cw = tw = iw = bw = 0; rw = r.right - r.left; rh = r.bottom - r.top; + if (theme == NULL) { + HBRUSH hbr = CreateSolidBrush(GetBkColor(hdc)); + RECT rcBackground = r; + + rcBackground.right -= cxEdge; + rcBackground.left += cxEdge; + FillRect(hdc, &rcBackground, hbr); + DeleteObject(hbr); + } if (phdi->fmt & HDF_STRING) { RECT textRect; @@ -319,8 +477,8 @@ HEADER_DrawItem (HWND hwnd, HDC hdc, INT iItem, BOOL bHotTrack) if (iw || bw) { HDC hClipDC = GetDC(hwnd); HRGN hClipRgn = CreateRectRgn(r.left, r.top, r.right, r.bottom); - SelectClipRgn(hClipDC, hClipRgn); + if (bw) { HDC hdcBitmap = CreateCompatibleDC (hClipDC); SelectObject (hdcBitmap, phdi->hbm); @@ -344,7 +502,6 @@ HEADER_DrawItem (HWND hwnd, HDC hdc, INT iItem, BOOL bHotTrack) HDF_BITMAP_ON_RIGHT|HDF_IMAGE)))) /* no explicit format specified? */ && (phdi->pszText)) { oldBkMode = SetBkMode(hdc, TRANSPARENT); - SetTextColor (hdc, (bHotTrack && !theme) ? COLOR_HIGHLIGHT : COLOR_BTNTEXT); r.left = tx; r.right = tx + tw; DrawTextW (hdc, phdi->pszText, -1, @@ -352,11 +509,24 @@ HEADER_DrawItem (HWND hwnd, HDC hdc, INT iItem, BOOL bHotTrack) if (oldBkMode != TRANSPARENT) SetBkMode(hdc, oldBkMode); } + HEADER_FreeCallbackItems(phdi); }/*Ownerdrawn*/ return phdi->rect.right; } +static void +HEADER_DrawHotDivider(HWND hwnd, HDC hdc) +{ + HEADER_INFO *infoPtr = HEADER_GetInfoPtr (hwnd); + HBRUSH brush; + RECT r; + + HEADER_GetHotDividerRect(hwnd, infoPtr, &r); + brush = CreateSolidBrush(GetSysColor(COLOR_HIGHLIGHT)); + FillRect(hdc, &r, brush); + DeleteObject(brush); +} static void HEADER_Refresh (HWND hwnd, HDC hdc) @@ -369,22 +539,30 @@ HEADER_Refresh (HWND hwnd, HDC hdc) INT x; HTHEME theme = GetWindowTheme (hwnd); + if (!infoPtr->bRectsValid) + HEADER_SetItemBounds(hwnd); + /* get rect for the bar, adjusted for the border */ GetClientRect (hwnd, &rect); + + if (infoPtr->bDragging) + ImageList_DragShowNolock(FALSE); hFont = infoPtr->hFont ? infoPtr->hFont : GetStockObject (SYSTEM_FONT); hOldFont = SelectObject (hdc, hFont); /* draw Background */ - if (theme == NULL) { + if (infoPtr->uNumItem == 0 && theme == NULL) { hbrBk = GetSysColorBrush(COLOR_3DFACE); FillRect(hdc, &rect, hbrBk); } x = rect.left; for (i = 0; x <= rect.right && i < infoPtr->uNumItem; i++) { - x = HEADER_DrawItem (hwnd, hdc, HEADER_OrderToIndex(hwnd,i), - infoPtr->iHotItem == i); + int idx = HEADER_OrderToIndex(hwnd,i); + if (RectVisible(hdc, &infoPtr->items[idx].rect)) + HEADER_DrawItem (hwnd, hdc, idx, infoPtr->iHotItem == i); + x = infoPtr->items[idx].rect.right; } if ((x <= rect.right) && (infoPtr->uNumItem > 0)) { @@ -395,12 +573,17 @@ HEADER_Refresh (HWND hwnd, HDC hdc) } else { if (GetWindowLongW (hwnd, GWL_STYLE) & HDS_BUTTONS) - DrawEdge (hdc, &rect, EDGE_RAISED, BF_TOP|BF_LEFT|BF_BOTTOM|BF_SOFT); + DrawEdge (hdc, &rect, EDGE_RAISED, BF_TOP|BF_LEFT|BF_BOTTOM|BF_SOFT|BF_MIDDLE); else - DrawEdge (hdc, &rect, EDGE_ETCHED, BF_BOTTOM); + DrawEdge (hdc, &rect, EDGE_ETCHED, BF_BOTTOM|BF_MIDDLE); } } + + if (infoPtr->iHotDivider != -1) + HEADER_DrawHotDivider(hwnd, hdc); + if (infoPtr->bDragging) + ImageList_DragShowNolock(TRUE); SelectObject (hdc, hOldFont); } @@ -455,19 +638,19 @@ HEADER_InternalHitTest (HWND hwnd, LPPOINT lpPt, UINT *pFlags, INT *pItem) TRACE("ON HEADER %d\n", iCount); return; } - if (iCount > 0) { + if (HEADER_IndexToOrder(hwnd, iCount) > 0) { rcTest = rect; rcTest.right = rcTest.left + DIVIDER_WIDTH; if (PtInRect (&rcTest, *lpPt)) { if (bNoWidth) { *pFlags |= HHT_ONDIVOPEN; - *pItem = iCount - 1; + *pItem = HEADER_PrevItem(hwnd, iCount); TRACE("ON DIVOPEN %d\n", *pItem); return; } else { *pFlags |= HHT_ONDIVIDER; - *pItem = iCount - 1; + *pItem = HEADER_PrevItem(hwnd, iCount); TRACE("ON DIVIDER %d\n", *pItem); return; } @@ -557,6 +740,52 @@ HEADER_DrawTrackLine (HWND hwnd, HDC hdc, INT x) SelectObject (hdc, hOldPen); } +/*** + * DESCRIPTION: + * Convert a HDITEM into the correct format (ANSI/Unicode) to send it in a notify + * + * PARAMETER(S): + * [I] infoPtr : the header that wants to send the notify + * [O] dest : The buffer to store the HDITEM for notify. It may be set to a HDITEMA of HDITEMW + * [I] src : The source HDITEM. It may be a HDITEMA or HDITEMW + * [I] fSourceUnicode : is src a HDITEMW or HDITEMA + * [O] ppvScratch : a pointer to a scratch buffer that needs to be freed after + * the HDITEM is no longer in use or NULL if none was needed + * + * NOTE: We depend on HDITEMA and HDITEMW having the same structure + */ +static void HEADER_CopyHDItemForNotify(HEADER_INFO *infoPtr, HDITEMW *dest, + HDITEMW *src, BOOL fSourceUnicode, LPVOID *ppvScratch) +{ + *ppvScratch = NULL; + *dest = *src; + + if (src->mask & HDI_TEXT && src->pszText != LPSTR_TEXTCALLBACKW) /* covers TEXTCALLBACKA as well */ + { + if (fSourceUnicode && infoPtr->nNotifyFormat != NFR_UNICODE) + { + dest->pszText = NULL; + Str_SetPtrWtoA((LPSTR *)&dest->pszText, src->pszText); + *ppvScratch = dest->pszText; + } + + if (!fSourceUnicode && infoPtr->nNotifyFormat == NFR_UNICODE) + { + dest->pszText = NULL; + Str_SetPtrAtoW(&dest->pszText, (LPSTR)src->pszText); + *ppvScratch = dest->pszText; + } + } +} + +static UINT HEADER_NotifyCodeWtoA(UINT code) +{ + /* we use the fact that all the unicode messages are in HDN_FIRST_UNICODE..HDN_LAST*/ + if (code >= HDN_LAST && code <= HDN_FIRST_UNICODE) + return code + HDN_UNICODE_OFFSET; + else + return code; +} static BOOL HEADER_SendSimpleNotify (HWND hwnd, UINT code) @@ -573,123 +802,155 @@ HEADER_SendSimpleNotify (HWND hwnd, UINT code) } static BOOL -HEADER_SendHeaderNotify (HWND hwnd, UINT code, INT iItem, INT mask) +HEADER_SendHeaderNotifyT (HWND hwnd, UINT code, INT iItem, INT mask, HDITEMW *lpItem) { HEADER_INFO *infoPtr = HEADER_GetInfoPtr (hwnd); - NMHEADERA nmhdr; - HDITEMA nmitem; + NMHEADERW nmhdr; + HDITEMW nmitem; + + if (lpItem == NULL) + { + /* lpItem == NULL means that we should take the actual data from the item */ + if (mask & HDI_TEXT) + { + FIXME("(): invalid parameters - lpItem == NULL and (mask & HDI_TEXT)\n"); + mask &= ~HDI_TEXT; + } + nmitem.mask = mask; + nmitem.cxy = infoPtr->items[iItem].cxy; + nmitem.hbm = infoPtr->items[iItem].hbm; + nmitem.pszText = NULL; + nmitem.cchTextMax = 0; + nmitem.fmt = infoPtr->items[iItem].fmt; + nmitem.lParam = infoPtr->items[iItem].lParam; + nmitem.iOrder = infoPtr->items[iItem].iOrder; + nmitem.iImage = infoPtr->items[iItem].iImage; + lpItem = &nmitem; + } nmhdr.hdr.hwndFrom = hwnd; nmhdr.hdr.idFrom = GetWindowLongPtrW (hwnd, GWLP_ID); - nmhdr.hdr.code = code; + nmhdr.hdr.code = (infoPtr->nNotifyFormat == NFR_UNICODE ? code : HEADER_NotifyCodeWtoA(code)); nmhdr.iItem = iItem; nmhdr.iButton = 0; - nmhdr.pitem = &nmitem; - nmitem.mask = mask; - nmitem.cxy = infoPtr->items[iItem].cxy; - nmitem.hbm = infoPtr->items[iItem].hbm; - nmitem.pszText = NULL; - nmitem.cchTextMax = 0; -/* nmitem.pszText = infoPtr->items[iItem].pszText; */ -/* nmitem.cchTextMax = infoPtr->items[iItem].cchTextMax; */ - nmitem.fmt = infoPtr->items[iItem].fmt; - nmitem.lParam = infoPtr->items[iItem].lParam; - nmitem.iOrder = infoPtr->items[iItem].iOrder; - nmitem.iImage = infoPtr->items[iItem].iImage; + nmhdr.pitem = lpItem; return (BOOL)SendMessageW (infoPtr->hwndNotify, WM_NOTIFY, (WPARAM)nmhdr.hdr.idFrom, (LPARAM)&nmhdr); } /** - * Send Disp Info notification. + * Prepare callback items * depends on NMHDDISPINFOW having same structure as NMHDDISPINFOA * (so we handle the two cases only doing a specific cast for pszText). + * Checks if any of the required field are callback. If there are sends a + * NMHDISPINFO notify to retrieve these items. The items are stored in the + * HEADER_ITEM pszText and iImage fields. They should be freed with + * HEADER_FreeCallbackItems. * * @param hwnd : hwnd header container handler - * @param mask : notification mask (usually HDI_TEXT or HDI_IMAGE) - * @param pDispInfo : NMHDDISPINFO structure (can be unicode or ansi) - * @param isW : TRUE if dispinfo is Unicode + * @param iItem : the header item id + * @param reqMask : required fields. If any of them is callback this function will fetch it + * + * @return TRUE on success, else FALSE */ static BOOL -HEADER_SendHeaderDispInfoNotify(HWND hwnd, INT iItem, INT mask, LPHDITEMW phdi, HEADER_ITEM* lpItem, BOOL isW) +HEADER_PrepareCallbackItems(HWND hwnd, INT iItem, INT reqMask) { HEADER_INFO *infoPtr = HEADER_GetInfoPtr (hwnd); - BOOL ret; - BOOL convertToAnsi = FALSE; - BOOL convertToUnicode = FALSE; - BOOL isUnicodeNotify = FALSE; + HEADER_ITEM *lpItem = &infoPtr->items[iItem]; + DWORD mask = reqMask & lpItem->callbackMask; NMHDDISPINFOW dispInfo; + void *pvBuffer = NULL; - if (mask & HDI_TEXT) + if (mask == 0) + return TRUE; + if (mask&HDI_TEXT && lpItem->pszText != NULL) { - convertToAnsi = (isW && infoPtr->nNotifyFormat == NFR_ANSI); - convertToUnicode = (!isW && infoPtr->nNotifyFormat == NFR_UNICODE); + ERR("(): function called without a call to FreeCallbackItems\n"); + Free(lpItem->pszText); + lpItem->pszText = NULL; } - isUnicodeNotify = (isW && !convertToAnsi); memset(&dispInfo, 0, sizeof(NMHDDISPINFOW)); dispInfo.hdr.hwndFrom = hwnd; dispInfo.hdr.idFrom = GetWindowLongPtrW (hwnd, GWLP_ID); - if (isUnicodeNotify || convertToUnicode) + if (infoPtr->nNotifyFormat == NFR_UNICODE) { dispInfo.hdr.code = HDN_GETDISPINFOW; + if (mask & HDI_TEXT) + pvBuffer = Alloc(MAX_HEADER_TEXT_LEN * sizeof(WCHAR)); } else { dispInfo.hdr.code = HDN_GETDISPINFOA; + if (mask & HDI_TEXT) + pvBuffer = Alloc(MAX_HEADER_TEXT_LEN * sizeof(CHAR)); } + dispInfo.pszText = (LPWSTR)pvBuffer; + dispInfo.cchTextMax = (pvBuffer!=NULL?MAX_HEADER_TEXT_LEN:0); dispInfo.iItem = iItem; dispInfo.mask = mask; - /* - dispInfo.pszText = Alloc(sizeof(WCHAR) * 260); - dispInfo.cchTextMax = 260; - */ - ret = (BOOL) SendMessageW(infoPtr->hwndNotify, WM_NOTIFY, - (WPARAM) dispInfo.hdr.idFrom, - (LPARAM) &dispInfo); + dispInfo.lParam = lpItem->lParam; + + TRACE("Sending HDN_GETDISPINFO%c\n", infoPtr->nNotifyFormat == NFR_UNICODE?'W':'A'); + SendMessageW(infoPtr->hwndNotify, WM_NOTIFY, + (WPARAM) dispInfo.hdr.idFrom, + (LPARAM) &dispInfo); TRACE("SendMessage returns(mask:0x%x,str:%s,lParam:%p)\n", dispInfo.mask, - (isUnicodeNotify ? debugstr_w(dispInfo.pszText) : (LPSTR) dispInfo.pszText), + (infoPtr->nNotifyFormat == NFR_UNICODE ? debugstr_w(dispInfo.pszText) : (LPSTR) dispInfo.pszText), (void*) dispInfo.lParam); - + + if (mask & HDI_IMAGE) + lpItem->iImage = dispInfo.iImage; + if (mask & HDI_TEXT) + { + if (infoPtr->nNotifyFormat == NFR_UNICODE) + { + lpItem->pszText = (LPWSTR)pvBuffer; + + /* the user might have used his own buffer */ + if (dispInfo.pszText != lpItem->pszText) + Str_GetPtrW(dispInfo.pszText, lpItem->pszText, MAX_HEADER_TEXT_LEN); + } + else + { + Str_SetPtrAtoW(&lpItem->pszText, (LPSTR)dispInfo.pszText); + Free(pvBuffer); + } + } + if (dispInfo.mask & HDI_DI_SETITEM) { - if (dispInfo.mask & HDI_IMAGE) - { - lpItem->iImage = dispInfo.iImage; - } - if (dispInfo.mask & HDI_TEXT) - { - if (isUnicodeNotify || convertToUnicode) - Str_SetPtrW(&lpItem->pszText, (LPCWSTR)dispInfo.pszText); - else /*if (convertToAnsi || !isW)*/ - Str_SetPtrAtoW(&lpItem->pszText, (LPCSTR)dispInfo.pszText); - } - - FIXME("NMHDDISPINFO returns with flags HDI_DI_SETITEM\n"); + /* make the items permanent */ + lpItem->callbackMask &= ~dispInfo.mask; } - if (NULL != phdi) - { - if ((phdi->mask & mask) & HDI_IMAGE) - { - phdi->iImage = dispInfo.iImage; - } - if ((phdi->mask & mask) & HDI_TEXT) - { - if (isUnicodeNotify) - Str_GetPtrW ((LPCWSTR)dispInfo.pszText, phdi->pszText, phdi->cchTextMax); - else if (convertToUnicode) - Str_GetPtrWtoA ((LPCWSTR)dispInfo.pszText, (LPSTR)phdi->pszText, phdi->cchTextMax); - else /*if (!isW) */ - Str_GetPtrA ((LPCSTR)dispInfo.pszText, (LPSTR)phdi->pszText, phdi->cchTextMax); - } - } - return ret; + return TRUE; } +/*** + * DESCRIPTION: + * Free the items that might be allocated with HEADER_PrepareCallbackItems + * + * PARAMETER(S): + * [I] lpItem : the item to free the data + * + */ +static void +HEADER_FreeCallbackItems(HEADER_ITEM *lpItem) +{ + if (lpItem->callbackMask&HDI_TEXT && lpItem->pszText != NULL) + { + Free(lpItem->pszText); + lpItem->pszText = NULL; + } + + if (lpItem->callbackMask&HDI_IMAGE) + lpItem->iImage = I_IMAGECALLBACK; +} static BOOL HEADER_SendClickNotify (HWND hwnd, UINT code, INT iItem) @@ -708,14 +969,91 @@ HEADER_SendClickNotify (HWND hwnd, UINT code, INT iItem) (WPARAM)nmhdr.hdr.idFrom, (LPARAM)&nmhdr); } - static LRESULT HEADER_CreateDragImage (HWND hwnd, WPARAM wParam) { - FIXME("empty stub!\n"); - return 0; + HEADER_INFO *infoPtr = HEADER_GetInfoPtr(hwnd); + HEADER_ITEM *lpItem; + HIMAGELIST himl; + HBITMAP hMemory, hOldBitmap; + HDC hMemoryDC; + HDC hDeviceDC; + int height, width; + + if (wParam < 0 || wParam >= infoPtr->uNumItem) + return FALSE; + lpItem = &infoPtr->items[wParam]; + width = lpItem->rect.right - lpItem->rect.left; + height = lpItem->rect.bottom - lpItem->rect.top; + + hDeviceDC = GetDC(NULL); + hMemoryDC = CreateCompatibleDC(hDeviceDC); + hMemory = CreateCompatibleBitmap(hDeviceDC, width, height); + ReleaseDC(NULL, hDeviceDC); + hOldBitmap = SelectObject(hMemoryDC, hMemory); + SetViewportOrgEx(hMemoryDC, -lpItem->rect.left, -lpItem->rect.top, NULL); + HEADER_DrawItem(hwnd, hMemoryDC, wParam, FALSE); + hMemory = SelectObject(hMemoryDC, hOldBitmap); + DeleteDC(hMemoryDC); + + if (hMemory == NULL) /* if anything failed */ + return FALSE; + + himl = ImageList_Create(width, height, ILC_COLORDDB, 1, 1); + ImageList_Add(himl, hMemory, NULL); + DeleteObject(hMemory); + return (LRESULT)himl; } +static LRESULT +HEADER_SetHotDivider(HWND hwnd, WPARAM wParam, LPARAM lParam) +{ + HEADER_INFO *infoPtr = HEADER_GetInfoPtr(hwnd); + INT iDivider; + RECT r; + + if (wParam) + { + POINT pt; + UINT flags; + pt.x = (INT)(SHORT)LOWORD(lParam); + pt.y = 0; + HEADER_InternalHitTest (hwnd, &pt, &flags, &iDivider); + + if (flags & HHT_TOLEFT) + iDivider = 0; + else if (flags & HHT_NOWHERE || flags & HHT_TORIGHT) + iDivider = infoPtr->uNumItem; + else + { + HEADER_ITEM *lpItem = &infoPtr->items[iDivider]; + if (pt.x > (lpItem->rect.left+lpItem->rect.right)/2) + iDivider = HEADER_NextItem(hwnd, iDivider); + } + } + else + iDivider = (INT)lParam; + + /* Note; wParam==FALSE, lParam==-1 is valid and is used to clear the hot divider */ + if (iDivider<-1 || iDivider>(int)infoPtr->uNumItem) + return iDivider; + + if (iDivider != infoPtr->iHotDivider) + { + if (infoPtr->iHotDivider != -1) + { + HEADER_GetHotDividerRect(hwnd, infoPtr, &r); + InvalidateRect(hwnd, &r, FALSE); + } + infoPtr->iHotDivider = iDivider; + if (iDivider != -1) + { + HEADER_GetHotDividerRect(hwnd, infoPtr, &r); + InvalidateRect(hwnd, &r, FALSE); + } + } + return iDivider; +} static LRESULT HEADER_DeleteItem (HWND hwnd, WPARAM wParam) @@ -730,8 +1068,7 @@ HEADER_DeleteItem (HWND hwnd, WPARAM wParam) if (infoPtr->uNumItem == 1) { TRACE("Simple delete!\n"); - if (infoPtr->items[0].pszText) - Free (infoPtr->items[0].pszText); + HEADER_DisposeItem(&infoPtr->items[0]); Free (infoPtr->items); Free(infoPtr->order); infoPtr->items = 0; @@ -746,8 +1083,7 @@ HEADER_DeleteItem (HWND hwnd, WPARAM wParam) for (i = 0; i < infoPtr->uNumItem; i++) TRACE("%d: order=%d, iOrder=%d, ->iOrder=%d\n", i, infoPtr->order[i], infoPtr->items[i].iOrder, infoPtr->items[infoPtr->order[i]].iOrder); - if (infoPtr->items[iItem].pszText) - Free (infoPtr->items[iItem].pszText); + HEADER_DisposeItem(&infoPtr->items[iItem]); iOrder = infoPtr->items[iItem].iOrder; infoPtr->uNumItem--; @@ -805,59 +1141,56 @@ HEADER_GetItemT (HWND hwnd, INT nItem, LPHDITEMW phdi, BOOL bUnicode) { HEADER_INFO *infoPtr = HEADER_GetInfoPtr (hwnd); HEADER_ITEM *lpItem; + UINT mask; if (!phdi) return FALSE; TRACE("[nItem=%d]\n", nItem); - if (phdi->mask == 0) + mask = phdi->mask; + if (mask == 0) return TRUE; + if ((nItem < 0) || (nItem >= (INT)infoPtr->uNumItem)) return FALSE; + if (mask & HDI_UNKNOWN_FIELDS) + { + TRACE("mask %x contains unknown fields. Using only comctl32 4.0 fields\n", mask); + mask &= HDI_COMCTL32_4_0_FIELDS; + } + lpItem = &infoPtr->items[nItem]; + HEADER_PrepareCallbackItems(hwnd, nItem, mask); - if (phdi->mask & HDI_BITMAP) - phdi->hbm = (lpItem != NULL) ? lpItem->hbm : 0; + if (mask & HDI_BITMAP) + phdi->hbm = lpItem->hbm; - if (phdi->mask & HDI_FORMAT) - phdi->fmt = (lpItem != NULL) ? lpItem->fmt : 0; + if (mask & HDI_FORMAT) + phdi->fmt = lpItem->fmt; - if (phdi->mask & HDI_WIDTH) - phdi->cxy = (lpItem != NULL) ? lpItem->cxy : 0; + if (mask & HDI_WIDTH) + phdi->cxy = lpItem->cxy; - if (phdi->mask & HDI_LPARAM) - phdi->lParam = (lpItem != NULL) ? lpItem->lParam : 0; + if (mask & HDI_LPARAM) + phdi->lParam = lpItem->lParam; - if (phdi->mask & HDI_IMAGE) + if (mask & HDI_IMAGE) + phdi->iImage = lpItem->iImage; + + if (mask & HDI_ORDER) + phdi->iOrder = lpItem->iOrder; + + if (mask & HDI_TEXT) { - phdi->iImage = (lpItem != NULL) ? lpItem->iImage : 0; - if (lpItem->iImage == I_IMAGECALLBACK) - { - HEADER_SendHeaderDispInfoNotify(hwnd, nItem, HDI_IMAGE, phdi, lpItem, bUnicode); - } - } - - if (phdi->mask & HDI_ORDER) - phdi->iOrder = (lpItem != NULL) ? lpItem->iOrder : 0; - - if (phdi->mask & HDI_TEXT) - { - if (lpItem == NULL) *phdi->pszText = 0; /* null pointer check */ - else if (lpItem->pszText == LPSTR_TEXTCALLBACKW) /* covers == TEXTCALLBACKA too */ - { - HEADER_SendHeaderDispInfoNotify(hwnd, nItem, HDI_TEXT, phdi, lpItem, bUnicode); - } + if (bUnicode) + Str_GetPtrW (lpItem->pszText, phdi->pszText, phdi->cchTextMax); else - { - if (bUnicode) - Str_GetPtrW (lpItem->pszText, phdi->pszText, phdi->cchTextMax); - else - Str_GetPtrWtoA (lpItem->pszText, (LPSTR)phdi->pszText, phdi->cchTextMax); - } + Str_GetPtrWtoA (lpItem->pszText, (LPSTR)phdi->pszText, phdi->cchTextMax); } + HEADER_FreeCallbackItems(lpItem); return TRUE; } @@ -927,7 +1260,7 @@ inline static LRESULT HEADER_GetUnicodeFormat (HWND hwnd) { HEADER_INFO *infoPtr = HEADER_GetInfoPtr (hwnd); - return infoPtr->bUnicode; + return (infoPtr->nNotifyFormat == NFR_UNICODE); } @@ -952,8 +1285,9 @@ HEADER_InsertItemT (HWND hwnd, INT nItem, LPHDITEMW phdi, BOOL bUnicode) HEADER_ITEM *lpItem; INT iOrder; UINT i; + UINT copyMask; - if ((phdi == NULL) || (nItem < 0)) + if ((phdi == NULL) || (nItem < 0) || (phdi->mask == 0)) return -1; if (nItem > infoPtr->uNumItem) @@ -1013,53 +1347,24 @@ HEADER_InsertItemT (HWND hwnd, INT nItem, LPHDITEMW phdi, BOOL bUnicode) } lpItem = &infoPtr->items[nItem]; - lpItem->bDown = FALSE; - - if (phdi->mask & HDI_WIDTH) - lpItem->cxy = phdi->cxy; - - if (phdi->mask & HDI_FORMAT) - lpItem->fmt = phdi->fmt; - - if (lpItem->fmt == 0) - lpItem->fmt = HDF_LEFT; - - if (phdi->mask & HDI_BITMAP) - lpItem->hbm = phdi->hbm; - - if (phdi->mask & HDI_LPARAM) - lpItem->lParam = phdi->lParam; - - if (phdi->mask & HDI_IMAGE) - { - if (phdi->iImage != I_IMAGECALLBACK) - { - lpItem->iImage = phdi->iImage; - } - else - { - lpItem->iImage = phdi->iImage; - HEADER_SendHeaderDispInfoNotify(hwnd, nItem, HDI_IMAGE, NULL, lpItem, bUnicode); - } - } + ZeroMemory(lpItem, sizeof(HEADER_ITEM)); + /* cxy, fmt and lParam are copied even if not in the HDITEM mask */ + copyMask = phdi->mask | HDI_WIDTH | HDI_FORMAT | HDI_LPARAM; + HEADER_StoreHDItemInHeader(lpItem, copyMask, phdi, bUnicode); + /* set automatically some format bits */ if (phdi->mask & HDI_TEXT) - { - if (!phdi->pszText) phdi->pszText = '\0'; /* null pointer check */ - if (phdi->pszText != LPSTR_TEXTCALLBACKW) /* covers != TEXTCALLBACKA too */ - { - if (bUnicode) - Str_SetPtrW(&lpItem->pszText, phdi->pszText); - else - Str_SetPtrAtoW(&lpItem->pszText, (LPSTR)phdi->pszText); - } - else - { - lpItem->pszText = phdi->pszText; - HEADER_SendHeaderDispInfoNotify(hwnd, nItem, HDI_TEXT, NULL, lpItem, bUnicode); - } lpItem->fmt |= HDF_STRING; - } + else + lpItem->fmt &= ~HDF_STRING; + + if (lpItem->hbm != NULL) + lpItem->fmt |= HDF_BITMAP; + else + lpItem->fmt &= ~HDF_BITMAP; + + if (phdi->mask & HDI_IMAGE) + lpItem->fmt |= HDF_IMAGE; lpItem->iOrder = iOrder; @@ -1140,6 +1445,8 @@ HEADER_SetItemT (HWND hwnd, INT nItem, LPHDITEMW phdi, BOOL bUnicode) { HEADER_INFO *infoPtr = HEADER_GetInfoPtr (hwnd); HEADER_ITEM *lpItem; + HDITEMW hdNotify; + void *pvScratch; if (phdi == NULL) return FALSE; @@ -1148,92 +1455,28 @@ HEADER_SetItemT (HWND hwnd, INT nItem, LPHDITEMW phdi, BOOL bUnicode) TRACE("[nItem=%d]\n", nItem); - if (HEADER_SendHeaderNotify (hwnd, bUnicode ? HDN_ITEMCHANGINGW : HDN_ITEMCHANGINGA, - nItem, phdi->mask)) + HEADER_CopyHDItemForNotify(infoPtr, &hdNotify, phdi, bUnicode, &pvScratch); + if (HEADER_SendHeaderNotifyT (hwnd, HDN_ITEMCHANGINGW, nItem, phdi->mask, &hdNotify)) + { + if (pvScratch) Free(pvScratch); return FALSE; + } lpItem = &infoPtr->items[nItem]; - if (phdi->mask & HDI_BITMAP) - lpItem->hbm = phdi->hbm; - - if (phdi->mask & HDI_FORMAT) - lpItem->fmt = phdi->fmt; - - if (phdi->mask & HDI_LPARAM) - lpItem->lParam = phdi->lParam; - - if (phdi->mask & HDI_WIDTH) - lpItem->cxy = phdi->cxy; - - if (phdi->mask & HDI_IMAGE) - { - if (phdi->iImage != I_IMAGECALLBACK) - { - lpItem->iImage = phdi->iImage; - } - else - { - lpItem->iImage = phdi->iImage; - HEADER_SendHeaderDispInfoNotify(hwnd, nItem, HDI_IMAGE, NULL, lpItem, bUnicode); - } - } - - if (phdi->mask & HDI_TEXT) - { - if (phdi->pszText != LPSTR_TEXTCALLBACKW) /* covers != TEXTCALLBACKA too */ - { - if (lpItem->pszText) - { - Free(lpItem->pszText); - lpItem->pszText = NULL; - } - if (phdi->pszText) - { - if (bUnicode) - Str_SetPtrW(&lpItem->pszText, phdi->pszText); - else - Str_SetPtrAtoW(&lpItem->pszText, (LPSTR)phdi->pszText); - } - } - else - { - lpItem->pszText = phdi->pszText; - HEADER_SendHeaderDispInfoNotify(hwnd, nItem, HDI_TEXT, NULL, lpItem, bUnicode); - } - } + HEADER_StoreHDItemInHeader(lpItem, phdi->mask, phdi, bUnicode); if (phdi->mask & HDI_ORDER) - { - INT i, nMin, nMax; - - if (lpItem->iOrder < phdi->iOrder) - { - memmove(&infoPtr->order[lpItem->iOrder], - &infoPtr->order[lpItem->iOrder + 1], - (phdi->iOrder - lpItem->iOrder) * sizeof(INT)); - } - if (phdi->iOrder < lpItem->iOrder) - { - memmove(&infoPtr->order[phdi->iOrder + 1], - &infoPtr->order[phdi->iOrder], - (lpItem->iOrder - phdi->iOrder) * sizeof(INT)); - } - infoPtr->order[phdi->iOrder] = nItem; - nMin = min(lpItem->iOrder, phdi->iOrder); - nMax = max(lpItem->iOrder, phdi->iOrder); - for (i = nMin; i <= nMax; i++) - { - infoPtr->items[infoPtr->order[i]].iOrder = infoPtr->order[i]; - } - } + if (phdi->iOrder >= 0 && phdi->iOrder < infoPtr->uNumItem) + HEADER_ChangeItemOrder(infoPtr, nItem, phdi->iOrder); - HEADER_SendHeaderNotify (hwnd, bUnicode ? HDN_ITEMCHANGEDW : HDN_ITEMCHANGEDA, - nItem, phdi->mask); + HEADER_SendHeaderNotifyT (hwnd, HDN_ITEMCHANGEDW, nItem, phdi->mask, &hdNotify); HEADER_SetItemBounds (hwnd); InvalidateRect(hwnd, NULL, FALSE); + if (pvScratch != NULL) + Free(pvScratch); return TRUE; } @@ -1241,9 +1484,9 @@ inline static LRESULT HEADER_SetUnicodeFormat (HWND hwnd, WPARAM wParam) { HEADER_INFO *infoPtr = HEADER_GetInfoPtr (hwnd); - BOOL bTemp = infoPtr->bUnicode; + BOOL bTemp = (infoPtr->nNotifyFormat == NFR_UNICODE); - infoPtr->bUnicode = (BOOL)wParam; + infoPtr->nNotifyFormat = ((BOOL)wParam ? NFR_UNICODE : NFR_ANSI); return bTemp; } @@ -1274,7 +1517,7 @@ HEADER_Create (HWND hwnd, WPARAM wParam, LPARAM lParam) infoPtr->iMoveItem = 0; infoPtr->himl = 0; infoPtr->iHotItem = -1; - infoPtr->bUnicode = IsWindowUnicode (hwnd); + infoPtr->iHotDivider = -1; infoPtr->iMargin = 3*GetSystemMetrics(SM_CXEDGE); infoPtr->nNotifyFormat = SendMessageW (infoPtr->hwndNotify, WM_NOTIFYFORMAT, (WPARAM)hwnd, NF_QUERY); @@ -1303,8 +1546,7 @@ HEADER_Destroy (HWND hwnd, WPARAM wParam, LPARAM lParam) if (infoPtr->items) { lpItem = infoPtr->items; for (nItem = 0; nItem < infoPtr->uNumItem; nItem++, lpItem++) { - if ((lpItem->pszText) && (lpItem->pszText != LPSTR_TEXTCALLBACKW)) - Free (lpItem->pszText); + HEADER_DisposeItem(lpItem); } Free (infoPtr->items); } @@ -1333,6 +1575,16 @@ HEADER_GetFont (HWND hwnd) } +static BOOL +HEADER_IsDragDistance(HEADER_INFO *infoPtr, POINT *pt) +{ + /* Windows allows for a mouse movement before starting the drag. We use the + * SM_CXDOUBLECLICK/SM_CYDOUBLECLICK as that distance. + */ + return (abs(infoPtr->ptLButtonDown.x - pt->x)>GetSystemMetrics(SM_CXDOUBLECLK) || + abs(infoPtr->ptLButtonDown.y - pt->y)>GetSystemMetrics(SM_CYDOUBLECLK)); +} + static LRESULT HEADER_LButtonDblClk (HWND hwnd, WPARAM wParam, LPARAM lParam) { @@ -1345,9 +1597,9 @@ HEADER_LButtonDblClk (HWND hwnd, WPARAM wParam, LPARAM lParam) HEADER_InternalHitTest (hwnd, &pt, &flags, &nItem); if ((GetWindowLongW (hwnd, GWL_STYLE) & HDS_BUTTONS) && (flags == HHT_ONHEADER)) - HEADER_SendHeaderNotify (hwnd, HDN_ITEMDBLCLICKA, nItem,0); + HEADER_SendHeaderNotifyT (hwnd, HDN_ITEMDBLCLICKW, nItem, 0, NULL); else if ((flags == HHT_ONDIVIDER) || (flags == HHT_ONDIVOPEN)) - HEADER_SendHeaderNotify (hwnd, HDN_DIVIDERDBLCLICKA, nItem,0); + HEADER_SendHeaderNotifyT (hwnd, HDN_DIVIDERDBLCLICKW, nItem, 0, NULL); return 0; } @@ -1371,7 +1623,9 @@ HEADER_LButtonDown (HWND hwnd, WPARAM wParam, LPARAM lParam) SetCapture (hwnd); infoPtr->bCaptured = TRUE; infoPtr->bPressed = TRUE; + infoPtr->bDragging = FALSE; infoPtr->iMoveItem = nItem; + infoPtr->ptLButtonDown = pt; infoPtr->items[nItem].bDown = TRUE; @@ -1383,7 +1637,7 @@ HEADER_LButtonDown (HWND hwnd, WPARAM wParam, LPARAM lParam) TRACE("Pressed item %d!\n", nItem); } else if ((flags == HHT_ONDIVIDER) || (flags == HHT_ONDIVOPEN)) { - if (!(HEADER_SendHeaderNotify (hwnd, HDN_BEGINTRACKA, nItem,0))) { + if (!(HEADER_SendHeaderNotifyT (hwnd, HDN_BEGINTRACKW, nItem, HDI_WIDTH, NULL))) { SetCapture (hwnd); infoPtr->bCaptured = TRUE; infoPtr->bTracking = TRUE; @@ -1410,9 +1664,7 @@ static LRESULT HEADER_LButtonUp (HWND hwnd, WPARAM wParam, LPARAM lParam) { HEADER_INFO *infoPtr = HEADER_GetInfoPtr (hwnd); - /* - *DWORD dwStyle = GetWindowLongW (hwnd, GWL_STYLE); - */ + DWORD dwStyle = GetWindowLongW (hwnd, GWL_STYLE); POINT pt; UINT flags; INT nItem, nWidth; @@ -1423,7 +1675,41 @@ HEADER_LButtonUp (HWND hwnd, WPARAM wParam, LPARAM lParam) HEADER_InternalHitTest (hwnd, &pt, &flags, &nItem); if (infoPtr->bPressed) { - if ((nItem == infoPtr->iMoveItem) && (flags == HHT_ONHEADER)) { + if (infoPtr->bDragging) + { + HEADER_ITEM *lpItem = &infoPtr->items[infoPtr->iMoveItem]; + INT iNewOrder; + + ImageList_DragShowNolock(FALSE); + ImageList_EndDrag(); + lpItem->bDown=FALSE; + + if (infoPtr->iHotDivider == -1) + iNewOrder = -1; + else if (infoPtr->iHotDivider == infoPtr->uNumItem) + iNewOrder = infoPtr->uNumItem-1; + else + { + iNewOrder = HEADER_IndexToOrder(hwnd, infoPtr->iHotDivider); + if (iNewOrder > lpItem->iOrder) + iNewOrder--; + } + + /* FIXME: the new order field should be sent, not the old one */ + if (iNewOrder != -1 && + !HEADER_SendHeaderNotifyT(hwnd, HDN_ENDDRAG, infoPtr->iMoveItem, HDI_ORDER, NULL)) + { + HEADER_ChangeItemOrder(infoPtr, infoPtr->iMoveItem, iNewOrder); + infoPtr->bRectsValid = FALSE; + InvalidateRect(hwnd, NULL, FALSE); + } + else + InvalidateRect(hwnd, &infoPtr->items[infoPtr->iMoveItem].rect, FALSE); + + HEADER_SetHotDivider(hwnd, FALSE, -1); + } + else if (!(dwStyle&HDS_DRAGDROP) || !HEADER_IsDragDistance(infoPtr, &pt)) + { infoPtr->items[infoPtr->iMoveItem].bDown = FALSE; hdc = GetDC (hwnd); HEADER_RefreshItem (hwnd, hdc, infoPtr->iMoveItem); @@ -1431,27 +1717,6 @@ HEADER_LButtonUp (HWND hwnd, WPARAM wParam, LPARAM lParam) HEADER_SendClickNotify (hwnd, HDN_ITEMCLICKA, infoPtr->iMoveItem); } - else if (flags == HHT_ONHEADER) - { - HEADER_ITEM *lpItem; - INT newindex = HEADER_IndexToOrder(hwnd,nItem); - INT oldindex = HEADER_IndexToOrder(hwnd,infoPtr->iMoveItem); - - TRACE("Exchanging [index:order] [%d:%d] [%d:%d]\n", - infoPtr->iMoveItem,oldindex,nItem,newindex); - lpItem= &infoPtr->items[nItem]; - lpItem->iOrder=oldindex; - - lpItem= &infoPtr->items[infoPtr->iMoveItem]; - lpItem->iOrder = newindex; - - infoPtr->order[oldindex] = nItem; - infoPtr->order[newindex] = infoPtr->iMoveItem; - - infoPtr->bRectsValid = FALSE; - InvalidateRect(hwnd, NULL, FALSE); - /* FIXME: Should some WM_NOTIFY be sent */ - } TRACE("Released item %d!\n", infoPtr->iMoveItem); infoPtr->bPressed = FALSE; @@ -1460,35 +1725,28 @@ HEADER_LButtonUp (HWND hwnd, WPARAM wParam, LPARAM lParam) TRACE("End tracking item %d!\n", infoPtr->iMoveItem); infoPtr->bTracking = FALSE; - HEADER_SendHeaderNotify (hwnd, HDN_ENDTRACKA, infoPtr->iMoveItem,HDI_WIDTH); - - /* - * we want to do this even for HDS_FULLDRAG because this is where - * we send the HDN_ITEMCHANGING and HDN_ITEMCHANGED notifications - * - * if (!(dwStyle & HDS_FULLDRAG)) { - */ + HEADER_SendHeaderNotifyT (hwnd, HDN_ENDTRACKW, infoPtr->iMoveItem, HDI_WIDTH, NULL); + if (!(dwStyle & HDS_FULLDRAG)) { hdc = GetDC (hwnd); HEADER_DrawTrackLine (hwnd, hdc, infoPtr->xOldTrack); ReleaseDC (hwnd, hdc); - if (HEADER_SendHeaderNotify(hwnd, HDN_ITEMCHANGINGA, infoPtr->iMoveItem, HDI_WIDTH)) - { - infoPtr->items[infoPtr->iMoveItem].cxy = infoPtr->nOldWidth; - } - else { - nWidth = pt.x - infoPtr->items[infoPtr->iMoveItem].rect.left + infoPtr->xTrackOffset; - if (nWidth < 0) - nWidth = 0; - infoPtr->items[infoPtr->iMoveItem].cxy = nWidth; - } + } + + if (HEADER_SendHeaderNotifyT(hwnd, HDN_ITEMCHANGINGW, infoPtr->iMoveItem, HDI_WIDTH, NULL)) + { + infoPtr->items[infoPtr->iMoveItem].cxy = infoPtr->nOldWidth; + } + else { + nWidth = pt.x - infoPtr->items[infoPtr->iMoveItem].rect.left + infoPtr->xTrackOffset; + if (nWidth < 0) + nWidth = 0; + infoPtr->items[infoPtr->iMoveItem].cxy = nWidth; + } - HEADER_SetItemBounds (hwnd); - InvalidateRect(hwnd, NULL, TRUE); - HEADER_SendHeaderNotify(hwnd, HDN_ITEMCHANGEDA, infoPtr->iMoveItem, HDI_WIDTH); - /* - * } - */ + HEADER_SetItemBounds (hwnd); + InvalidateRect(hwnd, NULL, TRUE); + HEADER_SendHeaderNotifyT(hwnd, HDN_ITEMCHANGEDW, infoPtr->iMoveItem, HDI_WIDTH, NULL); } if (infoPtr->bCaptured) { @@ -1521,7 +1779,6 @@ HEADER_NotifyFormat (HWND hwnd, WPARAM wParam, LPARAM lParam) return 0; } - static LRESULT HEADER_MouseLeave (HWND hwnd, WPARAM wParam, LPARAM lParam) { @@ -1565,7 +1822,36 @@ HEADER_MouseMove (HWND hwnd, WPARAM wParam, LPARAM lParam) } if (infoPtr->bCaptured) { - if (infoPtr->bPressed) { + /* check if we should drag the header */ + if (infoPtr->bPressed && !infoPtr->bDragging && dwStyle&HDS_DRAGDROP + && HEADER_IsDragDistance(infoPtr, &pt)) + { + if (!HEADER_SendHeaderNotifyT(hwnd, HDN_BEGINDRAG, infoPtr->iMoveItem, 0, NULL)) + { + HIMAGELIST hDragItem = (HIMAGELIST)HEADER_CreateDragImage(hwnd, infoPtr->iMoveItem); + if (hDragItem != NULL) + { + HEADER_ITEM *lpItem = &infoPtr->items[infoPtr->iMoveItem]; + TRACE("Starting item drag\n"); + ImageList_BeginDrag(hDragItem, 0, pt.x - lpItem->rect.left, 0); + ImageList_DragShowNolock(TRUE); + ImageList_Destroy(hDragItem); + infoPtr->bDragging = TRUE; + } + } + } + + if (infoPtr->bDragging) + { + POINT drag; + drag.x = pt.x; + drag.y = 0; + ClientToScreen(hwnd, &drag); + ImageList_DragMove(drag.x, drag.y); + HEADER_SetHotDivider(hwnd, TRUE, lParam); + } + + if (infoPtr->bPressed && !infoPtr->bDragging) { BOOL oldState = infoPtr->items[infoPtr->iMoveItem].bDown; if ((nItem == infoPtr->iMoveItem) && (flags == HHT_ONHEADER)) infoPtr->items[infoPtr->iMoveItem].bDown = TRUE; @@ -1581,15 +1867,27 @@ HEADER_MouseMove (HWND hwnd, WPARAM wParam, LPARAM lParam) } else if (infoPtr->bTracking) { if (dwStyle & HDS_FULLDRAG) { - if (HEADER_SendHeaderNotify (hwnd, HDN_TRACKA, infoPtr->iMoveItem, HDI_WIDTH)) + if (!HEADER_SendHeaderNotifyT (hwnd, HDN_ITEMCHANGINGW, infoPtr->iMoveItem, HDI_WIDTH, NULL)) { - nWidth = pt.x - infoPtr->items[infoPtr->iMoveItem].rect.left + infoPtr->xTrackOffset; - if (nWidth < 0) - nWidth = 0; - infoPtr->items[infoPtr->iMoveItem].cxy = nWidth; - HEADER_SendHeaderNotify(hwnd, HDN_ITEMCHANGEDA, infoPtr->iMoveItem, HDI_WIDTH); + HEADER_ITEM *lpItem = &infoPtr->items[infoPtr->iMoveItem]; + INT nOldWidth = lpItem->rect.right - lpItem->rect.left; + RECT rcClient; + RECT rcScroll; + + nWidth = pt.x - lpItem->rect.left + infoPtr->xTrackOffset; + if (nWidth < 0) nWidth = 0; + infoPtr->items[infoPtr->iMoveItem].cxy = nWidth; + HEADER_SetItemBounds(hwnd); + + GetClientRect(hwnd, &rcClient); + rcScroll = rcClient; + rcScroll.left = lpItem->rect.left + nOldWidth; + ScrollWindowEx(hwnd, nWidth - nOldWidth, 0, &rcScroll, &rcClient, NULL, NULL, 0); + InvalidateRect(hwnd, &lpItem->rect, FALSE); + UpdateWindow(hwnd); + + HEADER_SendHeaderNotifyT(hwnd, HDN_ITEMCHANGEDW, infoPtr->iMoveItem, HDI_WIDTH, NULL); } - HEADER_SetItemBounds (hwnd); } else { hdc = GetDC (hwnd); @@ -1601,7 +1899,7 @@ HEADER_MouseMove (HWND hwnd, WPARAM wParam, LPARAM lParam) infoPtr->xOldTrack - infoPtr->items[infoPtr->iMoveItem].rect.left; HEADER_DrawTrackLine (hwnd, hdc, infoPtr->xOldTrack); ReleaseDC (hwnd, hdc); - HEADER_SendHeaderNotify (hwnd, HDN_TRACKA, infoPtr->iMoveItem, HDI_WIDTH); + HEADER_SendHeaderNotifyT (hwnd, HDN_TRACKW, infoPtr->iMoveItem, HDI_WIDTH, NULL); } TRACE("Tracking item %d!\n", infoPtr->iMoveItem); @@ -1610,7 +1908,7 @@ HEADER_MouseMove (HWND hwnd, WPARAM wParam, LPARAM lParam) if (hotTrackEnabled) { TRACKMOUSEEVENT tme; - if (oldHotItem != infoPtr->iHotItem) { + if (oldHotItem != infoPtr->iHotItem && !infoPtr->bDragging) { hdc = GetDC (hwnd); if (oldHotItem != -1) HEADER_RefreshItem (hwnd, hdc, oldHotItem); if (infoPtr->iHotItem != -1) HEADER_RefreshItem (hwnd, hdc, infoPtr->iHotItem); @@ -1784,7 +2082,8 @@ HEADER_WindowProc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) /* case HDM_SETFILTERCHANGETIMEOUT: */ -/* case HDM_SETHOTDIVIDER: */ + case HDM_SETHOTDIVIDER: + return HEADER_SetHotDivider(hwnd, wParam, lParam); case HDM_SETIMAGELIST: return HEADER_SetImageList (hwnd, (HIMAGELIST)lParam); diff --git a/reactos/dll/win32/comctl32/hotkey.c b/reactos/dll/win32/comctl32/hotkey.c index 635916483f1..e55d0753344 100644 --- a/reactos/dll/win32/comctl32/hotkey.c +++ b/reactos/dll/win32/comctl32/hotkey.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * This code was audited for completeness against the documented features * of Comctl32.dll version 6.0 on Sep. 21, 2004, by Robert Shearman. diff --git a/reactos/dll/win32/comctl32/imagelist.c b/reactos/dll/win32/comctl32/imagelist.c index 551f91a04f4..cbd8f3430a3 100644 --- a/reactos/dll/win32/comctl32/imagelist.c +++ b/reactos/dll/win32/comctl32/imagelist.c @@ -19,7 +19,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTE * @@ -1833,6 +1833,7 @@ static HBITMAP _read_bitmap(LPSTREAM pstm,int ilcFlag,int cx,int cy) { width = bmih.biWidth; height = bmih.biHeight; bmihc = (LPBITMAPINFOHEADER)LocalAlloc(LMEM_ZEROINIT,sizeof(bmih)+palspace); + if (!bmihc) goto ret1; memcpy(bmihc,&bmih,sizeof(bmih)); longsperline = ((width*bitsperpixel+31)&~0x1f)>>5; bmihc->biSizeImage = (longsperline*height)<<2; @@ -1962,8 +1963,10 @@ HIMAGELIST WINAPI ImageList_Read (LPSTREAM pstm) #endif hbmColor = _read_bitmap(pstm,ilHead.flags & ~ILC_MASK,ilHead.cx,ilHead.cy); - if (!hbmColor) + if (!hbmColor) { + WARN("failed to read bitmap from stream\n"); return NULL; + } if (ilHead.flags & ILC_MASK) { hbmMask = _read_bitmap(pstm,0,ilHead.cx,ilHead.cy); if (!hbmMask) { diff --git a/reactos/dll/win32/comctl32/imagelist.h b/reactos/dll/win32/comctl32/imagelist.h index 5c5ab6998d3..a3c0b1ee94a 100644 --- a/reactos/dll/win32/comctl32/imagelist.h +++ b/reactos/dll/win32/comctl32/imagelist.h @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef __WINE_IMAGELIST_H diff --git a/reactos/dll/win32/comctl32/ipaddress.c b/reactos/dll/win32/comctl32/ipaddress.c index aa59cb288cc..db7a49de574 100644 --- a/reactos/dll/win32/comctl32/ipaddress.c +++ b/reactos/dll/win32/comctl32/ipaddress.c @@ -19,7 +19,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTE * diff --git a/reactos/dll/win32/comctl32/listview.c b/reactos/dll/win32/comctl32/listview.c index f1f01234e02..60c308325a7 100644 --- a/reactos/dll/win32/comctl32/listview.c +++ b/reactos/dll/win32/comctl32/listview.c @@ -19,7 +19,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * @@ -172,7 +172,6 @@ #include #include #include -#include #include #include #include @@ -310,6 +309,7 @@ typedef struct tagLISTVIEW_INFO WCHAR szSearchParam[ MAX_PATH ]; BOOL bIsDrawing; INT nMeasureItemHeight; + INT xTrackLine; /* The x coefficient of the track line or -1 if none */ } LISTVIEW_INFO; /* @@ -397,7 +397,7 @@ typedef struct tagLISTVIEW_INFO TRACE("hwndSelf=%p, ntmH=%d, icSz.cx=%ld, icSz.cy=%ld, icSp.cx=%ld, icSp.cy=%ld, notifyFmt=%d\n", \ iP->hwndSelf, iP->ntmHeight, iP->iconSize.cx, iP->iconSize.cy, \ iP->iconSpacing.cx, iP->iconSpacing.cy, iP->notifyFormat); \ - TRACE("hwndSelf=%p, rcList=%s\n", iP->hwndSelf, debugrect(&iP->rcList)); \ + TRACE("hwndSelf=%p, rcList=%s\n", iP->hwndSelf, wine_dbgstr_rect(&iP->rcList)); \ } while(0) static const WCHAR themeClass[] = {'L','i','s','t','V','i','e','w',0}; @@ -565,40 +565,15 @@ static char* debug_getbuf(void) static inline const char* debugrange(const RANGE *lprng) { - if (lprng) - { - char* buf = debug_getbuf(); - snprintf(buf, DEBUG_BUFFER_SIZE, "[%d, %d)", lprng->lower, lprng->upper); - return buf; - } else return "(null)"; -} - -static inline const char* debugpoint(const POINT *lppt) -{ - if (lppt) - { - char* buf = debug_getbuf(); - snprintf(buf, DEBUG_BUFFER_SIZE, "(%ld, %ld)", lppt->x, lppt->y); - return buf; - } else return "(null)"; -} - -static inline const char* debugrect(const RECT *rect) -{ - if (rect) - { - char* buf = debug_getbuf(); - snprintf(buf, DEBUG_BUFFER_SIZE, "[(%ld, %ld);(%ld, %ld)]", - rect->left, rect->top, rect->right, rect->bottom); - return buf; - } else return "(null)"; + if (!lprng) return "(null)"; + return wine_dbg_sprintf("[%d, %d)", lprng->lower, lprng->upper); } static const char* debugscrollinfo(const SCROLLINFO *pScrollInfo) { char* buf = debug_getbuf(), *text = buf; int len, size = DEBUG_BUFFER_SIZE; - + if (pScrollInfo == NULL) return "(null)"; len = snprintf(buf, size, "{cbSize=%d, ", pScrollInfo->cbSize); if (len == -1) goto end; buf += len; size -= len; @@ -628,15 +603,11 @@ undo: static const char* debugnmlistview(const NMLISTVIEW *plvnm) { - if (plvnm) - { - char* buf = debug_getbuf(); - snprintf(buf, DEBUG_BUFFER_SIZE, "iItem=%d, iSubItem=%d, uNewState=0x%x," + if (!plvnm) return "(null)"; + return wine_dbg_sprintf("iItem=%d, iSubItem=%d, uNewState=0x%x," " uOldState=0x%x, uChanged=0x%x, ptAction=%s, lParam=%ld\n", plvnm->iItem, plvnm->iSubItem, plvnm->uNewState, plvnm->uOldState, - plvnm->uChanged, debugpoint(&plvnm->ptAction), plvnm->lParam); - return buf; - } else return "(null)"; + plvnm->uChanged, wine_dbgstr_point(&plvnm->ptAction), plvnm->lParam); } static const char* debuglvitem_t(const LVITEMW *lpLVItem, BOOL isW) @@ -717,13 +688,10 @@ undo: static const char* debuglvhittestinfo(const LVHITTESTINFO *lpht) { - if (lpht) - { - char* buf = debug_getbuf(); - snprintf(buf, DEBUG_BUFFER_SIZE, "{pt=%s, flags=0x%x, iItem=%d, iSubItem=%d}", - debugpoint(&lpht->pt), lpht->flags, lpht->iItem, lpht->iSubItem); - return buf; - } else return "(null)"; + if (!lpht) return "(null)"; + + return wine_dbg_sprintf("{pt=%s, flags=0x%x, iItem=%d, iSubItem=%d}", + wine_dbgstr_point(&lpht->pt), lpht->flags, lpht->iItem, lpht->iSubItem); } /* Return the corresponding text for a given scroll value */ @@ -1235,7 +1203,7 @@ static BOOL iterator_frameditems(ITERATOR* i, LISTVIEW_INFO* infoPtr, const RECT LISTVIEW_GetOrigin(infoPtr, &Origin); - TRACE("(lprc=%s)\n", debugrect(lprc)); + TRACE("(lprc=%s)\n", wine_dbgstr_rect(lprc)); OffsetRect(&frame, -Origin.x, -Origin.y); if (uView == LVS_ICON || uView == LVS_SMALLICON) @@ -1406,7 +1374,7 @@ static inline BOOL is_redrawing(LISTVIEW_INFO *infoPtr) static inline void LISTVIEW_InvalidateRect(LISTVIEW_INFO *infoPtr, const RECT* rect) { if(!is_redrawing(infoPtr)) return; - TRACE(" invalidating rect=%s\n", debugrect(rect)); + TRACE(" invalidating rect=%s\n", wine_dbgstr_rect(rect)); InvalidateRect(infoPtr->hwndSelf, rect, TRUE); } @@ -1666,6 +1634,7 @@ static void LISTVIEW_UpdateScroll(LISTVIEW_INFO *infoPtr) { UINT uView = infoPtr->dwStyle & LVS_TYPEMASK; SCROLLINFO horzInfo, vertInfo; + INT dx, dy; if ((infoPtr->dwStyle & LVS_NOSCROLL) || !is_redrawing(infoPtr)) return; @@ -1698,7 +1667,8 @@ static void LISTVIEW_UpdateScroll(LISTVIEW_INFO *infoPtr) horzInfo.fMask = SIF_RANGE | SIF_PAGE; horzInfo.nMax = max(horzInfo.nMax - 1, 0); - SetScrollInfo(infoPtr->hwndSelf, SB_HORZ, &horzInfo, TRUE); + dx = GetScrollPos(infoPtr->hwndSelf, SB_HORZ); + dx -= SetScrollInfo(infoPtr->hwndSelf, SB_HORZ, &horzInfo, TRUE); TRACE("horzInfo=%s\n", debugscrollinfo(&horzInfo)); /* Setting the horizontal scroll can change the listview size @@ -1729,9 +1699,19 @@ static void LISTVIEW_UpdateScroll(LISTVIEW_INFO *infoPtr) vertInfo.fMask = SIF_RANGE | SIF_PAGE; vertInfo.nMax = max(vertInfo.nMax - 1, 0); - SetScrollInfo(infoPtr->hwndSelf, SB_VERT, &vertInfo, TRUE); + dy = GetScrollPos(infoPtr->hwndSelf, SB_VERT); + dy -= SetScrollInfo(infoPtr->hwndSelf, SB_VERT, &vertInfo, TRUE); TRACE("vertInfo=%s\n", debugscrollinfo(&vertInfo)); + /* Change of the range may have changed the scroll pos. If so move the content */ + if (dx != 0 || dy != 0) + { + RECT listRect; + listRect = infoPtr->rcList; + ScrollWindowEx(infoPtr->hwndSelf, dx, dy, &listRect, &listRect, 0, 0, + SW_ERASE | SW_INVALIDATE); + } + /* Update the Header Control */ if (uView == LVS_REPORT) { @@ -1983,7 +1963,7 @@ static void LISTVIEW_GetItemMetrics(LISTVIEW_INFO *infoPtr, const LVITEMW *lpLVI State.bottom += infoPtr->iconStateSize.cy; } if (lprcState) *lprcState = State; - TRACE(" - state=%s\n", debugrect(&State)); + TRACE(" - state=%s\n", wine_dbgstr_rect(&State)); } else State.right = 0; @@ -2018,7 +1998,7 @@ static void LISTVIEW_GetItemMetrics(LISTVIEW_INFO *infoPtr, const LVITEMW *lpLVI Icon.bottom = Icon.top + infoPtr->nItemHeight; } if(lprcIcon) *lprcIcon = Icon; - TRACE(" - icon=%s\n", debugrect(&Icon)); + TRACE(" - icon=%s\n", wine_dbgstr_rect(&Icon)); } else Icon.right = 0; @@ -2083,8 +2063,7 @@ calc_label: infoPtr->iconSize.cy + ICON_BOTTOM_PADDING; Label.right = Label.left + labelSize.cx; Label.bottom = Label.top + infoPtr->nItemHeight; - if (!oversizedBox && labelSize.cy > infoPtr->ntmHeight && - infoPtr->ntmHeight) + if (!oversizedBox && labelSize.cy > infoPtr->ntmHeight) { labelSize.cy = min(Box.bottom - Label.top, labelSize.cy); labelSize.cy /= infoPtr->ntmHeight; @@ -2102,7 +2081,7 @@ calc_label: } if (lprcLabel) *lprcLabel = Label; - TRACE(" - label=%s\n", debugrect(&Label)); + TRACE(" - label=%s\n", wine_dbgstr_rect(&Label)); } /* Fix the Box if necessary */ @@ -2111,7 +2090,7 @@ calc_label: if (oversizedBox) UnionRect(lprcBox, &Box, &Label); else *lprcBox = Box; } - TRACE(" - box=%s\n", debugrect(&Box)); + TRACE(" - box=%s\n", wine_dbgstr_rect(&Box)); } /*** @@ -2369,7 +2348,7 @@ static BOOL LISTVIEW_GetViewRect(LISTVIEW_INFO *infoPtr, LPRECT lprcView) LISTVIEW_GetAreaRect(infoPtr, lprcView); OffsetRect(lprcView, ptOrigin.x, ptOrigin.y); - TRACE("lprcView=%s\n", debugrect(lprcView)); + TRACE("lprcView=%s\n", wine_dbgstr_rect(lprcView)); return TRUE; } @@ -3079,6 +3058,7 @@ static void LISTVIEW_SetGroupSelection(LISTVIEW_INFO *infoPtr, INT nItem) RANGES selection; LVITEMW item; ITERATOR i; + BOOL bOldChange; if (!(selection = ranges_create(100))) return; @@ -3120,12 +3100,19 @@ static void LISTVIEW_SetGroupSelection(LISTVIEW_INFO *infoPtr, INT nItem) iterator_destroy(&i); } + bOldChange = infoPtr->bDoChangeNotify; + infoPtr->bDoChangeNotify = FALSE; + LISTVIEW_DeselectAllSkipItems(infoPtr, selection); + + iterator_rangesitems(&i, selection); while(iterator_next(&i)) LISTVIEW_SetItemState(infoPtr, i.nItem, &item); /* this will also destroy the selection */ iterator_destroy(&i); + + infoPtr->bDoChangeNotify = bOldChange; LISTVIEW_SetItemFocus(infoPtr, nItem); } @@ -3680,7 +3667,7 @@ static inline BOOL LISTVIEW_FillBkgnd(LISTVIEW_INFO *infoPtr, HDC hdc, const REC { if (!infoPtr->hBkBrush) return FALSE; - TRACE("(hdc=%p, lprcBox=%s, hBkBrush=%p)\n", hdc, debugrect(lprcBox), infoPtr->hBkBrush); + TRACE("(hdc=%p, lprcBox=%s, hBkBrush=%p)\n", hdc, wine_dbgstr_rect(lprcBox), infoPtr->hBkBrush); return FillRect(hdc, lprcBox, infoPtr->hBkBrush); } @@ -3711,8 +3698,9 @@ static BOOL LISTVIEW_DrawItem(LISTVIEW_INFO *infoPtr, HDC hdc, INT nItem, INT nS NMLVCUSTOMDRAW nmlvcd; HIMAGELIST himl; LVITEMW lvItem; + HFONT hOldFont; - TRACE("(hdc=%p, nItem=%d, nSubItem=%d, pos=%s)\n", hdc, nItem, nSubItem, debugpoint(&pos)); + TRACE("(hdc=%p, nItem=%d, nSubItem=%d, pos=%s)\n", hdc, nItem, nSubItem, wine_dbgstr_point(&pos)); /* get information needed for drawing the item */ lvItem.mask = LVIF_TEXT | LVIF_IMAGE; @@ -3733,7 +3721,7 @@ static BOOL LISTVIEW_DrawItem(LISTVIEW_INFO *infoPtr, HDC hdc, INT nItem, INT nS /* now check if we need to update the focus rectangle */ lprcFocus = infoPtr->bFocus && (lvItem.state & LVIS_FOCUSED) ? &infoPtr->rcFocus : 0; - + if (!lprcFocus) lvItem.state &= ~LVIS_FOCUSED; LISTVIEW_GetItemMetrics(infoPtr, &lvItem, &rcBox, &rcState, &rcIcon, &rcLabel); OffsetRect(&rcBox, pos.x, pos.y); @@ -3741,11 +3729,13 @@ static BOOL LISTVIEW_DrawItem(LISTVIEW_INFO *infoPtr, HDC hdc, INT nItem, INT nS OffsetRect(&rcIcon, pos.x, pos.y); OffsetRect(&rcLabel, pos.x, pos.y); TRACE(" rcBox=%s, rcState=%s, rcIcon=%s. rcLabel=%s\n", - debugrect(&rcBox), debugrect(&rcState), debugrect(&rcIcon), debugrect(&rcLabel)); + wine_dbgstr_rect(&rcBox), wine_dbgstr_rect(&rcState), + wine_dbgstr_rect(&rcIcon), wine_dbgstr_rect(&rcLabel)); /* fill in the custom draw structure */ customdraw_fill(&nmlvcd, infoPtr, hdc, &rcBox, &lvItem); + hOldFont = GetCurrentObject(hdc, OBJ_FONT); if (nSubItem > 0) cdmode = infoPtr->cditemmode; if (cdmode & CDRF_NOTIFYITEMDRAW) cdsubitemmode = notify_customdraw(infoPtr, CDDS_PREPAINT, &nmlvcd); @@ -3823,6 +3813,8 @@ static BOOL LISTVIEW_DrawItem(LISTVIEW_INFO *infoPtr, HDC hdc, INT nItem, INT nS postpaint: if (cdsubitemmode & CDRF_NOTIFYPOSTPAINT) notify_postpaint(infoPtr, &nmlvcd); + if (cdsubitemmode & CDRF_NEWFONT) + SelectObject(hdc, hOldFont); return TRUE; } @@ -3878,7 +3870,7 @@ static void LISTVIEW_RefreshOwnerDraw(LISTVIEW_INFO *infoPtr, ITERATOR *i, HDC h dis.rcItem.bottom = dis.rcItem.top + infoPtr->nItemHeight; dis.itemData = item.lParam; - TRACE("item=%s, rcItem=%s\n", debuglvitem_t(&item, TRUE), debugrect(&dis.rcItem)); + TRACE("item=%s, rcItem=%s\n", debuglvitem_t(&item, TRUE), wine_dbgstr_rect(&dis.rcItem)); /* * Even if we do not send the CDRF_NOTIFYITEMDRAW we need to fill the nmlvcd @@ -4438,6 +4430,7 @@ static BOOL LISTVIEW_DeleteColumn(LISTVIEW_INFO *infoPtr, INT nColumn) } /* update the other column info */ + LISTVIEW_UpdateItemSize(infoPtr); if(DPA_GetPtrCount(infoPtr->hdpaColumns) == 0) LISTVIEW_InvalidateList(infoPtr); else @@ -4500,10 +4493,10 @@ static void LISTVIEW_ScrollOnInsert(LISTVIEW_INFO *infoPtr, INT nItem, INT dir) rcScroll.right = rcScroll.left + infoPtr->nItemWidth; rcScroll.bottom = nPerCol * infoPtr->nItemHeight; OffsetRect(&rcScroll, Origin.x, Origin.y); - TRACE("rcScroll=%s, dx=%d\n", debugrect(&rcScroll), dir * infoPtr->nItemHeight); + TRACE("rcScroll=%s, dx=%d\n", wine_dbgstr_rect(&rcScroll), dir * infoPtr->nItemHeight); if (IntersectRect(&rcScroll, &rcScroll, &infoPtr->rcList)) { - TRACE("Scrolling rcScroll=%s, rcList=%s\n", debugrect(&rcScroll), debugrect(&infoPtr->rcList)); + TRACE("Scrolling rcScroll=%s, rcList=%s\n", wine_dbgstr_rect(&rcScroll), wine_dbgstr_rect(&infoPtr->rcList)); ScrollWindowEx(infoPtr->hwndSelf, 0, dir * infoPtr->nItemHeight, &rcScroll, &rcScroll, 0, 0, SW_ERASE | SW_INVALIDATE); } @@ -5461,7 +5454,7 @@ static BOOL LISTVIEW_GetItemPosition(LISTVIEW_INFO *infoPtr, INT nItem, LPPOINT lpptPosition->x += Origin.x; lpptPosition->y += Origin.y; - TRACE (" lpptPosition=%s\n", debugpoint(lpptPosition)); + TRACE (" lpptPosition=%s\n", wine_dbgstr_point(lpptPosition)); return TRUE; } @@ -5597,7 +5590,7 @@ static BOOL LISTVIEW_GetItemRect(LISTVIEW_INFO *infoPtr, INT nItem, LPRECT lprc) OffsetRect(lprc, Position.x + Origin.x, Position.y + Origin.y); - TRACE(" rect=%s\n", debugrect(lprc)); + TRACE(" rect=%s\n", wine_dbgstr_rect(lprc)); return TRUE; } @@ -5848,7 +5841,7 @@ static INT LISTVIEW_GetNextItem(LISTVIEW_INFO *infoPtr, INT nItem, UINT uFlags) } lvFindInfo.flags = LVFI_NEARESTXY; lvFindInfo.vkDirection = VK_UP; - ListView_GetItemPosition(infoPtr->hwndSelf, nItem, &lvFindInfo.pt); + SendMessageW( infoPtr->hwndSelf, LVM_GETITEMPOSITION, nItem, (LPARAM)&lvFindInfo.pt ); while ((nItem = ListView_FindItemW(infoPtr->hwndSelf, nItem, &lvFindInfo)) != -1) { if ((ListView_GetItemState(infoPtr->hwndSelf, nItem, uMask) & uMask) == uMask) @@ -5883,7 +5876,7 @@ static INT LISTVIEW_GetNextItem(LISTVIEW_INFO *infoPtr, INT nItem, UINT uFlags) } lvFindInfo.flags = LVFI_NEARESTXY; lvFindInfo.vkDirection = VK_DOWN; - ListView_GetItemPosition(infoPtr->hwndSelf, nItem, &lvFindInfo.pt); + SendMessageW( infoPtr->hwndSelf, LVM_GETITEMPOSITION, nItem, (LPARAM)&lvFindInfo.pt ); while ((nItem = ListView_FindItemW(infoPtr->hwndSelf, nItem, &lvFindInfo)) != -1) { if ((LISTVIEW_GetItemState(infoPtr, nItem, uMask) & uMask) == uMask) @@ -5919,7 +5912,7 @@ static INT LISTVIEW_GetNextItem(LISTVIEW_INFO *infoPtr, INT nItem, UINT uFlags) } lvFindInfo.flags = LVFI_NEARESTXY; lvFindInfo.vkDirection = VK_LEFT; - ListView_GetItemPosition(infoPtr->hwndSelf, nItem, &lvFindInfo.pt); + SendMessageW( infoPtr->hwndSelf, LVM_GETITEMPOSITION, nItem, (LPARAM)&lvFindInfo.pt ); while ((nItem = ListView_FindItemW(infoPtr->hwndSelf, nItem, &lvFindInfo)) != -1) { if ((ListView_GetItemState(infoPtr->hwndSelf, nItem, uMask) & uMask) == uMask) @@ -5955,7 +5948,7 @@ static INT LISTVIEW_GetNextItem(LISTVIEW_INFO *infoPtr, INT nItem, UINT uFlags) } lvFindInfo.flags = LVFI_NEARESTXY; lvFindInfo.vkDirection = VK_RIGHT; - ListView_GetItemPosition(infoPtr->hwndSelf, nItem, &lvFindInfo.pt); + SendMessageW( infoPtr->hwndSelf, LVM_GETITEMPOSITION, nItem, (LPARAM)&lvFindInfo.pt ); while ((nItem = ListView_FindItemW(infoPtr->hwndSelf, nItem, &lvFindInfo)) != -1) { if ((LISTVIEW_GetItemState(infoPtr, nItem, uMask) & uMask) == uMask) @@ -6017,7 +6010,7 @@ static void LISTVIEW_GetOrigin(LISTVIEW_INFO *infoPtr, LPPOINT lpptOrigin) lpptOrigin->x -= nHorzPos; lpptOrigin->y -= nVertPos; - TRACE(" origin=%s\n", debugpoint(lpptOrigin)); + TRACE(" origin=%s\n", wine_dbgstr_point(lpptOrigin)); } /*** @@ -6083,7 +6076,7 @@ static INT LISTVIEW_HitTest(LISTVIEW_INFO *infoPtr, LPLVHITTESTINFO lpht, BOOL s ITERATOR i; INT iItem; - TRACE("(pt=%s, subitem=%d, select=%d)\n", debugpoint(&lpht->pt), subitem, select); + TRACE("(pt=%s, subitem=%d, select=%d)\n", wine_dbgstr_point(&lpht->pt), subitem, select); lpht->flags = 0; lpht->iItem = -1; @@ -6140,7 +6133,7 @@ static INT LISTVIEW_HitTest(LISTVIEW_INFO *infoPtr, LPLVHITTESTINFO lpht, BOOL s rcBounds = rcBox; else UnionRect(&rcBounds, &rcIcon, &rcLabel); - TRACE("rcBounds=%s\n", debugrect(&rcBounds)); + TRACE("rcBounds=%s\n", wine_dbgstr_rect(&rcBounds)); if (!PtInRect(&rcBounds, opt)) return -1; if (PtInRect(&rcIcon, opt)) @@ -6240,7 +6233,7 @@ static INT LISTVIEW_InsertItemT(LISTVIEW_INFO *infoPtr, const LVITEMW *lpLVItem, if (infoPtr->dwStyle & LVS_OWNERDATA) return infoPtr->nItemCount++; /* make sure it's an item, and not a subitem; cannot insert a subitem */ - if (!lpLVItem || lpLVItem->iItem < 0 || lpLVItem->iSubItem) return -1; + if (!lpLVItem || lpLVItem->iSubItem) return -1; if (!is_assignable_item(lpLVItem, infoPtr->dwStyle)) return -1; @@ -6253,6 +6246,8 @@ static INT LISTVIEW_InsertItemT(LISTVIEW_INFO *infoPtr, const LVITEMW *lpLVItem, is_sorted = (infoPtr->dwStyle & (LVS_SORTASCENDING | LVS_SORTDESCENDING)) && !(infoPtr->dwStyle & LVS_OWNERDRAWFIXED) && (LPSTR_TEXTCALLBACKW != lpLVItem->pszText); + if (lpLVItem->iItem < 0 && !is_sorted) return -1; + nItem = is_sorted ? infoPtr->nItemCount : min(lpLVItem->iItem, infoPtr->nItemCount); TRACE(" inserting at %d, sorted=%d, count=%d, iItem=%d\n", nItem, is_sorted, infoPtr->nItemCount, lpLVItem->iItem); nItem = DPA_InsertPtr( infoPtr->hdpaItems, nItem, hdpaSubItems ); @@ -6493,7 +6488,7 @@ static void column_fill_hditem(LISTVIEW_INFO *infoPtr, HDITEMW *lphdi, INT nColu /* retrieve the layout of the header */ GetClientRect(infoPtr->hwndSelf, &rcHeader); - TRACE("start cxy=%d rcHeader=%s\n", lphdi->cxy, debugrect(&rcHeader)); + TRACE("start cxy=%d rcHeader=%s\n", lphdi->cxy, wine_dbgstr_rect(&rcHeader)); lphdi->cxy = (rcHeader.right - rcHeader.left) - lphdi->cxy; } @@ -6551,6 +6546,16 @@ static INT LISTVIEW_InsertColumnT(LISTVIEW_INFO *infoPtr, INT nColumn, ZeroMemory(&hdi, sizeof(HDITEMW)); column_fill_hditem(infoPtr, &hdi, nColumn, lpColumn, isW); + + /* + * when the iSubItem is available Windows copies it to the header lParam. It seems + * to happen only in LVM_INSERTCOLUMN - not in LVM_SETCOLUMN + */ + if (lpColumn->mask & LVCF_SUBITEM) + { + hdi.mask |= HDI_LPARAM; + hdi.lParam = lpColumn->iSubItem; + } /* insert item in header control */ nNewColumn = SendMessageW(infoPtr->hwndHeader, @@ -6767,7 +6772,7 @@ static BOOL LISTVIEW_SetColumnWidth(LISTVIEW_INFO *infoPtr, INT nColumn, INT cx) hdi.mask = HDI_TEXT; hdi.cchTextMax = DISP_TEXT_SIZE; hdi.pszText = szDispText; - if (Header_GetItemW(infoPtr->hwndHeader, nColumn, (LPARAM)&hdi)) + if (Header_GetItemW(infoPtr->hwndHeader, nColumn, &hdi)) { HDC hdc = GetDC(infoPtr->hwndSelf); HFONT old_font = SelectObject(hdc, (HFONT)SendMessageW(infoPtr->hwndHeader, WM_GETFONT, 0, 0)); @@ -6789,7 +6794,7 @@ static BOOL LISTVIEW_SetColumnWidth(LISTVIEW_INFO *infoPtr, INT nColumn, INT cx) hdi.mask = HDI_WIDTH; hdi.cxy = cx; TRACE("hdi.cxy=%d\n", hdi.cxy); - return Header_SetItemW(infoPtr->hwndHeader, nColumn, (LPARAM)&hdi); + return Header_SetItemW(infoPtr->hwndHeader, nColumn, &hdi); } /*** @@ -6869,6 +6874,16 @@ static DWORD LISTVIEW_SetExtendedListViewStyle(LISTVIEW_INFO *infoPtr, DWORD dwM himl = LISTVIEW_CreateCheckBoxIL(infoPtr); LISTVIEW_SetImageList(infoPtr, LVSIL_STATE, himl); } + + if((infoPtr->dwLvExStyle ^ dwOldStyle) & LVS_EX_HEADERDRAGDROP) + { + DWORD dwStyle = GetWindowLongW(infoPtr->hwndHeader, GWL_STYLE); + if (infoPtr->dwLvExStyle & LVS_EX_HEADERDRAGDROP) + dwStyle |= HDS_DRAGDROP; + else + dwStyle &= ~HDS_DRAGDROP; + SetWindowLongW(infoPtr->hwndHeader, GWL_STYLE, dwStyle); + } return dwOldStyle; } @@ -6988,7 +7003,7 @@ static DWORD LISTVIEW_SetIconSpacing(LISTVIEW_INFO *infoPtr, INT cx, INT cy) return oldspacing; } -static inline void set_icon_size(SIZE *size, HIMAGELIST himl, BOOL _small) +static inline void set_icon_size(SIZE *size, HIMAGELIST himl, BOOL small) { INT cx, cy; @@ -6999,8 +7014,8 @@ static inline void set_icon_size(SIZE *size, HIMAGELIST himl, BOOL _small) } else { - size->cx = GetSystemMetrics(_small ? SM_CXSMICON : SM_CXICON); - size->cy = GetSystemMetrics(_small ? SM_CYSMICON : SM_CYICON); + size->cx = GetSystemMetrics(small ? SM_CXSMICON : SM_CXICON); + size->cy = GetSystemMetrics(small ? SM_CYSMICON : SM_CYICON); } } @@ -7177,7 +7192,7 @@ static BOOL LISTVIEW_SetItemPosition(LISTVIEW_INFO *infoPtr, INT nItem, POINT pt UINT uView = infoPtr->dwStyle & LVS_TYPEMASK; POINT Origin; - TRACE("(nItem=%d, &pt=%s\n", nItem, debugpoint(&pt)); + TRACE("(nItem=%d, &pt=%s\n", nItem, wine_dbgstr_point(&pt)); if (nItem < 0 || nItem >= infoPtr->nItemCount || !(uView == LVS_ICON || uView == LVS_SMALLICON)) return FALSE; @@ -7417,11 +7432,9 @@ static INT WINAPI LISTVIEW_CallBackCompare(LPVOID first, LPVOID second, LPARAM l LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO *)lParam; ITEM_INFO* lv_first = (ITEM_INFO*) DPA_GetPtr( (HDPA)first, 0 ); ITEM_INFO* lv_second = (ITEM_INFO*) DPA_GetPtr( (HDPA)second, 0 ); - PFNLVCOMPARE CompareFunction = infoPtr->pfnCompare; /* Forward the call to the client defined callback */ - - return (CompareFunction)( lv_first->lParam , lv_second->lParam, infoPtr->lParamSort ); + return (infoPtr->pfnCompare)( lv_first->lParam , lv_second->lParam, infoPtr->lParamSort ); } /*** @@ -7550,6 +7563,40 @@ static BOOL LISTVIEW_Update(LISTVIEW_INFO *infoPtr, INT nItem) return TRUE; } +/*** + * DESCRIPTION: + * Draw the track line at the place defined in the infoPtr structure. + * The line is drawn with a XOR pen so drawing the line for the second time + * in the same place erases the line. + * + * PARAMETER(S): + * [I] infoPtr : valid pointer to the listview structure + * + * RETURN: + * SUCCESS : TRUE + * FAILURE : FALSE + */ +static BOOL LISTVIEW_DrawTrackLine(LISTVIEW_INFO *infoPtr) +{ + HPEN hOldPen; + HDC hdc; + INT oldROP; + + if (infoPtr->xTrackLine == -1) + return FALSE; + + if (!(hdc = GetDC(infoPtr->hwndSelf))) + return FALSE; + hOldPen = SelectObject(hdc, GetStockObject(BLACK_PEN)); + oldROP = SetROP2(hdc, R2_XORPEN); + MoveToEx(hdc, infoPtr->xTrackLine, infoPtr->rcList.top, NULL); + LineTo(hdc, infoPtr->xTrackLine, infoPtr->rcList.bottom); + SetROP2(hdc, oldROP); + SelectObject(hdc, hOldPen); + ReleaseDC(infoPtr->hwndSelf, hdc); + return TRUE; +} + /*** * DESCRIPTION: @@ -7602,6 +7649,7 @@ static LRESULT LISTVIEW_Create(HWND hwnd, const CREATESTRUCTW *lpcs) infoPtr->nEditLabelItem = -1; infoPtr->dwHoverTime = -1; /* default system hover time */ infoPtr->nMeasureItemHeight = 0; + infoPtr->xTrackLine = -1; /* no track line */ /* get default font (icon title) */ SystemParametersInfoW(SPI_GETICONTITLELOGFONT, 0, &logFont, 0); @@ -7611,7 +7659,7 @@ static LRESULT LISTVIEW_Create(HWND hwnd, const CREATESTRUCTW *lpcs) /* create header */ infoPtr->hwndHeader = CreateWindowW(WC_HEADERW, NULL, - WS_CHILD | HDS_HORZ | (DWORD)((LVS_NOSORTHEADER & lpcs->style)?0:HDS_BUTTONS), + WS_CHILD | HDS_HORZ | HDS_FULLDRAG | (DWORD)((LVS_NOSORTHEADER & lpcs->style)?0:HDS_BUTTONS), 0, 0, 0, 0, hwnd, NULL, lpcs->hInstance, NULL); if (!infoPtr->hwndHeader) goto fail; @@ -8205,7 +8253,7 @@ static LRESULT LISTVIEW_LButtonDown(LISTVIEW_INFO *infoPtr, WORD wKey, INT x, IN lvHitTestInfo.pt.y = y; nItem = LISTVIEW_HitTest(infoPtr, &lvHitTestInfo, TRUE, TRUE); - TRACE("at %s, nItem=%d\n", debugpoint(&pt), nItem); + TRACE("at %s, nItem=%d\n", wine_dbgstr_point(&pt), nItem); infoPtr->nEditLabelItem = -1; if ((nItem >= 0) && (nItem < infoPtr->nItemCount)) { @@ -8394,27 +8442,59 @@ static LRESULT LISTVIEW_HeaderNotification(LISTVIEW_INFO *infoPtr, const NMHEADE switch (lpnmh->hdr.code) { - case HDN_ITEMCHANGINGW: - case HDN_ITEMCHANGINGA: - return notify_forward_header(infoPtr, lpnmh); - case HDN_ITEMCHANGEDW: - case HDN_ITEMCHANGEDA: - notify_forward_header(infoPtr, lpnmh); - if (!IsWindow(hwndSelf)) - break; - /* Fall through */ case HDN_TRACKW: case HDN_TRACKA: + { + COLUMN_INFO *lpColumnInfo; + POINT ptOrigin; + INT x; + + if (!lpnmh->pitem || !(lpnmh->pitem->mask & HDI_WIDTH)) + break; + + /* remove the old line (if any) */ + LISTVIEW_DrawTrackLine(infoPtr); + + /* compute & draw the new line */ + lpColumnInfo = LISTVIEW_GetColumnInfo(infoPtr, lpnmh->iItem); + x = lpColumnInfo->rcHeader.left + lpnmh->pitem->cxy; + LISTVIEW_GetOrigin(infoPtr, &ptOrigin); + infoPtr->xTrackLine = x + ptOrigin.x; + LISTVIEW_DrawTrackLine(infoPtr); + break; + } + + case HDN_ENDTRACKA: + case HDN_ENDTRACKW: + /* remove the track line (if any) */ + LISTVIEW_DrawTrackLine(infoPtr); + infoPtr->xTrackLine = -1; + break; + + case HDN_ENDDRAG: + FIXME("Changing column order not implemented\n"); + return TRUE; + + case HDN_ITEMCHANGINGW: + case HDN_ITEMCHANGINGA: + return notify_forward_header(infoPtr, lpnmh); + + case HDN_ITEMCHANGEDW: + case HDN_ITEMCHANGEDA: { COLUMN_INFO *lpColumnInfo; INT dx, cxy; + + notify_forward_header(infoPtr, lpnmh); + if (!IsWindow(hwndSelf)) + break; if (!lpnmh->pitem || !(lpnmh->pitem->mask & HDI_WIDTH)) { HDITEMW hdi; hdi.mask = HDI_WIDTH; - if (!Header_GetItemW(infoPtr->hwndHeader, lpnmh->iItem, (LPARAM)&hdi)) return 0; + if (!Header_GetItemW(infoPtr->hwndHeader, lpnmh->iItem, &hdi)) return 0; cxy = hdi.cxy; } else @@ -8914,7 +8994,7 @@ static void LISTVIEW_UpdateSize(LISTVIEW_INFO *infoPtr) { UINT uView = infoPtr->dwStyle & LVS_TYPEMASK; - TRACE("uView=%d, rcList(old)=%s\n", uView, debugrect(&infoPtr->rcList)); + TRACE("uView=%d, rcList(old)=%s\n", uView, wine_dbgstr_rect(&infoPtr->rcList)); GetClientRect(infoPtr->hwndSelf, &infoPtr->rcList); @@ -8938,14 +9018,14 @@ static void LISTVIEW_UpdateSize(LISTVIEW_INFO *infoPtr) hl.prc = &infoPtr->rcList; hl.pwpos = ℘ - Header_Layout(infoPtr->hwndHeader, &hl); + SendMessageW( infoPtr->hwndHeader, HDM_LAYOUT, 0, (LPARAM)&hl ); SetWindowPos(wp.hwnd, wp.hwndInsertAfter, wp.x, wp.y, wp.cx, wp.cy, wp.flags); infoPtr->rcList.top = max(wp.cy, 0); } - TRACE(" rcList=%s\n", debugrect(&infoPtr->rcList)); + TRACE(" rcList=%s\n", wine_dbgstr_rect(&infoPtr->rcList)); } /*** @@ -9016,7 +9096,7 @@ static INT LISTVIEW_StyleChanged(LISTVIEW_INFO *infoPtr, WPARAM wStyleType, hl.prc = &infoPtr->rcList; hl.pwpos = ℘ - Header_Layout(infoPtr->hwndHeader, &hl); + SendMessageW( infoPtr->hwndHeader, HDM_LAYOUT, 0, (LPARAM)&hl ); SetWindowPos(infoPtr->hwndHeader, infoPtr->hwndSelf, wp.x, wp.y, wp.cx, wp.cy, wp.flags); } @@ -9820,8 +9900,7 @@ static HWND CreateEditLabelT(LISTVIEW_INFO *infoPtr, LPCWSTR text, DWORD style, hOldFont = SelectObject(hdc, infoPtr->hFont); /*Get String Length in pixels */ - if(!GetTextExtentPoint32W(hdc, text, lstrlenW(text), &sz)) - sz.cx = 0; + GetTextExtentPoint32W(hdc, text, lstrlenW(text), &sz); /*Add Extra spacing for the next character */ GetTextMetricsW(hdc, &textMetric); diff --git a/reactos/dll/win32/comctl32/monthcal.c b/reactos/dll/win32/comctl32/monthcal.c index 340b68142f2..908eb831fde 100644 --- a/reactos/dll/win32/comctl32/monthcal.c +++ b/reactos/dll/win32/comctl32/monthcal.c @@ -19,7 +19,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTE * @@ -160,14 +160,10 @@ int MONTHCAL_MonthLength(int month, int year) /* make sure that time is valid */ static int MONTHCAL_ValidateTime(SYSTEMTIME time) { - if(time.wMonth > 12) return FALSE; + if(time.wMonth < 1 || time.wMonth > 12 ) return FALSE; if(time.wDayOfWeek > 6) return FALSE; if(time.wDay > MONTHCAL_MonthLength(time.wMonth, time.wYear)) return FALSE; - if(time.wHour > 23) return FALSE; - if(time.wMinute > 59) return FALSE; - if(time.wSecond > 59) return FALSE; - if(time.wMilliseconds > 999) return FALSE; return TRUE; } @@ -934,48 +930,54 @@ MONTHCAL_GetMaxTodayWidth(MONTHCAL_INFO *infoPtr) } -/* FIXME: are validated times taken from current date/time or simply - * copied? - * FIXME: check whether MCM_GETMONTHRANGE shows correct result after - * adjusting range with MCM_SETRANGE - */ - static LRESULT MONTHCAL_SetRange(MONTHCAL_INFO *infoPtr, WPARAM wParam, LPARAM lParam) { - SYSTEMTIME *lprgSysTimeArray=(SYSTEMTIME *)lParam; - int prev; + SYSTEMTIME *lprgSysTimeArray=(SYSTEMTIME *)lParam; + FILETIME ft_min, ft_max; - TRACE("%x %lx\n", wParam, lParam); + TRACE("%x %lx\n", wParam, lParam); - if(wParam & GDTR_MAX) { - if(MONTHCAL_ValidateTime(lprgSysTimeArray[1])){ - MONTHCAL_CopyTime(&lprgSysTimeArray[1], &infoPtr->maxDate); - infoPtr->rangeValid|=GDTR_MAX; - } else { - GetSystemTime(&infoPtr->todaysDate); - MONTHCAL_CopyTime(&infoPtr->todaysDate, &infoPtr->maxDate); + if ((wParam & GDTR_MIN && !MONTHCAL_ValidateTime(lprgSysTimeArray[0])) || + (wParam & GDTR_MAX && !MONTHCAL_ValidateTime(lprgSysTimeArray[1]))) + return FALSE; + + if (wParam & GDTR_MIN) + { + MONTHCAL_CopyTime(&lprgSysTimeArray[0], &infoPtr->minDate); + infoPtr->rangeValid |= GDTR_MIN; } - } - if(wParam & GDTR_MIN) { - if(MONTHCAL_ValidateTime(lprgSysTimeArray[0])) { - MONTHCAL_CopyTime(&lprgSysTimeArray[0], &infoPtr->minDate); - infoPtr->rangeValid|=GDTR_MIN; - } else { - GetSystemTime(&infoPtr->todaysDate); - MONTHCAL_CopyTime(&infoPtr->todaysDate, &infoPtr->minDate); + if (wParam & GDTR_MAX) + { + MONTHCAL_CopyTime(&lprgSysTimeArray[1], &infoPtr->maxDate); + infoPtr->rangeValid |= GDTR_MAX; } - } - prev = infoPtr->monthRange; - infoPtr->monthRange = infoPtr->maxDate.wMonth - infoPtr->minDate.wMonth; + /* Only one limit set - we are done */ + if ((infoPtr->rangeValid & (GDTR_MIN | GDTR_MAX)) != (GDTR_MIN | GDTR_MAX)) + return TRUE; + + SystemTimeToFileTime(&infoPtr->maxDate, &ft_max); + SystemTimeToFileTime(&infoPtr->minDate, &ft_min); - if(infoPtr->monthRange!=prev) { - infoPtr->monthdayState = ReAlloc(infoPtr->monthdayState, - infoPtr->monthRange * sizeof(MONTHDAYSTATE)); - } + if (CompareFileTime(&ft_min, &ft_max) > 0) + { + if ((wParam & (GDTR_MIN | GDTR_MAX)) == (GDTR_MIN | GDTR_MAX)) + { + /* Native swaps limits only when both limits are being set. */ + SYSTEMTIME st_tmp = infoPtr->minDate; + infoPtr->minDate = infoPtr->maxDate; + infoPtr->maxDate = st_tmp; + } + else + { + /* Reset the other limit. */ + /* FIXME: native sets date&time to 0. Should we do this too? */ + infoPtr->rangeValid &= wParam & GDTR_MIN ? ~GDTR_MAX : ~GDTR_MIN ; + } + } - return 1; + return TRUE; } diff --git a/reactos/dll/win32/comctl32/nativefont.c b/reactos/dll/win32/comctl32/nativefont.c index 4695e7fb8a4..54c8ac85f0f 100644 --- a/reactos/dll/win32/comctl32/nativefont.c +++ b/reactos/dll/win32/comctl32/nativefont.c @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * This is just a dummy control. An author is needed! Any volunteers? diff --git a/reactos/dll/win32/comctl32/pager.c b/reactos/dll/win32/comctl32/pager.c index cd25159d16e..3c193e07c24 100644 --- a/reactos/dll/win32/comctl32/pager.c +++ b/reactos/dll/win32/comctl32/pager.c @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * @@ -59,7 +59,6 @@ #include "wingdi.h" #include "winuser.h" #include "winnls.h" -#include "windowsx.h" #include "commctrl.h" #include "comctl32.h" #include "wine/debug.h" @@ -1315,7 +1314,7 @@ PAGER_WindowProc (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) return PAGER_Destroy (infoPtr); case WM_SIZE: - return PAGER_Size (infoPtr, (INT)wParam, GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); + return PAGER_Size (infoPtr, (INT)wParam, (short)LOWORD(lParam), (short)HIWORD(lParam)); case WM_NCPAINT: return PAGER_NCPaint (infoPtr, (HRGN)wParam); @@ -1330,18 +1329,18 @@ PAGER_WindowProc (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) return PAGER_NCCalcSize (infoPtr, wParam, (LPRECT)lParam); case WM_NCHITTEST: - return PAGER_NCHitTest (infoPtr, GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); + return PAGER_NCHitTest (infoPtr, (short)LOWORD(lParam), (short)HIWORD(lParam)); case WM_MOUSEMOVE: if (infoPtr->bForward && infoPtr->hwndChild) PostMessageW(infoPtr->hwndChild, WM_MOUSEMOVE, wParam, lParam); - return PAGER_MouseMove (infoPtr, (INT)wParam, GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); + return PAGER_MouseMove (infoPtr, (INT)wParam, (short)LOWORD(lParam), (short)HIWORD(lParam)); case WM_LBUTTONDOWN: - return PAGER_LButtonDown (infoPtr, (INT)wParam, GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); + return PAGER_LButtonDown (infoPtr, (INT)wParam, (short)LOWORD(lParam), (short)HIWORD(lParam)); case WM_LBUTTONUP: - return PAGER_LButtonUp (infoPtr, (INT)wParam, GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); + return PAGER_LButtonUp (infoPtr, (INT)wParam, (short)LOWORD(lParam), (short)HIWORD(lParam)); case WM_ERASEBKGND: return PAGER_EraseBackground (infoPtr, (HDC)wParam); diff --git a/reactos/dll/win32/comctl32/progress.c b/reactos/dll/win32/comctl32/progress.c index eb0b11a4172..7acf71b66f3 100644 --- a/reactos/dll/win32/comctl32/progress.c +++ b/reactos/dll/win32/comctl32/progress.c @@ -16,7 +16,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTE * @@ -131,35 +131,12 @@ static inline int get_bar_position( PROGRESS_INFO *infoPtr, LONG style, /*********************************************************************** * PROGRESS_Invalidate * - * Invalide the range between old and new pos. + * Don't be too clever about invalidating the progress bar. + * InstallShield depends on this simple behaviour. */ static void PROGRESS_Invalidate( PROGRESS_INFO *infoPtr, INT old, INT new ) { - LONG style = GetWindowLongW (infoPtr->Self, GWL_STYLE); - RECT rect; - int oldPos, newPos; - BOOL barSmooth = (style & PBS_SMOOTH) && !GetWindowTheme (infoPtr->Self); - - get_client_rect( infoPtr->Self, &rect ); - - oldPos = get_bar_position( infoPtr, style, &rect, old ); - newPos = get_bar_position( infoPtr, style, &rect, new ); - - if (style & PBS_VERTICAL) - { - rect.top = rect.bottom - max( oldPos, newPos ); - rect.bottom = rect.bottom - min( oldPos, newPos ); - if (!barSmooth) rect.top -= - get_led_size (infoPtr, style, &rect) + get_led_gap (infoPtr); - } - else - { - rect.left = min( oldPos, newPos ); - rect.right = max( oldPos, newPos ); - if (!barSmooth) rect.right += - get_led_size (infoPtr, style, &rect) + get_led_gap (infoPtr); - } - InvalidateRect( infoPtr->Self, &rect, oldPos > newPos ); + InvalidateRect( infoPtr->Self, NULL, old > new ); } /* Information for a progress bar drawing helper */ diff --git a/reactos/dll/win32/comctl32/propsheet.c b/reactos/dll/win32/comctl32/propsheet.c index 78fdc430a1d..9f3527d1a71 100644 --- a/reactos/dll/win32/comctl32/propsheet.c +++ b/reactos/dll/win32/comctl32/propsheet.c @@ -18,7 +18,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * This code was audited for completeness against the documented features * of Comctl32.dll version 6.0 on Sep. 12, 2004, by Filip Navara. @@ -144,7 +144,7 @@ typedef struct * Defines and global variables */ -const WCHAR PropSheetInfoStr[] = +static const WCHAR PropSheetInfoStr[] = {'P','r','o','p','e','r','t','y','S','h','e','e','t','I','n','f','o',0 }; #define PSP_INTERNAL_UNICODE 0x80000000 @@ -162,59 +162,18 @@ const WCHAR PropSheetInfoStr[] = /****************************************************************************** * Prototypes */ -static INT_PTR PROPSHEET_CreateDialog(PropSheetInfo* psInfo); -static BOOL PROPSHEET_SizeMismatch(HWND hwndDlg, PropSheetInfo* psInfo); -static BOOL PROPSHEET_AdjustSize(HWND hwndDlg, PropSheetInfo* psInfo); -static BOOL PROPSHEET_AdjustButtons(HWND hwndParent, PropSheetInfo* psInfo); -static BOOL PROPSHEET_CollectSheetInfoA(LPCPROPSHEETHEADERA lppsh, - PropSheetInfo * psInfo); -static BOOL PROPSHEET_CollectSheetInfoW(LPCPROPSHEETHEADERW lppsh, - PropSheetInfo * psInfo); -static BOOL PROPSHEET_CollectPageInfo(LPCPROPSHEETPAGEW lppsp, - PropSheetInfo * psInfo, - int index); -static BOOL PROPSHEET_CreateTabControl(HWND hwndParent, - PropSheetInfo * psInfo); -static BOOL PROPSHEET_CreatePage(HWND hwndParent, int index, - const PropSheetInfo * psInfo, - LPCPROPSHEETPAGEW ppshpage); -static BOOL PROPSHEET_ShowPage(HWND hwndDlg, int index, PropSheetInfo * psInfo); static PADDING_INFO PROPSHEET_GetPaddingInfo(HWND hwndDlg); -static BOOL PROPSHEET_Back(HWND hwndDlg); -static BOOL PROPSHEET_Next(HWND hwndDlg); -static BOOL PROPSHEET_Finish(HWND hwndDlg); -static BOOL PROPSHEET_Apply(HWND hwndDlg, LPARAM lParam); -static void PROPSHEET_Cancel(HWND hwndDlg, LPARAM lParam); -static void PROPSHEET_Help(HWND hwndDlg); -static void PROPSHEET_Changed(HWND hwndDlg, HWND hwndDirtyPage); -static void PROPSHEET_UnChanged(HWND hwndDlg, HWND hwndCleanPage); -static void PROPSHEET_PressButton(HWND hwndDlg, int buttonID); -static void PROPSHEET_SetFinishTextA(HWND hwndDlg, LPCSTR lpszText); -static void PROPSHEET_SetFinishTextW(HWND hwndDlg, LPCWSTR lpszText); -static void PROPSHEET_SetTitleA(HWND hwndDlg, DWORD dwStyle, LPCSTR lpszText); static void PROPSHEET_SetTitleW(HWND hwndDlg, DWORD dwStyle, LPCWSTR lpszText); static BOOL PROPSHEET_CanSetCurSel(HWND hwndDlg); static BOOL PROPSHEET_SetCurSel(HWND hwndDlg, int index, int skipdir, HPROPSHEETPAGE hpage); -static void PROPSHEET_SetCurSelId(HWND hwndDlg, int id); -static LRESULT PROPSHEET_QuerySiblings(HWND hwndDlg, - WPARAM wParam, LPARAM lParam); -static BOOL PROPSHEET_AddPage(HWND hwndDlg, - HPROPSHEETPAGE hpage); - -static BOOL PROPSHEET_RemovePage(HWND hwndDlg, - int index, - HPROPSHEETPAGE hpage); -static void PROPSHEET_CleanUp(HWND hwndDlg); static int PROPSHEET_GetPageIndex(HPROPSHEETPAGE hpage, PropSheetInfo* psInfo); -static void PROPSHEET_SetWizButtons(HWND hwndDlg, DWORD dwFlags); static PADDING_INFO PROPSHEET_GetPaddingInfoWizard(HWND hwndDlg, const PropSheetInfo* psInfo); -static BOOL PROPSHEET_IsDialogMessage(HWND hwnd, LPMSG lpMsg); static BOOL PROPSHEET_DoCommand(HWND hwnd, WORD wID); -INT_PTR CALLBACK +static INT_PTR CALLBACK PROPSHEET_DialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); WINE_DEFAULT_DEBUG_CHANNEL(propsheet); @@ -443,7 +402,7 @@ static BOOL PROPSHEET_CollectSheetInfoW(LPCPROPSHEETHEADERW lppsh, * Collect property sheet data. * With code taken from DIALOG_ParseTemplate32. */ -BOOL PROPSHEET_CollectPageInfo(LPCPROPSHEETPAGEW lppsp, +static BOOL PROPSHEET_CollectPageInfo(LPCPROPSHEETPAGEW lppsp, PropSheetInfo * psInfo, int index) { @@ -1606,8 +1565,7 @@ static BOOL PROPSHEET_ShowPage(HWND hwndDlg, int index, PropSheetInfo * psInfo) PROPSHEET_CreatePage(hwndDlg, index, psInfo, ppshpage); } - if ((psInfo->ppshheader.dwFlags & INTRNL_ANY_WIZARD) && - (ppshpage->dwFlags & PSP_USETITLE)) + if (psInfo->ppshheader.dwFlags & INTRNL_ANY_WIZARD) { PROPSHEET_SetTitleW(hwndDlg, psInfo->ppshheader.dwFlags, psInfo->proppage[index].pszText); @@ -2475,25 +2433,23 @@ static void PROPSHEET_SetWizButtons(HWND hwndDlg, DWORD dwFlags) EnableWindow(hwndNext, FALSE); EnableWindow(hwndFinish, FALSE); + /* set the default pushbutton to an enabled button */ + if (((dwFlags & PSWIZB_FINISH) || psInfo->hasFinish) && !(dwFlags & PSWIZB_DISABLEDFINISH)) + SendMessageW(hwndDlg, DM_SETDEFID, IDC_FINISH_BUTTON, 0); + else if (dwFlags & PSWIZB_NEXT) + SendMessageW(hwndDlg, DM_SETDEFID, IDC_NEXT_BUTTON, 0); + else if (dwFlags & PSWIZB_BACK) + SendMessageW(hwndDlg, DM_SETDEFID, IDC_BACK_BUTTON, 0); + else + SendMessageW(hwndDlg, DM_SETDEFID, IDCANCEL, 0); + + if (dwFlags & PSWIZB_BACK) EnableWindow(hwndBack, TRUE); if (dwFlags & PSWIZB_NEXT) - { - if (!psInfo->hasFinish) - { - /* Hide the Finish button */ - ShowWindow(hwndFinish, SW_HIDE); - } - - /* Show and enable the Next button */ - ShowWindow(hwndNext, SW_SHOW); EnableWindow(hwndNext, TRUE); - /* Set the Next button as the default pushbutton */ - SendMessageW(hwndDlg, DM_SETDEFID, IDC_NEXT_BUTTON, 0); - } - if (!psInfo->hasFinish) { if ((dwFlags & PSWIZB_FINISH) || (dwFlags & PSWIZB_DISABLEDFINISH)) @@ -2505,12 +2461,14 @@ static void PROPSHEET_SetWizButtons(HWND hwndDlg, DWORD dwFlags) ShowWindow(hwndFinish, SW_SHOW); if (!(dwFlags & PSWIZB_DISABLEDFINISH)) - { EnableWindow(hwndFinish, TRUE); - - /* Set the Finish button as the default pushbutton */ - SendMessageW(hwndDlg, DM_SETDEFID, IDC_FINISH_BUTTON, 0); - } + } + else + { + /* Hide the Finish button */ + ShowWindow(hwndFinish, SW_HIDE); + /* Show the Next button */ + ShowWindow(hwndNext, SW_SHOW); } } else if (!(dwFlags & PSWIZB_DISABLEDFINISH)) @@ -2926,26 +2884,72 @@ HPROPSHEETPAGE WINAPI CreatePropertySheetPageA( memcpy(ppsp,lpPropSheetPage,min(lpPropSheetPage->dwSize,sizeof(PROPSHEETPAGEA))); ppsp->dwFlags &= ~ PSP_INTERNAL_UNICODE; - if ( !(ppsp->dwFlags & PSP_DLGINDIRECT) && HIWORD( ppsp->u.pszTemplate ) ) - { - int len = strlen(lpPropSheetPage->u.pszTemplate); - ppsp->u.pszTemplate = Alloc( len+1 ); - strcpy( (LPSTR)ppsp->u.pszTemplate, lpPropSheetPage->u.pszTemplate ); - } - if ( (ppsp->dwFlags & PSP_USEICONID) && HIWORD( ppsp->u2.pszIcon ) ) - { - PROPSHEET_AtoW(&ppsp->u2.pszIcon, lpPropSheetPage->u2.pszIcon); - } + if ( !(ppsp->dwFlags & PSP_DLGINDIRECT) ) + { + if (HIWORD( ppsp->u.pszTemplate )) + { + int len = strlen(lpPropSheetPage->u.pszTemplate) + 1; + ppsp->u.pszTemplate = Alloc( len ); + strcpy( (LPSTR)ppsp->u.pszTemplate, lpPropSheetPage->u.pszTemplate ); + } + } - if ((ppsp->dwFlags & PSP_USETITLE) && HIWORD( ppsp->pszTitle )) - { - PROPSHEET_AtoW(&ppsp->pszTitle, lpPropSheetPage->pszTitle); - } - else if ( !(ppsp->dwFlags & PSP_USETITLE) ) - ppsp->pszTitle = NULL; + if (ppsp->dwFlags & PSP_USEICONID) + { + if (HIWORD( ppsp->u2.pszIcon )) + PROPSHEET_AtoW(&ppsp->u2.pszIcon, lpPropSheetPage->u2.pszIcon); + } - return (HPROPSHEETPAGE)ppsp; + if (ppsp->dwFlags & PSP_USETITLE) + { + if (HIWORD( ppsp->pszTitle )) + PROPSHEET_AtoW( &ppsp->pszTitle, lpPropSheetPage->pszTitle ); + else + { + UINT id = LOWORD(ppsp->pszTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + 1; + ppsp->pszTitle = Alloc( len * sizeof(WCHAR) ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszTitle, len ); + } + } + else + ppsp->pszTitle = NULL; + + if (ppsp->dwFlags & PSP_HIDEHEADER) + ppsp->dwFlags &= ~(PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE); + + if (ppsp->dwFlags & PSP_USEHEADERTITLE) + { + if (HIWORD( ppsp->pszHeaderTitle )) + PROPSHEET_AtoW(&ppsp->pszHeaderTitle, lpPropSheetPage->pszHeaderTitle); + else + { + UINT id = LOWORD(ppsp->pszHeaderTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + 1; + ppsp->pszHeaderTitle = Alloc( len * sizeof(WCHAR) ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszHeaderTitle, len ); + } + } + else + ppsp->pszHeaderTitle = NULL; + + if (ppsp->dwFlags & PSP_USEHEADERSUBTITLE) + { + if (HIWORD( ppsp->pszHeaderSubTitle )) + PROPSHEET_AtoW(&ppsp->pszHeaderSubTitle, lpPropSheetPage->pszHeaderSubTitle); + else + { + UINT id = LOWORD(ppsp->pszHeaderSubTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + 1; + ppsp->pszHeaderSubTitle = Alloc( len * sizeof(WCHAR) ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszHeaderSubTitle, len ); + } + } + else + ppsp->pszHeaderSubTitle = NULL; + + return (HPROPSHEETPAGE)ppsp; } /****************************************************************************** @@ -2961,30 +2965,87 @@ HPROPSHEETPAGE WINAPI CreatePropertySheetPageW(LPCPROPSHEETPAGEW lpPropSheetPage ppsp->dwFlags |= PSP_INTERNAL_UNICODE; - if ( !(ppsp->dwFlags & PSP_DLGINDIRECT) && HIWORD( ppsp->u.pszTemplate ) ) - { - int len = strlenW(lpPropSheetPage->u.pszTemplate); + if ( !(ppsp->dwFlags & PSP_DLGINDIRECT) ) + { + if (HIWORD( ppsp->u.pszTemplate )) + { + int len = strlenW(lpPropSheetPage->u.pszTemplate) + 1; + ppsp->u.pszTemplate = Alloc( len * sizeof (WCHAR) ); + strcpyW( (WCHAR *)ppsp->u.pszTemplate, lpPropSheetPage->u.pszTemplate ); + } + } - ppsp->u.pszTemplate = Alloc( (len+1)*sizeof (WCHAR) ); - strcpyW( (WCHAR *)ppsp->u.pszTemplate, lpPropSheetPage->u.pszTemplate ); - } - if ( (ppsp->dwFlags & PSP_USEICONID) && HIWORD( ppsp->u2.pszIcon ) ) - { - int len = strlenW(lpPropSheetPage->u2.pszIcon); - ppsp->u2.pszIcon = Alloc( (len+1)*sizeof (WCHAR) ); - strcpyW( (WCHAR *)ppsp->u2.pszIcon, lpPropSheetPage->u2.pszIcon ); - } + if ( ppsp->dwFlags & PSP_USEICONID ) + { + if (HIWORD( ppsp->u2.pszIcon )) + { + int len = strlenW(lpPropSheetPage->u2.pszIcon) + 1; + ppsp->u2.pszIcon = Alloc( len * sizeof (WCHAR) ); + strcpyW( (WCHAR *)ppsp->u2.pszIcon, lpPropSheetPage->u2.pszIcon ); + } + } - if ((ppsp->dwFlags & PSP_USETITLE) && HIWORD( ppsp->pszTitle )) - { - int len = strlenW(lpPropSheetPage->pszTitle); - ppsp->pszTitle = Alloc( (len+1)*sizeof (WCHAR) ); - strcpyW( (WCHAR *)ppsp->pszTitle, lpPropSheetPage->pszTitle ); - } - else if ( !(ppsp->dwFlags & PSP_USETITLE) ) - ppsp->pszTitle = NULL; + if (ppsp->dwFlags & PSP_USETITLE) + { + if (HIWORD( ppsp->pszTitle )) + { + int len = strlenW(lpPropSheetPage->pszTitle) + 1; + ppsp->pszTitle = Alloc( len * sizeof (WCHAR) ); + strcpyW( (WCHAR *)ppsp->pszTitle, lpPropSheetPage->pszTitle ); + } + else + { + UINT id = LOWORD(ppsp->pszTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + 1; + ppsp->pszTitle = Alloc( len * sizeof(WCHAR) ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszTitle, len ); + } + } + else + ppsp->pszTitle = NULL; - return (HPROPSHEETPAGE)ppsp; + if (ppsp->dwFlags & PSP_HIDEHEADER) + ppsp->dwFlags &= ~(PSP_USEHEADERTITLE | PSP_USEHEADERSUBTITLE); + + if (ppsp->dwFlags & PSP_USEHEADERTITLE) + { + if (HIWORD( ppsp->pszHeaderTitle )) + { + int len = strlenW(lpPropSheetPage->pszHeaderTitle) + 1; + ppsp->pszHeaderTitle = Alloc( len * sizeof (WCHAR) ); + strcpyW( (WCHAR *)ppsp->pszHeaderTitle, lpPropSheetPage->pszHeaderTitle ); + } + else + { + UINT id = LOWORD(ppsp->pszHeaderTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + 1; + ppsp->pszHeaderTitle = Alloc( len * sizeof(WCHAR) ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszHeaderTitle, len ); + } + } + else + ppsp->pszHeaderTitle = NULL; + + if (ppsp->dwFlags & PSP_USEHEADERSUBTITLE) + { + if (HIWORD( ppsp->pszHeaderSubTitle )) + { + int len = strlenW(lpPropSheetPage->pszHeaderSubTitle) + 1; + ppsp->pszHeaderSubTitle = Alloc( len * sizeof (WCHAR) ); + strcpyW( (WCHAR *)ppsp->pszHeaderSubTitle, lpPropSheetPage->pszHeaderSubTitle ); + } + else + { + UINT id = LOWORD(ppsp->pszHeaderSubTitle); + int len = LoadStringW( ppsp->hInstance, id, NULL, 0 ) + 1; + ppsp->pszHeaderSubTitle = Alloc( len * sizeof(WCHAR) ); + LoadStringW( ppsp->hInstance, id, (LPWSTR)ppsp->pszHeaderSubTitle, len ); + } + } + else + ppsp->pszHeaderSubTitle = NULL; + + return (HPROPSHEETPAGE)ppsp; } /****************************************************************************** @@ -3339,7 +3400,7 @@ static LRESULT PROPSHEET_Paint(HWND hwnd, HDC hdcParam) /****************************************************************************** * PROPSHEET_DialogProc */ -INT_PTR CALLBACK +static INT_PTR CALLBACK PROPSHEET_DialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { TRACE("hwnd=%p msg=0x%04x wparam=%x lparam=%lx\n", @@ -3427,21 +3488,6 @@ PROPSHEET_DialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) } } - if (psInfo->useCallback) - (*(psInfo->ppshheader.pfnCallback))(hwnd, - PSCB_INITIALIZED, (LPARAM)0); - - idx = psInfo->active_page; - ppshpage = (LPCPROPSHEETPAGEW)psInfo->proppage[idx].hpage; - psInfo->active_page = -1; - - PROPSHEET_SetCurSel(hwnd, idx, 1, psInfo->proppage[idx].hpage); - - /* doing TCM_SETCURSEL seems to be needed even in case of PSH_WIZARD, - * as some programs call TCM_GETCURSEL to get the current selection - * from which to switch to the next page */ - SendMessageW(hwndTabCtrl, TCM_SETCURSEL, psInfo->active_page, 0); - if (!HIWORD(psInfo->ppshheader.pszCaption) && psInfo->ppshheader.hInstance) { @@ -3457,6 +3503,22 @@ PROPSHEET_DialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) psInfo->ppshheader.pszCaption); } + + if (psInfo->useCallback) + (*(psInfo->ppshheader.pfnCallback))(hwnd, + PSCB_INITIALIZED, (LPARAM)0); + + idx = psInfo->active_page; + ppshpage = (LPCPROPSHEETPAGEW)psInfo->proppage[idx].hpage; + psInfo->active_page = -1; + + PROPSHEET_SetCurSel(hwnd, idx, 1, psInfo->proppage[idx].hpage); + + /* doing TCM_SETCURSEL seems to be needed even in case of PSH_WIZARD, + * as some programs call TCM_GETCURSEL to get the current selection + * from which to switch to the next page */ + SendMessageW(hwndTabCtrl, TCM_SETCURSEL, psInfo->active_page, 0); + return TRUE; } @@ -3490,17 +3552,6 @@ PROPSHEET_DialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) } return TRUE; - case WM_SYSCOMMAND: - switch(wParam & 0xfff0) - { - case SC_CLOSE: - PROPSHEET_Cancel(hwnd, 1); - return TRUE; - - default: - return FALSE; - } - case WM_NOTIFY: { NMHDR* pnmh = (LPNMHDR) lParam; diff --git a/reactos/dll/win32/comctl32/rebar.c b/reactos/dll/win32/comctl32/rebar.c index 27f038c434d..df6ef19f901 100644 --- a/reactos/dll/win32/comctl32/rebar.c +++ b/reactos/dll/win32/comctl32/rebar.c @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * @@ -1492,10 +1492,11 @@ REBAR_Layout (REBAR_INFO *infoPtr, LPRECT lpRect, BOOL notify, BOOL resetclient) cxsep = (cntonrow == 0) ? 0 : SEP_WIDTH; cx = lpBand->lcx; + /* In native, 0 as one of the coordinates means no limit */ if (infoPtr->dwStyle & CCS_VERT) - dobreak = (y + cx + cxsep > adjcy); + dobreak = (adjcy && (y + cx + cxsep > adjcy)); else - dobreak = (x + cx + cxsep > adjcx); + dobreak = (adjcx && (x + cx + cxsep > adjcx)); /* This is the check for whether we need to start a new row */ if ( ( (lpBand->fStyle & RBBS_BREAK) && (i != 0) ) || @@ -1537,14 +1538,14 @@ REBAR_Layout (REBAR_INFO *infoPtr, LPRECT lpRect, BOOL notify, BOOL resetclient) /* if boundary rect specified then limit mcy */ if (lpRect) { if (infoPtr->dwStyle & CCS_VERT) { - if (x+mcy > adjcx) { + if (adjcx && (x+mcy > adjcx)) { mcy = adjcx - x; TRACE("P1 row %u limiting mcy=%d, adjcx=%d, x=%d\n", i, mcy, adjcx, x); } } else { - if (y+mcy > adjcy) { + if (adjcy && (y+mcy > adjcy)) { mcy = adjcy - y; TRACE("P1 row %u limiting mcy=%d, adjcy=%d, y=%d\n", i, mcy, adjcy, y); @@ -1656,8 +1657,9 @@ REBAR_Layout (REBAR_INFO *infoPtr, LPRECT lpRect, BOOL notify, BOOL resetclient) /* ******* Start Phase 2 - split rows till adjustment height full ******* */ /* assumes that the following variables contain: */ - /* y/x current height/width of all rows */ - if (lpRect) { + /* y/x current height/width of all rows */ + /* adjcy/adjcx adjustment height/width or 0 (as small as possible) */ + if (lpRect && ((infoPtr->dwStyle & CCS_VERT) ? adjcx : adjcy)) { INT i, prev_rh, new_rh, adj_rh, prev_idx, current_idx; REBAR_BAND *prev, *current, *walk; UINT j; @@ -4501,9 +4503,14 @@ REBAR_Size (REBAR_INFO *infoPtr, WPARAM wParam, LPARAM lParam) if ((lParam == 0) && (rcClient.right + rcClient.bottom != 0) && (infoPtr->dwStyle & RBS_AUTOSIZE)) { /* on a WM_SIZE to zero and current client not zero and AUTOSIZE */ - /* native seems to use the current client rect for the size */ + /* native seems to use the current parent width for the size */ infoPtr->fStatus |= BAND_NEEDS_LAYOUT; - TRACE("sizing rebar to client (%ld,%ld) size is zero but AUTOSIZE set\n", + GetClientRect (GetParent(infoPtr->hwndSelf), &rcClient); + if (infoPtr->dwStyle & CCS_VERT) + rcClient.right = 0; + else + rcClient.bottom = 0; + TRACE("sizing rebar to parent (%ld,%ld) size is zero but AUTOSIZE set\n", rcClient.right, rcClient.bottom); } else { diff --git a/reactos/dll/win32/comctl32/rsrc.rc b/reactos/dll/win32/comctl32/rsrc.rc index 80861cff1b9..e76912352c8 100644 --- a/reactos/dll/win32/comctl32/rsrc.rc +++ b/reactos/dll/win32/comctl32/rsrc.rc @@ -16,7 +16,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #include "windef.h" @@ -1109,555 +1109,78 @@ IDI_DRAGARROW ICON LOADONCALL DISCARDABLE idi_dragarrow.ico /* BINRES idi_tt_info_sm.ico */ IDI_TT_INFO_SM ICON LOADONCALL DISCARDABLE idi_tt_info_sm.ico /* { - '00 00 01 00 03 00 10 10 10 00 01 00 04 00 28 01' - '00 00 36 00 00 00 10 10 00 00 01 00 08 00 68 05' - '00 00 5E 01 00 00 10 10 00 00 01 00 20 00 68 04' - '00 00 C6 06 00 00 28 00 00 00 10 00 00 00 20 00' - '00 00 01 00 04 00 00 00 00 00 80 00 00 00 00 00' + '00 00 01 00 01 00 10 10 10 00 00 00 00 00 28 01' + '00 00 16 00 00 00 28 00 00 00 10 00 00 00 20 00' + '00 00 01 00 04 00 00 00 00 00 C0 00 00 00 00 00' '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' '00 00 00 00 80 00 00 80 00 00 00 80 80 00 80 00' - '00 00 80 00 80 00 80 80 00 00 80 80 80 00 C0 C0' - 'C0 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00' + '00 00 80 00 80 00 80 80 00 00 C0 C0 C0 00 80 80' + '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00' '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 77 00 00 00 00 00 00 08 70 00 00 00 00 00 00' - '08 77 70 00 00 00 00 00 8F FF F7 77 00 00 00 88' - 'FF 84 7F FF 77 00 08 FF FF 84 7F FF FF 70 08 FF' - 'F8 44 7F FF FF 70 08 FF FF 88 FF FF FF 70 08 FF' - 'FF F7 8F FF FF 80 00 88 FF F7 8F FF 88 00 00 00' - '88 88 88 88 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF' - '00 00 FF FF 00 00 FC FF 00 00 F9 FF 00 00 F8 7F' - '00 00 F0 0F 00 00 C0 03 00 00 80 01 00 00 80 01' - '00 00 80 01 00 00 80 01 00 00 C0 03 00 00 F0 0F' - '00 00 FF FF 00 00 FF FF 00 00 FF FF 00 00 28 00' - '00 00 10 00 00 00 20 00 00 00 01 00 08 00 00 00' - '00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01' - '00 00 00 01 00 00 00 00 00 00 00 00 80 00 00 80' - '00 00 00 80 80 00 80 00 00 00 80 00 80 00 80 80' - '00 00 C0 C0 C0 00 C0 DC C0 00 F0 CA A6 00 B9 01' - '01 00 BB 00 00 00 B6 1F 1F 00 A7 2F 2F 00 BB 5A' - '5A 00 BE 7B 7B 00 C1 7B 7B 00 DD 75 75 00 FF 00' - 'FF 00 82 82 82 00 88 88 88 00 8D 8D 8D 00 8E 8E' - '8E 00 90 90 90 00 91 91 91 00 95 95 95 00 96 96' - '96 00 9D 9D 9D 00 9F 9F 9F 00 BB 8A 8A 00 A2 A2' - 'A2 00 A3 A3 A3 00 A7 A7 A7 00 B5 B5 B5 00 B9 B9' - 'B9 00 BD BD BD 00 E2 9F 9F 00 D1 A9 A9 00 E5 B9' - 'B9 00 EE BF BF 00 C3 C3 C3 00 C6 C6 C6 00 C7 C7' - 'C7 00 C9 C9 C9 00 CD CD CD 00 D1 D1 D1 00 D3 D3' - 'D3 00 D7 D7 D7 00 D8 D8 D8 00 DB DB DB 00 DC DC' - 'DC 00 EA C8 C8 00 F0 C1 C1 00 F1 C1 C1 00 F3 D8' - 'D8 00 F6 DD DD 00 F4 DF DF 00 E4 E4 E4 00 E8 E8' - 'E8 00 E9 E9 E9 00 EB EB EB 00 EC EC EC 00 ED ED' - 'ED 00 EE EE EE 00 F8 E2 E2 00 F1 F1 F1 00 F6 F6' - 'F6 00 F8 F8 F8 00 FA FA FA 00 FB FB FB 00 FC FC' - 'FC 00 FD FD FD 00 FE FE FE 00 FF FF FF 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 F0 FB' - 'FF 00 A4 A0 A0 00 80 80 80 00 00 00 FF 00 00 FF' - '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF' - '00 00 FF FF FF 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 21 21 00 00' - '00 00 00 00 00 00 00 00 00 00 00 21 18 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 2B 15 21 00 00' - '00 00 00 00 00 00 00 00 00 00 20 2B 28 20 1B 18' - '15 15 00 00 00 00 00 00 28 23 2D 3F 33 0D 1D 3F' - '30 23 15 18 00 00 00 39 3F 41 44 44 27 0A 0F 44' - '44 41 30 18 20 00 00 3F 44 44 44 24 0C 0A 10 44' - '44 44 44 28 13 00 00 3F 44 44 44 40 35 35 38 44' - '44 44 44 2D 1B 00 00 3F 44 44 44 44 38 0E 25 44' - '44 44 44 2D 30 00 00 00 3F 41 44 44 38 11 26 44' - '44 44 3F 3F 00 00 00 00 00 00 3F 3F 3F 3F 3F 3F' - '3F 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 FF FF 00 00 FF FF 00 00 FC FF' - '00 00 F9 FF 00 00 F8 FF 00 00 F0 0F 00 00 C0 03' - '00 00 80 01 00 00 80 01 00 00 80 01 00 00 80 01' - '00 00 C0 03 00 00 F0 0F 00 00 FF FF 00 00 FF FF' - '00 00 FF FF 00 00 28 00 00 00 10 00 00 00 20 00' - '00 00 01 00 20 00 00 00 00 00 40 04 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 87 87 87 44 73 73 73 42 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 99 99 99 4B 90 90 90 FB 2A 2A 2A 12 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 B9 B9 B9 C3 8D 8D 8D FE 63 63 63 78 6F 6F' - '6F 6E 6A 6A 6A 59 53 53 53 2B 00 00 00 01 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 2A 2A 2A 06 8A 8A 8A 72 9A 9A' - '9A DC CD CD CD FE C3 C3 C3 FF A3 A3 A3 FF 9D 9D' - '9D FF 95 95 95 FF 88 88 88 FE 77 77 77 DE 6C 6C' - '6C 73 2A 2A 2A 06 00 00 00 00 00 00 00 00 00 00' - '00 00 8D 8D 8D 12 B9 B9 B9 CB BD BD BD FF D1 D1' - 'D1 FF EE EE EE FF EA C8 C8 FF A7 2F 2F FF BB 8A' - '8A FF E8 E8 E8 FF D8 D8 D8 FF B9 B9 B9 FF 8E 8E' - '8E FF 74 74 74 CB 50 50 50 13 00 00 00 00 00 00' - '00 00 D5 D5 D5 A1 E9 E9 E9 FF F1 F1 F1 FF FA FA' - 'FA FF FC FC FC FF EE BF BF FF B9 01 01 FF BE 7B' - '7B FF FD FD FD FF FC FC FC FF F6 F6 F6 FF DB DB' - 'DB FF 96 96 96 FF 72 72 72 A7 00 00 00 00 00 00' - '00 00 EB EB EB E9 FC FC FC FF FD FD FD FF FE FE' - 'FE FF E2 9F 9F FF B6 1F 1F FF BB 00 00 FF C1 7B' - '7B FF FE FE FE FF FE FE FE FF FE FE FE FF FA FA' - 'FA FF C6 C6 C6 FF 7D 7D 7D F5 00 00 00 00 00 00' - '00 00 E8 E8 E8 CE FE FE FE FF FE FE FE FF FE FE' - 'FE FF F8 E2 E2 FF F1 C1 C1 FF F0 C1 C1 FF F4 DF' - 'DF FF FF FF FF FF FE FE FE FF FE FE FE FF FB FB' - 'FB FF D3 D3 D3 FF 90 90 90 DB 00 00 00 00 00 00' - '00 00 C7 C7 C7 49 FA FA FA FB FF FF FF FF FF FF' - 'FF FF FF FF FF FF F3 D8 D8 FF BB 5A 5A FF D1 A9' - 'A9 FF FF FF FF FF FE FE FE FF FD FD FD FF F8 F8' - 'F8 FF D7 D7 D7 FD 97 97 97 54 00 00 00 00 00 00' - '00 00 00 00 00 00 C7 C7 C7 49 F0 F0 F0 E2 FF FF' - 'FF FF FF FF FF FF F6 DD DD FF DD 75 75 FF E5 B9' - 'B9 FF FF FF FF FF FE FE FE FF FD FD FD FF EC EC' - 'EC E6 BA BA BA 52 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 48 48 48 07 CB CB' - 'CB 59 E3 E3 E3 A5 E9 E9 E9 D5 EB EB EB EC EB EB' - 'EB EC E9 E9 E9 D6 E2 E2 E2 A9 CD CD CD 5D 55 55' - '55 09 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF FF' - '00 00 FF FF 00 00 FC FF 00 00 F8 FF 00 00 F8 0F' - '00 00 C0 03 00 00 80 01 00 00 80 01 00 00 80 01' - '00 00 80 01 00 00 80 01 00 00 C0 03 00 00 E0 07' - '00 00 FF FF 00 00 FF FF 00 00 FF FF 00 00' + '00 00 08 80 00 00 00 00 00 08 00 80 00 00 00 00' + '08 80 F0 80 00 00 00 00 80 0F F0 88 00 00 00 00' + '0F FF FF 00 80 00 00 0F FF FF FF FF 08 00 08 FF' + 'FC CC CC FF F0 80 8F FF FF 8C CF FF FF 08 8F FF' + 'FF 8C CF FF FF 08 8F FF FF 8C CF FF FF 08 8F FF' + 'F8 CC CF FF FF 00 8F FF FF FF FF FF FF 00 08 FF' + 'FF 8C CF FF F0 00 00 8F FF CC CF FF 00 00 00 08' + '8F FF FF 00 00 00 00 00 08 88 88 00 00 00 FF 9F' + '00 00 FE 1F 00 00 F8 1F 00 00 F0 0F 00 00 E0 07' + '00 00 C0 03 00 00 80 01 00 00 00 00 00 00 00 00' + '00 00 00 00 00 00 00 01 00 00 00 01 00 00 80 03' + '00 00 C0 07 00 00 E0 0F 00 00 F8 3F 00 00' } */ /* BINRES idi_tt_warn_sm.ico */ IDI_TT_WARN_SM ICON LOADONCALL DISCARDABLE idi_tt_warn_sm.ico /* { - '00 00 01 00 03 00 10 10 10 00 01 00 04 00 28 01' - '00 00 36 00 00 00 10 10 00 00 01 00 08 00 68 05' - '00 00 5E 01 00 00 10 10 00 00 01 00 20 00 68 04' - '00 00 C6 06 00 00 28 00 00 00 10 00 00 00 20 00' - '00 00 01 00 04 00 00 00 00 00 80 00 00 00 00 00' + '00 00 01 00 01 00 10 10 10 00 00 00 00 00 28 01' + '00 00 16 00 00 00 28 00 00 00 10 00 00 00 20 00' + '00 00 01 00 04 00 00 00 00 00 C0 00 00 00 00 00' '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' '00 00 00 00 80 00 00 80 00 00 00 80 80 00 80 00' - '00 00 80 00 80 00 80 80 00 00 80 80 80 00 C0 C0' - 'C0 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00' - '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 F3 33' - '33 33 33 33 33 33 FB BB BB BB BB BB BB B3 0F BB' - 'BB B3 3B BB BB 30 0F BB BB B0 0B BB BB 30 00 FB' - 'BB BB BB BB B3 00 00 FB BB B3 3B BB B3 00 00 0F' - 'BB B0 0B BB 30 00 00 0F BB B0 0B BB 30 00 00 00' - 'FB B0 0B B3 00 00 00 00 FB B0 0B B3 00 00 00 00' - '0F B0 0B 30 00 00 00 00 0F B3 3B 30 00 00 00 00' - '00 FB B3 00 00 00 00 00 00 FB B3 00 00 00 00 00' - '00 0F 30 00 00 00 00 00 00 0F 30 00 00 00 00 00' - '00 00 00 00 00 00 80 01 00 00 80 01 00 00 C0 03' - '00 00 C0 03 00 00 E0 07 00 00 E0 07 00 00 F0 0F' - '00 00 F0 0F 00 00 F8 1F 00 00 F8 1F 00 00 FC 3F' - '00 00 FC 3F 00 00 FE 7F 00 00 FE 7F 00 00 28 00' - '00 00 10 00 00 00 20 00 00 00 01 00 08 00 00 00' - '00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01' - '00 00 00 01 00 00 00 00 00 00 00 00 80 00 00 80' - '00 00 00 80 80 00 80 00 00 00 80 00 80 00 80 80' - '00 00 C0 C0 C0 00 C0 DC C0 00 F0 CA A6 00 00 10' - '12 00 00 19 1C 00 00 1A 1E 00 00 22 27 00 00 24' - '29 00 00 25 2C 00 00 2C 32 00 00 2C 33 00 00 2D' - '34 00 00 35 3D 00 00 37 3F 00 00 40 4A 00 00 42' - '4D 00 00 47 53 00 00 4E 5A 00 00 58 66 00 00 6E' - '84 00 FF 00 FF 00 00 84 9E 00 00 89 9B 00 00 8D' - 'A0 00 00 89 A5 00 00 8A A5 00 01 8A A5 00 01 8B' - 'A6 00 00 8C A6 00 00 8D A7 00 00 8E A7 00 00 8F' - 'A8 00 00 90 A8 00 00 92 A9 00 00 93 A9 00 01 93' - 'AA 00 00 91 AD 00 01 96 AE 00 00 9F BF 00 00 A2' - 'BF 00 00 A6 C0 00 01 A7 C3 00 03 A9 C6 00 03 AC' - 'C6 00 00 B5 D8 00 00 B8 D9 00 00 BB DB 00 00 C0' - 'DE 00 00 C3 E0 00 00 C6 E1 00 00 C0 E6 00 00 CD' - 'E6 00 06 CC E4 00 00 C5 EA 00 00 C5 EB 00 00 C6' - 'EC 00 00 C7 EC 00 00 C7 ED 00 00 C9 EC 00 00 C9' - 'ED 00 00 C8 EE 00 00 CA EE 00 00 CB EE 00 00 CB' - 'EF 00 00 CD EE 00 00 CC EF 00 00 CD EF 00 00 CF' - 'EF 00 02 D1 E3 00 00 CD F0 00 00 CE F0 00 00 CF' - 'F0 00 00 CF F1 00 00 D1 F0 00 00 D0 F1 00 00 D1' - 'F2 00 00 D2 F2 00 00 D3 F2 00 00 D2 F3 00 00 D3' - 'F3 00 00 D5 F2 00 00 D4 F3 00 00 D5 F4 00 00 D6' - 'F5 00 01 D6 F5 00 01 D7 F5 00 00 D9 F4 00 01 D8' - 'F5 00 01 D9 F6 00 00 DA F7 00 01 DA F7 00 00 DB' - 'F7 00 01 DB F7 00 01 DD F8 00 01 DE F9 00 01 DF' - 'F9 00 01 E0 F9 00 01 E1 FA 00 01 E2 FA 00 01 F0' - 'FD 00 01 F1 FD 00 01 F2 FD 00 01 F3 FD 00 00 FB' - 'FC 00 00 FC FF 00 00 FD FF 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 F0 FB' - 'FF 00 A4 A0 A0 00 80 80 80 00 00 00 FF 00 00 FF' - '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF' - '00 00 FF FF FF 00 3B 2C 2C 2C 2C 2C 26 25 25 25' - '25 25 25 25 1C 1A 6F 62 54 54 54 4E 4E 49 49 49' - '49 3F 3F 3F 39 2C 00 6A 54 54 54 54 54 17 16 49' - '49 49 49 3F 33 00 00 6F 64 54 54 54 54 11 0F 4E' - '49 49 49 3F 2D 00 00 00 6A 54 54 54 54 49 49 4E' - '4E 49 49 34 00 00 00 00 6F 64 54 54 54 18 19 54' - '4E 4E 49 2E 00 00 00 00 00 6A 62 54 54 13 16 54' - '54 4E 34 00 00 00 00 00 00 6F 64 62 54 11 13 54' - '54 49 2F 00 00 00 00 00 00 00 6A 62 62 0D 11 54' - '54 36 00 00 00 00 00 00 00 00 6F 67 62 0B 0F 54' - '54 2F 00 00 00 00 00 00 00 00 00 6A 62 0A 0B 54' - '39 00 00 00 00 00 00 00 00 00 00 6F 67 1D 25 54' - '31 00 00 00 00 00 00 00 00 00 00 00 6A 62 62 39' - '00 00 00 00 00 00 00 00 00 00 00 00 6F 67 62 31' - '00 00 00 00 00 00 00 00 00 00 00 00 00 6A 3B 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 6F 4B 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 01' - '00 00 80 01 00 00 C0 03 00 00 C0 03 00 00 E0 07' - '00 00 E0 07 00 00 F0 0F 00 00 F0 0F 00 00 F8 1F' - '00 00 F8 1F 00 00 FC 3F 00 00 FC 3F 00 00 FE 7F' - '00 00 FE 7F 00 00 28 00 00 00 10 00 00 00 20 00' - '00 00 01 00 20 00 00 00 00 00 40 04 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 CD' - 'E3 B0 00 97 AE F9 00 94 AA F8 00 93 A9 F8 00 92' - 'A9 F8 00 90 A8 F8 00 8F A8 F8 00 8E A7 F8 00 8D' - 'A7 F8 00 8C A6 F8 00 8C A6 F8 00 8B A5 F8 00 8A' - 'A5 F8 00 89 A5 F8 00 84 9E F9 00 60 75 AE 00 FC' - 'FF D9 00 DB F7 FF 00 D3 F2 FF 00 D2 F2 FF 00 D0' - 'F1 FF 00 CF F0 FF 00 CE F0 FF 00 CD EF FF 00 CB' - 'EE FF 00 CA EE FF 00 C9 ED FF 00 C7 EC FF 00 C6' - 'EC FF 00 C5 EB FF 00 C0 E6 FF 00 92 AF D8 00 FF' - 'FF 5D 01 F0 FD FF 00 D5 F4 FF 00 D4 F3 FF 00 D3' - 'F3 FF 00 D1 F2 FF 00 D0 F1 FF 00 47 53 FF 00 42' - '4D FF 00 CC EF FF 00 CB EF FF 00 CA EE FF 00 C8' - 'EE FF 00 C7 ED FF 00 B5 D8 FF 00 98 B6 5C 00 FF' - 'FF 03 00 FD FF D9 01 DD F8 FF 00 D5 F4 FF 00 D4' - 'F3 FF 00 D3 F3 FF 00 D1 F2 FF 00 2C 33 FF 00 25' - '2C FF 00 CD F0 FF 00 CC EF FF 00 CB EF FF 00 CA' - 'EE FF 00 C5 EA FF 00 A3 C3 D9 00 AA AA 03 00 00' - '00 00 00 FF FF 5E 01 F0 FD FF 01 D7 F5 FF 00 D5' - 'F4 FF 00 D4 F3 FF 00 D3 F3 FF 00 CF EF FF 00 CD' - 'EE FF 00 CF F1 FF 00 CD F0 FF 00 CC EF FF 00 CB' - 'EF FF 00 B8 D9 FF 00 9A B5 5E 00 00 00 00 00 00' - '00 00 00 FF FF 04 00 FD FF DA 01 DE F9 FF 01 D6' - 'F5 FF 00 D5 F4 FF 00 D4 F3 FF 00 4E 5A FF 00 58' - '66 FF 00 D0 F1 FF 00 CF F1 FF 00 CD F0 FF 00 C9' - 'EC FF 00 A6 C3 DA 00 7F BF 04 00 00 00 00 00 00' - '00 00 00 00 00 00 00 FF FF 5F 01 F1 FD FF 01 D8' - 'F5 FF 01 D6 F5 FF 00 D5 F4 FF 00 35 3D FF 00 40' - '4A FF 00 D1 F2 FF 00 D0 F1 FF 00 CF F1 FF 00 BB' - 'DB FF 00 9B B6 5F 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 FF FF 04 00 FD FF DB 01 DF' - 'F9 FF 01 D8 F5 FF 01 D6 F5 FF 00 2C 32 FF 00 37' - '3F FF 00 D2 F3 FF 00 D1 F2 FF 00 CD EE FF 00 AA' - 'C5 DB 00 7F BF 04 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 FF FF 61 01 F1' - 'FD FF 01 D9 F6 FF 01 D8 F5 FF 00 22 27 FF 00 2D' - '34 FF 00 D4 F3 FF 00 D2 F3 FF 00 C0 DE FF 00 A2' - 'B9 60 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 FF FF 04 00 FD' - 'FF DC 01 E0 F9 FF 01 D9 F6 FF 00 19 1C FF 00 24' - '29 FF 00 D5 F4 FF 00 D1 F0 FF 00 AD C8 DC 00 7F' - 'BF 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF' - 'FF 62 01 F2 FD FF 01 DA F7 FF 00 10 12 FF 00 1A' - '1E FF 00 D6 F5 FF 00 C3 E0 FF 00 A5 BD 61 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FF' - 'FF 04 00 FD FF DD 01 E1 FA FF 00 89 9B FF 00 8D' - 'A0 FF 00 D5 F2 FF 00 B0 C9 DD 00 BF BF 04 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 FF FF 63 01 F3 FD FF 01 DB F7 FF 00 DA' - 'F7 FF 00 C6 E1 FF 00 A7 BE 63 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 FF FF 05 00 FD FF DE 01 E2 FA FF 00 D9' - 'F4 FF 00 B2 C9 DE 00 99 CC 05 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 FF FF 64 01 F3 FD FF 00 CD' - 'E6 FF 00 AA BF 64 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 FF FF 06 00 FF FF C8 00 E0' - 'EF C7 00 CC CC 05 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 01' - '00 00 80 01 00 00 C0 03 00 00 C0 03 00 00 E0 07' - '00 00 E0 07 00 00 F0 0F 00 00 F0 0F 00 00 F8 1F' - '00 00 F8 1F 00 00 FC 3F 00 00 FC 3F 00 00' + '00 00 80 00 80 00 80 80 00 00 C0 C0 C0 00 80 80' + '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00' + '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 03 33' + '33 33 33 33 33 33 00 00 00 00 00 00 00 03 0B BB' + 'BB BB BB BB BB 03 00 BB BB 30 3B BB B0 30 00 BB' + 'BB 30 3B BB B0 30 00 0B BB BB BB BB 03 00 00 0B' + 'BB B0 BB BB 03 00 00 00 BB 30 3B B0 30 00 00 00' + 'BB 00 0B B0 30 00 00 00 0B 00 0B 03 00 00 00 00' + '0B B0 BB 03 00 00 00 00 00 BB B0 30 00 00 00 00' + '00 BB B0 30 00 00 00 00 00 0B 03 00 00 00 00 00' + '00 0B 03 00 00 00 00 00 00 00 30 00 00 00 80 00' + '00 00 00 00 00 00 00 00 00 00 80 01 00 00 80 01' + '00 00 C0 03 00 00 C0 03 00 00 E0 07 00 00 E0 07' + '00 00 F0 0F 00 00 F0 0F 00 00 F8 1F 00 00 F8 1F' + '00 00 FC 3F 00 00 FC 3F 00 00 FE 7F 00 00' } */ /* BINRES idi_tt_error_sm.ico */ IDI_TT_ERROR_SM ICON LOADONCALL DISCARDABLE idi_tt_error_sm.ico /* { - '00 00 01 00 03 00 10 10 10 00 01 00 04 00 28 01' - '00 00 36 00 00 00 10 10 00 00 01 00 08 00 68 05' - '00 00 5E 01 00 00 10 10 00 00 01 00 20 00 68 04' - '00 00 C6 06 00 00 28 00 00 00 10 00 00 00 20 00' - '00 00 01 00 04 00 00 00 00 00 80 00 00 00 00 00' + '00 00 01 00 01 00 10 10 10 00 00 00 00 00 28 01' + '00 00 16 00 00 00 28 00 00 00 10 00 00 00 20 00' + '00 00 01 00 04 00 00 00 00 00 C0 00 00 00 00 00' '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' '00 00 00 00 80 00 00 80 00 00 00 80 80 00 80 00' - '00 00 80 00 80 00 80 80 00 00 80 80 80 00 C0 C0' - 'C0 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00' + '00 00 80 00 80 00 80 80 00 00 C0 C0 C0 00 80 80' + '80 00 00 00 FF 00 00 FF 00 00 00 FF FF 00 FF 00' '00 00 FF 00 FF 00 FF FF 00 00 FF FF FF 00 00 00' - '00 11 11 00 00 00 00 00 11 99 99 11 00 00 00 01' - '99 99 99 99 10 00 00 F9 F9 99 99 9F 91 00 0F 9F' - 'FF 99 99 FF F9 10 0F 99 FF F9 9F FF 99 10 F9 99' - '9F FF FF F9 99 91 F9 99 99 FF FF 99 99 91 F9 99' - '99 FF FF 99 99 91 F9 99 9F FF FF F9 99 91 0F 99' - 'FF F9 9F FF 99 10 0F 9F FF 99 99 FF F9 10 00 F9' - 'F9 99 99 9F 91 00 00 0F 99 99 99 99 F0 00 00 00' - 'FF 99 99 FF 00 00 00 00 00 FF FF 00 00 00 FC 3F' - '00 00 F0 0F 00 00 E0 07 00 00 C0 03 00 00 80 01' - '00 00 80 01 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 80 01 00 00 80 01 00 00 C0 03' - '00 00 E0 07 00 00 F0 0F 00 00 FC 3F 00 00 28 00' - '00 00 10 00 00 00 20 00 00 00 01 00 08 00 00 00' - '00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01' - '00 00 00 01 00 00 00 00 00 00 00 00 80 00 00 80' - '00 00 00 80 80 00 80 00 00 00 80 00 80 00 80 80' - '00 00 C0 C0 C0 00 C0 DC C0 00 F0 CA A6 00 00 00' - '68 00 00 00 6B 00 00 00 76 00 00 00 7B 00 00 00' - '7F 00 FF FF 00 00 00 00 8A 00 00 00 8B 00 00 00' - '8C 00 00 00 8E 00 00 00 96 00 00 00 AA 00 00 00' - 'AB 00 00 00 B7 00 00 00 B8 00 00 00 C5 00 01 01' - 'C9 00 03 03 C9 00 00 00 CD 00 00 00 CE 00 00 00' - 'CF 00 00 00 D0 00 00 00 D1 00 00 00 D3 00 00 00' - 'D5 00 00 00 D7 00 00 00 D9 00 03 03 DA 00 17 17' - 'D5 00 17 17 D9 00 17 17 DC 00 19 19 DE 00 20 20' - 'D7 00 20 20 DA 00 20 20 DE 00 00 00 E2 00 00 00' - 'E5 00 00 00 E7 00 05 05 E4 00 00 00 E9 00 00 00' - 'EB 00 00 00 ED 00 00 00 EE 00 00 00 EF 00 17 17' - 'E7 00 1E 1E E6 00 17 17 EB 00 17 17 EE 00 00 00' - 'F0 00 00 00 F2 00 00 00 F4 00 00 00 F5 00 00 00' - 'F6 00 05 05 F4 00 08 08 F4 00 00 00 FA 00 00 00' - 'FD 00 00 00 FE 00 00 00 FF 00 20 20 E8 00 20 20' - 'EC 00 20 20 EF 00 45 45 D9 00 51 51 E9 00 5E 5E' - 'F7 00 CC CC F5 00 D4 D4 F7 00 D7 D7 F7 00 D2 D2' - 'F8 00 D4 D4 F8 00 D4 D4 F9 00 D7 D7 F9 00 D5 D5' - 'FA 00 D4 D4 FB 00 D2 D2 FC 00 D8 D8 FA 00 DD DD' - 'FB 00 DD DD FC 00 E0 E0 F9 00 E0 E0 FA 00 E0 E0' - 'FB 00 E0 E0 FC 00 FF FF FF 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 F0 FB' - 'FF 00 A4 A0 A0 00 80 80 80 00 00 00 FF 00 00 FF' - '00 00 00 FF FF 00 FF 00 00 00 FF 00 FF 00 FF FF' - '00 00 FF FF FF 00 00 00 00 00 00 00 13 11 0E 0B' - '00 00 00 00 00 00 00 00 00 00 18 19 1D 1F 1D 19' - '16 0C 00 00 00 00 00 00 00 21 25 24 23 22 21 20' - '1E 1B 14 00 00 00 00 00 2D 49 4E 29 24 23 22 21' - '2A 4D 48 14 00 00 00 3D 30 55 5C 51 29 24 23 2B' - '58 5C 4B 1A 0C 00 00 3B 2E 37 56 5C 51 29 2C 59' - '5C 4C 26 1E 15 00 43 34 2F 2E 37 56 5C 51 59 5C' - '4F 27 21 20 19 0A 43 34 31 2F 2E 37 56 5C 5C 50' - '28 23 22 21 1C 0D 44 3A 32 31 2F 45 5A 5C 5C 51' - '29 24 23 22 1F 10 44 3C 33 32 46 5B 5C 52 56 5C' - '51 29 24 23 1D 12 00 41 35 47 5B 5C 53 36 37 56' - '5C 51 29 24 19 00 00 43 40 57 5C 53 38 2F 2E 37' - '56 5C 4E 25 17 00 00 00 42 4A 54 39 32 31 2F 2E' - '37 55 49 21 00 00 00 00 00 42 3F 35 33 32 31 2F' - '2E 30 2D 00 00 00 00 00 00 00 43 41 3D 3A 34 34' - '3B 3E 00 00 00 00 00 00 00 00 00 00 44 44 43 43' - '00 00 00 00 00 00 FC 3F 00 00 F0 0F 00 00 E0 07' - '00 00 C0 03 00 00 80 01 00 00 80 01 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 01' - '00 00 80 01 00 00 C0 03 00 00 E0 07 00 00 F0 0F' - '00 00 FC 3F 00 00 28 00 00 00 10 00 00 00 20 00' - '00 00 01 00 20 00 00 00 00 00 40 04 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - 'A1 29 00 00 99 8D 00 00 97 CF 00 00 94 F0 00 00' - '8A F0 00 00 79 CF 00 00 61 8D 00 00 52 28 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 D4 06 00 00 BB 8F 00 00' - 'BE FC 00 00 CB FF 00 00 D1 FF 00 00 D2 FF 00 00' - 'D0 FF 00 00 CA FF 00 00 B6 FF 00 00 85 FB 00 00' - '58 8D 00 00 33 05 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 D4 06 00 00 D4 B6 00 00 D6 FF 0A 0A' - 'DC FF 00 00 D9 FF 00 00 D7 FF 00 00 D5 FF 00 00' - 'D3 FF 00 00 D1 FF 00 00 CF FF 0A 0A CD FF 00 00' - 'A4 FF 00 00 5D B4 00 00 33 05 00 00 00 00 00 00' - '00 00 00 00 ED 8F 00 00 E2 FF 70 70 ED FF D9 D9' - 'F9 FF 1B 1B DF FF 00 00 D9 FF 00 00 D7 FF 00 00' - 'D5 FF 00 00 D3 FF 24 24 D8 FF E0 E0 F9 FF 61 61' - 'DF FF 00 00 A4 FF 00 00 59 8C 00 00 00 00 00 00' - 'FF 29 00 00 F3 FC 0D 0D E5 FF E0 E0 FB FF FF FF' - 'FF FF DA DA FA FF 1B 1B DF FF 00 00 D9 FF 00 00' - 'D7 FF 24 24 DB FF E2 E2 FA FF FF FF FF FF D6 D6' - 'F7 FF 06 06 CD FF 00 00 84 FB 00 00 55 27 00 00' - 'FF 8E 00 00 EF FF 00 00 E5 FF 21 21 E7 FF E0 E0' - 'FB FF FF FF FF FF DA DA FA FF 1B 1B DF FF 24 24' - 'DE FF E2 E2 FA FF FF FF FF FF D8 D8 F8 FF 19 19' - 'D6 FF 00 00 CF FF 00 00 B6 FF 00 00 61 8B 00 00' - 'FF D0 00 00 EC FF 00 00 E7 FF 00 00 E5 FF 21 21' - 'E7 FF E0 E0 FB FF FF FF FF FF DA DA FA FF E2 E2' - 'FB FF FF FF FF FF D7 D7 F8 FF 19 19 D9 FF 00 00' - 'D3 FF 00 00 D1 FF 00 00 CA FF 00 00 79 CD 00 00' - 'FD F0 00 00 EC FF 00 00 E9 FF 00 00 E7 FF 00 00' - 'E5 FF 21 21 E7 FF E0 E0 FB FF FF FF FF FF FF FF' - 'FF FF D8 D8 F9 FF 19 19 DD FF 00 00 D7 FF 00 00' - 'D5 FF 00 00 D3 FF 00 00 D0 FF 00 00 89 EE 00 00' - 'FF F0 00 00 EE FF 00 00 EB FF 00 00 E9 FF 00 00' - 'E7 FF 24 24 E8 FF E2 E2 FB FF FF FF FF FF FF FF' - 'FF FF DA DA FA FF 1B 1B DF FF 00 00 D9 FF 00 00' - 'D7 FF 00 00 D5 FF 00 00 D2 FF 00 00 94 EE 00 00' - 'FF D0 00 00 F2 FF 00 00 ED FF 00 00 EB FF 24 24' - 'EC FF E2 E2 FC FF FF FF FF FF D8 D8 FA FF E0 E0' - 'FB FF FF FF FF FF DA DA FA FF 1B 1B DF FF 00 00' - 'D9 FF 00 00 D7 FF 00 00 D2 FF 00 00 96 CD 00 00' - 'FF 8E 00 00 F8 FF 00 00 EF FF 24 24 EF FF E2 E2' - 'FC FF FF FF FF FF D7 D7 FB FF 19 19 E7 FF 21 21' - 'E7 FF E0 E0 FB FF FF FF FF FF DA DA FA FF 1B 1B' - 'DF FF 00 00 D9 FF 00 00 CB FF 00 00 9A 8B 00 00' - 'FF 29 00 00 FD FC 12 12 F3 FF E2 E2 FD FF FF FF' - 'FF FF D8 D8 FB FF 19 19 EB FF 00 00 E7 FF 00 00' - 'E5 FF 21 21 E7 FF E0 E0 FB FF FF FF FF FF D9 D9' - 'F9 FF 0A 0A DC FF 00 00 BC FB 00 00 A3 27 00 00' - '00 00 00 00 FF 8F 00 00 FB FF 80 80 F8 FF D8 D8' - 'FC FF 19 19 EE FF 00 00 EB FF 00 00 E9 FF 00 00' - 'E7 FF 00 00 E5 FF 21 21 E7 FF E0 E0 FB FF 70 70' - 'ED FF 00 00 D6 FF 00 00 BC 8D 00 00 00 00 00 00' - '00 00 00 00 FF 06 00 00 FF B7 00 00 FB FF 0D 0D' - 'F3 FF 00 00 EF FF 00 00 ED FF 00 00 EB FF 00 00' - 'E9 FF 00 00 E7 FF 00 00 E5 FF 0D 0D E5 FF 00 00' - 'E2 FF 00 00 D4 B5 00 00 CC 05 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 FF 06 00 00 FF 8F 00 00' - 'FD FC 00 00 F8 FF 00 00 F3 FF 00 00 EE FF 00 00' - 'EC FF 00 00 EC FF 00 00 EF FF 00 00 F4 FB 00 00' - 'EB 8E 00 00 D4 06 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - 'FF 29 00 00 FF 8E 00 00 FF D0 00 00 FF F0 00 00' - 'FD F0 00 00 FD D0 00 00 FF 8D 00 00 FF 28 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 F0 0F' - '00 00 C0 03 00 00 80 01 00 00 80 01 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00' - '00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 01' - '00 00 80 01 00 00 C0 03 00 00 F0 0F 00 00' + '08 88 88 80 00 00 00 08 81 11 11 88 80 00 00 01' + '19 99 99 11 88 00 00 19 99 99 99 99 18 80 01 99' + 'F9 99 99 F9 91 80 01 9F FF 99 9F FF 91 88 19 99' + 'FF F9 FF F9 99 18 19 99 9F FF FF 99 99 18 19 99' + '99 FF F9 99 99 18 19 99 9F FF FF 99 99 10 19 99' + 'FF F9 FF F9 99 10 01 9F FF 99 9F FF 91 00 01 99' + 'F9 99 99 F9 91 00 00 19 99 99 99 99 10 00 00 01' + '19 99 99 11 00 00 00 00 01 11 11 00 00 00 F8 1F' + '00 00 E0 07 00 00 E0 03 00 00 C0 01 00 00 80 01' + '00 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00' + '00 00 00 01 00 00 00 01 00 00 80 03 00 00 80 03' + '00 00 C0 07 00 00 E0 0F 00 00 F8 3F 00 00' } */ @@ -1674,6 +1197,7 @@ IDI_TT_ERROR_SM ICON LOADONCALL DISCARDABLE idi_tt_error_sm.ico #include "comctl_Cs.rc" #include "comctl_De.rc" #include "comctl_En.rc" +#include "comctl_Eo.rc" #include "comctl_Es.rc" #include "comctl_Fr.rc" #include "comctl_Hu.rc" @@ -1688,4 +1212,5 @@ IDI_TT_ERROR_SM ICON LOADONCALL DISCARDABLE idi_tt_error_sm.ico #include "comctl_Si.rc" #include "comctl_Sv.rc" #include "comctl_Th.rc" +#include "comctl_Tr.rc" #include "comctl_Uk.rc" diff --git a/reactos/dll/win32/comctl32/smoothscroll.c b/reactos/dll/win32/comctl32/smoothscroll.c index f70c664f450..37e08cdb3cf 100644 --- a/reactos/dll/win32/comctl32/smoothscroll.c +++ b/reactos/dll/win32/comctl32/smoothscroll.c @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * TODO * - actually add smooth scrolling diff --git a/reactos/dll/win32/comctl32/status.c b/reactos/dll/win32/comctl32/status.c index 7c86815a484..9e7efbfdb5c 100644 --- a/reactos/dll/win32/comctl32/status.c +++ b/reactos/dll/win32/comctl32/status.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTE * @@ -786,6 +786,7 @@ STATUSBAR_SetTextT (STATUS_INFO *infoPtr, INT nPart, WORD style, part->text = ntext; } InvalidateRect(infoPtr->Self, &part->bound, FALSE); + UpdateWindow(infoPtr->Self); return TRUE; } diff --git a/reactos/dll/win32/comctl32/string.c b/reactos/dll/win32/comctl32/string.c index 35b05fa7fc3..82bfa5edc56 100644 --- a/reactos/dll/win32/comctl32/string.c +++ b/reactos/dll/win32/comctl32/string.c @@ -18,7 +18,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * */ diff --git a/reactos/dll/win32/comctl32/syslink.c b/reactos/dll/win32/comctl32/syslink.c index 7459bc3eecc..0baaa9a0252 100644 --- a/reactos/dll/win32/comctl32/syslink.c +++ b/reactos/dll/win32/comctl32/syslink.c @@ -1,7 +1,7 @@ /* * SysLink control * - * Copyright 2004, 2005 Thomas Weidenmueller + * Copyright 2004 - 2006 Thomas Weidenmueller * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * @@ -62,7 +62,6 @@ typedef enum typedef struct _DOC_ITEM { struct _DOC_ITEM *Next; /* Address to the next item */ - LPWSTR Text; /* Text of the document item */ UINT nText; /* Number of characters of the text */ SL_ITEM_TYPE Type; /* type of the item */ PDOC_TEXTBLOCK Blocks; /* Array of text blocks */ @@ -79,6 +78,7 @@ typedef struct _DOC_ITEM UINT Dummy; } Text; } u; + WCHAR Text[1]; /* Text of the document item */ } DOC_ITEM, *PDOC_ITEM; typedef struct @@ -117,8 +117,14 @@ static VOID SYSLINK_FreeDocItem (PDOC_ITEM DocItem) { if(DocItem->Type == slLink) { - Free(DocItem->u.Link.szID); - Free(DocItem->u.Link.szUrl); + if (DocItem->u.Link.szID != NULL) + { + Free(DocItem->u.Link.szID); + } + if (DocItem->u.Link.szUrl != NULL) + { + Free(DocItem->u.Link.szUrl); + } } /* we don't free Text because it's just a pointer to a character in the @@ -135,16 +141,16 @@ static PDOC_ITEM SYSLINK_AppendDocItem (SYSLINK_INFO *infoPtr, LPCWSTR Text, UIN SL_ITEM_TYPE type, PDOC_ITEM LastItem) { PDOC_ITEM Item; - Item = Alloc(sizeof(DOC_ITEM) + ((textlen + 1) * sizeof(WCHAR))); + + textlen = min(textlen, lstrlenW(Text)); + Item = Alloc(FIELD_OFFSET(DOC_ITEM, Text[textlen + 1])); if(Item == NULL) { ERR("Failed to alloc DOC_ITEM structure!\n"); return NULL; } - textlen = min(textlen, lstrlenW(Text)); Item->Next = NULL; - Item->Text = (LPWSTR)(Item + 1); Item->nText = textlen; Item->Type = type; Item->Blocks = NULL; @@ -159,7 +165,6 @@ static PDOC_ITEM SYSLINK_AppendDocItem (SYSLINK_INFO *infoPtr, LPCWSTR Text, UIN } lstrcpynW(Item->Text, Text, textlen + 1); - Item->Text[textlen] = 0; return Item; } @@ -351,12 +356,11 @@ CheckParameter: if(lpID != NULL) { nc = min(lenId, strlenW(lpID)); - nc = min(nc, MAX_LINKID_TEXT); - Last->u.Link.szID = Alloc((MAX_LINKID_TEXT + 1) * sizeof(WCHAR)); + nc = min(nc, MAX_LINKID_TEXT - 1); + Last->u.Link.szID = Alloc((nc + 1) * sizeof(WCHAR)); if(Last->u.Link.szID != NULL) { lstrcpynW(Last->u.Link.szID, lpID, nc + 1); - Last->u.Link.szID[nc] = 0; } } else @@ -364,12 +368,11 @@ CheckParameter: if(lpUrl != NULL) { nc = min(lenUrl, strlenW(lpUrl)); - nc = min(nc, L_MAX_URL_LENGTH); - Last->u.Link.szUrl = Alloc((L_MAX_URL_LENGTH + 1) * sizeof(WCHAR)); + nc = min(nc, L_MAX_URL_LENGTH - 1); + Last->u.Link.szUrl = Alloc((nc + 1) * sizeof(WCHAR)); if(Last->u.Link.szUrl != NULL) { lstrcpynW(Last->u.Link.szUrl, lpUrl, nc + 1); - Last->u.Link.szUrl[nc] = 0; } } else @@ -431,12 +434,11 @@ CheckParameter: if(lpID != NULL) { nc = min(lenId, strlenW(lpID)); - nc = min(nc, MAX_LINKID_TEXT); - Last->u.Link.szID = Alloc((MAX_LINKID_TEXT + 1) * sizeof(WCHAR)); + nc = min(nc, MAX_LINKID_TEXT - 1); + Last->u.Link.szID = Alloc((nc + 1) * sizeof(WCHAR)); if(Last->u.Link.szID != NULL) { lstrcpynW(Last->u.Link.szID, lpID, nc + 1); - Last->u.Link.szID[nc] = 0; } } else @@ -444,12 +446,11 @@ CheckParameter: if(lpUrl != NULL) { nc = min(lenUrl, strlenW(lpUrl)); - nc = min(nc, L_MAX_URL_LENGTH); - Last->u.Link.szUrl = Alloc((L_MAX_URL_LENGTH + 1) * sizeof(WCHAR)); + nc = min(nc, L_MAX_URL_LENGTH - 1); + Last->u.Link.szUrl = Alloc((nc + 1) * sizeof(WCHAR)); if(Last->u.Link.szUrl != NULL) { lstrcpynW(Last->u.Link.szUrl, lpUrl, nc + 1); - Last->u.Link.szUrl[nc] = 0; } } else @@ -751,6 +752,7 @@ static VOID SYSLINK_Render (SYSLINK_INFO *infoPtr, HDC hdc) { Free(bl); bl = NULL; + nBlocks = 0; } break; } @@ -769,11 +771,12 @@ static VOID SYSLINK_Render (SYSLINK_INFO *infoPtr, HDC hdc) { Free(bl); bl = NULL; + nBlocks = 0; } } else { - bl = Alloc((nBlocks + 1) * sizeof(DOC_TEXTBLOCK)); + bl = Alloc(sizeof(DOC_TEXTBLOCK)); if (bl != NULL) nBlocks++; } @@ -820,8 +823,6 @@ static VOID SYSLINK_Render (SYSLINK_INFO *infoPtr, HDC hdc) { Current->Blocks = bl; } - else - Current->Blocks = NULL; } SelectObject(hdc, hOldFont); @@ -877,10 +878,10 @@ static LRESULT SYSLINK_Draw (SYSLINK_INFO *infoPtr, HDC hdc) ExtTextOutW(hdc, bl->rc.left, bl->rc.top, ETO_OPAQUE | ETO_CLIPPED, &bl->rc, tx, bl->nChars, NULL); if((Current->Type == slLink) && (Current->u.Link.state & LIS_FOCUSED) && infoPtr->HasFocus) { - COLORREF PrevColor; - PrevColor = SetBkColor(hdc, OldBkColor); + COLORREF PrevTextColor; + PrevTextColor = SetTextColor(hdc, infoPtr->TextColor); DrawFocusRect(hdc, &bl->rc); - SetBkColor(hdc, PrevColor); + SetTextColor(hdc, PrevTextColor); } tx += bl->nChars; n -= bl->nChars + bl->nSkip; @@ -907,8 +908,11 @@ static LRESULT SYSLINK_Paint (SYSLINK_INFO *infoPtr, HDC hdcParam) PAINTSTRUCT ps; hdc = hdcParam ? hdcParam : BeginPaint (infoPtr->Self, &ps); - SYSLINK_Draw (infoPtr, hdc); - if (!hdcParam) EndPaint (infoPtr->Self, &ps); + if (hdc) + { + SYSLINK_Draw (infoPtr, hdc); + if (!hdcParam) EndPaint (infoPtr->Self, &ps); + } return 0; } @@ -972,8 +976,7 @@ static LRESULT SYSLINK_SetText (SYSLINK_INFO *infoPtr, LPCWSTR Text) /* clear the document */ SYSLINK_ClearDoc(infoPtr); - textlen = lstrlenW(Text); - if(Text == NULL || textlen == 0) + if(Text == NULL || (textlen = lstrlenW(Text)) == 0) { return TRUE; } @@ -983,9 +986,13 @@ static LRESULT SYSLINK_SetText (SYSLINK_INFO *infoPtr, LPCWSTR Text) { /* Render text position and word wrapping in memory */ HDC hdc = GetDC(infoPtr->Self); - SYSLINK_Render(infoPtr, hdc); - SYSLINK_Draw(infoPtr, hdc); - ReleaseDC(infoPtr->Self, hdc); + if (hdc != NULL) + { + SYSLINK_Render(infoPtr, hdc); + ReleaseDC(infoPtr->Self, hdc); + + InvalidateRect(infoPtr->Self, NULL, TRUE); + } } return TRUE; @@ -1031,8 +1038,10 @@ static PDOC_ITEM SYSLINK_SetFocusLink (SYSLINK_INFO *infoPtr, PDOC_ITEM DocItem) static LRESULT SYSLINK_SetItem (SYSLINK_INFO *infoPtr, PLITEM Item) { PDOC_ITEM di; + int nc; + PWSTR szId = NULL; + PWSTR szUrl = NULL; BOOL Repaint = FALSE; - BOOL Ret = TRUE; if(!(Item->mask & LIF_ITEMINDEX) || !(Item->mask & (LIF_FLAGSMASK))) { @@ -1046,7 +1055,60 @@ static LRESULT SYSLINK_SetItem (SYSLINK_INFO *infoPtr, PLITEM Item) ERR("Link %d couldn't be found\n", Item->iLink); return FALSE; } - + + if(Item->mask & LIF_ITEMID) + { + nc = min(lstrlenW(Item->szID), MAX_LINKID_TEXT - 1); + szId = Alloc((nc + 1) * sizeof(WCHAR)); + if(szId) + { + lstrcpynW(szId, Item->szID, nc + 1); + } + else + { + ERR("Unable to allocate memory for link id\n"); + return FALSE; + } + } + + if(Item->mask & LIF_URL) + { + nc = min(lstrlenW(Item->szUrl), L_MAX_URL_LENGTH - 1); + szUrl = Alloc((nc + 1) * sizeof(WCHAR)); + if(szUrl) + { + lstrcpynW(szUrl, Item->szUrl, nc + 1); + } + else + { + if (szId) + { + Free(szId); + } + + ERR("Unable to allocate memory for link url\n"); + return FALSE; + } + } + + if(Item->mask & LIF_ITEMID) + { + if(di->u.Link.szID) + { + Free(di->u.Link.szID); + } + di->u.Link.szID = szId; + } + + if(Item->mask & LIF_URL) + { + if(di->u.Link.szUrl) + { + Free(di->u.Link.szUrl); + } + di->u.Link.szUrl = szUrl; + } + if(Item->mask & LIF_STATE) { UINT oldstate = di->u.Link.state; @@ -1059,47 +1121,13 @@ static LRESULT SYSLINK_SetItem (SYSLINK_INFO *infoPtr, PLITEM Item) /* update the focus */ SYSLINK_SetFocusLink(infoPtr, ((di->u.Link.state & LIS_FOCUSED) ? di : NULL)); } - - if(Item->mask & LIF_ITEMID) - { - if(!di->u.Link.szID) - { - di->u.Link.szID = Alloc((MAX_LINKID_TEXT + 1) * sizeof(WCHAR)); - if(!Item->szID) - { - ERR("Unable to allocate memory for link id\n"); - Ret = FALSE; - } - } - if(di->u.Link.szID) - { - lstrcpynW(di->u.Link.szID, Item->szID, MAX_LINKID_TEXT + 1); - } - } - - if(Item->mask & LIF_URL) - { - if(!di->u.Link.szUrl) - { - di->u.Link.szUrl = Alloc((MAX_LINKID_TEXT + 1) * sizeof(WCHAR)); - if(!Item->szUrl) - { - ERR("Unable to allocate memory for link url\n"); - Ret = FALSE; - } - } - if(di->u.Link.szUrl) - { - lstrcpynW(di->u.Link.szUrl, Item->szUrl, MAX_LINKID_TEXT + 1); - } - } if(Repaint) { SYSLINK_RepaintLink(infoPtr, di); } - return Ret; + return TRUE; } /*********************************************************************** @@ -1137,7 +1165,7 @@ static LRESULT SYSLINK_GetItem (SYSLINK_INFO *infoPtr, PLITEM Item) { if(di->u.Link.szID) { - lstrcpynW(Item->szID, di->u.Link.szID, MAX_LINKID_TEXT + 1); + lstrcpyW(Item->szID, di->u.Link.szID); } else { @@ -1149,7 +1177,7 @@ static LRESULT SYSLINK_GetItem (SYSLINK_INFO *infoPtr, PLITEM Item) { if(di->u.Link.szUrl) { - lstrcpynW(Item->szUrl, di->u.Link.szUrl, L_MAX_URL_LENGTH + 1); + lstrcpyW(Item->szUrl, di->u.Link.szUrl); } else { @@ -1209,7 +1237,7 @@ static LRESULT SYSLINK_HitTest (SYSLINK_INFO *infoPtr, PLHITTESTINFO HitTest) HitTest->item.stateMask = 0; if(Current->u.Link.szID) { - lstrcpynW(HitTest->item.szID, Current->u.Link.szID, MAX_LINKID_TEXT + 1); + lstrcpyW(HitTest->item.szID, Current->u.Link.szID); } else { @@ -1217,7 +1245,7 @@ static LRESULT SYSLINK_HitTest (SYSLINK_INFO *infoPtr, PLHITTESTINFO HitTest) } if(Current->u.Link.szUrl) { - lstrcpynW(HitTest->item.szUrl, Current->u.Link.szUrl, L_MAX_URL_LENGTH + 1); + lstrcpyW(HitTest->item.szUrl, Current->u.Link.szUrl); } else { @@ -1279,7 +1307,7 @@ static LRESULT SYSLINK_SendParentNotify (SYSLINK_INFO *infoPtr, UINT code, PDOC_ nml.item.stateMask = 0; if(Link->u.Link.szID) { - lstrcpynW(nml.item.szID, Link->u.Link.szID, MAX_LINKID_TEXT + 1); + lstrcpyW(nml.item.szID, Link->u.Link.szID); } else { @@ -1287,7 +1315,7 @@ static LRESULT SYSLINK_SendParentNotify (SYSLINK_INFO *infoPtr, UINT code, PDOC_ } if(Link->u.Link.szUrl) { - lstrcpynW(nml.item.szUrl, Link->u.Link.szUrl, L_MAX_URL_LENGTH + 1); + lstrcpyW(nml.item.szUrl, Link->u.Link.szUrl); } else { diff --git a/reactos/dll/win32/comctl32/tab.c b/reactos/dll/win32/comctl32/tab.c index dd9dbe51dc2..4d022b08901 100644 --- a/reactos/dll/win32/comctl32/tab.c +++ b/reactos/dll/win32/comctl32/tab.c @@ -18,7 +18,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * @@ -261,9 +261,11 @@ static inline LRESULT TAB_SetCurSel (TAB_INFO *infoPtr, INT iItem) if (iItem >= 0 && iItem < infoPtr->uNumItem) { prevItem=infoPtr->iSelected; - infoPtr->iSelected=iItem; - TAB_EnsureSelectionVisible(infoPtr); - TAB_InvalidateTabArea(infoPtr); + if (infoPtr->iSelected != iItem) { + infoPtr->iSelected=iItem; + TAB_EnsureSelectionVisible(infoPtr); + TAB_InvalidateTabArea(infoPtr); + } } return prevItem; } @@ -1745,14 +1747,20 @@ TAB_DrawItemInterior if(lStyle & TCS_VERTICAL) { center_offset_h = ((drawRect->bottom - drawRect->top) - (cy + infoPtr->uHItemPadding + (rcText.right - rcText.left))) / 2; - center_offset_v = ((drawRect->right - drawRect->left) - (cx + infoPtr->uVItemPadding)) / 2; + center_offset_v = (drawRect->left + (drawRect->right - drawRect->left) - cx) / 2; } else { center_offset_h = ((drawRect->right - drawRect->left) - (cx + infoPtr->uHItemPadding + (rcText.right - rcText.left))) / 2; - center_offset_v = ((drawRect->bottom - drawRect->top) - (cy + infoPtr->uVItemPadding)) / 2; + center_offset_v = (drawRect->top + (drawRect->bottom - drawRect->top) - cy) / 2; } + /* if an item is selected, the icon is shifted up instead of down */ + if (iItem == infoPtr->iSelected) + center_offset_v -= infoPtr->uVItemPadding / 2; + else + center_offset_v += infoPtr->uVItemPadding / 2; + if (lStyle & TCS_FIXEDWIDTH && lStyle & (TCS_FORCELABELLEFT | TCS_FORCEICONLEFT)) center_offset_h = infoPtr->uHItemPadding; diff --git a/reactos/dll/win32/comctl32/theme_combo.c b/reactos/dll/win32/comctl32/theme_combo.c index fd6f75718af..d3d563ec252 100644 --- a/reactos/dll/win32/comctl32/theme_combo.c +++ b/reactos/dll/win32/comctl32/theme_combo.c @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * */ diff --git a/reactos/dll/win32/comctl32/theme_dialog.c b/reactos/dll/win32/comctl32/theme_dialog.c index fe390242c72..cfcb56f937b 100644 --- a/reactos/dll/win32/comctl32/theme_dialog.c +++ b/reactos/dll/win32/comctl32/theme_dialog.c @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * */ @@ -74,8 +74,8 @@ LRESULT CALLBACK THEMING_DialogSubclassProc (HWND hWnd, UINT msg, if (!doTheming) return THEMING_CallOriginalClass (hWnd, msg, wParam, lParam); { RECT rc; - DLGPROC dlgp = (DLGPROC)GetWindowLongPtrW (hWnd, DWLP_DLGPROC); - if (!dlgp (hWnd, msg, wParam, lParam)) + WNDPROC dlgp = (WNDPROC)GetWindowLongPtrW (hWnd, DWLP_DLGPROC); + if (!CallWindowProcW(dlgp, hWnd, msg, wParam, lParam)) { /* Draw background*/ GetClientRect (hWnd, &rc); @@ -104,8 +104,8 @@ LRESULT CALLBACK THEMING_DialogSubclassProc (HWND hWnd, UINT msg, case WM_CTLCOLORSTATIC: if (!doTheming) return THEMING_CallOriginalClass (hWnd, msg, wParam, lParam); { - DLGPROC dlgp = (DLGPROC)GetWindowLongPtrW (hWnd, DWLP_DLGPROC); - LRESULT result = (LRESULT)dlgp (hWnd, msg, wParam, lParam); + WNDPROC dlgp = (WNDPROC)GetWindowLongPtrW (hWnd, DWLP_DLGPROC); + LRESULT result = CallWindowProcW(dlgp, hWnd, msg, wParam, lParam); if (!result) { /* Override defaults with more suitable values when themed */ diff --git a/reactos/dll/win32/comctl32/theme_edit.c b/reactos/dll/win32/comctl32/theme_edit.c index 36141a14ee3..3cbf7608121 100644 --- a/reactos/dll/win32/comctl32/theme_edit.c +++ b/reactos/dll/win32/comctl32/theme_edit.c @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * */ diff --git a/reactos/dll/win32/comctl32/theme_listbox.c b/reactos/dll/win32/comctl32/theme_listbox.c index aec9c5585e2..93e9ac7d926 100644 --- a/reactos/dll/win32/comctl32/theme_listbox.c +++ b/reactos/dll/win32/comctl32/theme_listbox.c @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * */ diff --git a/reactos/dll/win32/comctl32/theming.c b/reactos/dll/win32/comctl32/theming.c index d59672f66cf..87b4db30650 100644 --- a/reactos/dll/win32/comctl32/theming.c +++ b/reactos/dll/win32/comctl32/theming.c @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * */ diff --git a/reactos/dll/win32/comctl32/toolbar.c b/reactos/dll/win32/comctl32/toolbar.c index 64be7ec9289..e84150ebe1c 100644 --- a/reactos/dll/win32/comctl32/toolbar.c +++ b/reactos/dll/win32/comctl32/toolbar.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * @@ -6167,7 +6167,7 @@ TOOLBAR_LButtonUp (HWND hwnd, WPARAM wParam, LPARAM lParam) * NM_CLICK with the NMMOUSE structure. */ nmmouse.dwHitInfo = nHit; - if (nmmouse.dwHitInfo < 0) + if (nHit < 0) nmmouse.dwItemSpec = -1; else { diff --git a/reactos/dll/win32/comctl32/tooltips.c b/reactos/dll/win32/comctl32/tooltips.c index c16fd7e6f02..83064f26795 100644 --- a/reactos/dll/win32/comctl32/tooltips.c +++ b/reactos/dll/win32/comctl32/tooltips.c @@ -16,7 +16,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * @@ -2025,7 +2025,8 @@ TOOLTIPS_SetToolInfoA (HWND hwnd, WPARAM wParam, LPARAM lParam) else { if ( (toolPtr->lpszText) && !IS_INTRESOURCE(toolPtr->lpszText) ) { - Free (toolPtr->lpszText); + if( toolPtr->lpszText != LPSTR_TEXTCALLBACKW) + Free (toolPtr->lpszText); toolPtr->lpszText = NULL; } if (lpToolInfo->lpszText) { @@ -2082,7 +2083,8 @@ TOOLTIPS_SetToolInfoW (HWND hwnd, WPARAM wParam, LPARAM lParam) else { if ( (toolPtr->lpszText) && !IS_INTRESOURCE(toolPtr->lpszText) ) { - Free (toolPtr->lpszText); + if( toolPtr->lpszText != LPSTR_TEXTCALLBACKW) + Free (toolPtr->lpszText); toolPtr->lpszText = NULL; } if (lpToolInfo->lpszText) { @@ -2208,7 +2210,8 @@ TOOLTIPS_UpdateTipTextA (HWND hwnd, WPARAM wParam, LPARAM lParam) else { if ( (toolPtr->lpszText) && !IS_INTRESOURCE(toolPtr->lpszText) ) { - Free (toolPtr->lpszText); + if( toolPtr->lpszText != LPSTR_TEXTCALLBACKW) + Free (toolPtr->lpszText); toolPtr->lpszText = NULL; } if (lpToolInfo->lpszText) { @@ -2265,7 +2268,8 @@ TOOLTIPS_UpdateTipTextW (HWND hwnd, WPARAM wParam, LPARAM lParam) else { if ( (toolPtr->lpszText) && !IS_INTRESOURCE(toolPtr->lpszText) ) { - Free (toolPtr->lpszText); + if( toolPtr->lpszText != LPSTR_TEXTCALLBACKW) + Free (toolPtr->lpszText); toolPtr->lpszText = NULL; } if (lpToolInfo->lpszText) { diff --git a/reactos/dll/win32/comctl32/trackbar.c b/reactos/dll/win32/comctl32/trackbar.c index 7094e049994..aecde79a17b 100644 --- a/reactos/dll/win32/comctl32/trackbar.c +++ b/reactos/dll/win32/comctl32/trackbar.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTE * diff --git a/reactos/dll/win32/comctl32/treeview.c b/reactos/dll/win32/comctl32/treeview.c index 2aaf41e2a4e..499faa2eeb4 100644 --- a/reactos/dll/win32/comctl32/treeview.c +++ b/reactos/dll/win32/comctl32/treeview.c @@ -17,7 +17,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTES * @@ -1299,6 +1299,7 @@ TREEVIEW_InsertItemT(TREEVIEW_INFO *infoPtr, const TVINSERTSTRUCTW *ptdi, BOOL i { TREEVIEW_ITEM *aChild; TREEVIEW_ITEM *previousChild = NULL; + TREEVIEW_ITEM *originalFirst = parentItem->firstChild; BOOL bItemInserted = FALSE; aChild = parentItem->firstChild; @@ -1317,6 +1318,9 @@ TREEVIEW_InsertItemT(TREEVIEW_INFO *infoPtr, const TVINSERTSTRUCTW *ptdi, BOOL i if (comp < 0) /* we are smaller than the current one */ { TREEVIEW_InsertBefore(newItem, aChild, parentItem); + if (infoPtr->firstVisible == originalFirst && + aChild == originalFirst) + TREEVIEW_SetFirstVisible(infoPtr, newItem, TRUE); bItemInserted = TRUE; break; } @@ -2316,11 +2320,14 @@ TREEVIEW_DrawItemLines(TREEVIEW_INFO *infoPtr, HDC hdc, TREEVIEW_ITEM *item) { HPEN hOldPen, hNewPen; HTREEITEM parent; + LOGBRUSH lb; /* * Get a dotted grey pen */ - hNewPen = CreatePen(PS_ALTERNATE, 0, infoPtr->clrLine); + lb.lbStyle = BS_SOLID; + lb.lbColor = infoPtr->clrLine; + hNewPen = ExtCreatePen(PS_COSMETIC|PS_ALTERNATE, 1, &lb, 0, NULL); hOldPen = SelectObject(hdc, hNewPen); MoveToEx(hdc, item->stateOffset, centery, NULL); @@ -2821,6 +2828,8 @@ TREEVIEW_Refresh(TREEVIEW_INFO *infoPtr, HDC hdc, RECT *rc) } } + TREEVIEW_UpdateScrollBars(infoPtr); + if (infoPtr->cdmode & CDRF_NOTIFYPOSTPAINT) infoPtr->cdmode = TREEVIEW_SendCustomDrawNotify(infoPtr, CDDS_POSTPAINT, hdc, rect); @@ -3325,7 +3334,6 @@ TREEVIEW_Expand(TREEVIEW_INFO *infoPtr, TREEVIEW_ITEM *wineItem, } } } - TREEVIEW_UpdateScrollBars(infoPtr); return TRUE; } diff --git a/reactos/dll/win32/comctl32/updown.c b/reactos/dll/win32/comctl32/updown.c index cda2668d953..7fbe3c934d5 100644 --- a/reactos/dll/win32/comctl32/updown.c +++ b/reactos/dll/win32/comctl32/updown.c @@ -15,7 +15,7 @@ * * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * * NOTE *