home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 23 / IOPROG_23.ISO / SOFT / MSGTRACE.ZIP / MyProjects / MsgTrace / MsgTracer / ExtCoolBar.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  1998-05-30  |  3.3 KB  |  117 lines

  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. // File        : ExtCoolBar.cpp
  4. // Project     : MsgTrace
  5. // Component   : MsgTracer
  6. //---------------------------------------------------------------------------
  7. // Description : a cool-bar
  8. //
  9. /////////////////////////////////////////////////////////////////////////////
  10. //
  11. // SourceSafe Strings. Do not change.
  12. //---------------------------------------------------------------------------
  13. // $Author: jeskes $
  14. // $Date: $
  15. // $Revision: $
  16. //
  17. /////////////////////////////////////////////////////////////////////////////
  18.  
  19. #include "stdafx.h"
  20. #include "resource.h"
  21. #include "ExtCoolBar.h"
  22.  
  23. ////////////////////////////////////////////////////////////////
  24. // CExtCoolBar
  25. ////////////////////////////////////////////////////////////////
  26.  
  27. IMPLEMENT_DYNAMIC( CExtCoolBar, CCoolBar )
  28.  
  29. BEGIN_MESSAGE_MAP( CExtCoolBar, CCoolBar )
  30.     //{{AFX_MSG_MAP(CExtCoolBar)
  31.     //}}AFX_MSG_MAP
  32. END_MESSAGE_MAP()
  33.  
  34. ////////////////////////////////////////////////////////////////
  35. // CExtCoolBar: construction
  36. ////////////////////////////////////////////////////////////////
  37.  
  38. CExtCoolBar::CExtCoolBar()
  39. {
  40. }
  41.  
  42. ////////////////////////////////////////////////////////////////
  43.  
  44. CExtCoolBar::~CExtCoolBar()
  45. {
  46. }
  47.  
  48. ////////////////////////////////////////////////////////////////
  49. // Bands
  50. ////////////////////////////////////////////////////////////////
  51.  
  52. BOOL CExtCoolBar::OnCreateBands()
  53. {
  54.     // Create tool bar
  55.  
  56.     DWORD dwToolBarStyles = WS_CHILD |
  57.                             WS_VISIBLE |
  58.                             WS_CLIPSIBLINGS |
  59.                             WS_CLIPCHILDREN |
  60.                             CBRS_TOOLTIPS |
  61.                             CBRS_SIZE_DYNAMIC;
  62.  
  63.     if( !m_wndToolBar.Create( this, dwToolBarStyles ) ||
  64.         !m_wndToolBar.LoadToolBar(IDR_MAINFRAME ) )
  65.     {
  66.         TRACE0("Failed to create toolbar\n");
  67.         return( FALSE );
  68.     }
  69.  
  70.     m_wndToolBar.ModifyStyle( 0, TBSTYLE_FLAT );
  71.  
  72.     //-----------------------------------------------------------------------
  73.     // Following is not needed since I'm not using an image list
  74.     //    CRebarInfo rbi;
  75.     // ... set stuff in rbi...
  76.     //    SetBarInfo(&rbi);
  77.     //-----------------------------------------------------------------------
  78.  
  79.     // load background bmp
  80.     VERIFY( m_bmBackground.LoadBitmap( IDB_TBBACK ) );        
  81.  
  82.     //-----------------------------------------------------------------------
  83.     // Adding bands
  84.     //-----------------------------------------------------------------------
  85.  
  86.     CRebarBandInfo rbbi;
  87.  
  88.     rbbi.fMask = RBBIM_STYLE|RBBIM_CHILD|RBBIM_CHILDSIZE|RBBIM_BACKGROUND|RBBIM_COLORS;
  89.     rbbi.fStyle = RBBS_FIXEDBMP;
  90.     rbbi.clrFore = GetSysColor(COLOR_BTNTEXT);
  91.     rbbi.clrBack = GetSysColor(COLOR_BTNFACE);
  92.     rbbi.hbmBack = m_bmBackground;
  93.  
  94.     //-----------------------------------------------------------------------
  95.     // Band 1: Add toolbar band
  96.     //-----------------------------------------------------------------------
  97.  
  98.     CSize sizeHorzToolBar = m_wndToolBar.CalcDynamicLayout( -1, 0 );
  99.     CSize sizeVertToolBar = m_wndToolBar.CalcDynamicLayout( -1, LM_HORZ );
  100.     
  101.     rbbi.hwndChild = m_wndToolBar;
  102.     rbbi.cxMinChild = sizeHorzToolBar.cx;
  103.     rbbi.cyMinChild = sizeVertToolBar.cy;
  104.     
  105.     if( !InsertBand( -1, &rbbi ) )
  106.     {
  107.         return( FALSE );
  108.     }
  109.  
  110.     //-----------------------------------------------------------------------
  111.     // done
  112.     //-----------------------------------------------------------------------
  113.  
  114.     return( TRUE );
  115. }
  116.  
  117.