home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / mfc / include / afxctl.inl < prev    next >
Text File  |  1998-06-16  |  5KB  |  116 lines

  1. // This is a part of the Microsoft Foundation Classes C++ library.
  2. // Copyright (C) 1992-1998 Microsoft Corporation
  3. // All rights reserved.
  4. //
  5. // This source code is only intended as a supplement to the
  6. // Microsoft Foundation Classes Reference and related
  7. // electronic documentation provided with the library.
  8. // See these sources for detailed information regarding the
  9. // Microsoft Foundation Classes product.
  10.  
  11. // Inlines for AFXCTL.H
  12.  
  13. #ifdef _AFXCTL_INLINE
  14.  
  15. /////////////////////////////////////////////////////////////////////////////
  16.  
  17. // COleControl inlines
  18. _AFXCTL_INLINE BOOL COleControl::IsOptimizedDraw()
  19.     { return m_bOptimizedDraw; }
  20. _AFXCTL_INLINE BOOL COleControl::IsConvertingVBX()
  21.     { return m_bConvertVBX; }
  22. _AFXCTL_INLINE void COleControl::FireKeyDown(USHORT* pnChar, short nShiftState)
  23.     { FireEvent(DISPID_KEYDOWN, EVENT_PARAM(VTS_PI2 VTS_I2), pnChar,
  24.         nShiftState); }
  25. _AFXCTL_INLINE void COleControl::FireKeyUp(USHORT* pnChar, short nShiftState)
  26.     { FireEvent(DISPID_KEYUP, EVENT_PARAM(VTS_PI2 VTS_I2), pnChar,
  27.         nShiftState); }
  28. _AFXCTL_INLINE void COleControl::FireKeyPress(USHORT* pnChar)
  29.     { FireEvent(DISPID_KEYPRESS, EVENT_PARAM(VTS_PI2), pnChar); }
  30. _AFXCTL_INLINE void COleControl::FireMouseDown(short nButton,
  31.         short nShiftState, OLE_XPOS_PIXELS x, OLE_YPOS_PIXELS y)
  32.     { FireEvent(DISPID_MOUSEDOWN,
  33.         EVENT_PARAM(VTS_I2 VTS_I2 VTS_XPOS_PIXELS VTS_YPOS_PIXELS),
  34.         nButton, nShiftState, x, y); }
  35. _AFXCTL_INLINE void COleControl::FireMouseUp(short nButton,
  36.         short nShiftState, OLE_XPOS_PIXELS x, OLE_YPOS_PIXELS y)
  37.     { FireEvent(DISPID_MOUSEUP,
  38.         EVENT_PARAM(VTS_I2 VTS_I2 VTS_XPOS_PIXELS VTS_YPOS_PIXELS),
  39.         nButton, nShiftState, x, y); }
  40. _AFXCTL_INLINE void COleControl::FireMouseMove(short nButton,
  41.         short nShiftState, OLE_XPOS_PIXELS x, OLE_YPOS_PIXELS y)
  42.     { FireEvent(DISPID_MOUSEMOVE,
  43.         EVENT_PARAM(VTS_I2 VTS_I2 VTS_XPOS_PIXELS VTS_YPOS_PIXELS),
  44.         nButton, nShiftState, x, y); }
  45. _AFXCTL_INLINE void COleControl::FireClick()
  46.     { FireEvent(DISPID_CLICK, EVENT_PARAM(VTS_NONE)); }
  47. _AFXCTL_INLINE void COleControl::FireDblClick()
  48.     { FireEvent(DISPID_DBLCLICK, EVENT_PARAM(VTS_NONE)); }
  49. _AFXCTL_INLINE void COleControl::FireReadyStateChange()
  50.     { FireEvent(DISPID_READYSTATECHANGE, EVENT_PARAM(VTS_I4), m_lReadyState); }
  51. _AFXCTL_INLINE void COleControl::InternalSetReadyState(long lNewReadyState)
  52.     { ASSERT((lNewReadyState >=0) && (lNewReadyState <= READYSTATE_COMPLETE));
  53.       if (m_lReadyState != lNewReadyState)
  54.         {m_lReadyState = lNewReadyState; FireReadyStateChange(); } }
  55. _AFXCTL_INLINE BOOL COleControl::ExchangeVersion(
  56.     CPropExchange* pPX, DWORD dwVersionDefault, BOOL bConvert)
  57.     { return pPX->ExchangeVersion(m_dwVersionLoaded, dwVersionDefault, bConvert); }
  58. _AFXCTL_INLINE DWORD COleControl::GetStockEventMask() const
  59.     { return *GetEventMap()->lpStockEventMask; }
  60. _AFXCTL_INLINE DWORD COleControl::GetStockPropMask() const
  61.     { return *GetDispatchMap()->lpStockPropMask; }
  62. _AFXCTL_INLINE void COleControl::RequestAsynchronousExchange(DWORD dwVersion)
  63.     { m_bDataPathPropertiesLoaded = FALSE; m_dwDataPathVersionToReport = dwVersion; }
  64.  
  65. // CPropExchange inlines
  66. _AFXCTL_INLINE CPropExchange::CPropExchange() : m_dwVersion(0), m_bAsync(FALSE)
  67.     { }
  68. _AFXCTL_INLINE BOOL CPropExchange::IsLoading()
  69.     { return m_bLoading; }
  70. _AFXCTL_INLINE DWORD CPropExchange::GetVersion()
  71.     { return m_dwVersion; }
  72. _AFXCTL_INLINE BOOL CPropExchange::IsAsynchronous()
  73.     { return m_bAsync; }
  74.  
  75. // CDataPathProperty inlines
  76. _AFXCTL_INLINE CDataPathProperty::CDataPathProperty(COleControl* pControl)
  77.     : m_pControl(pControl) {}
  78. _AFXCTL_INLINE CDataPathProperty::CDataPathProperty(LPCTSTR lpszPath, COleControl* pControl)
  79.     : m_pControl(pControl), m_strPath(lpszPath) {}
  80. _AFXCTL_INLINE void CDataPathProperty::SetPath(LPCTSTR lpszPath)
  81.     { ASSERT_VALID(this); m_strPath = lpszPath; }
  82. _AFXCTL_INLINE CString CDataPathProperty::GetPath() const
  83.     { ASSERT_VALID(this); return m_strPath; }
  84. _AFXCTL_INLINE COleControl* CDataPathProperty::GetControl()
  85.     { ASSERT_VALID(this); return m_pControl; }
  86. _AFXCTL_INLINE void CDataPathProperty::SetControl(COleControl* pControl)
  87.     { ASSERT_VALID(this); m_pControl=pControl; }
  88.  
  89. // CCachedDataPathProperty inlines
  90. _AFXCTL_INLINE CCachedDataPathProperty::CCachedDataPathProperty(COleControl* pControl)
  91.     : CDataPathProperty(pControl) {}
  92. _AFXCTL_INLINE CCachedDataPathProperty::CCachedDataPathProperty(LPCTSTR lpszPath, COleControl* pControl)
  93.     : CDataPathProperty(lpszPath, pControl) {}
  94.  
  95. // inline DDP_ routines
  96. _AFXCTL_INLINE void AFXAPI DDP_LBString(CDataExchange* pDX, int id,
  97.         CString& member, LPCTSTR pszPropName)
  98.     { DDP_Text(pDX, id, member, pszPropName); }
  99. _AFXCTL_INLINE void AFXAPI DDP_LBStringExact(CDataExchange* pDX, int id,
  100.         CString& member, LPCTSTR pszPropName)
  101.     { DDP_Text(pDX, id, member, pszPropName); }
  102. _AFXCTL_INLINE void AFXAPI DDP_LBIndex(CDataExchange* pDX, int id,
  103.         int& member, LPCTSTR pszPropName)
  104.     { DDP_Text(pDX, id, member, pszPropName); }
  105. _AFXCTL_INLINE void AFXAPI DDP_CBString(CDataExchange* pDX, int id,
  106.         CString& member, LPCTSTR pszPropName)
  107.     { DDP_Text(pDX, id, member, pszPropName); }
  108. _AFXCTL_INLINE void AFXAPI DDP_CBStringExact(CDataExchange* pDX, int id,
  109.         CString& member, LPCTSTR pszPropName)
  110.     { DDP_Text(pDX, id, member, pszPropName); }
  111. _AFXCTL_INLINE void AFXAPI DDP_CBIndex(CDataExchange* pDX, int id,
  112.         int& member, LPCTSTR pszPropName)
  113.     { DDP_Text(pDX, id, member, pszPropName); }
  114.  
  115. #endif //_AFXCTL_INLINE
  116.