Changeset 3242
- Timestamp:
- Mar 26, 2000, 6:32:33 PM (26 years ago)
- Location:
- trunk
- Files:
-
- 7 edited
-
changelog (modified) (1 diff)
-
include/win/commctrl.h (modified) (2 diffs)
-
include/win/listview.h (modified) (2 diffs)
-
include/win/shell.h (modified) (8 diffs)
-
include/win/shlguid.h (modified) (2 diffs)
-
include/win/wine/obj_shellfolder.h (modified) (12 diffs)
-
src/comctl32/listview.cpp (modified) (16 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/changelog
r3232 r3242 1 /* $Id: changelog,v 1.839 2000-03-24 23:14:00 sandervl Exp $ */ 1 /* $Id: changelog,v 1.840 2000-03-26 16:28:56 cbratschi Exp $ */ 2 3 2000-03-26: Christoph Bratschi <cbratschi@datacomm.ch> 4 - COMDLG32: 5 - SHELL32: merged with Corel WINE 20000324 2 6 3 7 2000-03-25: Sander van Leeuwen <sandervl@xs4all.nl> -
trunk/include/win/commctrl.h
r3181 r3242 1 /* $Id: commctrl.h,v 1.2 5 2000-03-21 17:28:19cbratschi Exp $ */1 /* $Id: commctrl.h,v 1.26 2000-03-26 16:29:38 cbratschi Exp $ */ 2 2 /* 3 3 * Common controls definitions … … 2879 2879 (BOOL)SendMessageA((hwndLV), LVM_ARRANGE, (WPARAM)(UINT)(code), 0L) 2880 2880 2881 #define ListView_EditLabel(hwndLV, i) \ 2882 (HWND)SendMessageA((hwndLV), LVM_EDITLABEL, (WPARAM)(int)(i), 0L) 2881 #define ListView_EditLabelA(hwndLV, i) \ 2882 (HWND)SendMessageA((hwndLV), LVM_EDITLABELA, (WPARAM)(int)(i), 0L) 2883 2884 #define ListView_EditLabelW(hwndLV, i) \ 2885 (HWND)SendMessageA((hwndLV), LVM_EDITLABELW, (WPARAM)(int)(i), 0L) 2883 2886 2884 2887 #define ListView_GetEditControl(hwndLV) \ -
trunk/include/win/listview.h
r3216 r3242 79 79 POINT scrollPage; //in scroll units 80 80 POINT scrollStep; //in pixels 81 DWORD refreshFlags;81 DWORD internalFlags; 82 82 83 83 WPARAM charCode; … … 94 94 } LVINTERNALITEMW, *LPLVINTERNALITEMW; 95 95 96 #define LV_REFRESH_TIMER 1 97 #define LV_REFRESH_DELAY 100 98 99 #define RF_REFRESH 1 100 #define RF_UPDATESCROLL 2 101 #define RF_NOREDRAW 4 96 #define IF_NOREDRAW 1 102 97 103 98 extern VOID LISTVIEW_Register (VOID); -
trunk/include/win/shell.h
r4 r3242 1 /* $Id: shell.h,v 1. 1 1999-05-24 20:19:19 ktkExp $ */1 /* $Id: shell.h,v 1.2 2000-03-26 16:29:40 cbratschi Exp $ */ 2 2 3 3 /* 4 * Shell Library definitions4 * Shell Library definitions 5 5 */ 6 6 #ifndef __WINE_SHELL_H … … 19 19 /* global functions used from shell32 */ 20 20 extern HINSTANCE SHELL_FindExecutable(LPCSTR,LPCSTR ,LPSTR); 21 extern HGLOBAL 16 WINAPI InternalExtractIcon16(HINSTANCE16,LPCSTR,UINT16,WORD);21 extern HGLOBAL WINAPI InternalExtractIcon(HINSTANCE,LPCSTR,UINT,WORD); 22 22 23 23 /**************************************************************************** … … 25 25 */ 26 26 /**************************************************************************** 27 * common return codes 27 * common return codes 28 28 */ 29 29 #define SHELL_ERROR_SUCCESS 0L … … 38 38 39 39 /**************************************************************************** 40 * common shell file structures 40 * common shell file structures 41 41 */ 42 42 /****************************** 43 43 * DRAG&DROP API 44 44 */ 45 typedef struct { /* structure for dropped files */46 WORDwSize;47 POINT16 ptMousePos; 48 BOOL16fInNonClientArea;49 /* memory block with filenames follows */ 50 } DROPFILESTRUCT16, *LPDROPFILESTRUCT16; 51 52 typedef struct { /* structure for dropped files */53 DWORDlSize;54 POINT ptMousePos; 55 BOOLfInNonClientArea;45 typedef struct { /* structure for dropped files */ 46 WORD wSize; 47 POINT16 ptMousePos; 48 BOOL16 fInNonClientArea; 49 /* memory block with filenames follows */ 50 } DROPFILESTRUCT16, *LPDROPFILESTRUCT16; 51 52 typedef struct { /* structure for dropped files */ 53 DWORD lSize; 54 POINT ptMousePos; 55 BOOL fInNonClientArea; 56 56 BOOL fWideChar; 57 /* memory block with filenames follows */ 58 } DROPFILESTRUCT, *LPDROPFILESTRUCT; 59 60 61 /**************************************************************************** 62 * SHITEMID, ITEMIDLIST, PIDL API 57 /* memory block with filenames follows */ 58 } DROPFILESTRUCT, *LPDROPFILESTRUCT; 59 60 61 /**************************************************************************** 62 * SHITEMID, ITEMIDLIST, PIDL API 63 63 */ 64 64 #include "pshpack1.h" 65 typedef struct 66 { WORD cb;/* nr of bytes in this item */67 BYTE abID[1];/* first byte in this item */65 typedef struct 66 { WORD cb; /* nr of bytes in this item */ 67 BYTE abID[1];/* first byte in this item */ 68 68 } SHITEMID,*LPSHITEMID; 69 69 70 typedef struct 70 typedef struct 71 71 { SHITEMID mkid; /* first itemid in list */ 72 72 } ITEMIDLIST,*LPITEMIDLIST,*LPCITEMIDLIST; … … 110 110 BOOL WINAPI PathIsRootAW(LPCVOID x); 111 111 112 LPSTR WINAPI PathAddBackslashA(LPSTR path); 113 LPWSTR WINAPI PathAddBackslashW(LPWSTR path); 112 LPSTR WINAPI PathAddBackslashA(LPSTR path); 113 LPWSTR WINAPI PathAddBackslashW(LPWSTR path); 114 114 #define PathAddBackslash WINELIB_NAME_AW(PathAddBackslash) 115 LPVOID WINAPI PathAddBackslashAW(LPVOID path); 116 117 BOOL WINAPI PathQualifyA(LPCSTR path); 118 BOOL WINAPI PathQualifyW(LPCWSTR path); 115 LPVOID WINAPI PathAddBackslashAW(LPVOID path); 116 117 BOOL WINAPI PathQualifyA(LPCSTR path); 118 BOOL WINAPI PathQualifyW(LPCWSTR path); 119 119 #define PathQualify WINELIB_NAME_AW(PathQualify) 120 BOOL WINAPI PathQualifyAW(LPCVOID path); 121 122 LPSTR WINAPI PathQuoteSpacesA(LPCSTR path); 123 LPWSTR WINAPI PathQuoteSpacesW(LPCWSTR path); 120 BOOL WINAPI PathQualifyAW(LPCVOID path); 121 122 LPSTR WINAPI PathQuoteSpacesA(LPCSTR path); 123 LPWSTR WINAPI PathQuoteSpacesW(LPCWSTR path); 124 124 #define PathQuoteSpaces WINELIB_NAME_AW(PathQuoteSpaces) 125 LPVOID WINAPI PathQuoteSpacesAW(LPCVOID path); 125 LPVOID WINAPI PathQuoteSpacesAW(LPCVOID path); 126 126 127 127 LPSTR WINAPI PathCombineA(LPSTR szDest, LPCSTR lpszDir, LPCSTR lpszFile); … … 133 133 LPCWSTR WINAPI PathFindExtensionW(LPCWSTR path); 134 134 #define PathFindExtension WINELIB_NAME_AW(PathFindExtension) 135 LPCVOID WINAPI PathFindExtensionAW(LPCVOID path); 135 LPCVOID WINAPI PathFindExtensionAW(LPCVOID path); 136 136 137 137 LPCSTR WINAPI PathGetExtensionA(LPCSTR path, DWORD y, DWORD x); 138 138 LPCWSTR WINAPI PathGetExtensionW(LPCWSTR path, DWORD y, DWORD x); 139 139 #define PathGetExtension WINELIB_NAME_AW(PathGetExtension) 140 LPCVOID WINAPI PathGetExtensionAW(LPCVOID path, DWORD y, DWORD x); 140 LPCVOID WINAPI PathGetExtensionAW(LPCVOID path, DWORD y, DWORD x); 141 141 142 142 LPCSTR WINAPI PathFindFilenameA(LPCSTR path); 143 143 LPCWSTR WINAPI PathFindFilenameW(LPCWSTR path); 144 144 #define PathFindFilename WINELIB_NAME_AW(PathFindFilename) 145 LPCVOID WINAPI PathFindFilenameAW(LPCVOID path); 145 LPCVOID WINAPI PathFindFilenameAW(LPCVOID path); 146 146 147 147 BOOL WINAPI PathMatchSpecA(LPCSTR x, LPCSTR y); … … 174 174 #define StrFormatByteSize WINELIB_NAME_AW(StrFormatByteSize) 175 175 176 BOOL WINAPI PathIsURLA(LPCSTR str); 177 176 178 /**************************************************************************** 177 179 * other functions … … 181 183 DWORD WINAPI SHFree(LPVOID x); 182 184 183 #define CSIDL_DESKTOP0x0000184 #define CSIDL_PROGRAMS0x0002185 #define CSIDL_CONTROLS0x0003186 #define CSIDL_PRINTERS0x0004187 #define CSIDL_PERSONAL0x0005188 #define CSIDL_FAVORITES0x0006189 #define CSIDL_STARTUP0x0007190 #define CSIDL_RECENT0x0008191 #define CSIDL_SENDTO0x0009192 #define CSIDL_BITBUCKET0x000a193 #define CSIDL_STARTMENU0x000b194 #define CSIDL_DESKTOPDIRECTORY0x0010195 #define CSIDL_DRIVES0x0011196 #define CSIDL_NETWORK0x0012197 #define CSIDL_NETHOOD0x0013198 #define CSIDL_FONTS0x0014199 #define CSIDL_TEMPLATES0x0015200 #define CSIDL_COMMON_STARTMENU 0x0016201 #define CSIDL_COMMON_PROGRAMS 0X0017202 #define CSIDL_COMMON_STARTUP 0x0018203 #define CSIDL_COMMON_DESKTOPDIRECTORY 0x0019204 #define CSIDL_APPDATA 0x001a205 #define CSIDL_PRINTHOOD 0x001b206 #define CSIDL_ALTSTARTUP 0x001d207 #define CSIDL_COMMON_ALTSTARTUP 0x001e185 #define CSIDL_DESKTOP 0x0000 186 #define CSIDL_PROGRAMS 0x0002 187 #define CSIDL_CONTROLS 0x0003 188 #define CSIDL_PRINTERS 0x0004 189 #define CSIDL_PERSONAL 0x0005 190 #define CSIDL_FAVORITES 0x0006 191 #define CSIDL_STARTUP 0x0007 192 #define CSIDL_RECENT 0x0008 193 #define CSIDL_SENDTO 0x0009 194 #define CSIDL_BITBUCKET 0x000a 195 #define CSIDL_STARTMENU 0x000b 196 #define CSIDL_DESKTOPDIRECTORY 0x0010 197 #define CSIDL_DRIVES 0x0011 198 #define CSIDL_NETWORK 0x0012 199 #define CSIDL_NETHOOD 0x0013 200 #define CSIDL_FONTS 0x0014 201 #define CSIDL_TEMPLATES 0x0015 202 #define CSIDL_COMMON_STARTMENU 0x0016 203 #define CSIDL_COMMON_PROGRAMS 0X0017 204 #define CSIDL_COMMON_STARTUP 0x0018 205 #define CSIDL_COMMON_DESKTOPDIRECTORY 0x0019 206 #define CSIDL_APPDATA 0x001a 207 #define CSIDL_PRINTHOOD 0x001b 208 #define CSIDL_ALTSTARTUP 0x001d 209 #define CSIDL_COMMON_ALTSTARTUP 0x001e 208 210 #define CSIDL_COMMON_FAVORITES 0x001f 209 #define CSIDL_INTERNET_CACHE 0x0020210 #define CSIDL_COOKIES 0x0021211 #define CSIDL_HISTORY 0x0022211 #define CSIDL_INTERNET_CACHE 0x0020 212 #define CSIDL_COOKIES 0x0021 213 #define CSIDL_HISTORY 0x0022 212 214 213 215 #endif /* __WINE_SHELL_H */ -
trunk/include/win/shlguid.h
r1560 r3242 1 /* $Id: shlguid.h,v 1. 3 1999-11-02 21:06:49 phallerExp $ */1 /* $Id: shlguid.h,v 1.4 2000-03-26 16:29:41 cbratschi Exp $ */ 2 2 3 3 #ifndef __WINE_SHLGUID_H … … 37 37 */ 38 38 /* the next IID's are the namespace elements of the pidls */ 39 DEFINE_GUID (IID_MyComputer, 0x20D04FE0L, 0x3AEA, 0x1069, 0xA2, 0xD8, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D); 40 DEFINE_GUID (IID_IExplore, 0x871C5380L, 0x42A0, 0x1069, 0xA2, 0xEA, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D); 41 DEFINE_GUID (IID_Control, 0x23EC2020L, 0x3AEA, 0x1069, 0xA2, 0xDD, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D); 42 DEFINE_GUID (IID_Printer, 0x2227A280L, 0x3AEA, 0x1069, 0xA2, 0xDE, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D); 43 DEFINE_GUID (IID_Network, 0x208D2C60L, 0x3AEA, 0x1069, 0xA2, 0xD7, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D); 44 DEFINE_GUID (IID_BitBucket, 0x645FF040L, 0x5081, 0x101B, 0x9F, 0x08, 0x00, 0xAA, 0x00, 0x2F, 0x95, 0x4E); 45 46 DEFINE_GUID (CLSID_PaperBin, 0x645FF040L, 0x5081, 0x101B, 0x9F, 0x08, 0x00, 0xAA, 0x00, 0x2F, 0x95, 0x4E); 39 DEFINE_GUID(CLSID_NetworkPlaces, 0x208D2C60, 0x3AEA, 0x1069, 0xA2, 0xD7, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D); 40 DEFINE_GUID(CLSID_NetworkDomain, 0x46e06680, 0x4bf0, 0x11d1, 0x83, 0xee, 0x00, 0xa0, 0xc9, 0x0d, 0xc8, 0x49); 41 DEFINE_GUID(CLSID_NetworkServer, 0xc0542a90, 0x4bf0, 0x11d1, 0x83, 0xee, 0x00, 0xa0, 0xc9, 0x0d, 0xc8, 0x49); 42 DEFINE_GUID(CLSID_NetworkShare, 0x54a754c0, 0x4bf0, 0x11d1, 0x83, 0xee, 0x00, 0xa0, 0xc9, 0x0d, 0xc8, 0x49); 43 DEFINE_GUID(CLSID_MyComputer, 0x20D04FE0, 0x3AEA, 0x1069, 0xA2, 0xD8, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D); 44 DEFINE_GUID(CLSID_Internet, 0x871C5380, 0x42A0, 0x1069, 0xA2, 0xEA, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D); 45 DEFINE_GUID(CLSID_ShellFSFolder, 0xF3364BA0, 0x65B9, 0x11CE, 0xA9, 0xBA, 0x00, 0xAA, 0x00, 0x4A, 0xE8, 0x37); 46 DEFINE_GUID(CLSID_RecycleBin, 0x645FF040, 0x5081, 0x101B, 0x9F, 0x08, 0x00, 0xAA, 0x00, 0x2F, 0x95, 0x4E); 47 DEFINE_GUID(CLSID_ControlPanel, 0x21EC2020, 0x3AEA, 0x1069, 0xA2, 0xDD, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D); 48 DEFINE_GUID(CLSID_Printers, 0x2227A280, 0x3AEA, 0x1069, 0xA2, 0xDE, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D); 49 DEFINE_GUID(CLSID_MyDocuments, 0x450d8fba, 0xad25, 0x11d0, 0x98, 0xa8, 0x08, 0x00, 0x36, 0x1b, 0x11, 0x03); 47 50 #endif /* __WINE_SHLGUID_H */ -
trunk/include/win/wine/obj_shellfolder.h
r1700 r3242 1 /* $Id: obj_shellfolder.h,v 1. 6 1999-11-10 23:35:15 phallerExp $ */1 /* $Id: obj_shellfolder.h,v 1.7 2000-03-26 16:29:41 cbratschi Exp $ */ 2 2 /* 3 3 * Defines the COM interfaces and APIs related to IShellFolder … … 10 10 11 11 #include "wine/obj_base.h" 12 #include "wine/obj_moniker.h" /* for LPBC */12 #include "wine/obj_moniker.h" /* for LPBC */ 13 13 #include "wine/obj_enumidlist.h" 14 14 #include "wine/obj_oleaut.h" … … 23 23 * STRRET (temporary, move it away) 24 24 */ 25 #define STRRET_WSTR0x000026 #define STRRET_OFFSETA0x000127 #define STRRET_CSTRA0x000228 #define STRRET_ASTR 0X000329 #define STRRET_OFFSETW 0X000430 #define STRRET_CSTRW 0X000525 #define STRRET_WSTR 0x0000 26 #define STRRET_OFFSETA 0x0001 27 #define STRRET_CSTRA 0x0002 28 #define STRRET_ASTR 0X0003 29 #define STRRET_OFFSETW 0X0004 30 #define STRRET_CSTRW 0X0005 31 31 32 32 33 33 typedef struct _STRRET 34 { UINT uType; /* STRRET_xxx */34 { UINT uType; /* STRRET_xxx */ 35 35 union 36 { LPWSTR pOleStr;/* OLESTR that will be freed */37 LPSTR pStr;38 UINT uOffset;/* OffsetINT32o SHITEMID (ANSI) */39 char cStr[MAX_PATH];/* Buffer to fill in */40 WCHAR cStrW[MAX_PATH];36 { LPWSTR pOleStr; /* OLESTR that will be freed */ 37 LPSTR pStr; 38 UINT uOffset; /* OffsetINT32o SHITEMID (ANSI) */ 39 char cStr[MAX_PATH]; /* Buffer to fill in */ 40 WCHAR cStrW[MAX_PATH]; 41 41 }u; 42 42 } STRRET,*LPSTRRET; … … 63 63 typedef struct 64 64 { 65 GUID guidSearch;65 GUID guidSearch; 66 66 WCHAR wszFriendlyName[80]; 67 WCHAR wszMenuText[80];67 WCHAR wszMenuText[80]; 68 68 WCHAR wszHelpText[MAX_PATH]; 69 69 WCHAR wszUrl[2084]; … … 86 86 87 87 /*** IUnknown methods ***/ 88 #define IEnumIDList_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)89 #define IEnumIDList_AddRef(p) ICOM_CALL (AddRef,p)90 #define IEnumIDList_Release(p) ICOM_CALL (Release,p)88 #define IEnumIDList_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) 89 #define IEnumIDList_AddRef(p) ICOM_CALL (AddRef,p) 90 #define IEnumIDList_Release(p) ICOM_CALL (Release,p) 91 91 /*** IEnumIDList methods ***/ 92 #define IEnumIDList_Next(p,a,b,c) ICOM_CALL3(Next,p,a,b,c)93 #define IEnumIDList_Skip(p,a) ICOM_CALL1(Skip,p,a)94 #define IEnumIDList_Reset(p) ICOM_CALL(Reset,p)95 #define IEnumIDList_Clone(p,a) ICOM_CALL1(Clone,p,a)92 #define IEnumIDList_Next(p,a,b,c) ICOM_CALL3(Next,p,a,b,c) 93 #define IEnumIDList_Skip(p,a) ICOM_CALL1(Skip,p,a) 94 #define IEnumIDList_Reset(p) ICOM_CALL(Reset,p) 95 #define IEnumIDList_Clone(p,a) ICOM_CALL1(Clone,p,a) 96 96 97 97 /***************************************************************************** … … 99 99 */ 100 100 typedef enum 101 { SHGDN_NORMAL = 0,/* default (display purpose) */102 SHGDN_INFOLDER = 1,/* displayed under a folder (relative)*/103 SHGDN_FORPARSING = 0x8000/* for ParseDisplayName or path */101 { SHGDN_NORMAL = 0, /* default (display purpose) */ 102 SHGDN_INFOLDER = 1, /* displayed under a folder (relative)*/ 103 SHGDN_FORPARSING = 0x8000 /* for ParseDisplayName or path */ 104 104 } SHGNO; 105 105 … … 108 108 */ 109 109 typedef enum tagSHCONTF 110 { SHCONTF_FOLDERS = 32,/* for shell browser */111 SHCONTF_NONFOLDERS = 64,/* for default view */112 SHCONTF_INCLUDEHIDDEN = 128/* for hidden/system objects */110 { SHCONTF_FOLDERS = 32, /* for shell browser */ 111 SHCONTF_NONFOLDERS = 64, /* for default view */ 112 SHCONTF_INCLUDEHIDDEN = 128 /* for hidden/system objects */ 113 113 } SHCONTF; 114 114 … … 116 116 * IShellFolder::GetAttributesOf flags 117 117 */ 118 #define SFGAO_CANCOPY DROPEFFECT_COPY /* Objects can be copied */119 #define SFGAO_CANMOVE DROPEFFECT_MOVE /* Objects can be moved */120 #define SFGAO_CANLINK DROPEFFECT_LINK /* Objects can be linked */121 #define SFGAO_CANRENAME 0x00000010L/* Objects can be renamed */122 #define SFGAO_CANDELETE 0x00000020L/* Objects can be deleted */123 #define SFGAO_HASPROPSHEET 0x00000040L/* Objects have property sheets */124 #define SFGAO_DROPTARGET 0x00000100L/* Objects are drop target */125 #define SFGAO_CAPABILITYMASK 0x00000177L126 #define SFGAO_LINK 0x00010000L/* Shortcut (link) */127 #define SFGAO_SHARE 0x00020000L/* shared */128 #define SFGAO_READONLY 0x00040000L/* read-only */129 #define SFGAO_GHOSTED 0x00080000L/* ghosted icon */130 #define SFGAO_HIDDEN 0x00080000L /* hidden object */131 #define SFGAO_DISPLAYATTRMASK 0x000F0000L132 #define SFGAO_FILESYSANCESTOR 0x10000000L/* It contains file system folder */133 #define SFGAO_FOLDER 0x20000000L/* It's a folder. */134 #define SFGAO_FILESYSTEM 0x40000000L/* is a file system thing (file/folder/root) */135 #define SFGAO_HASSUBFOLDER 0x80000000L/* Expandable in the map pane */136 #define SFGAO_CONTENTSMASK 0x80000000L137 #define SFGAO_VALIDATE 0x01000000L/* invalidate cached information */138 #define SFGAO_REMOVABLE 0x02000000L/* is this removeable media? */139 #define SFGAO_BROWSABLE 0x08000000L/* is in-place browsable */140 #define SFGAO_NONENUMERATED 0x00100000L/* is a non-enumerated object */141 #define SFGAO_NEWCONTENT 0x00200000L/* should show bold in explorer tree */118 #define SFGAO_CANCOPY DROPEFFECT_COPY /* Objects can be copied */ 119 #define SFGAO_CANMOVE DROPEFFECT_MOVE /* Objects can be moved */ 120 #define SFGAO_CANLINK DROPEFFECT_LINK /* Objects can be linked */ 121 #define SFGAO_CANRENAME 0x00000010L /* Objects can be renamed */ 122 #define SFGAO_CANDELETE 0x00000020L /* Objects can be deleted */ 123 #define SFGAO_HASPROPSHEET 0x00000040L /* Objects have property sheets */ 124 #define SFGAO_DROPTARGET 0x00000100L /* Objects are drop target */ 125 #define SFGAO_CAPABILITYMASK 0x00000177L 126 #define SFGAO_LINK 0x00010000L /* Shortcut (link) */ 127 #define SFGAO_SHARE 0x00020000L /* shared */ 128 #define SFGAO_READONLY 0x00040000L /* read-only */ 129 #define SFGAO_GHOSTED 0x00080000L /* ghosted icon */ 130 #define SFGAO_HIDDEN 0x00080000L /* hidden object */ 131 #define SFGAO_DISPLAYATTRMASK 0x000F0000L 132 #define SFGAO_FILESYSANCESTOR 0x10000000L /* It contains file system folder */ 133 #define SFGAO_FOLDER 0x20000000L /* It's a folder. */ 134 #define SFGAO_FILESYSTEM 0x40000000L /* is a file system thing (file/folder/root) */ 135 #define SFGAO_HASSUBFOLDER 0x80000000L /* Expandable in the map pane */ 136 #define SFGAO_CONTENTSMASK 0x80000000L 137 #define SFGAO_VALIDATE 0x01000000L /* invalidate cached information */ 138 #define SFGAO_REMOVABLE 0x02000000L /* is this removeable media? */ 139 #define SFGAO_BROWSABLE 0x08000000L /* is in-place browsable */ 140 #define SFGAO_NONENUMERATED 0x00100000L /* is a non-enumerated object */ 141 #define SFGAO_NEWCONTENT 0x00200000L /* should show bold in explorer tree */ 142 142 143 143 /************************************************************************ … … 210 210 211 211 /*** IUnknown methods ***/ 212 #define IShellFolder_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)213 #define IShellFolder_AddRef(p) ICOM_CALL (AddRef,p)214 #define IShellFolder_Release(p) ICOM_CALL (Release,p)212 #define IShellFolder_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) 213 #define IShellFolder_AddRef(p) ICOM_CALL (AddRef,p) 214 #define IShellFolder_Release(p) ICOM_CALL (Release,p) 215 215 /*** IShellFolder methods ***/ 216 #define IShellFolder_ParseDisplayName(p,a,b,c,d,e,f) ICOM_CALL6(ParseDisplayName,p,a,b,c,d,e,f)217 #define IShellFolder_EnumObjects(p,a,b,c) ICOM_CALL3(EnumObjects,p,a,b,c)218 #define IShellFolder_BindToObject(p,a,b,c,d) ICOM_CALL4(BindToObject,p,a,b,c,d)219 #define IShellFolder_BindToStorage(p,a,b,c,d) ICOM_CALL4(BindToStorage,p,a,b,c,d)220 #define IShellFolder_CompareIDs(p,a,b,c) ICOM_CALL3(CompareIDs,p,a,b,c)221 #define IShellFolder_CreateViewObject(p,a,b,c) ICOM_CALL3(CreateViewObject,p,a,b,c)222 #define IShellFolder_GetAttributesOf(p,a,b,c) ICOM_CALL3(GetAttributesOf,p,a,b,c)223 #define IShellFolder_GetUIObjectOf(p,a,b,c,d,e,f) ICOM_CALL6(GetUIObjectOf,p,a,b,c,d,e,f)224 #define IShellFolder_GetDisplayNameOf(p,a,b,c) ICOM_CALL3(GetDisplayNameOf,p,a,b,c)225 #define IShellFolder_SetNameOf(p,a,b,c,d,e) ICOM_CALL5(SetNameOf,p,a,b,c,d,e)216 #define IShellFolder_ParseDisplayName(p,a,b,c,d,e,f) ICOM_CALL6(ParseDisplayName,p,a,b,c,d,e,f) 217 #define IShellFolder_EnumObjects(p,a,b,c) ICOM_CALL3(EnumObjects,p,a,b,c) 218 #define IShellFolder_BindToObject(p,a,b,c,d) ICOM_CALL4(BindToObject,p,a,b,c,d) 219 #define IShellFolder_BindToStorage(p,a,b,c,d) ICOM_CALL4(BindToStorage,p,a,b,c,d) 220 #define IShellFolder_CompareIDs(p,a,b,c) ICOM_CALL3(CompareIDs,p,a,b,c) 221 #define IShellFolder_CreateViewObject(p,a,b,c) ICOM_CALL3(CreateViewObject,p,a,b,c) 222 #define IShellFolder_GetAttributesOf(p,a,b,c) ICOM_CALL3(GetAttributesOf,p,a,b,c) 223 #define IShellFolder_GetUIObjectOf(p,a,b,c,d,e,f) ICOM_CALL6(GetUIObjectOf,p,a,b,c,d,e,f) 224 #define IShellFolder_GetDisplayNameOf(p,a,b,c) ICOM_CALL3(GetDisplayNameOf,p,a,b,c) 225 #define IShellFolder_SetNameOf(p,a,b,c,d,e) ICOM_CALL5(SetNameOf,p,a,b,c,d,e) 226 226 227 227 /***************************************************************************** … … 233 233 typedef enum 234 234 { 235 SHCOLSTATE_TYPE_STR= 0x00000001,236 SHCOLSTATE_TYPE_INT= 0x00000002,237 SHCOLSTATE_TYPE_DATE= 0x00000003,238 SHCOLSTATE_TYPEMASK= 0x0000000F,239 SHCOLSTATE_ONBYDEFAULT= 0x00000010,240 SHCOLSTATE_SLOW= 0x00000020,241 SHCOLSTATE_EXTENDED= 0x00000040,242 SHCOLSTATE_SECONDARYUI= 0x00000080,243 SHCOLSTATE_HIDDEN= 0x00000100235 SHCOLSTATE_TYPE_STR = 0x00000001, 236 SHCOLSTATE_TYPE_INT = 0x00000002, 237 SHCOLSTATE_TYPE_DATE = 0x00000003, 238 SHCOLSTATE_TYPEMASK = 0x0000000F, 239 SHCOLSTATE_ONBYDEFAULT = 0x00000010, 240 SHCOLSTATE_SLOW = 0x00000020, 241 SHCOLSTATE_EXTENDED = 0x00000040, 242 SHCOLSTATE_SECONDARYUI = 0x00000080, 243 SHCOLSTATE_HIDDEN = 0x00000100 244 244 } SHCOLSTATE; 245 245 246 246 typedef struct 247 247 { 248 GUIDfmtid;249 DWORDpid;248 GUID fmtid; 249 DWORD pid; 250 250 } SHCOLUMNID, *LPSHCOLUMNID; 251 251 typedef const SHCOLUMNID* LPCSHCOLUMNID; 252 252 253 253 /* GetDetailsEx */ 254 #define PID_FINDDATA 0255 #define PID_NETRESOURCE 1256 #define PID_DESCRIPTIONID 2254 #define PID_FINDDATA 0 255 #define PID_NETRESOURCE 1 256 #define PID_DESCRIPTIONID 2 257 257 258 258 typedef struct 259 259 { 260 intfmt;261 intcxChar;262 STRRETstr;260 int fmt; 261 int cxChar; 262 STRRET str; 263 263 } SHELLDETAILS, *LPSHELLDETAILS; 264 264 … … 279 279 280 280 /*** IUnknown methods ***/ 281 #define IShellFolder2_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)282 #define IShellFolder2_AddRef(p) ICOM_CALL (AddRef,p)283 #define IShellFolder2_Release(p) ICOM_CALL (Release,p)281 #define IShellFolder2_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) 282 #define IShellFolder2_AddRef(p) ICOM_CALL (AddRef,p) 283 #define IShellFolder2_Release(p) ICOM_CALL (Release,p) 284 284 /*** IShellFolder methods ***/ 285 #define IShellFolder2_ParseDisplayName(p,a,b,c,d,e,f) ICOM_CALL6(ParseDisplayName,p,a,b,c,d,e,f)286 #define IShellFolder2_EnumObjects(p,a,b,c) ICOM_CALL3(EnumObjects,p,a,b,c)287 #define IShellFolder2_BindToObject(p,a,b,c,d) ICOM_CALL4(BindToObject,p,a,b,c,d)288 #define IShellFolder2_BindToStorage(p,a,b,c,d) ICOM_CALL4(BindToStorage,p,a,b,c,d)289 #define IShellFolder2_CompareIDs(p,a,b,c) ICOM_CALL3(CompareIDs,p,a,b,c)290 #define IShellFolder2_CreateViewObject(p,a,b,c) ICOM_CALL3(CreateViewObject,p,a,b,c)291 #define IShellFolder2_GetAttributesOf(p,a,b,c) ICOM_CALL3(GetAttributesOf,p,a,b,c)292 #define IShellFolder2_GetUIObjectOf(p,a,b,c,d,e,f) ICOM_CALL6(GetUIObjectOf,p,a,b,c,d,e,f)293 #define IShellFolder2_GetDisplayNameOf(p,a,b,c) ICOM_CALL3(GetDisplayNameOf,p,a,b,c)294 #define IShellFolder2_SetNameOf(p,a,b,c,d,e) ICOM_CALL5(SetNameOf,p,a,b,c,d,e)285 #define IShellFolder2_ParseDisplayName(p,a,b,c,d,e,f) ICOM_CALL6(ParseDisplayName,p,a,b,c,d,e,f) 286 #define IShellFolder2_EnumObjects(p,a,b,c) ICOM_CALL3(EnumObjects,p,a,b,c) 287 #define IShellFolder2_BindToObject(p,a,b,c,d) ICOM_CALL4(BindToObject,p,a,b,c,d) 288 #define IShellFolder2_BindToStorage(p,a,b,c,d) ICOM_CALL4(BindToStorage,p,a,b,c,d) 289 #define IShellFolder2_CompareIDs(p,a,b,c) ICOM_CALL3(CompareIDs,p,a,b,c) 290 #define IShellFolder2_CreateViewObject(p,a,b,c) ICOM_CALL3(CreateViewObject,p,a,b,c) 291 #define IShellFolder2_GetAttributesOf(p,a,b,c) ICOM_CALL3(GetAttributesOf,p,a,b,c) 292 #define IShellFolder2_GetUIObjectOf(p,a,b,c,d,e,f) ICOM_CALL6(GetUIObjectOf,p,a,b,c,d,e,f) 293 #define IShellFolder2_GetDisplayNameOf(p,a,b,c) ICOM_CALL3(GetDisplayNameOf,p,a,b,c) 294 #define IShellFolder2_SetNameOf(p,a,b,c,d,e) ICOM_CALL5(SetNameOf,p,a,b,c,d,e) 295 295 /*** IShellFolder2 methods ***/ 296 #define IShellFolder2_GetDefaultSearchGUID(p,a) ICOM_CALL1(GetDefaultSearchGUID,p,a)297 #define IShellFolder2_EnumSearches(p,a) ICOM_CALL1(EnumSearches,p,a)298 #define IShellFolder2_GetDefaultColumn(p,a,b,c) ICOM_CALL3(GetDefaultColumn,p,a,b,c)299 #define IShellFolder2_GetDefaultColumnState(p,a,b) ICOM_CALL2(GetDefaultColumnState,p,a,b)300 #define IShellFolder2_GetDetailsEx(p,a,b,c) ICOM_CALL3(GetDetailsEx,p,a,b,c)301 #define IShellFolder2_GetDetailsOf(p,a,b,c) ICOM_CALL3(GetDetailsOf,p,a,b,c)302 #define IShellFolder2_MapNameToSCID(p,a,b) ICOM_CALL2(MapNameToSCID,p,a,b)296 #define IShellFolder2_GetDefaultSearchGUID(p,a) ICOM_CALL1(GetDefaultSearchGUID,p,a) 297 #define IShellFolder2_EnumSearches(p,a) ICOM_CALL1(EnumSearches,p,a) 298 #define IShellFolder2_GetDefaultColumn(p,a,b,c) ICOM_CALL3(GetDefaultColumn,p,a,b,c) 299 #define IShellFolder2_GetDefaultColumnState(p,a,b) ICOM_CALL2(GetDefaultColumnState,p,a,b) 300 #define IShellFolder2_GetDetailsEx(p,a,b,c) ICOM_CALL3(GetDetailsEx,p,a,b,c) 301 #define IShellFolder2_GetDetailsOf(p,a,b,c) ICOM_CALL3(GetDetailsOf,p,a,b,c) 302 #define IShellFolder2_MapNameToSCID(p,a,b) ICOM_CALL2(MapNameToSCID,p,a,b) 303 303 304 304 /***************************************************************************** … … 321 321 322 322 /*** IUnknown methods ***/ 323 #define IPersistFolder_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)324 #define IPersistFolder_AddRef(p) ICOM_CALL (AddRef,p)325 #define IPersistFolder_Release(p) ICOM_CALL (Release,p)323 #define IPersistFolder_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b) 324 #define IPersistFolder_AddRef(p) ICOM_CALL (AddRef,p) 325 #define IPersistFolder_Release(p) ICOM_CALL (Release,p) 326 326 /*** IPersist methods ***/ 327 #define IPersistFolder_GetClassID(p,a) ICOM_CALL1(GetClassID,p,a)327 #define IPersistFolder_GetClassID(p,a) ICOM_CALL1(GetClassID,p,a) 328 328 /*** IPersistFolder methods ***/ 329 #define IPersistFolder_Initialize(p,a) ICOM_CALL1(Initialize,p,a)329 #define IPersistFolder_Initialize(p,a) ICOM_CALL1(Initialize,p,a) 330 330 331 331 #ifdef __cplusplus -
trunk/src/comctl32/listview.cpp
r3216 r3242 1 /*$Id: listview.cpp,v 1. 7 2000-03-24 17:14:02cbratschi Exp $*/1 /*$Id: listview.cpp,v 1.8 2000-03-26 16:32:33 cbratschi Exp $*/ 2 2 /* 3 3 * Listview control … … 160 160 LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO*)LISTVIEW_GetInfoPtr(hwnd); 161 161 162 if (infoPtr-> refreshFlags & (RF_REFRESH | RF_NOREDRAW)) return;162 if (infoPtr->internalFlags & IF_NOREDRAW) return; 163 163 164 164 if ((infoPtr->uView == LVS_REPORT) && !(infoPtr->dwStyle & LVS_NOCOLUMNHEADER)) … … 174 174 } 175 175 176 static VOID LISTVIEW_QueueRefresh(HWND hwnd)176 static LRESULT LISTVIEW_Timer(HWND hwnd,WPARAM wParam,LPARAM lParam) 177 177 { 178 178 LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO*)LISTVIEW_GetInfoPtr(hwnd); 179 179 180 if (infoPtr->refreshFlags & RF_NOREDRAW) return; 181 182 if (infoPtr->refreshFlags & RF_REFRESH) 183 KillTimer (hwnd,LV_REFRESH_TIMER); 184 infoPtr->refreshFlags |= RF_REFRESH; 185 SetTimer(hwnd,LV_REFRESH_TIMER,LV_REFRESH_DELAY,0); 186 } 187 188 static LRESULT LISTVIEW_Timer(HWND hwnd,WPARAM wParam,LPARAM lParam) 189 { 190 LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO*)LISTVIEW_GetInfoPtr(hwnd); 191 192 switch (wParam) 193 { 194 case LV_REFRESH_TIMER: 195 KillTimer(hwnd,LV_REFRESH_TIMER); 196 if (infoPtr->refreshFlags & RF_UPDATESCROLL) 197 { 198 LISTVIEW_UpdateScroll(hwnd); 199 infoPtr->refreshFlags &= ~RF_UPDATESCROLL; 200 } 201 if (infoPtr->refreshFlags & RF_REFRESH) 202 { 203 infoPtr->refreshFlags &= ~RF_REFRESH; 204 LISTVIEW_Refresh(hwnd); 205 } 206 return 0; 207 } 208 209 return 1; 180 return DefWindowProcA(hwnd,WM_TIMER,wParam,lParam); 210 181 } 211 182 … … 215 186 RECT rect; 216 187 217 if (infoPtr-> refreshFlags & (RF_REFRESH | RF_NOREDRAW)) return;188 if (infoPtr->internalFlags & IF_NOREDRAW) return; 218 189 LISTVIEW_GetItemRect(hwnd,nItem,&rect,LVIR_SELECTBOUNDS); 219 190 … … 238 209 INT xOffset = infoPtr->lefttop.x*infoPtr->scrollStep.x; 239 210 240 if (infoPtr-> refreshFlags & (RF_REFRESH | RF_NOREDRAW)) return;211 if (infoPtr->internalFlags & IF_NOREDRAW) return; 241 212 LISTVIEW_GetItemRect(hwnd,nItem,&rect,LVIR_SELECTBOUNDS); 242 213 … … 267 238 LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO*)LISTVIEW_GetInfoPtr(hwnd); 268 239 269 if (infoPtr-> refreshFlags & (RF_REFRESH | RF_NOREDRAW)) return;240 if (infoPtr->internalFlags & IF_NOREDRAW) return; 270 241 271 242 if ((infoPtr->uView == LVS_REPORT) && !(infoPtr->dwStyle & LVS_NOCOLUMNHEADER)) … … 2751 2722 2752 2723 /* refresh client area */ 2753 infoPtr->refreshFlags |= RF_UPDATESCROLL;2754 LISTVIEW_ QueueRefresh(hwnd);2724 LISTVIEW_UpdateScroll(hwnd); 2725 LISTVIEW_Refresh(hwnd); 2755 2726 } 2756 2727 … … 5135 5106 infoPtr->nItemWidth = LISTVIEW_GetItemWidth(hwnd); 5136 5107 5137 infoPtr->refreshFlags |= RF_UPDATESCROLL;5138 LISTVIEW_ QueueRefresh(hwnd);5108 LISTVIEW_UpdateScroll(hwnd); 5109 LISTVIEW_Refresh(hwnd); 5139 5110 } 5140 5111 … … 5271 5242 5272 5243 /* refresh client area */ 5273 infoPtr->refreshFlags |= RF_UPDATESCROLL;5274 LISTVIEW_ QueueRefresh(hwnd);5244 LISTVIEW_UpdateScroll(hwnd); 5245 LISTVIEW_Refresh(hwnd); 5275 5246 } 5276 5247 } … … 5551 5522 infoPtr->nItemWidth = LISTVIEW_GetItemWidth(hwnd); 5552 5523 5553 LISTVIEW_ QueueRefresh(hwnd); // force redraw of the listview5524 LISTVIEW_Refresh(hwnd); // force redraw of the listview 5554 5525 5555 5526 return lret; … … 5671 5642 HDPA hdpaSubItems; 5672 5643 NMLISTVIEW nmlv; 5673 5644 //CB: LVS_REPORT (and other) and new text: invalidate if item rect > nItemWidth 5674 5645 if (lpLVItem != NULL) 5675 5646 { … … 6167 6138 static LRESULT LISTVIEW_Create(HWND hwnd, WPARAM wParam, LPARAM lParam) 6168 6139 { 6169 LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO *)LISTVIEW_GetInfoPtr(hwnd);6140 LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO*)LISTVIEW_GetInfoPtr(hwnd); 6170 6141 LPCREATESTRUCTA lpcs = (LPCREATESTRUCTA)lParam; 6171 6142 UINT uView = lpcs->style & LVS_TYPEMASK; … … 6627 6598 return 0; 6628 6599 6629 infoPtr = (LISTVIEW_INFO *)GetWindowLongA(hwnd, 0);6600 infoPtr = (LISTVIEW_INFO*)getInfoPtr(hwnd); 6630 6601 6631 6602 if ( !infoPtr ) … … 7017 6988 LISTVIEW_INFO *infoPtr; 7018 6989 7019 //TRACE("(hwnd=%x,wParam=%x,lParam=%lx)\n", hwnd, wParam, lParam);7020 7021 6990 /* allocate memory for info structure */ 7022 6991 infoPtr = (LISTVIEW_INFO*)initControl(hwnd,sizeof(LISTVIEW_INFO)); … … 7230 7199 { 7231 7200 LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO *)LISTVIEW_GetInfoPtr(hwnd); 7232 INT nCtrlId = GetWindowLongA(hwnd, GWL_ID);7233 7234 // TRACE("(hwnd=%x,key=%hu,X=%hu,Y=%hu)\n", hwnd, wKey, wPosX, wPosY);7235 7201 7236 7202 if (infoPtr->bRButtonDown != FALSE) … … 7340 7306 if (bRedraw) 7341 7307 { 7342 infoPtr-> refreshFlags &= ~RF_NOREDRAW;7308 infoPtr->internalFlags &= ~IF_NOREDRAW; 7343 7309 lResult = DefWindowProcA(hwnd, WM_SETREDRAW, bRedraw, 0); 7344 7310 7345 7311 LISTVIEW_UpdateScroll(hwnd); 7346 //CB: WINE calls RedrawWindow but many (all?) programs invalidate the control themself 7347 // RedrawWindow(hwnd,NULL,0,RDW_INVALIDATE | RDW_FRAME | RDW_ERASE | RDW_ALLCHILDREN | RDW_ERASENOW); 7312 RedrawWindow(hwnd,NULL,0,RDW_INVALIDATE | RDW_FRAME | RDW_ERASE | RDW_ALLCHILDREN | RDW_ERASENOW); 7348 7313 } else 7349 7314 { 7350 infoPtr->refreshFlags |= RF_NOREDRAW; 7351 if (infoPtr->refreshFlags & RF_REFRESH) 7352 KillTimer(hwnd,LV_REFRESH_TIMER); 7353 infoPtr->refreshFlags &= ~(RF_REFRESH | RF_UPDATESCROLL); 7315 infoPtr->internalFlags |= IF_NOREDRAW; 7354 7316 lResult = DefWindowProcA(hwnd, WM_SETREDRAW, bRedraw, 0); 7355 7317 }
Note:
See TracChangeset
for help on using the changeset viewer.
