avoid GtkAlignment and gtk_widget_reparent(), deprecated in GTK+ 3.14
This commit is contained in:
@@ -26,6 +26,7 @@
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
#include "wx/gtk/private/gtk2-compat.h"
|
||||
#include "wx/gtk/private/gtk3-compat.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// data
|
||||
@@ -357,6 +358,17 @@ bool wxMiniFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title
|
||||
GDK_POINTER_MOTION_MASK |
|
||||
GDK_POINTER_MOTION_HINT_MASK);
|
||||
gtk_widget_show(eventbox);
|
||||
#ifdef __WXGTK3__
|
||||
g_object_ref(m_mainWidget);
|
||||
gtk_container_remove(GTK_CONTAINER(m_widget), m_mainWidget);
|
||||
gtk_container_add(GTK_CONTAINER(eventbox), m_mainWidget);
|
||||
g_object_unref(m_mainWidget);
|
||||
|
||||
gtk_widget_set_margin_start(m_mainWidget, m_miniEdge);
|
||||
gtk_widget_set_margin_end(m_mainWidget, m_miniEdge);
|
||||
gtk_widget_set_margin_top(m_mainWidget, m_miniTitle + m_miniEdge);
|
||||
gtk_widget_set_margin_bottom(m_mainWidget, m_miniEdge);
|
||||
#else
|
||||
// Use a GtkAlignment to position m_mainWidget inside the decorations
|
||||
GtkWidget* alignment = gtk_alignment_new(0, 0, 1, 1);
|
||||
gtk_alignment_set_padding(GTK_ALIGNMENT(alignment),
|
||||
@@ -365,6 +377,7 @@ bool wxMiniFrame::Create( wxWindow *parent, wxWindowID id, const wxString &title
|
||||
// The GtkEventBox and GtkAlignment go between m_widget and m_mainWidget
|
||||
gtk_widget_reparent(m_mainWidget, alignment);
|
||||
gtk_container_add(GTK_CONTAINER(eventbox), alignment);
|
||||
#endif
|
||||
gtk_container_add(GTK_CONTAINER(m_widget), eventbox);
|
||||
|
||||
m_gdkDecor = 0;
|
||||
|
Reference in New Issue
Block a user