]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/tbarmsw.cpp
Added new wxGrid classes. This is a work in progress !
[wxWidgets.git] / src / msw / tbarmsw.cpp
index 15dd0eafaed6589c6716a9357f308c892c6c87d2..92f59a59902732686d9e6b5758e7f23ee922fe86 100644 (file)
 #endif
 
 #ifndef WX_PRECOMP
 #endif
 
 #ifndef WX_PRECOMP
-#include "wx.h"
+#include "wx/wx.h"
 #endif
 
 #if wxUSE_BUTTONBAR && wxUSE_TOOLBAR
 
 #endif
 
 #if wxUSE_BUTTONBAR && wxUSE_TOOLBAR
 
-#ifndef __GNUWIN32__
+#if !defined(__GNUWIN32__) && !defined(__SALFORDC__)
 #include "malloc.h"
 #endif
 
 #include "malloc.h"
 #endif
 
+#if !defined(__MWERKS__) && !defined(__SALFORDC__)
 #include <memory.h>
 #include <memory.h>
+#endif
+
 #include <stdlib.h>
 
 #include "wx/tbarmsw.h"
 #include <stdlib.h>
 
 #include "wx/tbarmsw.h"
+#include "wx/event.h"
 #include "wx/app.h"
 #include "wx/app.h"
+#include "wx/bitmap.h"
 #include "wx/msw/private.h"
 #include "wx/msw/dib.h"
 
 #include "wx/msw/private.h"
 #include "wx/msw/dib.h"
 
@@ -339,14 +344,13 @@ wxToolBarTool *wxToolBarMSW::AddTool(int index, const wxBitmap& bitmap, const wx
 
   // TODO: use the mapping code from wxToolBar95 to get it right in this class
 #if !defined(__WIN32__) && !defined(__WIN386__)
 
   // TODO: use the mapping code from wxToolBar95 to get it right in this class
 #if !defined(__WIN32__) && !defined(__WIN386__)
-  wxBitmap *bitmap2 = NULL;
+  wxBitmap bitmap2;
   if (toggle)
   {
   if (toggle)
   {
-    bitmap2 = new wxBitmap;
-    bitmap2->SetHBITMAP( (WXHBITMAP) CreateMappedBitmap(wxGetInstance(), (HBITMAP) ((wxBitmap& )bitmap).GetHBITMAP()));
+    bitmap2.SetHBITMAP( (WXHBITMAP) CreateMappedBitmap((WXHINSTANCE)wxGetInstance(), (WXHBITMAP) ((wxBitmap& )bitmap).GetHBITMAP()));
   }
 
   }
 
-  wxToolBarTool *tool = new wxToolBarTool(index, bitmap, *bitmap2, toggle, xPos, yPos, helpString1, helpString2);
+  wxToolBarTool *tool = new wxToolBarTool(index, bitmap, bitmap2, toggle, xPos, yPos, helpString1, helpString2);
 #else
   wxToolBarTool *tool = new wxToolBarTool(index, bitmap, wxNullBitmap, toggle, xPos, yPos, helpString1, helpString2);
 #endif
 #else
   wxToolBarTool *tool = new wxToolBarTool(index, bitmap, wxNullBitmap, toggle, xPos, yPos, helpString1, helpString2);
 #endif
@@ -377,7 +381,7 @@ wxToolBarTool *wxToolBarMSW::AddTool(int index, const wxBitmap& bitmap, const wx
   return tool;
 }
 
   return tool;
 }
 
-void wxToolBarMSW::Layout(void)
+void wxToolBarMSW::LayoutTools()
 {
   m_currentRowsOrColumns = 0;
   m_lastX = m_xMargin;
 {
   m_currentRowsOrColumns = 0;
   m_lastX = m_xMargin;
@@ -461,12 +465,20 @@ void wxToolBarMSW::Layout(void)
     node = node->Next();
   }
   if ( GetWindowStyleFlag() & wxTB_HORIZONTAL )
     node = node->Next();
   }
   if ( GetWindowStyleFlag() & wxTB_HORIZONTAL )
+  {
     m_maxWidth += maxToolWidth;
     m_maxWidth += maxToolWidth;
+    m_maxHeight += maxToolHeight;
+  }
   else
   else
+  {
+    m_maxWidth += maxToolWidth;
     m_maxHeight += maxToolHeight;
     m_maxHeight += maxToolHeight;
+  }
 
   m_maxWidth += m_xMargin;
   m_maxHeight += m_yMargin;
 
   m_maxWidth += m_xMargin;
   m_maxHeight += m_yMargin;
+
+  SetSize(m_maxWidth, m_maxHeight);
 }
 
 
 }
 
 
@@ -932,7 +944,7 @@ WXHBITMAP wxToolBarMSW::CreateMappedBitmap(WXHINSTANCE WXUNUSED(hInstance), void
 
 WXHBITMAP wxToolBarMSW::CreateMappedBitmap(WXHINSTANCE hInstance, WXHBITMAP hBitmap)
 {
 
 WXHBITMAP wxToolBarMSW::CreateMappedBitmap(WXHINSTANCE hInstance, WXHBITMAP hBitmap)
 {
-  HANDLE hDIB = BitmapToDIB((HBITMAP) hBitmap, 0);
+  HANDLE hDIB = wxBitmapToDIB((HBITMAP) hBitmap, 0);
   if (hDIB)
   {
 #ifdef __WINDOWS_386__
   if (hDIB)
   {
 #ifdef __WINDOWS_386__