GetMacXXXX to MacGetXXXX

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13113 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2001-12-19 21:53:44 +00:00
parent a7b04cfc5b
commit cd9bcf8a6e
2 changed files with 286 additions and 288 deletions

View File

@@ -399,50 +399,50 @@ void wxToolBar::MacSuperChangedPosition()
int maxHeight = 0 ; int maxHeight = 0 ;
int toolcount = 0 ; int toolcount = 0 ;
{ {
WindowRef rootwindow = GetMacRootWindow() ; WindowRef rootwindow = MacGetRootWindow() ;
wxWindow* wxrootwindow = wxFindWinFromMacWindow( rootwindow ) ; wxWindow* wxrootwindow = wxFindWinFromMacWindow( rootwindow ) ;
::SetThemeWindowBackground( rootwindow , kThemeBrushDialogBackgroundActive , false ) ; ::SetThemeWindowBackground( rootwindow , kThemeBrushDialogBackgroundActive , false ) ;
wxMacDrawingHelper focus( wxrootwindow ) ; wxMacDrawingHelper focus( wxrootwindow ) ;
while (node) while (node)
{ {
wxToolBarTool *tool = (wxToolBarTool *)node->Data(); wxToolBarTool *tool = (wxToolBarTool *)node->Data();
wxBitmapRefData * bmap = (wxBitmapRefData*) ( tool->GetBitmap1().GetRefData()) ; wxBitmapRefData * bmap = (wxBitmapRefData*) ( tool->GetBitmap1().GetRefData()) ;
if( !tool->IsSeparator() ) if( !tool->IsSeparator() )
{ {
Rect toolrect = { toolbarrect.top + m_yMargin + kwxMacToolBarTopMargin, toolbarrect.left + x + m_xMargin + kwxMacToolBarLeftMargin , 0 , 0 } ; Rect toolrect = { toolbarrect.top + m_yMargin + kwxMacToolBarTopMargin, toolbarrect.left + x + m_xMargin + kwxMacToolBarLeftMargin , 0 , 0 } ;
toolrect.right = toolrect.left + toolSize.x ; toolrect.right = toolrect.left + toolSize.x ;
toolrect.bottom = toolrect.top + toolSize.y ; toolrect.bottom = toolrect.top + toolSize.y ;
ControlHandle m_macToolHandle = (ControlHandle) m_macToolHandles[toolcount++] ; ControlHandle m_macToolHandle = (ControlHandle) m_macToolHandles[toolcount++] ;
{ {
Rect contrlRect ; Rect contrlRect ;
GetControlBounds( m_macToolHandle , &contrlRect ) ; GetControlBounds( m_macToolHandle , &contrlRect ) ;
int former_mac_x = contrlRect.left ; int former_mac_x = contrlRect.left ;
int former_mac_y = contrlRect.top ; int former_mac_y = contrlRect.top ;
int mac_x = toolrect.left ; int mac_x = toolrect.left ;
int mac_y = toolrect.top ; int mac_y = toolrect.top ;
if ( mac_x != former_mac_x || mac_y != former_mac_y ) if ( mac_x != former_mac_x || mac_y != former_mac_y )
{ {
{ {
Rect inval = { former_mac_y , former_mac_x , former_mac_y + toolSize.y , former_mac_x + toolSize.y } ; Rect inval = { former_mac_y , former_mac_x , former_mac_y + toolSize.y , former_mac_x + toolSize.y } ;
InvalWindowRect( rootwindow , &inval ) ; InvalWindowRect( rootwindow , &inval ) ;
} }
UMAMoveControl( m_macToolHandle , mac_x , mac_y ) ; UMAMoveControl( m_macToolHandle , mac_x , mac_y ) ;
{ {
Rect inval = { mac_y , mac_x , mac_y + toolSize.y , mac_x + toolSize.y } ; Rect inval = { mac_y , mac_x , mac_y + toolSize.y , mac_x + toolSize.y } ;
InvalWindowRect( rootwindow , &inval ) ; InvalWindowRect( rootwindow , &inval ) ;
} }
} }
} }
x += (int)toolSize.x; x += (int)toolSize.x;
noButtons ++; noButtons ++;
} }
else else
{ {
toolcount++ ; toolcount++ ;
x += (int)toolSize.x / 4; x += (int)toolSize.x / 4;
} }
@@ -578,112 +578,111 @@ bool wxToolBar::DoDeleteTool(size_t pos, wxToolBarToolBase *tool)
void wxToolBar::OnPaint(wxPaintEvent& event) void wxToolBar::OnPaint(wxPaintEvent& event)
{ {
Point localOrigin ; Point localOrigin ;
Rect clipRect ; Rect clipRect ;
WindowRef window ; WindowRef window ;
wxWindow *win ; wxWindow *win ;
GetParent()->MacGetPortParams( &localOrigin , &clipRect , &window , &win ) ; GetParent()->MacGetPortParams( &localOrigin , &clipRect , &window , &win ) ;
if ( window && win ) if ( window && win )
{ {
wxMacDrawingHelper help( win ) ; wxMacDrawingHelper help( win ) ;
// the mac control manager always assumes to have the origin at 0,0 // the mac control manager always assumes to have the origin at 0,0
SetOrigin( 0 , 0 ) ; SetOrigin( 0 , 0 ) ;
bool hasTabBehind = false ; bool hasTabBehind = false ;
wxWindow* parent = GetParent() ; wxWindow* parent = GetParent() ;
while ( parent ) while ( parent )
{ {
if( parent->MacGetWindowData() ) if( parent->IsTopLevel() )
{ {
::SetThemeWindowBackground( win->MacGetWindowData()->m_macWindow , kThemeBrushDialogBackgroundActive , false ) ; // ::SetThemeWindowBackground( win->MacGetWindowData()->m_macWindow , kThemeBrushDialogBackgroundActive , false ) ;
break ; break ;
} }
if( parent->IsKindOf( CLASSINFO( wxNotebook ) ) || parent->IsKindOf( CLASSINFO( wxTabCtrl ) )) if( parent->IsKindOf( CLASSINFO( wxNotebook ) ) || parent->IsKindOf( CLASSINFO( wxTabCtrl ) ))
{ {
if ( ((wxControl*)parent)->GetMacControl() ) if ( ((wxControl*)parent)->GetMacControl() )
SetUpControlBackground( ((wxControl*)parent)->GetMacControl() , -1 , true ) ; SetUpControlBackground( ((wxControl*)parent)->GetMacControl() , -1 , true ) ;
break ; break ;
} }
parent = parent->GetParent() ; parent = parent->GetParent() ;
} }
Rect toolbarrect = { m_y + localOrigin.v , m_x + localOrigin.h , Rect toolbarrect = { m_y + localOrigin.v , m_x + localOrigin.h ,
m_y + localOrigin.v + m_height , m_x + localOrigin.h + m_width } ; m_y + localOrigin.v + m_height , m_x + localOrigin.h + m_width } ;
UMADrawThemePlacard( &toolbarrect , IsEnabled() ? kThemeStateActive : kThemeStateInactive) ; UMADrawThemePlacard( &toolbarrect , IsEnabled() ? kThemeStateActive : kThemeStateInactive) ;
{ {
int index = 0 ; int index = 0 ;
for ( index = 0 ; index < m_macToolHandles.Count() ; ++index ) for ( index = 0 ; index < m_macToolHandles.Count() ; ++index )
{ {
if ( m_macToolHandles[index] ) if ( m_macToolHandles[index] )
{ {
UMADrawControl( (ControlHandle) m_macToolHandles[index] ) ; UMADrawControl( (ControlHandle) m_macToolHandles[index] ) ;
} }
} }
} }
::SetThemeWindowBackground( win->MacGetWindowData()->m_macWindow , win->MacGetWindowData()->m_macWindowBackgroundTheme , false ) ; // ::SetThemeWindowBackground( win->MacGetWindowData()->m_macWindow , win->MacGetWindowData()->m_macWindowBackgroundTheme , false ) ;
} }
} }
void wxToolBar::OnMouse( wxMouseEvent &event ) void wxToolBar::OnMouse( wxMouseEvent &event )
{ {
if (event.GetEventType() == wxEVT_LEFT_DOWN || event.GetEventType() == wxEVT_LEFT_DCLICK )
if (event.GetEventType() == wxEVT_LEFT_DOWN || event.GetEventType() == wxEVT_LEFT_DCLICK ) {
{
int x = event.m_x ;
int x = event.m_x ; int y = event.m_y ;
int y = event.m_y ;
MacClientToRootWindow( &x , &y ) ;
MacClientToRootWindow( &x , &y ) ;
ControlHandle control ;
ControlHandle control ; Point localwhere ;
Point localwhere ; GrafPtr port ;
GrafPtr port ; SInt16 controlpart ;
SInt16 controlpart ; WindowRef window = MacGetRootWindow() ;
WindowRef window = GetMacRootWindow() ;
localwhere.h = x ;
localwhere.h = x ; localwhere.v = y ;
localwhere.v = y ;
short modifiers = 0;
short modifiers = 0;
if ( !event.m_leftDown && !event.m_rightDown )
if ( !event.m_leftDown && !event.m_rightDown ) modifiers |= btnState ;
modifiers |= btnState ;
if ( event.m_shiftDown )
if ( event.m_shiftDown ) modifiers |= shiftKey ;
modifiers |= shiftKey ;
if ( event.m_controlDown )
if ( event.m_controlDown ) modifiers |= controlKey ;
modifiers |= controlKey ;
if ( event.m_altDown )
if ( event.m_altDown ) modifiers |= optionKey ;
modifiers |= optionKey ;
if ( event.m_metaDown )
if ( event.m_metaDown ) modifiers |= cmdKey ;
modifiers |= cmdKey ;
controlpart = FindControl( localwhere , window , &control ) ;
controlpart = FindControl( localwhere , window , &control ) ; {
{ if ( control && ::IsControlActive( control ) )
if ( control && ::IsControlActive( control ) ) {
{ {
{ if ( controlpart == kControlIndicatorPart && !UMAHasAppearance() )
if ( controlpart == kControlIndicatorPart && !UMAHasAppearance() ) controlpart = ::HandleControlClick( control , localwhere , modifiers , (ControlActionUPP) NULL ) ;
controlpart = ::HandleControlClick( control , localwhere , modifiers , (ControlActionUPP) NULL ) ; else
else controlpart = ::HandleControlClick( control , localwhere , modifiers , (ControlActionUPP) -1 ) ;
controlpart = ::HandleControlClick( control , localwhere , modifiers , (ControlActionUPP) -1 ) ; wxTheApp->s_lastMouseDown = 0 ;
wxTheApp->s_lastMouseDown = 0 ; if ( controlpart && ! ( ( UMAHasAppearance() || (controlpart != kControlIndicatorPart) )
if ( controlpart && ! ( ( UMAHasAppearance() || (controlpart != kControlIndicatorPart) ) && (IsKindOf( CLASSINFO( wxScrollBar ) ) ) ) ) // otherwise we will get the event twice
&& (IsKindOf( CLASSINFO( wxScrollBar ) ) ) ) ) // otherwise we will get the event twice {
{ MacHandleControlClick( control , controlpart ) ;
MacHandleControlClick( control , controlpart ) ; }
} }
} }
} }
} }
}
} }
#endif // wxUSE_TOOLBAR #endif // wxUSE_TOOLBAR

View File

@@ -399,50 +399,50 @@ void wxToolBar::MacSuperChangedPosition()
int maxHeight = 0 ; int maxHeight = 0 ;
int toolcount = 0 ; int toolcount = 0 ;
{ {
WindowRef rootwindow = GetMacRootWindow() ; WindowRef rootwindow = MacGetRootWindow() ;
wxWindow* wxrootwindow = wxFindWinFromMacWindow( rootwindow ) ; wxWindow* wxrootwindow = wxFindWinFromMacWindow( rootwindow ) ;
::SetThemeWindowBackground( rootwindow , kThemeBrushDialogBackgroundActive , false ) ; ::SetThemeWindowBackground( rootwindow , kThemeBrushDialogBackgroundActive , false ) ;
wxMacDrawingHelper focus( wxrootwindow ) ; wxMacDrawingHelper focus( wxrootwindow ) ;
while (node) while (node)
{ {
wxToolBarTool *tool = (wxToolBarTool *)node->Data(); wxToolBarTool *tool = (wxToolBarTool *)node->Data();
wxBitmapRefData * bmap = (wxBitmapRefData*) ( tool->GetBitmap1().GetRefData()) ; wxBitmapRefData * bmap = (wxBitmapRefData*) ( tool->GetBitmap1().GetRefData()) ;
if( !tool->IsSeparator() ) if( !tool->IsSeparator() )
{ {
Rect toolrect = { toolbarrect.top + m_yMargin + kwxMacToolBarTopMargin, toolbarrect.left + x + m_xMargin + kwxMacToolBarLeftMargin , 0 , 0 } ; Rect toolrect = { toolbarrect.top + m_yMargin + kwxMacToolBarTopMargin, toolbarrect.left + x + m_xMargin + kwxMacToolBarLeftMargin , 0 , 0 } ;
toolrect.right = toolrect.left + toolSize.x ; toolrect.right = toolrect.left + toolSize.x ;
toolrect.bottom = toolrect.top + toolSize.y ; toolrect.bottom = toolrect.top + toolSize.y ;
ControlHandle m_macToolHandle = (ControlHandle) m_macToolHandles[toolcount++] ; ControlHandle m_macToolHandle = (ControlHandle) m_macToolHandles[toolcount++] ;
{ {
Rect contrlRect ; Rect contrlRect ;
GetControlBounds( m_macToolHandle , &contrlRect ) ; GetControlBounds( m_macToolHandle , &contrlRect ) ;
int former_mac_x = contrlRect.left ; int former_mac_x = contrlRect.left ;
int former_mac_y = contrlRect.top ; int former_mac_y = contrlRect.top ;
int mac_x = toolrect.left ; int mac_x = toolrect.left ;
int mac_y = toolrect.top ; int mac_y = toolrect.top ;
if ( mac_x != former_mac_x || mac_y != former_mac_y ) if ( mac_x != former_mac_x || mac_y != former_mac_y )
{ {
{ {
Rect inval = { former_mac_y , former_mac_x , former_mac_y + toolSize.y , former_mac_x + toolSize.y } ; Rect inval = { former_mac_y , former_mac_x , former_mac_y + toolSize.y , former_mac_x + toolSize.y } ;
InvalWindowRect( rootwindow , &inval ) ; InvalWindowRect( rootwindow , &inval ) ;
} }
UMAMoveControl( m_macToolHandle , mac_x , mac_y ) ; UMAMoveControl( m_macToolHandle , mac_x , mac_y ) ;
{ {
Rect inval = { mac_y , mac_x , mac_y + toolSize.y , mac_x + toolSize.y } ; Rect inval = { mac_y , mac_x , mac_y + toolSize.y , mac_x + toolSize.y } ;
InvalWindowRect( rootwindow , &inval ) ; InvalWindowRect( rootwindow , &inval ) ;
} }
} }
} }
x += (int)toolSize.x; x += (int)toolSize.x;
noButtons ++; noButtons ++;
} }
else else
{ {
toolcount++ ; toolcount++ ;
x += (int)toolSize.x / 4; x += (int)toolSize.x / 4;
} }
@@ -578,112 +578,111 @@ bool wxToolBar::DoDeleteTool(size_t pos, wxToolBarToolBase *tool)
void wxToolBar::OnPaint(wxPaintEvent& event) void wxToolBar::OnPaint(wxPaintEvent& event)
{ {
Point localOrigin ; Point localOrigin ;
Rect clipRect ; Rect clipRect ;
WindowRef window ; WindowRef window ;
wxWindow *win ; wxWindow *win ;
GetParent()->MacGetPortParams( &localOrigin , &clipRect , &window , &win ) ; GetParent()->MacGetPortParams( &localOrigin , &clipRect , &window , &win ) ;
if ( window && win ) if ( window && win )
{ {
wxMacDrawingHelper help( win ) ; wxMacDrawingHelper help( win ) ;
// the mac control manager always assumes to have the origin at 0,0 // the mac control manager always assumes to have the origin at 0,0
SetOrigin( 0 , 0 ) ; SetOrigin( 0 , 0 ) ;
bool hasTabBehind = false ; bool hasTabBehind = false ;
wxWindow* parent = GetParent() ; wxWindow* parent = GetParent() ;
while ( parent ) while ( parent )
{ {
if( parent->MacGetWindowData() ) if( parent->IsTopLevel() )
{ {
::SetThemeWindowBackground( win->MacGetWindowData()->m_macWindow , kThemeBrushDialogBackgroundActive , false ) ; // ::SetThemeWindowBackground( win->MacGetWindowData()->m_macWindow , kThemeBrushDialogBackgroundActive , false ) ;
break ; break ;
} }
if( parent->IsKindOf( CLASSINFO( wxNotebook ) ) || parent->IsKindOf( CLASSINFO( wxTabCtrl ) )) if( parent->IsKindOf( CLASSINFO( wxNotebook ) ) || parent->IsKindOf( CLASSINFO( wxTabCtrl ) ))
{ {
if ( ((wxControl*)parent)->GetMacControl() ) if ( ((wxControl*)parent)->GetMacControl() )
SetUpControlBackground( ((wxControl*)parent)->GetMacControl() , -1 , true ) ; SetUpControlBackground( ((wxControl*)parent)->GetMacControl() , -1 , true ) ;
break ; break ;
} }
parent = parent->GetParent() ; parent = parent->GetParent() ;
} }
Rect toolbarrect = { m_y + localOrigin.v , m_x + localOrigin.h , Rect toolbarrect = { m_y + localOrigin.v , m_x + localOrigin.h ,
m_y + localOrigin.v + m_height , m_x + localOrigin.h + m_width } ; m_y + localOrigin.v + m_height , m_x + localOrigin.h + m_width } ;
UMADrawThemePlacard( &toolbarrect , IsEnabled() ? kThemeStateActive : kThemeStateInactive) ; UMADrawThemePlacard( &toolbarrect , IsEnabled() ? kThemeStateActive : kThemeStateInactive) ;
{ {
int index = 0 ; int index = 0 ;
for ( index = 0 ; index < m_macToolHandles.Count() ; ++index ) for ( index = 0 ; index < m_macToolHandles.Count() ; ++index )
{ {
if ( m_macToolHandles[index] ) if ( m_macToolHandles[index] )
{ {
UMADrawControl( (ControlHandle) m_macToolHandles[index] ) ; UMADrawControl( (ControlHandle) m_macToolHandles[index] ) ;
} }
} }
} }
::SetThemeWindowBackground( win->MacGetWindowData()->m_macWindow , win->MacGetWindowData()->m_macWindowBackgroundTheme , false ) ; // ::SetThemeWindowBackground( win->MacGetWindowData()->m_macWindow , win->MacGetWindowData()->m_macWindowBackgroundTheme , false ) ;
} }
} }
void wxToolBar::OnMouse( wxMouseEvent &event ) void wxToolBar::OnMouse( wxMouseEvent &event )
{ {
if (event.GetEventType() == wxEVT_LEFT_DOWN || event.GetEventType() == wxEVT_LEFT_DCLICK )
if (event.GetEventType() == wxEVT_LEFT_DOWN || event.GetEventType() == wxEVT_LEFT_DCLICK ) {
{
int x = event.m_x ;
int x = event.m_x ; int y = event.m_y ;
int y = event.m_y ;
MacClientToRootWindow( &x , &y ) ;
MacClientToRootWindow( &x , &y ) ;
ControlHandle control ;
ControlHandle control ; Point localwhere ;
Point localwhere ; GrafPtr port ;
GrafPtr port ; SInt16 controlpart ;
SInt16 controlpart ; WindowRef window = MacGetRootWindow() ;
WindowRef window = GetMacRootWindow() ;
localwhere.h = x ;
localwhere.h = x ; localwhere.v = y ;
localwhere.v = y ;
short modifiers = 0;
short modifiers = 0;
if ( !event.m_leftDown && !event.m_rightDown )
if ( !event.m_leftDown && !event.m_rightDown ) modifiers |= btnState ;
modifiers |= btnState ;
if ( event.m_shiftDown )
if ( event.m_shiftDown ) modifiers |= shiftKey ;
modifiers |= shiftKey ;
if ( event.m_controlDown )
if ( event.m_controlDown ) modifiers |= controlKey ;
modifiers |= controlKey ;
if ( event.m_altDown )
if ( event.m_altDown ) modifiers |= optionKey ;
modifiers |= optionKey ;
if ( event.m_metaDown )
if ( event.m_metaDown ) modifiers |= cmdKey ;
modifiers |= cmdKey ;
controlpart = FindControl( localwhere , window , &control ) ;
controlpart = FindControl( localwhere , window , &control ) ; {
{ if ( control && ::IsControlActive( control ) )
if ( control && ::IsControlActive( control ) ) {
{ {
{ if ( controlpart == kControlIndicatorPart && !UMAHasAppearance() )
if ( controlpart == kControlIndicatorPart && !UMAHasAppearance() ) controlpart = ::HandleControlClick( control , localwhere , modifiers , (ControlActionUPP) NULL ) ;
controlpart = ::HandleControlClick( control , localwhere , modifiers , (ControlActionUPP) NULL ) ; else
else controlpart = ::HandleControlClick( control , localwhere , modifiers , (ControlActionUPP) -1 ) ;
controlpart = ::HandleControlClick( control , localwhere , modifiers , (ControlActionUPP) -1 ) ; wxTheApp->s_lastMouseDown = 0 ;
wxTheApp->s_lastMouseDown = 0 ; if ( controlpart && ! ( ( UMAHasAppearance() || (controlpart != kControlIndicatorPart) )
if ( controlpart && ! ( ( UMAHasAppearance() || (controlpart != kControlIndicatorPart) ) && (IsKindOf( CLASSINFO( wxScrollBar ) ) ) ) ) // otherwise we will get the event twice
&& (IsKindOf( CLASSINFO( wxScrollBar ) ) ) ) ) // otherwise we will get the event twice {
{ MacHandleControlClick( control , controlpart ) ;
MacHandleControlClick( control , controlpart ) ; }
} }
} }
} }
} }
}
} }
#endif // wxUSE_TOOLBAR #endif // wxUSE_TOOLBAR