]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/toplevel.cpp
fix compilation error after r50329: wxMenu doesn't have HandleWindowEvent() as it...
[wxWidgets.git] / src / mac / carbon / toplevel.cpp
index 31e507961bcb2a4c4fb22dad58e84925247805ce..3d0ab6b2022d29fbd5ee09d5a187049a72612145 100644 (file)
@@ -211,25 +211,25 @@ static pascal OSStatus KeyboardEventHandler( EventHandlerCallRef handler , Event
                 {
                     event.m_keyCode = WXK_CONTROL ;
                     event.SetEventType( ( modifiers & controlKey ) ? wxEVT_KEY_DOWN : wxEVT_KEY_UP ) ;
-                    focus->GetEventHandler()->ProcessEvent( event ) ;
+                    focus->HandleWindowEvent( event ) ;
                 }
                 if ( /* focus && */ (modifiers ^ wxApp::s_lastModifiers ) & shiftKey )
                 {
                     event.m_keyCode = WXK_SHIFT ;
                     event.SetEventType( ( modifiers & shiftKey ) ? wxEVT_KEY_DOWN : wxEVT_KEY_UP ) ;
-                    focus->GetEventHandler()->ProcessEvent( event ) ;
+                    focus->HandleWindowEvent( event ) ;
                 }
                 if ( /* focus && */ (modifiers ^ wxApp::s_lastModifiers ) & optionKey )
                 {
                     event.m_keyCode = WXK_ALT ;
                     event.SetEventType( ( modifiers & optionKey ) ? wxEVT_KEY_DOWN : wxEVT_KEY_UP ) ;
-                    focus->GetEventHandler()->ProcessEvent( event ) ;
+                    focus->HandleWindowEvent( event ) ;
                 }
                 if ( /* focus && */ (modifiers ^ wxApp::s_lastModifiers ) & cmdKey )
                 {
                     event.m_keyCode = WXK_COMMAND ;
                     event.SetEventType( ( modifiers & cmdKey ) ? wxEVT_KEY_DOWN : wxEVT_KEY_UP ) ;
-                    focus->GetEventHandler()->ProcessEvent( event ) ;
+                    focus->HandleWindowEvent( event ) ;
                 }
 
                 wxApp::s_lastModifiers = modifiers ;
@@ -485,7 +485,7 @@ wxMacTopLevelMouseEventHandler(EventHandlerCallRef WXUNUSED(handler),
             wxToolTip::RelayEvent( g_MacLastWindow , eventleave);
 #endif
 
-            g_MacLastWindow->GetEventHandler()->ProcessEvent(eventleave);
+            g_MacLastWindow->HandleWindowEvent(eventleave);
         }
 
         if ( currentMouseWindow )
@@ -500,7 +500,7 @@ wxMacTopLevelMouseEventHandler(EventHandlerCallRef WXUNUSED(handler),
             wxToolTip::RelayEvent( currentMouseWindow , evententer );
 #endif
 
-            currentMouseWindow->GetEventHandler()->ProcessEvent(evententer);
+            currentMouseWindow->HandleWindowEvent(evententer);
         }
 
         g_MacLastWindow = currentMouseWindow ;
@@ -532,7 +532,7 @@ wxMacTopLevelMouseEventHandler(EventHandlerCallRef WXUNUSED(handler),
             wxToolTip::RelayEvent( currentMouseWindow , wxevent );
 #endif
 
-        if ( currentMouseWindow->GetEventHandler()->ProcessEvent(wxevent) )
+        if ( currentMouseWindow->HandleWindowEvent(wxevent) )
         {
             if ((currentMouseWindowParent != NULL) &&
                 (currentMouseWindowParent->GetChildren().Find(currentMouseWindow) == NULL))
@@ -550,31 +550,6 @@ wxMacTopLevelMouseEventHandler(EventHandlerCallRef WXUNUSED(handler),
                 if (currentMouseWindow->CanAcceptFocus() && wxWindow::FindFocus()!=currentMouseWindow)
                     currentMouseWindow->SetFocus();
             }
-
-            // if built-in find control is finding the wrong control (ie static box instead of overlaid
-            // button, we cannot let the standard handler do its job, but must handle manually
-
-            if ( cEvent.GetKind() == kEventMouseDown )
-            {
-                if ( currentMouseWindow->MacIsReallyEnabled() )
-                {
-                    EventModifiers modifiers = cEvent.GetParameter<EventModifiers>(kEventParamKeyModifiers, typeUInt32) ;
-                    Point clickLocation = windowMouseLocation ;
-
-                    currentMouseWindow->MacRootWindowToWindow( &clickLocation.h , &clickLocation.v ) ;
-
-                    HandleControlClick( (ControlRef) currentMouseWindow->GetHandle() , clickLocation ,
-                        modifiers , (ControlActionUPP ) -1 ) ;
-
-                    if ((currentMouseWindowParent != NULL) &&
-                        (currentMouseWindowParent->GetChildren().Find(currentMouseWindow) == NULL))
-                    {
-                        currentMouseWindow = NULL;
-                    }
-                }
-
-                result = noErr ;
-            }
         }
 
         if ( cEvent.GetKind() == kEventMouseUp && wxApp::s_captureWindow )
@@ -641,7 +616,7 @@ wxMacTopLevelWindowEventHandler(EventHandlerCallRef WXUNUSED(handler),
             wxActivateEvent wxevent(wxEVT_ACTIVATE, true , toplevelWindow->GetId());
             wxevent.SetTimestamp( cEvent.GetTicks() ) ;
             wxevent.SetEventObject(toplevelWindow);
-            toplevelWindow->GetEventHandler()->ProcessEvent(wxevent);
+            toplevelWindow->HandleWindowEvent(wxevent);
             // we still sending an eventNotHandledErr in order to allow for default processing
         }
             break ;
@@ -652,7 +627,7 @@ wxMacTopLevelWindowEventHandler(EventHandlerCallRef WXUNUSED(handler),
             wxActivateEvent wxevent(wxEVT_ACTIVATE, false , toplevelWindow->GetId());
             wxevent.SetTimestamp( cEvent.GetTicks() ) ;
             wxevent.SetEventObject(toplevelWindow);
-            toplevelWindow->GetEventHandler()->ProcessEvent(wxevent);
+            toplevelWindow->HandleWindowEvent(wxevent);
             // we still sending an eventNotHandledErr in order to allow for default processing
         }
             break ;
@@ -686,7 +661,7 @@ wxMacTopLevelWindowEventHandler(EventHandlerCallRef WXUNUSED(handler),
                 wxSizeEvent event( r.GetSize() , toplevelWindow->GetId() ) ;
                 event.SetEventObject( toplevelWindow ) ;
 
-                toplevelWindow->GetEventHandler()->ProcessEvent(event) ;
+                toplevelWindow->HandleWindowEvent(event) ;
                 toplevelWindow->wxWindowMac::MacSuperChangedPosition() ; // like this only children will be notified
             }
 
@@ -694,7 +669,7 @@ wxMacTopLevelWindowEventHandler(EventHandlerCallRef WXUNUSED(handler),
             {
                 wxMoveEvent event( r.GetLeftTop() , toplevelWindow->GetId() ) ;
                 event.SetEventObject( toplevelWindow ) ;
-                toplevelWindow->GetEventHandler()->ProcessEvent(event) ;
+                toplevelWindow->HandleWindowEvent(event) ;
             }
 
             result = noErr ;
@@ -722,7 +697,7 @@ wxMacTopLevelWindowEventHandler(EventHandlerCallRef WXUNUSED(handler),
                 wxSizeEvent wxevent( r , toplevelWindow->GetId() ) ;
                 wxevent.SetEventObject( toplevelWindow ) ;
                 wxRect adjustR = r ;
-                if ( toplevelWindow->GetEventHandler()->ProcessEvent(wxevent) )
+                if ( toplevelWindow->HandleWindowEvent(wxevent) )
                     adjustR = wxevent.GetRect() ;
 
                 if ( toplevelWindow->GetMaxWidth() != -1 && adjustR.GetWidth() > toplevelWindow->GetMaxWidth() )
@@ -908,7 +883,7 @@ bool wxTopLevelWindowMac::Create(wxWindow *parent,
 
     DoMacCreateRealWindow( parent, title, pos , size , style , name ) ;
 
-    SetBackgroundColour(wxColour(wxMacCreateCGColorFromHITheme(kThemeBrushDialogBackgroundActive)));
+    SetBackgroundColour(wxSystemSettings::GetColour( wxSYS_COLOUR_3DFACE ));
 
     if (GetExtraStyle() & wxFRAME_EX_METAL)
         MacSetMetalAppearance(true);
@@ -1016,10 +991,15 @@ bool wxTopLevelWindowMac::SetBackgroundColour(const wxColour& col )
         return false ;
     
     if ( col == wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) || col == wxColour(wxMacCreateCGColorFromHITheme(kThemeBrushDocumentWindowBackground)) )
+    {
         SetThemeWindowBackground( (WindowRef) m_macWindow,  kThemeBrushDocumentWindowBackground, false ) ;
+        SetBackgroundStyle(wxBG_STYLE_CUSTOM);
+    }
     else if ( col == wxSystemSettings::GetColour( wxSYS_COLOUR_3DFACE ) || col == wxColour(wxMacCreateCGColorFromHITheme(kThemeBrushDialogBackgroundActive)) )
+    {
         SetThemeWindowBackground( (WindowRef) m_macWindow,  kThemeBrushDialogBackgroundActive, false ) ;
-    // TODO BETTER THEME SUPPORT
+        SetBackgroundStyle(wxBG_STYLE_CUSTOM);
+    }
     return true;
 }    
 
@@ -1276,7 +1256,7 @@ void  wxTopLevelWindowMac::DoMacCreateRealWindow(
     }
 
     wxWindowCreateEvent event(this);
-    GetEventHandler()->ProcessEvent(event);
+    HandleWindowEvent(event);
 }
 
 void wxTopLevelWindowMac::ClearBackground()
@@ -1353,7 +1333,7 @@ bool wxTopLevelWindowMac::Show(bool show)
         // because apps expect a size event to occur at this moment
         wxSizeEvent event(GetSize() , m_windowId);
         event.SetEventObject(this);
-        GetEventHandler()->ProcessEvent(event);
+        HandleWindowEvent(event);
     }
     else
     {
@@ -1436,7 +1416,7 @@ bool wxTopLevelWindowMac::ShowWithEffect(wxShowEffect effect,
     // because apps expect a size event to occur at this moment
     wxSizeEvent event(GetSize() , m_windowId);
     event.SetEventObject(this);
-    GetEventHandler()->ProcessEvent(event);
+    HandleWindowEvent(event);
     
     return true;
 }