Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

119 lines
2.4 KiB

  1. // DEInsTab.cpp : Implementation of CDEInsertTableParam
  2. // Copyright (c)1997-1999 Microsoft Corporation, All Rights Reserved
  3. #include "stdafx.h"
  4. #include "DHTMLEd.h"
  5. #include "DEInsTab.h"
  6. /////////////////////////////////////////////////////////////////////////////
  7. // CDEInsertTableParam
  8. static WCHAR k_wszEmpty[] = L"";
  9. CDEInsertTableParam::CDEInsertTableParam()
  10. {
  11. m_nNumRows = 3;
  12. m_nNumCols = 3;
  13. m_bstrTableAttrs = ::SysAllocString(L"border=1 cellPadding=1 cellSpacing=1 width=75%");
  14. m_bstrCellAttrs = ::SysAllocString(k_wszEmpty);
  15. m_bstrCaption = ::SysAllocString(k_wszEmpty);
  16. }
  17. CDEInsertTableParam::~CDEInsertTableParam()
  18. {
  19. ::SysFreeString(m_bstrTableAttrs);
  20. m_bstrTableAttrs = NULL;
  21. ::SysFreeString(m_bstrCellAttrs);
  22. m_bstrCellAttrs = NULL;
  23. ::SysFreeString(m_bstrCaption);
  24. m_bstrCaption = NULL;
  25. }
  26. STDMETHODIMP CDEInsertTableParam::get_NumRows(LONG * pVal)
  27. {
  28. _ASSERTE(pVal);
  29. *pVal = m_nNumRows;
  30. return S_OK;
  31. }
  32. STDMETHODIMP CDEInsertTableParam::put_NumRows(LONG newVal)
  33. {
  34. m_nNumRows = newVal;
  35. return S_OK;
  36. }
  37. STDMETHODIMP CDEInsertTableParam::get_NumCols(LONG * pVal)
  38. {
  39. _ASSERTE(pVal);
  40. *pVal = m_nNumCols;
  41. return S_OK;
  42. }
  43. STDMETHODIMP CDEInsertTableParam::put_NumCols(LONG newVal)
  44. {
  45. m_nNumCols = newVal;
  46. return S_OK;
  47. }
  48. STDMETHODIMP CDEInsertTableParam::get_TableAttrs(BSTR * pVal)
  49. {
  50. *pVal = ::SysAllocString(m_bstrTableAttrs);
  51. return S_OK;
  52. }
  53. STDMETHODIMP CDEInsertTableParam::put_TableAttrs(BSTR newVal)
  54. {
  55. ::SysFreeString(m_bstrTableAttrs);
  56. if ( NULL == newVal )
  57. {
  58. m_bstrTableAttrs = ::SysAllocString(k_wszEmpty);
  59. }
  60. else
  61. {
  62. m_bstrTableAttrs = ::SysAllocString(newVal);
  63. }
  64. return S_OK;
  65. }
  66. STDMETHODIMP CDEInsertTableParam::get_CellAttrs(BSTR * pVal)
  67. {
  68. *pVal = ::SysAllocString(m_bstrCellAttrs);
  69. return S_OK;
  70. }
  71. STDMETHODIMP CDEInsertTableParam::put_CellAttrs(BSTR newVal)
  72. {
  73. ::SysFreeString(m_bstrCellAttrs);
  74. if ( NULL == newVal )
  75. {
  76. m_bstrCellAttrs = ::SysAllocString(k_wszEmpty);
  77. }
  78. else
  79. {
  80. m_bstrCellAttrs = ::SysAllocString(newVal);
  81. }
  82. return S_OK;
  83. }
  84. STDMETHODIMP CDEInsertTableParam::get_Caption(BSTR * pVal)
  85. {
  86. *pVal = ::SysAllocString(m_bstrCaption);
  87. return S_OK;
  88. }
  89. STDMETHODIMP CDEInsertTableParam::put_Caption(BSTR newVal)
  90. {
  91. ::SysFreeString(m_bstrCaption);
  92. if ( NULL == newVal )
  93. {
  94. m_bstrCaption = ::SysAllocString(k_wszEmpty);
  95. }
  96. else
  97. {
  98. m_bstrCaption = ::SysAllocString(newVal);
  99. }
  100. return S_OK;
  101. }