]> git.saurik.com Git - wxWidgets.git/commitdiff
Added Theme patch.
authorRobert Roebling <robert@roebling.de>
Tue, 8 Jul 2003 11:26:04 +0000 (11:26 +0000)
committerRobert Roebling <robert@roebling.de>
Tue, 8 Jul 2003 11:26:04 +0000 (11:26 +0000)
  Upported mouse click detection change.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/gtk/choice.cpp
src/gtk/listbox.cpp
src/gtk/spinctrl.cpp
src/gtk/window.cpp
src/gtk1/choice.cpp
src/gtk1/listbox.cpp
src/gtk1/spinctrl.cpp
src/gtk1/window.cpp

index d746df7874c29b17198ba98987c4083606e941c7..b04477bdd413790c13825defd7900669fef02254 100644 (file)
@@ -502,5 +502,15 @@ wxSize wxChoice::DoGetBestSize() const
     return ret;
 }
 
+bool wxChoice::IsOwnGtkWindow( GdkWindow *window )
+{
+#ifdef __WXGTK20__
+    return GTK_BUTTON(m_widget)->event_window;
+#else
+    return (window == m_widget->window);
+#endif
+}
+
+
 #endif // wxUSE_CHOICE
 
index 88f951a03725654cdf6bba0554d44b060f19b850..4f166e489e42716fc30948cdfe6bd99092715bbc 100644 (file)
@@ -958,6 +958,8 @@ GtkWidget *wxListBox::GetConnectWidget()
 
 bool wxListBox::IsOwnGtkWindow( GdkWindow *window )
 {
+    if (m_widget->window == window) return TRUE;
+
     if (GTK_WIDGET(m_list)->window == window) return TRUE;
 
     GList *child = m_list->children;
index 6eed70a28629de91550784bbc4f7f888315ea88d..2fbffa6771a82d5cbb49a563aca6316bb634104c 100644 (file)
@@ -282,7 +282,11 @@ void wxSpinCtrl::OnChar( wxKeyEvent &event )
 
 bool wxSpinCtrl::IsOwnGtkWindow( GdkWindow *window )
 {
-    return GTK_SPIN_BUTTON(m_widget)->panel == window;
+    if (GTK_SPIN_BUTTON(m_widget)->entry.text_area == window) return TRUE;
+    
+    if (GTK_SPIN_BUTTON(m_widget)->panel == window) return TRUE;
+
+    return FALSE;
 }
 
 void wxSpinCtrl::ApplyWidgetStyle()
index 358c139fa6b2a220723f849a8bae928f499a42d7..bb9d47217950e28403ca4e81a8bec0cb33157e53 100644 (file)
@@ -2194,11 +2194,11 @@ gtk_window_realized_callback( GtkWidget *m_widget, wxWindow *win )
 
     if (g_isIdle)
         wxapp_install_idle_handler();
-
-    if (win->m_delayedBackgroundColour)
+        
+    if (win->m_delayedBackgroundColour && !win->GetThemeEnabled())
         win->GtkSetBackgroundColour( win->GetBackgroundColour() );
 
-    if (win->m_delayedForegroundColour)
+    if (win->m_delayedForegroundColour && !win->GetThemeEnabled())
         win->GtkSetForegroundColour( win->GetForegroundColour() );
 
 #ifdef __WXGTK20__
index d746df7874c29b17198ba98987c4083606e941c7..b04477bdd413790c13825defd7900669fef02254 100644 (file)
@@ -502,5 +502,15 @@ wxSize wxChoice::DoGetBestSize() const
     return ret;
 }
 
+bool wxChoice::IsOwnGtkWindow( GdkWindow *window )
+{
+#ifdef __WXGTK20__
+    return GTK_BUTTON(m_widget)->event_window;
+#else
+    return (window == m_widget->window);
+#endif
+}
+
+
 #endif // wxUSE_CHOICE
 
index 88f951a03725654cdf6bba0554d44b060f19b850..4f166e489e42716fc30948cdfe6bd99092715bbc 100644 (file)
@@ -958,6 +958,8 @@ GtkWidget *wxListBox::GetConnectWidget()
 
 bool wxListBox::IsOwnGtkWindow( GdkWindow *window )
 {
+    if (m_widget->window == window) return TRUE;
+
     if (GTK_WIDGET(m_list)->window == window) return TRUE;
 
     GList *child = m_list->children;
index 6eed70a28629de91550784bbc4f7f888315ea88d..2fbffa6771a82d5cbb49a563aca6316bb634104c 100644 (file)
@@ -282,7 +282,11 @@ void wxSpinCtrl::OnChar( wxKeyEvent &event )
 
 bool wxSpinCtrl::IsOwnGtkWindow( GdkWindow *window )
 {
-    return GTK_SPIN_BUTTON(m_widget)->panel == window;
+    if (GTK_SPIN_BUTTON(m_widget)->entry.text_area == window) return TRUE;
+    
+    if (GTK_SPIN_BUTTON(m_widget)->panel == window) return TRUE;
+
+    return FALSE;
 }
 
 void wxSpinCtrl::ApplyWidgetStyle()
index 358c139fa6b2a220723f849a8bae928f499a42d7..bb9d47217950e28403ca4e81a8bec0cb33157e53 100644 (file)
@@ -2194,11 +2194,11 @@ gtk_window_realized_callback( GtkWidget *m_widget, wxWindow *win )
 
     if (g_isIdle)
         wxapp_install_idle_handler();
-
-    if (win->m_delayedBackgroundColour)
+        
+    if (win->m_delayedBackgroundColour && !win->GetThemeEnabled())
         win->GtkSetBackgroundColour( win->GetBackgroundColour() );
 
-    if (win->m_delayedForegroundColour)
+    if (win->m_delayedForegroundColour && !win->GetThemeEnabled())
         win->GtkSetForegroundColour( win->GetForegroundColour() );
 
 #ifdef __WXGTK20__