mirror of
https://github.com/reactos/reactos.git
synced 2024-09-28 13:34:53 +00:00
revert r22824 as requested by Fireball.
The auto sync didn't work as expected. svn path=/trunk/; revision=22843
This commit is contained in:
parent
762103b6c0
commit
4334d625a1
|
@ -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;
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -1,130 +0,0 @@
|
|||
Sync to Wine-0_9_15:
|
||||
Mikoaj Zalewski <mikolaj@zalewski.pl>
|
||||
- comctl32: header: Put the new item in place of the hot divider instead of swapping.
|
||||
- comctl32: header: Draw the drag image and hot dividers while dragging an item.
|
||||
- comctl32: header: Fix an order-related bug in HEADER_InternalHitTest.
|
||||
- comctl32: header: Implement HDM_SETHOTDIVIDER.
|
||||
- comctl32: header: Implement HDM_CREATEDRAGIMAGE.
|
||||
- comctl32: listview: Apply the HDS_DRAGDROP header style if needed.
|
||||
- comctl32: header: Update the rects in HEADER_Refresh if needed.
|
||||
- comctl32: header: Ignore out-of-range iOrder in SetItemT.
|
||||
Paul Vriens <Paul.Vriens@xs4all.nl>
|
||||
- comctl32/header: Check Null before accessing struct member.
|
||||
Alexandre Julliard <julliard@winehq.org>
|
||||
- comctl32: Dialog procedures should be called with CallWindowProc.
|
||||
|
||||
Sync to Wine-0_9_14:
|
||||
Mikoaj Zalewski <mikolaj@zalewski.pl>
|
||||
- comctl32: header: Don't try to draw items outside the clipping rect.
|
||||
- comctl32: header: Make the column resizing smooth in full drag mode.
|
||||
Jonathan Ernst <jonathan@ernstfamily.ch>
|
||||
- Update the address of the Free Software Foundation.
|
||||
- Uniformization of French main menu accelerators.
|
||||
|
||||
Sync to Wine-0_9_13:
|
||||
Mikoaj Zalewski <mikolaj@zalewski.pl>
|
||||
- comctl32: Add Str_SetPtrWtoA analogue to Str_SetPtrAtoW.
|
||||
qingdoa daoo <qingdao33122@yahoo.com>
|
||||
- comctl32: Change return code comparison in AVI control.
|
||||
- comctl32: Fix an unsigned comparison to zero.
|
||||
- comctl32: Update first visible when appropiate in the TVI_SORT case.
|
||||
Saulius Krasuckas <saulius2@ar.fi.lt>
|
||||
- comctl32: Increase FILEVERSION up to 5.81.4704.1100.
|
||||
|
||||
Sync to Wine-0_9_12:
|
||||
Mike Hearn <mike@plan99.net>
|
||||
- comctl32: Add OOM codepath in imagelist control.
|
||||
Antonio Codazzi <f_sophia@libero.it>
|
||||
- comctl32: Italian language updates.
|
||||
- comctl32: Esperanto language support.
|
||||
|
||||
Sync to Wine-0_9_11:
|
||||
Rein Klazes <wijn@wanadoo.nl>
|
||||
- comctl32: Do not free LPSTR_TEXTCALLBACK tooltip texts.
|
||||
James Hawkins <truiken@gmail.com>
|
||||
- comctl32: A couple fixes for tab icon offsets.
|
||||
Thomas Weidenmueller <wine-patches@reactsoft.com>
|
||||
- comctl32: Rebar size fix.
|
||||
Mike McCormack <mike@codeweavers.com>
|
||||
- comctl32: Having an MRU list without a compare function works in Windows.
|
||||
|
||||
Sync to Wine-0_9_10:
|
||||
András Kovács <andras@csevego.net>
|
||||
- comctl32: Added Hungarian translation.
|
||||
Mike McCormack <mike@codeweavers.com>
|
||||
- comctl32: Fix some gcc 4.1 warnings caused by windowsx.h macros.
|
||||
|
||||
Sync to Wine-0_9_9:
|
||||
Vitaliy Margolen <wine-patch@kievinfo.com>
|
||||
- comctl32: Remove/swap limits if min > max in MCM_SETRANGE.
|
||||
We should swap min & max only when both limits are being
|
||||
set. Otherwise limit that being set should invalidate other limit
|
||||
(remove it).
|
||||
- comctl32: Don't change month range in MCM_SETRANGE. Add tests for this.
|
||||
|
||||
Sync to Wine-0_9_8:
|
||||
Vitaliy Margolen <wine-patch@kievinfo.com>
|
||||
- comctl32: Fix invalid date/time check in MCM_SETRANGE: ignore time and fail on bad date.
|
||||
Francois Gouget <fgouget@free.fr>
|
||||
- Assorted spelling fixes.
|
||||
Petr Tesarik <hat@tesarici.cz>
|
||||
- comctl32: Czech language resources encoding fix.
|
||||
Fatih Ac <fasici@linux-sevenler.org>
|
||||
- comctl32: Turkish translation.
|
||||
|
||||
Sync to Wine-0_9_7:
|
||||
Alexandre Julliard <julliard@winehq.org>
|
||||
- Fixed creation of PS_ALTERNATE pens.
|
||||
|
||||
Sync to Wine-0_9_6:
|
||||
Phil Krylov <phil@newstar.rinet.ru>
|
||||
- comctl32: Call UpdateWindow() after changing statusbar text.
|
||||
Thomas Weidenmueller <wine-patches@reactsoft.com>
|
||||
- comctl32: Reduce memory usage of the syslink control.
|
||||
- comctl32: Some painting fixes for the syslink control.
|
||||
Mike McCormack <mike@codeweavers.com>
|
||||
- comctl32: Invalidate the entire progress bar any time it changes.
|
||||
|
||||
Sync to Wine-0_9_5:
|
||||
Robert Reif <reif@earthlink.net>
|
||||
- comctl32: Create ipaddress in enabled state.
|
||||
Thomas Weidenmueller <wine-patches@reactsoft.com>
|
||||
- comctrl32: ReAlloc should be able to move memory blocks if necessary.
|
||||
|
||||
Sync to Wine-0_9_4:
|
||||
Dmitry Timoshkov <dmitry@codeweavers.com>
|
||||
- comctl32: Add a test for the initial tooltip window style settings,
|
||||
make it pass under Wine.
|
||||
Eric Pouech <eric.pouech@wanadoo.fr>
|
||||
- comctl32: Fixed (harmless) typo.
|
||||
|
||||
Sync to Wine-0_9_3:
|
||||
Francois Gouget <fgouget@free.fr>
|
||||
- Assorted spelling fixes.
|
||||
YunSong Hwang <hys545@dreamwiz.com>
|
||||
- Update Korean translations.
|
||||
|
||||
Sync to Wine-0_9_2:
|
||||
Francois Gouget <fgouget@free.fr>
|
||||
- Remove spaces before '\n' in traces.
|
||||
Thomas Weidenmueller <wine-patches@reactsoft.com>
|
||||
- Improved word wrapping and tab key handling.
|
||||
YunSong Hwang <hys545@dreamwiz.com>
|
||||
- Update Korean translations.
|
||||
Markus Amsler <markus.amsler@oribi.org>
|
||||
- Reformat "see" section, to match c2man requirements.
|
||||
|
||||
Sync to Wine-0_9_1:
|
||||
Michael Kaufmann <hallo@michael-kaufmann.ch>
|
||||
- Handle WM_PRINTCLIENT.
|
||||
Don't use SelectClipRgn in WM_PRINTCLIENT.
|
||||
Alex Villacís Lasso <a_villacis@palosanto.com>
|
||||
- Do not issue a GetUpdateRect() to query an update region for
|
||||
WM_PAINT(wParam=HDC) case. Instead, use GetClientRect() for a bounding
|
||||
rect.
|
||||
Vincent Béron <vberon@mecano.gme.usherb.ca>
|
||||
- Move functions in comctl32/string.c to remove function declaration.
|
||||
Dmitry Timoshkov <dmitry@codeweavers.com>
|
||||
- Use Win32 APIs for string comparison.
|
||||
Martin Fuchs <martin-fuchs@gmx.net>
|
||||
- Include config.h and port.h for strncasecmp() in MSVC port.
|
|
@ -1,91 +1,56 @@
|
|||
<module name="comctl32" type="win32dll" baseaddress="${BASEADDRESS_COMCTL32}" installbase="system32" installname="comctl32.dll" allowwarnings="true">
|
||||
<autoregister infsection="OleControlDlls" type="DllInstall" />
|
||||
<importlibrary definition="comctl32.spec.def" />
|
||||
<include base="comctl32">.</include>
|
||||
<include base="ReactOS">include/reactos/wine</include>
|
||||
<define name="__REACTOS__" />
|
||||
<define name="__WINESRC__" />
|
||||
<define name="__USE_W32API" />
|
||||
<define name="_WIN32_IE">0x600</define>
|
||||
<define name="_WIN32_WINNT">0x501</define>
|
||||
<define name="WINVER">0x501</define>
|
||||
<library>wine</library>
|
||||
<library>user32</library>
|
||||
<library>gdi32</library>
|
||||
<library>advapi32</library>
|
||||
<library>ntdll</library>
|
||||
<library>kernel32</library>
|
||||
<library>winmm</library>
|
||||
<library>advapi32</library>
|
||||
<library>gdi32</library>
|
||||
<library>user32</library>
|
||||
<library>uxtheme</library>
|
||||
<library>ntdll</library>
|
||||
<library>winmm</library>
|
||||
<file>animate.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>comboex.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>comctl32undoc.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>commctrl.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>datetime.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>dpa.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>draglist.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>dsa.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>flatsb.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>header.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>hotkey.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>imagelist.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>ipaddress.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>listview.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>monthcal.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>nativefont.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>pager.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>progress.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>propsheet.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>rebar.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>smoothscroll.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>status.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>string.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>status.c</file>
|
||||
<file>syslink.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>tab.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>theme_combo.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>theme_dialog.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>theme_edit.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>theme_listbox.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>theming.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>toolbar.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>tooltips.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>trackbar.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>treeview.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>updown.c</file>
|
||||
<library>ntdll</library>
|
||||
<file>rsrc.rc</file>
|
||||
<file>comctl32.spec</file>
|
||||
</module>
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
|
||||
|
|
|
@ -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
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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_GERMAN, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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_ENGLISH, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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_SPANISH, SUBLANG_NEUTRAL
|
||||
|
|
|
@ -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
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
|
||||
|
@ -58,13 +58,13 @@ FONT 8, "MS Shell Dlg"
|
|||
BEGIN
|
||||
DEFPUSHBUTTON "&Fermer", IDCANCEL,308,6,44,14
|
||||
PUSHBUTTON "&Réinitialiser", IDC_RESET_BTN,308,23,44,14
|
||||
PUSHBUTTON "&Aide", IDC_HELP_BTN,308,40,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 "<- &Enlever", IDC_REMOVE_BTN,131,62,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
|
||||
|
|
|
@ -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_HUNGARIAN, SUBLANG_DEFAULT
|
||||
|
|
|
@ -14,7 +14,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_ITALIAN, SUBLANG_DEFAULT
|
||||
|
@ -34,13 +34,13 @@ END
|
|||
|
||||
IDD_WIZARD DIALOG DISCARDABLE 0, 0, 290, 159
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||
CAPTION "Wizard"
|
||||
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 "Anulla", IDCANCEL,178,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
|
||||
|
@ -50,19 +50,19 @@ 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"
|
||||
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
|
||||
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
|
||||
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
|
||||
|
||||
|
|
|
@ -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_JAPANESE, SUBLANG_DEFAULT
|
||||
|
|
|
@ -14,7 +14,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_KOREAN, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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_DUTCH, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -14,7 +14,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_POLISH, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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_PORTUGUESE, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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_RUSSIAN, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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_SLOVENIAN, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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_THAI, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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_TURKISH, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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_UKRAINIAN, SUBLANG_DEFAULT
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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?
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -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.
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
@ -309,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;
|
||||
|
||||
/*
|
||||
|
@ -1633,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;
|
||||
|
||||
|
@ -1665,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
|
||||
|
@ -1696,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)
|
||||
{
|
||||
|
@ -3045,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;
|
||||
|
||||
|
@ -3086,13 +3100,20 @@ 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);
|
||||
}
|
||||
|
||||
|
@ -4409,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
|
||||
|
@ -6525,6 +6547,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,
|
||||
isW ? HDM_INSERTITEMW : HDM_INSERTITEMA,
|
||||
|
@ -6740,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));
|
||||
|
@ -6762,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);
|
||||
}
|
||||
|
||||
/***
|
||||
|
@ -6843,6 +6875,16 @@ static DWORD LISTVIEW_SetExtendedListViewStyle(LISTVIEW_INFO *infoPtr, DWORD dwM
|
|||
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;
|
||||
}
|
||||
|
||||
|
@ -7521,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:
|
||||
|
@ -7573,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);
|
||||
|
@ -7582,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;
|
||||
|
@ -8365,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
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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?
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
@ -1920,7 +1920,7 @@ REBAR_Layout (REBAR_INFO *infoPtr, LPRECT lpRect, BOOL notify, BOOL resetclient)
|
|||
y = clientcy;
|
||||
}
|
||||
if (infoPtr->dwStyle & CCS_VERT) {
|
||||
if( x < REBAR_MINSIZE )
|
||||
if( infoPtr->uNumBands != 0 && x < REBAR_MINSIZE )
|
||||
x = REBAR_MINSIZE;
|
||||
infoPtr->calcSize.cx = x;
|
||||
infoPtr->calcSize.cy = clientcy;
|
||||
|
@ -1929,7 +1929,7 @@ REBAR_Layout (REBAR_INFO *infoPtr, LPRECT lpRect, BOOL notify, BOOL resetclient)
|
|||
if (notify && (x != origheight)) infoPtr->fStatus |= NTF_HGHTCHG;
|
||||
}
|
||||
else {
|
||||
if( y < REBAR_MINSIZE )
|
||||
if( infoPtr->uNumBands != 0 && y < REBAR_MINSIZE )
|
||||
y = REBAR_MINSIZE;
|
||||
infoPtr->calcSize.cx = clientcx;
|
||||
infoPtr->calcSize.cy = y;
|
||||
|
|
|
@ -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"
|
||||
|
@ -1197,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"
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
@ -1747,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;
|
||||
|
||||
|
|
|
@ -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
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
|
@ -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
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
|
@ -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
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
|
@ -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
|
||||
{
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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
|
||||
*
|
||||
|
|
Loading…
Reference in a new issue