]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/toolbar.cpp
No res-include for rpmspec wx24dsp
[wxWidgets.git] / src / mac / carbon / toolbar.cpp
index 45c2ae0e2780f768683bb12bc7a5e790b84103db..29ad6f810d8683b8a8df1826f01dbd591ec00bd0 100644 (file)
@@ -149,7 +149,11 @@ static pascal OSStatus wxMacToolBarToolControlEventHandler( EventHandlerCallRef
                 wxToolBarTool* tbartool = (wxToolBarTool*)data ;
                 if ( tbartool->CanBeToggled() )
                 {
+#ifdef __WXMAC_OSX__
+                    ((wxToolBar*)tbartool->GetToolBar())->ToggleTool(tbartool->GetId(), !tbartool->IsToggled() );
+#else
                     ((wxToolBar*)tbartool->GetToolBar())->ToggleTool(tbartool->GetId(), GetControl32BitValue((ControlRef)tbartool->GetControlHandle()));
+#endif
                 }
                 ((wxToolBar*)tbartool->GetToolBar())->OnLeftClick( tbartool->GetId() , tbartool -> IsToggled() ) ;
                 result = noErr; 
@@ -236,20 +240,20 @@ void wxToolBarTool::SetPosition(const wxPoint& position)
     m_x = position.x;
     m_y = position.y;
 
-    if ( IsButton() )
+    int x , y ;
+    x = y = 0 ;
+    int mac_x = position.x ;
+    int mac_y = position.y ;
+
+    if ( ! GetToolBar()->MacGetTopLevelWindow()->MacUsesCompositing() )
     {
-        int x , y ;
-        x = y = 0 ;
-        int mac_x = position.x ;
-        int mac_y = position.y ;
-#ifdef __WXMAC_OSX__
-        // already correctly set up
-#else
-        WindowRef rootwindow = (WindowRef) GetToolBar()->MacGetTopLevelWindowRef() ;    
         GetToolBar()->MacWindowToRootWindow( &x , &y ) ;
         mac_x += x;
         mac_y += y;
-#endif
+    }
+
+    if ( IsButton() )
+    {
         Rect contrlRect ;       
         GetControlBounds( m_controlHandle , &contrlRect ) ; 
         int former_mac_x = contrlRect.left ;
@@ -269,11 +273,6 @@ void wxToolBarTool::SetPosition(const wxPoint& position)
     {
         // separator 
 #ifdef __WXMAC_OSX__
-        int x , y ;
-        x = y = 0 ;
-        int mac_x = position.x ;
-        int mac_y = position.y ;
-
         Rect contrlRect ;       
         GetControlBounds( m_controlHandle , &contrlRect ) ; 
         int former_mac_x = contrlRect.left ;
@@ -365,7 +364,7 @@ wxToolBarTool::wxToolBarTool(wxToolBar *tbar,
     else
     {
         ControlButtonContentInfo info ;
-        wxMacCreateBitmapButton( &info , GetNormalBitmap() ) ;
+        wxMacCreateBitmapButton( &info , GetNormalBitmap()  , kControlContentIconRef ) ;
         
 #ifdef __WXMAC_OSX__
         CreateIconControl( window , &toolrect , &info , false , &m_controlHandle ) ;