]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/control.cpp
no real changes; just reformatting
[wxWidgets.git] / src / mac / control.cpp
index 2dd89c2b5542e5c2726e4e73292e5b227f49fbdc..35cefcfa7249b0f465a96c5f82aa2cbf38145d88 100644 (file)
@@ -78,7 +78,7 @@ pascal void wxMacLiveScrollbarActionProc( ControlHandle control , ControlPartCod
         wxControl*  wx = (wxControl*) GetControlReference( control ) ;
         if ( wx )
         {
-            wx->MacHandleControlClick( control , partCode ) ;
+            wx->MacHandleControlClick( control , partCode , true /* stillDown */ ) ;
         }
     }
 }
@@ -208,23 +208,9 @@ void wxControl::SetLabel(const wxString& title)
 {
     m_label = wxStripMenuCodes(title) ;
 
-    if ( (ControlHandle) m_macControl )
+    if ( m_macControl )
     {
-        Str255 maclabel ;
-        wxString label ;
-    
-        if( wxApp::s_macDefaultEncodingIsPC )
-            label = wxMacMakeMacStringFromPC( m_label ) ;
-        else
-            label = m_label ;
-        
-#if TARGET_CARBON
-        c2pstrcpy( (StringPtr) maclabel , label ) ;
-#else
-        strcpy( (char *) maclabel , label ) ;
-        c2pstr( (char *) maclabel ) ;
-#endif
-        ::SetControlTitle( (ControlHandle) m_macControl , maclabel ) ;
+               UMASetControlTitle( (ControlHandle) m_macControl , m_label ) ;
     }
     Refresh() ;
 }
@@ -311,7 +297,7 @@ void wxAssociateControlWithMacControl(ControlHandle inControl, wxControl *contro
 {
     // adding NULL WindowRef is (first) surely a result of an error and
     // (secondly) breaks menu command processing
-    wxCHECK_RET( inControl != (ControlHandle) NULL, "attempt to add a NULL WindowRef to window list" );
+    wxCHECK_RET( inControl != (ControlHandle) NULL, wxT("attempt to add a NULL WindowRef to window list") );
 
     if ( !wxWinMacControlList->Find((long)inControl) )
         wxWinMacControlList->Append((long)inControl, control);
@@ -361,7 +347,7 @@ void wxControl::MacPreControlCreate( wxWindow *parent, wxWindowID id, wxString l
 
 void wxControl::MacPostControlCreate()
 {
-    wxASSERT_MSG( (ControlHandle) m_macControl != NULL , "No valid mac control" ) ;
+    wxASSERT_MSG( (ControlHandle) m_macControl != NULL , wxT("No valid mac control") ) ;
     
     if ( IsKindOf( CLASSINFO( wxScrollBar ) ) )
     {
@@ -379,7 +365,11 @@ void wxControl::MacPostControlCreate()
     {
         ControlFontStyleRec     controlstyle ;
         controlstyle.flags = kControlUseFontMask ;
-        controlstyle.font = kControlFontSmallSystemFont ;
+        
+        if (IsKindOf( CLASSINFO( wxButton ) ) )
+            controlstyle.font = kControlFontSmallSystemFont ; // eventually kControlFontBigSystemFont ;
+        else
+            controlstyle.font = kControlFontSmallSystemFont ;
         
         ::SetControlFontStyle( (ControlHandle) m_macControl , &controlstyle ) ;
     }
@@ -438,6 +428,10 @@ void wxControl::MacPostControlCreate()
     
     SetSize(pos.x, pos.y, new_size.x, new_size.y);
     
+#if wxUSE_UNICODE
+    UMASetControlTitle( (ControlHandle) m_macControl , wxStripMenuCodes(m_label) ) ;
+#endif
+
     UMAShowControl( (ControlHandle) m_macControl ) ;
     
     SetCursor( *wxSTANDARD_CURSOR ) ;
@@ -881,16 +875,18 @@ void  wxControl::OnMouseEvent( wxMouseEvent &event )
                 {
                     controlpart = ::HandleControlClick( control , localwhere , modifiers , (ControlActionUPP) -1 ) ;
                     wxTheApp->s_lastMouseDown = 0 ;
-                    if ( control && controlpart != kControlNoPart && 
-                        ! IsKindOf( CLASSINFO( wxScrollBar ) ) 
-                    ) // otherwise we will get the event twice for scrollbar
+                    if ( control && controlpart != kControlNoPart ) 
                     {
-                        MacHandleControlClick( control , controlpart ) ;
+                        MacHandleControlClick( control , controlpart , false /* mouse not down anymore */ ) ;
                     }
                 }
             }
         }
     }
+    else
+    {
+       event.Skip() ;
+    }
 }
 
 bool wxControl::MacCanFocus() const
@@ -901,8 +897,8 @@ bool wxControl::MacCanFocus() const
         return false ; 
 }
 
-void wxControl::MacHandleControlClick( WXWidget control , wxInt16 controlpart ) 
+void wxControl::MacHandleControlClick( WXWidget control , wxInt16 controlpart , bool WXUNUSED( mouseStillDown ) 
 {
-    wxASSERT_MSG( (ControlHandle) m_macControl != NULL , "No valid mac control" ) ;
+    wxASSERT_MSG( (ControlHandle) m_macControl != NULL , wxT("No valid mac control") ) ;
 }