Implemented window coord mirroring for RTL. This
is only implemented for *setting* the coordinates which is enough for wxSizers and 99% or other dialogs to work. Also reversed the meaning of wxStaticText alignment in RTL mode. It is possible that later versions of GTK actually do that themselves. (?) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41137 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -237,8 +237,13 @@ static void gtk_frame_size_callback( GtkWidget *WXUNUSED(widget), GtkAllocation*
|
||||
(int)alloc->height );
|
||||
*/
|
||||
|
||||
// Tell the wxWindow class about the new size
|
||||
win->m_width = alloc->width;
|
||||
win->m_height = alloc->height;
|
||||
|
||||
if (win->m_mainWidget)
|
||||
GTK_PIZZA(win->m_mainWidget)->m_width = win->m_width;
|
||||
|
||||
win->GtkUpdateSize();
|
||||
}
|
||||
}
|
||||
@@ -559,6 +564,8 @@ bool wxTopLevelWindowGTK::Create( wxWindow *parent,
|
||||
GTK_WIDGET_UNSET_FLAGS( m_mainWidget, GTK_CAN_FOCUS );
|
||||
gtk_container_add( GTK_CONTAINER(m_widget), m_mainWidget );
|
||||
|
||||
GTK_PIZZA(m_mainWidget)->m_width = m_width;
|
||||
|
||||
if (m_miniEdge == 0) // wxMiniFrame has its own version.
|
||||
{
|
||||
// For m_mainWidget themes
|
||||
@@ -852,6 +859,9 @@ void wxTopLevelWindowGTK::DoSetSize( int x, int y, int width, int height, int si
|
||||
}
|
||||
if (width != -1) m_width = width;
|
||||
if (height != -1) m_height = height;
|
||||
|
||||
if (m_mainWidget)
|
||||
GTK_PIZZA(m_mainWidget)->m_width = m_width;
|
||||
|
||||
/*
|
||||
if ((sizeFlags & wxSIZE_AUTO_WIDTH) == wxSIZE_AUTO_WIDTH)
|
||||
@@ -1024,6 +1034,7 @@ void wxTopLevelWindowGTK::GtkOnSize()
|
||||
if (client_h < 0)
|
||||
client_h = 0;
|
||||
|
||||
// Let the parent perform the resize
|
||||
gtk_pizza_set_size( GTK_PIZZA(m_mainWidget),
|
||||
m_wxwindow,
|
||||
client_x, client_y, client_w, client_h );
|
||||
|
Reference in New Issue
Block a user