Draw bug.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -107,19 +107,19 @@ wxRendererGTK::DrawHeaderButton(wxWindow *win,
|
|||||||
if (s_button == NULL)
|
if (s_button == NULL)
|
||||||
{
|
{
|
||||||
s_window = gtk_window_new( GTK_WINDOW_POPUP );
|
s_window = gtk_window_new( GTK_WINDOW_POPUP );
|
||||||
gtk_widget_realize( s_window );
|
gtk_widget_realize( s_window );
|
||||||
s_button = gtk_button_new();
|
s_button = gtk_button_new();
|
||||||
gtk_container_add( GTK_CONTAINER(s_window), s_button );
|
gtk_container_add( GTK_CONTAINER(s_window), s_button );
|
||||||
gtk_widget_realize( s_button );
|
gtk_widget_realize( s_button );
|
||||||
}
|
}
|
||||||
|
|
||||||
gtk_paint_box
|
gtk_paint_box
|
||||||
(
|
(
|
||||||
s_button->style,
|
s_button->style,
|
||||||
GTK_PIZZA(win->m_wxwindow)->bin_window,
|
GTK_PIZZA(win->m_wxwindow)->bin_window,
|
||||||
flags & wxCONTROL_DISABLED ? GTK_STATE_INSENSITIVE : GTK_STATE_NORMAL,
|
flags & wxCONTROL_DISABLED ? GTK_STATE_INSENSITIVE : GTK_STATE_NORMAL,
|
||||||
GTK_SHADOW_OUT,
|
GTK_SHADOW_OUT,
|
||||||
NULL,
|
NULL,
|
||||||
s_button,
|
s_button,
|
||||||
"button",
|
"button",
|
||||||
dc.XLOG2DEV(rect.x) -1, rect.y -1, rect.width +2, rect.height +2
|
dc.XLOG2DEV(rect.x) -1, rect.y -1, rect.width +2, rect.height +2
|
||||||
@@ -143,6 +143,8 @@ wxRendererGTK::DrawTreeItemButton(wxWindow* win,
|
|||||||
GtkStyle *style = win->m_widget->style;
|
GtkStyle *style = win->m_widget->style;
|
||||||
int x = rect.x;
|
int x = rect.x;
|
||||||
int y = rect.y;
|
int y = rect.y;
|
||||||
|
y = dc.LogicalToDeviceY( y );
|
||||||
|
x = dc.LogicalToDeviceX( x );
|
||||||
|
|
||||||
#if 1
|
#if 1
|
||||||
// This draws the GTK+ 2.2.4 triangle
|
// This draws the GTK+ 2.2.4 triangle
|
||||||
@@ -165,7 +167,7 @@ wxRendererGTK::DrawTreeItemButton(wxWindow* win,
|
|||||||
points[1].x = points[0].x;
|
points[1].x = points[0].x;
|
||||||
points[1].y = points[0].y + (PM_SIZE + 2);
|
points[1].y = points[0].y + (PM_SIZE + 2);
|
||||||
points[2].x = (points[0].x +
|
points[2].x = (points[0].x +
|
||||||
(2 * (PM_SIZE + 2) / 3 - 1));
|
(2 * (PM_SIZE + 2) / 3 - 1));
|
||||||
points[2].y = points[0].y + (PM_SIZE + 2) / 2;
|
points[2].y = points[0].y + (PM_SIZE + 2) / 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -189,8 +191,8 @@ wxRendererGTK::DrawTreeItemButton(wxWindow* win,
|
|||||||
if ( flags & wxCONTROL_EXPANDED )
|
if ( flags & wxCONTROL_EXPANDED )
|
||||||
{
|
{
|
||||||
gdk_draw_line( pizza->bin_window, style->fg_gc[GTK_STATE_NORMAL],
|
gdk_draw_line( pizza->bin_window, style->fg_gc[GTK_STATE_NORMAL],
|
||||||
x + PM_SIZE / 2, y + 2,
|
x + PM_SIZE / 2, y + 2,
|
||||||
x + PM_SIZE / 2, y + PM_SIZE - 2);
|
x + PM_SIZE / 2, y + PM_SIZE - 2);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -294,7 +296,7 @@ wxRendererGTK::DrawSplitterSash(wxWindow *win,
|
|||||||
GdkRectangle erase_rect;
|
GdkRectangle erase_rect;
|
||||||
if ( isVert )
|
if ( isVert )
|
||||||
{
|
{
|
||||||
int h = win->GetClientSize().GetHeight();
|
int h = win->GetClientSize().GetHeight();
|
||||||
|
|
||||||
rect.x = position;
|
rect.x = position;
|
||||||
rect.y = h/2 - 14/2;
|
rect.y = h/2 - 14/2;
|
||||||
@@ -308,7 +310,7 @@ wxRendererGTK::DrawSplitterSash(wxWindow *win,
|
|||||||
}
|
}
|
||||||
else // horz
|
else // horz
|
||||||
{
|
{
|
||||||
int w = win->GetClientSize().GetWidth();
|
int w = win->GetClientSize().GetWidth();
|
||||||
|
|
||||||
rect.x = w/2 - 14/2;
|
rect.x = w/2 - 14/2;
|
||||||
rect.y = position;
|
rect.y = position;
|
||||||
|
@@ -107,19 +107,19 @@ wxRendererGTK::DrawHeaderButton(wxWindow *win,
|
|||||||
if (s_button == NULL)
|
if (s_button == NULL)
|
||||||
{
|
{
|
||||||
s_window = gtk_window_new( GTK_WINDOW_POPUP );
|
s_window = gtk_window_new( GTK_WINDOW_POPUP );
|
||||||
gtk_widget_realize( s_window );
|
gtk_widget_realize( s_window );
|
||||||
s_button = gtk_button_new();
|
s_button = gtk_button_new();
|
||||||
gtk_container_add( GTK_CONTAINER(s_window), s_button );
|
gtk_container_add( GTK_CONTAINER(s_window), s_button );
|
||||||
gtk_widget_realize( s_button );
|
gtk_widget_realize( s_button );
|
||||||
}
|
}
|
||||||
|
|
||||||
gtk_paint_box
|
gtk_paint_box
|
||||||
(
|
(
|
||||||
s_button->style,
|
s_button->style,
|
||||||
GTK_PIZZA(win->m_wxwindow)->bin_window,
|
GTK_PIZZA(win->m_wxwindow)->bin_window,
|
||||||
flags & wxCONTROL_DISABLED ? GTK_STATE_INSENSITIVE : GTK_STATE_NORMAL,
|
flags & wxCONTROL_DISABLED ? GTK_STATE_INSENSITIVE : GTK_STATE_NORMAL,
|
||||||
GTK_SHADOW_OUT,
|
GTK_SHADOW_OUT,
|
||||||
NULL,
|
NULL,
|
||||||
s_button,
|
s_button,
|
||||||
"button",
|
"button",
|
||||||
dc.XLOG2DEV(rect.x) -1, rect.y -1, rect.width +2, rect.height +2
|
dc.XLOG2DEV(rect.x) -1, rect.y -1, rect.width +2, rect.height +2
|
||||||
@@ -143,6 +143,8 @@ wxRendererGTK::DrawTreeItemButton(wxWindow* win,
|
|||||||
GtkStyle *style = win->m_widget->style;
|
GtkStyle *style = win->m_widget->style;
|
||||||
int x = rect.x;
|
int x = rect.x;
|
||||||
int y = rect.y;
|
int y = rect.y;
|
||||||
|
y = dc.LogicalToDeviceY( y );
|
||||||
|
x = dc.LogicalToDeviceX( x );
|
||||||
|
|
||||||
#if 1
|
#if 1
|
||||||
// This draws the GTK+ 2.2.4 triangle
|
// This draws the GTK+ 2.2.4 triangle
|
||||||
@@ -165,7 +167,7 @@ wxRendererGTK::DrawTreeItemButton(wxWindow* win,
|
|||||||
points[1].x = points[0].x;
|
points[1].x = points[0].x;
|
||||||
points[1].y = points[0].y + (PM_SIZE + 2);
|
points[1].y = points[0].y + (PM_SIZE + 2);
|
||||||
points[2].x = (points[0].x +
|
points[2].x = (points[0].x +
|
||||||
(2 * (PM_SIZE + 2) / 3 - 1));
|
(2 * (PM_SIZE + 2) / 3 - 1));
|
||||||
points[2].y = points[0].y + (PM_SIZE + 2) / 2;
|
points[2].y = points[0].y + (PM_SIZE + 2) / 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -189,8 +191,8 @@ wxRendererGTK::DrawTreeItemButton(wxWindow* win,
|
|||||||
if ( flags & wxCONTROL_EXPANDED )
|
if ( flags & wxCONTROL_EXPANDED )
|
||||||
{
|
{
|
||||||
gdk_draw_line( pizza->bin_window, style->fg_gc[GTK_STATE_NORMAL],
|
gdk_draw_line( pizza->bin_window, style->fg_gc[GTK_STATE_NORMAL],
|
||||||
x + PM_SIZE / 2, y + 2,
|
x + PM_SIZE / 2, y + 2,
|
||||||
x + PM_SIZE / 2, y + PM_SIZE - 2);
|
x + PM_SIZE / 2, y + PM_SIZE - 2);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -294,7 +296,7 @@ wxRendererGTK::DrawSplitterSash(wxWindow *win,
|
|||||||
GdkRectangle erase_rect;
|
GdkRectangle erase_rect;
|
||||||
if ( isVert )
|
if ( isVert )
|
||||||
{
|
{
|
||||||
int h = win->GetClientSize().GetHeight();
|
int h = win->GetClientSize().GetHeight();
|
||||||
|
|
||||||
rect.x = position;
|
rect.x = position;
|
||||||
rect.y = h/2 - 14/2;
|
rect.y = h/2 - 14/2;
|
||||||
@@ -308,7 +310,7 @@ wxRendererGTK::DrawSplitterSash(wxWindow *win,
|
|||||||
}
|
}
|
||||||
else // horz
|
else // horz
|
||||||
{
|
{
|
||||||
int w = win->GetClientSize().GetWidth();
|
int w = win->GetClientSize().GetWidth();
|
||||||
|
|
||||||
rect.x = w/2 - 14/2;
|
rect.x = w/2 - 14/2;
|
||||||
rect.y = position;
|
rect.y = position;
|
||||||
|
Reference in New Issue
Block a user