]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/toolbar.cpp
use MoreFilesX instead of MoreFiles when building with Apple Developer Tools
[wxWidgets.git] / src / mac / carbon / toolbar.cpp
index 7c6fa528d59f0c7fd9c4e951865ffde1d9588c7d..c1d36f4122bf9993fc8e0b02a41195b04ae1e8e1 100644 (file)
@@ -159,6 +159,13 @@ bool wxToolBar::Create(wxWindow *parent, wxWindowID id, const wxPoint& pos, cons
 
 wxToolBar::~wxToolBar()
 {
+    size_t index = 0 ;
+    for ( index = 0 ; index < m_macToolHandles.Count() ; ++index )
+    {
+        // Delete the control as we get ghosts otherwise
+        ::DisposeControl( (ControlHandle) m_macToolHandles[index] );
+    }
+    
     // we must refresh the frame size when the toolbar is deleted but the frame
     // is not - otherwise toolbar leaves a hole in the place it used to occupy
 }
@@ -202,7 +209,6 @@ bool wxToolBar::Realize()
     while (node)
     {
         wxToolBarTool *tool = (wxToolBarTool *)node->Data();
-        wxBitmapRefData * bmap = (wxBitmapRefData*) ( tool->GetNormalBitmap().GetRefData()) ;
         
         if(  !tool->IsSeparator()  )
         {
@@ -240,11 +246,11 @@ bool wxToolBar::Realize()
             }
             if ( tool->CanBeToggled() && tool->IsToggled() )
             {
-                ::SetControlValue( m_macToolHandle , 1 ) ;
+                ::SetControl32BitValue( m_macToolHandle , 1 ) ;
             }
             else
             {
-                ::SetControlValue( m_macToolHandle , 0 ) ;
+                ::SetControl32BitValue( m_macToolHandle , 0 ) ;
             }
             /*
               ::SetControlFontStyle( m_macToolHandle , &controlstyle ) ;
@@ -328,7 +334,7 @@ wxSize wxToolBar::GetToolSize() const
 
 void wxToolBar::MacHandleControlClick( WXWidget control , wxInt16 controlpart ) 
 {
-    int index = 0 ;
+    size_t index = 0 ;
     for ( index = 0 ; index < m_macToolHandles.Count() ; ++index )
     {
         if ( m_macToolHandles[index] == (void*) control )
@@ -336,7 +342,7 @@ void wxToolBar::MacHandleControlClick( WXWidget control , wxInt16 controlpart )
             wxToolBarTool *tool = (wxToolBarTool *)m_tools.Nth( index )->Data();
             if ( tool->CanBeToggled() )
             {
-                tool->Toggle( GetControlValue( (ControlHandle) control ) ) ;
+                tool->Toggle( GetControl32BitValue( (ControlHandle) control ) ) ;
             }
             OnLeftClick( tool->GetId() , tool -> IsToggled() ) ;
             break ;
@@ -394,7 +400,6 @@ void wxToolBar::MacSuperChangedPosition()
         while (node)
         {
             wxToolBarTool *tool = (wxToolBarTool *)node->Data();
-            wxBitmapRefData * bmap = (wxBitmapRefData*) ( tool->GetNormalBitmap().GetRefData()) ;
             
             if(  !tool->IsSeparator()  )
             {
@@ -479,7 +484,7 @@ wxToolBarToolBase *wxToolBar::FindToolForPosition(wxCoord x, wxCoord y) const
     MacClientToRootWindow( &x , &y ) ;
     Point pt = { y ,x } ;
 
-    int index = 0 ;
+    size_t index = 0 ;
     for ( index = 0 ; index < m_macToolHandles.Count() ; ++index )
     {
         if ( m_macToolHandles[index] )
@@ -533,7 +538,7 @@ void wxToolBar::DoToggleTool(wxToolBarToolBase *t, bool toggle)
         return ;
         
     ControlHandle control = (ControlHandle) m_macToolHandles[ tool->m_index ] ;
-        ::SetControlValue( control , toggle ) ;
+        ::SetControl32BitValue( control , toggle ) ;
 }
 
 bool wxToolBar::DoInsertTool(size_t WXUNUSED(pos),
@@ -546,15 +551,15 @@ bool wxToolBar::DoInsertTool(size_t WXUNUSED(pos),
     return TRUE;
 }
 
-void wxToolBar::DoSetToggle(wxToolBarToolBase *t, bool toggle)
+void wxToolBar::DoSetToggle(wxToolBarToolBase *WXUNUSED(tool), bool WXUNUSED(toggle))
 {
-       wxToolBarTool *tool = (wxToolBarTool *)t;
-       // TODO: set toggle state
+    wxFAIL_MSG( _T("not implemented") );
 }
 
-bool wxToolBar::DoDeleteTool(size_t pos, wxToolBarToolBase *tool)
+bool wxToolBar::DoDeleteTool(size_t WXUNUSED(pos), wxToolBarToolBase *WXUNUSED(tool))
 {
-        return TRUE ;
+    wxFAIL_MSG( _T("not implemented") );
+    return TRUE ;
 }
 
 void wxToolBar::OnPaint(wxPaintEvent& event)
@@ -566,7 +571,7 @@ void wxToolBar::OnPaint(wxPaintEvent& event)
         dc.YLOG2DEVMAC(m_height) , dc.XLOG2DEVMAC(m_width) } ;
     UMADrawThemePlacard( &toolbarrect , IsEnabled() ? kThemeStateActive : kThemeStateInactive) ;
     {
-        int index = 0 ;
+        size_t index = 0 ;
         for ( index = 0 ; index < m_macToolHandles.Count() ; ++index )
         {
             if ( m_macToolHandles[index] )