WXWidget wxWindowMac::GetHandle() const
{
- return (WXWidget) m_peer->GetWXWidget() ;
+ if ( m_peer )
+ return (WXWidget) m_peer->GetWXWidget() ;
+ return NULL;
}
-//
-// TODO END move to window_osx.cpp
-//
-
// ---------------------------------------------------------------------------
// Utility Routines to move between different coordinate systems
// ---------------------------------------------------------------------------
m_peer->SetData<ControlSize>(kControlEntireControl, kControlSizeTag, &size ) ;
#endif
-#if wxOSX_USE_COCOA_OR_CARBON
wxFont font ;
-#if wxOSX_USE_ATSU_TEXT
- ThemeFontID themeFont = kThemeSystemFont ;
-
- // we will get that from the settings later
- // and make this NORMAL later, but first
- // we have a few calculations that we must fix
+ wxOSXSystemFont systemFont = wxOSX_SYSTEM_FONT_NORMAL ;
switch ( variant )
{
case wxWINDOW_VARIANT_NORMAL :
- themeFont = kThemeSystemFont ;
+ systemFont = wxOSX_SYSTEM_FONT_NORMAL ;
break ;
case wxWINDOW_VARIANT_SMALL :
- themeFont = kThemeSmallSystemFont ;
+ systemFont = wxOSX_SYSTEM_FONT_SMALL ;
break ;
case wxWINDOW_VARIANT_MINI :
- // not always defined in the headers
- themeFont = 109 ;
+ systemFont = wxOSX_SYSTEM_FONT_MINI ;
break ;
case wxWINDOW_VARIANT_LARGE :
- themeFont = kThemeSystemFont ;
+ systemFont = wxOSX_SYSTEM_FONT_NORMAL ;
break ;
default:
break ;
}
- font.MacCreateFromThemeFont( themeFont ) ;
-#else
- CTFontUIFontType themeFont = kCTFontSystemFontType ;
- switch ( variant )
- {
- case wxWINDOW_VARIANT_NORMAL :
- themeFont = kCTFontSystemFontType;
- break ;
-
- case wxWINDOW_VARIANT_SMALL :
- themeFont = kCTFontSmallSystemFontType;
- break ;
-
- case wxWINDOW_VARIANT_MINI :
- themeFont = kCTFontMiniSystemFontType;
- break ;
-
- case wxWINDOW_VARIANT_LARGE :
- themeFont = kCTFontSystemFontType;
- break ;
-
- default:
- wxFAIL_MSG(_T("unexpected window variant"));
- break ;
- }
- font.MacCreateFromUIFont( themeFont ) ;
-#endif
+ font.CreateSystemFont( systemFont ) ;
SetFont( font ) ;
-#endif
}
void wxWindowMac::MacUpdateControlFont()
return ;
int outerBorder = MacGetLeftBorderSize() ;
-#if wxOSX_USE_CARBON
- if ( m_peer->NeedsFocusRect() /* && m_peer->HasFocus() */ )
+
+ if ( m_peer->NeedsFocusRect() )
outerBorder += 4 ;
-#endif
if ( outerBorder == 0 )
return ;
// now we know that we have something to do at all
-
int tx,ty,tw,th;
int actualX = x;
int actualY = y;
+#if 0
+ // min and max sizes are only for sizers, not for explicit size setting
if ((m_minWidth != -1) && (actualWidth < m_minWidth))
actualWidth = m_minWidth;
if ((m_minHeight != -1) && (actualHeight < m_minHeight))
actualWidth = m_maxWidth;
if ((m_maxHeight != -1) && (actualHeight > m_maxHeight))
actualHeight = m_maxHeight;
+#endif
bool doMove = false, doResize = false ;
}
}
-// Get the window with the focus
wxWindow *wxWindowBase::DoFindFocus()
{
-#if wxOSX_USE_CARBON
- ControlRef control ;
- GetKeyboardFocus( GetUserFocusWindow() , &control ) ;
- return wxFindWindowFromWXWidget( (WXWidget) control ) ;
-#else
- return NULL;
-#endif
+ return wxFindWindowFromWXWidget(wxWidgetImpl::FindFocus());
}
void wxWindowMac::OnInternalIdle()
bool wxWindowMac::AcceptsFocus() const
{
- return m_peer->CanFocus() && wxWindowBase::AcceptsFocus();
+ if ( MacIsUserPane() )
+ return wxWindowBase::AcceptsFocus();
+ else
+ return m_peer->CanFocus();
}
void wxWindowMac::MacSuperChangedPosition()
return bounds ;
}
-bool wxWindowMac::OSXHandleClicked( double timestampsec )
+bool wxWindowMac::OSXHandleClicked( double WXUNUSED(timestampsec) )
{
return false;
}