Update of /cvsroot/pywin32/pywin32/win32/src
In directory ddv4jf1.ch3.sourceforge.com:/tmp/cvs-serv3631/win32/src
Modified Files:
Tag: py3k
PyWinTypes.h stddde.h win32api_display.h
Log Message:
merge various fixes and changes from the trunk
Index: win32api_display.h
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/win32api_display.h,v
retrieving revision 1.3.2.1
retrieving revision 1.3.2.2
diff -C2 -d -r1.3.2.1 -r1.3.2.2
*** win32api_display.h 29 Aug 2008 04:59:26 -0000 1.3.2.1
--- win32api_display.h 6 Dec 2008 01:48:26 -0000 1.3.2.2
***************
*** 45,48 ****
--- 45,49 ----
static struct PyMemberDef members[];
static struct PyMethodDef methods[];
+
static void deallocFunc(PyObject *ob);
PyDISPLAY_DEVICE(PDISPLAY_DEVICE);
Index: PyWinTypes.h
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/PyWinTypes.h,v
retrieving revision 1.51.2.4
retrieving revision 1.51.2.5
diff -C2 -d -r1.51.2.4 -r1.51.2.5
*** PyWinTypes.h 1 Oct 2008 12:53:00 -0000 1.51.2.4
--- PyWinTypes.h 6 Dec 2008 01:48:26 -0000 1.51.2.5
***************
*** 21,25 ****
#include "windows.h"
!
#if (PY_VERSION_HEX < 0x03000000)
#define PYWIN_OBJECT_HEAD PyObject_HEAD_INIT(&PyType_Type) 0,
--- 21,25 ----
#include "windows.h"
! // Helpers for our types.
#if (PY_VERSION_HEX < 0x03000000)
#define PYWIN_OBJECT_HEAD PyObject_HEAD_INIT(&PyType_Type) 0,
***************
*** 296,300 ****
#endif
}
- #define PyString_FromTCHAR PyString_FromString
#endif
--- 296,299 ----
Index: stddde.h
===================================================================
RCS file: /cvsroot/pywin32/pywin32/win32/src/stddde.h,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -C2 -d -r1.1.4.1 -r1.1.4.2
*** stddde.h 29 Aug 2008 04:59:26 -0000 1.1.4.1
--- stddde.h 6 Dec 2008 01:48:26 -0000 1.1.4.2
***************
*** 43,46 ****
--- 43,76 ----
static CString GetFormatName(WORD wFmt);
+ // A class used for memory allocation; designed to be created on the stack,
+ // then passed around.
+ class CDDEAllocator
+ {
+ public:
+ CDDEAllocator(DWORD instance, HSZ hszItem, UINT wFmt, HDDEDATA *hret) :
+ m_instance(instance), m_hszItem(hszItem), m_wFmt(wFmt), m_hret(hret) {;}
+ BOOL Alloc(CString &cs) {
+ // XXX - should we check wFmt is CF_TEXT vs CF_UNICODETEXT??
+ return Alloc((LPBYTE)(const TCHAR *)cs, (cs.GetLength() + 1) * sizeof(TCHAR));
+ }
+ BOOL Alloc(LPBYTE p, DWORD cb) {
+ // XXX - should we check wFmt is CF_TEXT vs CF_UNICODETEXT??
+ *m_hret = ::DdeCreateDataHandle(m_instance,
+ p,
+ cb,
+ 0,
+ m_hszItem,
+ m_wFmt,
+ 0);
+ return TRUE;
+ }
+ protected:
+ UINT m_wFmt;
+ DWORD m_instance;
+ HSZ m_hszItem;
+ HDDEDATA *m_hret;
+
+ };
+
//
// Generic counted object class
***************
*** 97,107 ****
void Create(const TCHAR* pszName);
void PostAdvise();
! virtual BOOL Request(UINT wFmt, void** ppData, DWORD* pdwSize);
//CT BEGIN
! virtual BOOL NSRequest(const TCHAR* szItem, void** ppData, DWORD* pdwSize);
! virtual BOOL NSPoke(const TCHAR* szItem, void* pData, DWORD dwSize);
! virtual BOOL Poke(void* pData, DWORD dwSize);
//CT END
! virtual BOOL Poke(UINT wFmt, void* pData, DWORD dwSize);
virtual BOOL IsSupportedFormat(WORD wFormat);
virtual WORD* GetFormatList()
--- 127,137 ----
void Create(const TCHAR* pszName);
void PostAdvise();
! virtual BOOL Request(UINT wFmt, CDDEAllocator &allocr);
//CT BEGIN
! virtual BOOL NSRequest(const TCHAR* szItem, CDDEAllocator &allocr);
! virtual BOOL NSPoke(const TCHAR* szItem, void* pData, DWORD dwSize);
! virtual BOOL Poke(void* pData, DWORD dwSize);
//CT END
! virtual BOOL Poke(UINT wFmt, void* pData, DWORD dwSize);
virtual BOOL IsSupportedFormat(WORD wFormat);
virtual WORD* GetFormatList()
***************
*** 131,135 ****
protected:
! virtual BOOL Request(UINT wFmt, void** ppData, DWORD* pdwSize);
virtual BOOL Poke(UINT wFmt, void* pData, DWORD dwSize);
virtual WORD* GetFormatList();
--- 161,165 ----
protected:
! virtual BOOL Request(UINT wFmt, CDDEAllocator &allocr);
virtual BOOL Poke(UINT wFmt, void* pData, DWORD dwSize);
virtual WORD* GetFormatList();
***************
*** 167,175 ****
void Create(const TCHAR* pszName);
BOOL AddItem(CDDEItem* pItem);
! virtual BOOL Request(UINT wFmt, const TCHAR* pszItem,
! void** ppData, DWORD* pdwSize);
//CT BEGIN
! virtual BOOL NSRequest(const TCHAR * szItem, void** ppData, DWORD* pdwSize);
! virtual BOOL NSPoke(const TCHAR * szItem, void* pData, DWORD dwSize);
virtual BOOL Poke(const TCHAR* pszItem,
void* pData, DWORD dwSize);
--- 197,206 ----
void Create(const TCHAR* pszName);
BOOL AddItem(CDDEItem* pItem);
! virtual BOOL Request(UINT wFmt, const TCHAR* pszItem, CDDEAllocator &allocr);
//CT BEGIN
! virtual BOOL NSRequest(const TCHAR *szItem, CDDEAllocator &allocr);
! // Note: If poke ever needs to return data, it should do like NSRequest,
! // otherwise memory management becomes impossible.
! virtual BOOL NSPoke(const TCHAR * szItem, void* pData, DWORD dwSize);
virtual BOOL Poke(const TCHAR* pszItem,
void* pData, DWORD dwSize);
***************
*** 217,221 ****
CDDEConv(CDDEServer* pServer);
CDDEConv(CDDEServer* pServer, HCONV hConv, HSZ hszTopic);
! BOOL Connected() {return (m_hConv != NULL);}
virtual ~CDDEConv();
virtual BOOL ConnectTo(const TCHAR* pszService, const TCHAR* pszTopic);
--- 248,252 ----
CDDEConv(CDDEServer* pServer);
CDDEConv(CDDEServer* pServer, HCONV hConv, HSZ hszTopic);
! BOOL Connected() {return (m_hConv != NULL);}
virtual ~CDDEConv();
virtual BOOL ConnectTo(const TCHAR* pszService, const TCHAR* pszTopic);
***************
*** 223,227 ****
virtual BOOL AdviseData(UINT wFmt, const TCHAR* pszTopic, const TCHAR* pszItem,
void* pData, DWORD dwSize);
! virtual BOOL Request(const TCHAR* pszItem, void** ppData, DWORD* pdwSize);
virtual BOOL Advise(const TCHAR* pszItem);
virtual BOOL Exec(const TCHAR* pszCmd);
--- 254,258 ----
virtual BOOL AdviseData(UINT wFmt, const TCHAR* pszTopic, const TCHAR* pszItem,
void* pData, DWORD dwSize);
! virtual BOOL Request(const TCHAR* pszItem, CString &ret);
virtual BOOL Advise(const TCHAR* pszItem);
virtual BOOL Exec(const TCHAR* pszCmd);
***************
*** 269,273 ****
DECLARE_DYNCREATE(CDDESystemItem_TopicList);
protected:
! virtual BOOL Request(UINT wFmt, void** ppData, DWORD* pdwSize);
};
--- 300,304 ----
DECLARE_DYNCREATE(CDDESystemItem_TopicList);
protected:
! virtual BOOL Request(UINT wFmt, CDDEAllocator &allocr);
};
***************
*** 276,280 ****
DECLARE_DYNCREATE(CDDESystemItem_ItemList);
protected:
! virtual BOOL Request(UINT wFmt, void** ppData, DWORD* pdwSize);
};
--- 307,311 ----
DECLARE_DYNCREATE(CDDESystemItem_ItemList);
protected:
! virtual BOOL Request(UINT wFmt, CDDEAllocator &allocr);
};
***************
*** 283,287 ****
DECLARE_DYNCREATE(CDDESystemItem_FormatList);
protected:
! virtual BOOL Request(UINT wFmt, void** ppData, DWORD* pdwSize);
};
--- 314,318 ----
DECLARE_DYNCREATE(CDDESystemItem_FormatList);
protected:
! virtual BOOL Request(UINT wFmt, CDDEAllocator &allocr);
};
***************
*** 291,295 ****
protected:
virtual BOOL Request(UINT wFmt, const TCHAR* pszItem,
! void** ppData, DWORD* pdwSize);
};
--- 322,326 ----
protected:
virtual BOOL Request(UINT wFmt, const TCHAR* pszItem,
! CDDEAllocator &allocr);
};
***************
*** 327,331 ****
virtual BOOL Request(UINT wFmt, const TCHAR* pszTopic, const TCHAR* pszItem,
! void** ppData, DWORD* pdwSize);
virtual BOOL Poke(UINT wFmt, const TCHAR* pszTopic, const TCHAR* pszItem,
void* pData, DWORD dwSize);
--- 358,362 ----
virtual BOOL Request(UINT wFmt, const TCHAR* pszTopic, const TCHAR* pszItem,
! CDDEAllocator &allocr);
virtual BOOL Poke(UINT wFmt, const TCHAR* pszTopic, const TCHAR* pszItem,
void* pData, DWORD dwSize);
|