Add helper wxRectFromGDKRect() function and use it.

No real changes, just another small refactoring.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2009-11-10 17:41:35 +00:00
parent 70884c6fc8
commit 9d02e49483
2 changed files with 32 additions and 4 deletions

View File

@ -0,0 +1,25 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/gtk/private/gdkconv.h
// Purpose: Helper functions for converting between GDK and wx types
// Author: Vadim Zeitlin
// Created: 2009-11-10
// RCS-ID: $Id: wxhead.h,v 1.11 2009-06-29 10:23:04 zeitlin Exp $
// Copyright: (c) 2009 Vadim Zeitlin <vadim@wxwidgets.org>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _GTK_PRIVATE_GDKCONV_H_
#define _GTK_PRIVATE_GDKCONV_H_
namespace wxGTKImpl
{
inline wxRect wxRectFromGDKRect(const GdkRectangle *r)
{
return wxRect(r->x, r->y, r->width, r->height);
}
} // namespace wxGTKImpl
#endif // _GTK_PRIVATE_GDKCONV_H_

View File

@ -33,6 +33,9 @@
#include "wx/gtk/dc.h" #include "wx/gtk/dc.h"
#include "wx/gtk/dcclient.h" #include "wx/gtk/dcclient.h"
#include "wx/gtk/private/gdkconv.h"
using namespace wxGTKImpl;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
@ -1150,8 +1153,8 @@ static GtkCellEditable *gtk_wx_cell_renderer_start_editing(
// rect.width -= renderer->xpad * 2; // rect.width -= renderer->xpad * 2;
// rect.height -= renderer->ypad * 2; // rect.height -= renderer->ypad * 2;
// wxRect renderrect( rect.x, rect.y, rect.width, rect.height ); // wxRect renderrect(wxRectFromGDKRect(&rect));
wxRect renderrect( cell_area->x, cell_area->y, cell_area->width, cell_area->height ); wxRect renderrect(wxRectFromGDKRect(cell_area));
GtkTreePath *treepath = gtk_tree_path_new_from_string( path ); GtkTreePath *treepath = gtk_tree_path_new_from_string( path );
GtkTreeIter iter; GtkTreeIter iter;
@ -1244,7 +1247,7 @@ gtk_wx_cell_renderer_render (GtkCellRenderer *renderer,
GdkRectangle dummy; GdkRectangle dummy;
if (gdk_rectangle_intersect (expose_area, &rect, &dummy)) if (gdk_rectangle_intersect (expose_area, &rect, &dummy))
{ {
wxRect renderrect( rect.x, rect.y, rect.width, rect.height ); wxRect renderrect(wxRectFromGDKRect(&rect));
wxWindowDC* dc = (wxWindowDC*) cell->GetDC(); wxWindowDC* dc = (wxWindowDC*) cell->GetDC();
wxWindowDCImpl *impl = (wxWindowDCImpl *) dc->GetImpl(); wxWindowDCImpl *impl = (wxWindowDCImpl *) dc->GetImpl();
@ -1297,7 +1300,7 @@ gtk_wx_cell_renderer_activate(
rect.width -= renderer->xpad * 2; rect.width -= renderer->xpad * 2;
rect.height -= renderer->ypad * 2; rect.height -= renderer->ypad * 2;
wxRect renderrect( rect.x, rect.y, rect.width, rect.height ); wxRect renderrect(wxRectFromGDKRect(&rect));
wxDataViewModel *model = cell->GetOwner()->GetOwner()->GetModel(); wxDataViewModel *model = cell->GetOwner()->GetOwner()->GetModel();