SPMacros.h 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #ifndef _SPMACROS_H_
  2. #define _SPMACROS_H_
  3. #if _MSC_VER >= 1000
  4. #pragma once
  5. #endif
  6. #define AFX_WNDCOMMCTL_DATE_REG 0x20000
  7. #define AfxDeferRegisterClass(fClass) AfxEndDeferRegisterClass(fClass)
  8. #define SAFE_DELETE(ptr)
  9. #undef SAFE_DELETE
  10. #define SAFE_DELETE(ptr) if(ptr) { delete ptr; ptr = NULL; }
  11. #define SAFE_DELETE_AR(ptr)
  12. #undef SAFE_DELETE_AR
  13. #define SAFE_DELETE_AR(ptr) if(ptr) { delete [] ptr; ptr = NULL; }
  14. #define SAFE_RELEASE(comPointer)
  15. #undef SAFE_RELEASE
  16. #define SAFE_RELEASE(comPointer) if(comPointer) { (comPointer)->Release(); (comPointer)=NULL; }
  17. #define SAFE_CALLPTR(classPointer, functionName)
  18. #undef SAFE_CALLPTR
  19. #define SAFE_CALLPTR(classPointer, functionName) if (classPointer) classPointer->functionName
  20. #ifdef _DEBUG
  21. #ifndef _AFX_NO_DEBUG_CRT
  22. #define XT_ASSERT_MSG(exp, msg)
  23. #undef XT_ASSERT_MSG
  24. #define XT_ASSERT_MSG(exp, msg) {if ( !(exp) && (_CrtDbgReport( _CRT_ASSERT, __FILE__, __LINE__, NULL, "\n-----------------------\n" msg "\n-----------------------" ) ) ) AfxDebugBreak();}
  25. #else
  26. #define XT_ASSERT_MSG(exp, msg) (void)( (exp) || (_assert("\n-----------------------\n" msg "\n-----------------------", __FILE__, __LINE__), 0) )
  27. #endif
  28. #else
  29. #define XT_ASSERT_MSG(exp, msg) ((void)0)
  30. #endif
  31. #ifdef _UNICODE
  32. #ifndef UNICODE
  33. #define UNICODE
  34. #endif
  35. #endif
  36. #define __STR2__(x) #x
  37. #define __STR1__(x) __STR2__(x)
  38. #define __LOC__ __FILE__ "("__STR1__(__LINE__)"): warning : "
  39. #ifdef _AFXDLL
  40. #define SAFE_MANAGE_STATE(s) AFX_MANAGE_STATE(s)
  41. #else
  42. #define SAFE_MANAGE_STATE(s)
  43. #endif
  44. #ifndef AFX_INLINE
  45. #define AFX_INLINE inline
  46. #endif
  47. #ifndef CBRS_GRIPPER
  48. #define CBRS_GRIPPER 0x00400000L
  49. #endif
  50. #ifndef WS_EX_LAYOUTRTL
  51. #define WS_EX_LAYOUTRTL 0x00400000L
  52. #endif
  53. #ifndef _countof
  54. #define _countof(array) (sizeof(array)/sizeof(array[0]))
  55. #endif
  56. #if (_MSC_VER <= 1200) && !defined(_WIN64)
  57. #ifndef DWORD_PTR
  58. #define DWORD_PTR DWORD
  59. #endif
  60. #ifndef UINT_PTR
  61. #define UINT_PTR UINT
  62. #endif
  63. #ifndef INT_PTR
  64. #define INT_PTR int
  65. #endif
  66. #ifndef ULONG_PTR
  67. #define ULONG_PTR ULONG
  68. #endif
  69. #ifndef LONG_PTR
  70. #define LONG_PTR long
  71. #endif
  72. #ifndef SetWindowLongPtr
  73. #define SetWindowLongPtr SetWindowLong
  74. #endif
  75. #ifndef GetWindowLongPtr
  76. #define GetWindowLongPtr GetWindowLong
  77. #endif
  78. #ifndef GetClassLongPtr
  79. #define GetClassLongPtr GetClassLong
  80. #endif
  81. #endif
  82. #endif