summaryrefslogtreecommitdiffstats
path: root/public/sdk/inc/mfc42/afxpriv2.h
diff options
context:
space:
mode:
Diffstat (limited to 'public/sdk/inc/mfc42/afxpriv2.h')
-rw-r--r--public/sdk/inc/mfc42/afxpriv2.h225
1 files changed, 225 insertions, 0 deletions
diff --git a/public/sdk/inc/mfc42/afxpriv2.h b/public/sdk/inc/mfc42/afxpriv2.h
new file mode 100644
index 000000000..e1a0e287f
--- /dev/null
+++ b/public/sdk/inc/mfc42/afxpriv2.h
@@ -0,0 +1,225 @@
+// This is a part of the Microsoft Foundation Classes C++ library.
+// Copyright (C) 1992-1995 Microsoft Corporation
+// All rights reserved.
+//
+// This source code is only intended as a supplement to the
+// Microsoft Foundation Classes Reference and related
+// electronic documentation provided with the library.
+// See these sources for detailed information regarding the
+// Microsoft Foundation Classes product.
+
+// Note: This header file contains useful classes that are documented only
+// in the MFC Technical Notes. These classes may change from version to
+// version, so be prepared to change your code accordingly if you utilize
+// this header. In the future, commonly used portions of this header
+// may be moved and officially documented.
+
+#ifndef __AFXPRIV2_H__
+// Do not define __AFXPRIV2_H__ here. It is defined at the bottom.
+
+#ifndef __AFXPRIV_H__
+ #include <afxpriv.h>
+#endif
+
+#ifdef _AFX_MINREBUILD
+#pragma component(minrebuild, off)
+#endif
+#ifndef _AFX_FULLTYPEINFO
+#pragma component(mintypeinfo, on)
+#endif
+
+#ifdef _AFX_PACKING
+#pragma pack(push, _AFX_PACKING)
+#endif
+
+/////////////////////////////////////////////////////////////////////////////
+// AFXPRIV2 - MFC Private Classes
+
+// General OLE features
+
+#if (!defined _AFX_NO_OLE_SUPPORT) && (defined _OBJBASE_H_)
+
+// Implementation structures
+struct AFX_EVENT; // Event sink implementation
+
+// Classes declared in this file
+class COleControlLock;
+
+#endif
+
+// OLE Automation features
+
+#ifdef __AFXDISP_H__
+// Classes declared in this file
+
+//IStream
+ class CArchiveStream;
+
+// Functions declared in this file
+
+// AfxBSTR2ABTSR
+// AfxTaskStringA2W
+// AfxTaskStringW2A
+
+#endif
+
+/////////////////////////////////////////////////////////////////////////////
+
+#undef AFX_DATA
+#define AFX_DATA AFX_CORE_DATA
+
+/////////////////////////////////////////////////////////////////////////////
+// General OLE features
+
+#if (!defined _AFX_NO_OLE_SUPPORT) && (defined _OBJBASE_H_)
+#ifndef __AFXPRIV2_H__OLE__
+#define __AFXPRIV2_H__OLE__
+
+/////////////////////////////////////////////////////////////////////////////
+// Implementation of event sink handling
+
+struct AFX_EVENT
+{
+ enum
+ {
+ event,
+ propRequest, propChanged,
+ propDSCNotify
+ };
+
+ AFX_EVENT(int eventKind);
+
+ AFX_EVENT(int eventKind, DISPID dispid, DISPPARAMS* pDispParams = NULL,
+ EXCEPINFO* pExcepInfo = NULL, UINT* puArgError = NULL);
+
+ int m_eventKind;
+ DISPID m_dispid;
+ DISPPARAMS* m_pDispParams;
+ EXCEPINFO* m_pExcepInfo;
+ UINT* m_puArgError;
+ BOOL m_bPropChanged;
+ HRESULT m_hResult;
+ DSCSTATE m_nDSCState;
+ DSCREASON m_nDSCReason;
+};
+
+inline AFX_EVENT::AFX_EVENT(int eventKind)
+{
+ m_eventKind = eventKind;
+ m_dispid = DISPID_UNKNOWN;
+ m_pDispParams = NULL;
+ m_pExcepInfo = NULL;
+ m_puArgError = NULL;
+ m_hResult = NOERROR;
+ m_nDSCState = dscNoState;
+ m_nDSCReason = dscNoReason;
+}
+
+inline AFX_EVENT::AFX_EVENT(int eventKind, DISPID dispid,
+ DISPPARAMS* pDispParams, EXCEPINFO* pExcepInfo, UINT* puArgError)
+{
+ m_eventKind = eventKind;
+ m_dispid = dispid;
+ m_pDispParams = pDispParams;
+ m_pExcepInfo = pExcepInfo;
+ m_puArgError = puArgError;
+ m_hResult = NOERROR;
+ m_nDSCState = dscNoState;
+ m_nDSCReason = dscNoReason;
+}
+
+/////////////////////////////////////////////////////////////////////////////
+// COleControlLock
+
+class COleControlLock
+{
+// Constructors
+public:
+ COleControlLock(REFCLSID clsid);
+
+// Attributes
+ CLSID m_clsid;
+ LPCLASSFACTORY m_pClassFactory;
+ COleControlLock* m_pNextLock;
+
+// Implementation
+public:
+ virtual ~COleControlLock();
+};
+
+#endif // __AFXPRIV2_H__OLE__
+#endif //(!defined _AFX_NO_OLE_SUPPORT) && (defined _OBJBASE_H_)
+
+/////////////////////////////////////////////////////////////////////////////
+// OLE Automation features
+
+#ifdef __AFXDISP_H__
+#ifndef __AFXPRIV2_H__DISP__
+#define __AFXPRIV2_H__DISP__
+
+/////////////////////////////////////////////////////////////////////////////
+// CArchiveStream
+
+class CArchiveStream : public IStream
+{
+public:
+ CArchiveStream(CArchive* pArchive);
+
+// Implementation
+ CArchive* m_pArchive;
+
+ STDMETHOD_(ULONG, AddRef)();
+ STDMETHOD_(ULONG, Release)();
+ STDMETHOD(QueryInterface)(REFIID, LPVOID*);
+
+ STDMETHOD(Read)(void*, ULONG, ULONG*);
+ STDMETHOD(Write)(const void*, ULONG cb, ULONG*);
+ STDMETHOD(Seek)(LARGE_INTEGER, DWORD, ULARGE_INTEGER*);
+ STDMETHOD(SetSize)(ULARGE_INTEGER);
+ STDMETHOD(CopyTo)(LPSTREAM, ULARGE_INTEGER, ULARGE_INTEGER*,
+ ULARGE_INTEGER*);
+ STDMETHOD(Commit)(DWORD);
+ STDMETHOD(Revert)();
+ STDMETHOD(LockRegion)(ULARGE_INTEGER, ULARGE_INTEGER,DWORD);
+ STDMETHOD(UnlockRegion)(ULARGE_INTEGER, ULARGE_INTEGER, DWORD);
+ STDMETHOD(Stat)(STATSTG*, DWORD);
+ STDMETHOD(Clone)(LPSTREAM*);
+};
+
+/////////////////////////////////////////////////////////////////////////////
+// Global UNICODE<>ANSI translation helpers
+
+void AFXAPI AfxBSTR2CString(CString* pStr, BSTR bstr);
+
+#if !defined(_UNICODE) && !defined(OLE2ANSI)
+BSTR AFXAPI AfxBSTR2ABSTR(BSTR bstrW);
+LPWSTR AFXAPI AfxTaskStringA2W(LPCSTR lpa);
+LPSTR AFXAPI AfxTaskStringW2A(LPCWSTR lpw);
+#endif
+
+#endif // __AFXPRIV2_H__DISP__
+#endif // __AFXDISP_H__
+
+/////////////////////////////////////////////////////////////////////////////
+
+#ifdef _AFX_PACKING
+#pragma pack(pop)
+#endif
+
+#undef AFX_DATA
+#define AFX_DATA
+
+#ifdef _AFX_MINREBUILD
+#pragma component(minrebuild, on)
+#endif
+#ifndef _AFX_FULLTYPEINFO
+#pragma component(mintypeinfo, off)
+#endif
+
+#if (defined __AFXPRIV2_H__OLE__) && (defined __AFXPRIV2_H__DISP__)
+#define __AFXPRIV2_H__
+#endif
+
+#endif // __AFXPRIV2_H__
+
+/////////////////////////////////////////////////////////////////////////////