MyToolBar.cpp
上传用户:cding2008
上传日期:2007-01-03
资源大小:1812k
文件大小:2k
源码类别:

OpenGL

开发平台:

Visual C++

  1. /////////////////////////////////////////////////////////////////////////////
  2. // MyToolBar.cpp : implementation of the CMyToolBar floating
  3. //    tool palette class
  4. //
  5. // ModelMagic 3D and 'glOOP' (OpenGL Object Oriented Programming library)
  6. // Copyright (c) Craig Fahrnbach 1997, 1999
  7. //
  8. // OpenGL is a registered trademark of Silicon Graphics
  9. //
  10. //
  11. // This program is provided for educational and personal use only and
  12. // is provided without guarantee or warrantee expressed or implied.
  13. //
  14. // Commercial use is strickly prohibited without written permission
  15. // from ImageWare Development.
  16. //
  17. /////////////////////////////////////////////////////////////////////////////
  18. #include "stdafx.h"
  19. #include "ModelMagic3D.h"
  20. #ifdef _DEBUG
  21. #undef THIS_FILE
  22. static char BASED_CODE THIS_FILE[] = __FILE__;
  23. #endif
  24. /////////////////////////////////////////////////////////////////////////////
  25. // CMyToolBar
  26. BEGIN_MESSAGE_MAP(CMyToolBar, CToolBar)
  27. //{{AFX_MSG_MAP(CMyToolBar)
  28. //}}AFX_MSG_MAP
  29. END_MESSAGE_MAP()
  30. /////////////////////////////////////////////////////////////////////////////
  31. // CMyToolBar construction/destruction
  32. CMyToolBar::CMyToolBar()
  33. {
  34. m_nColumns = 2;
  35. m_cxLeftBorder = 5;
  36. m_cxRightBorder = 5;
  37. m_cyTopBorder = 5;
  38. m_cyBottomBorder = 5;
  39. }
  40. CMyToolBar::~CMyToolBar()
  41. {
  42. }
  43. /////////////////////////////////////////////////////////////////////////////
  44. // CMyToolBar diagnostics
  45. #ifdef _DEBUG
  46. void CMyToolBar::AssertValid() const
  47. {
  48. CToolBar::AssertValid();
  49. }
  50. void CMyToolBar::Dump(CDumpContext& dc) const
  51. {
  52. CToolBar::Dump(dc);
  53. }
  54. #endif //_DEBUG
  55. /////////////////////////////////////////////////////////////////////////////
  56. // CMyToolBar message handlers
  57. void CMyToolBar::SetColumns(UINT nColumns)
  58. {
  59. m_nColumns = nColumns;
  60. int nCount = GetToolBarCtrl().GetButtonCount();
  61. for(int i = 0; i < nCount; i++)
  62. {
  63. UINT nStyle = GetButtonStyle(i);
  64. BOOL bWrap = (((i + 1) % nColumns) == 0);
  65. if (bWrap)
  66. nStyle |= TBBS_WRAPPED;
  67. else
  68. nStyle &= ~TBBS_WRAPPED;
  69. SetButtonStyle(i, nStyle);
  70. }
  71. Invalidate();
  72. GetParentFrame()->RecalcLayout();
  73. }