diff options
author | Michael Meeks <michael.meeks@novell.com> | 2011-08-17 14:33:25 +0100 |
---|---|---|
committer | Michael Meeks <michael.meeks@suse.com> | 2011-10-25 13:41:44 +0100 |
commit | c11c452aa180393e56b79eb256c79e895fa169c8 (patch) | |
tree | 6c7a238642476a2170f92da99d7f5830a12b731d /vcl/unx/gtk | |
parent | 4a7e3482912c90b73d6e12c82bcd9ce31975e3f1 (diff) |
remove conditionals, and split pieces into salnativewidgets
Diffstat (limited to 'vcl/unx/gtk')
-rw-r--r-- | vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx | 9 | ||||
-rw-r--r-- | vcl/unx/gtk/window/gtkframe.cxx | 116 |
2 files changed, 11 insertions, 114 deletions
diff --git a/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx b/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx index 95e756b696ca..d168917842a2 100644 --- a/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx @@ -56,6 +56,15 @@ sal_Bool GtkSalGraphics::bGlobalNeedPixmapPaint = sal_False; sal_Bool GtkSalGraphics::bToolbarGripWorkaround = sal_False; sal_Bool GtkSalGraphics::bNeedButtonStyleAsEditBackgroundWorkaround = sal_False; +GtkSalGraphics::GtkSalGraphics( GtkSalFrame *pFrame, GtkWidget *pWindow ) + : X11SalGraphics(), + m_pWindow( pWindow ), + m_aClipRegion( REGION_NULL ) +{ + Init( pFrame, GDK_WINDOW_XID( widget_get_window( pWindow ) ), + gdk_x11_screen_get_screen_number( gtk_widget_get_screen( pWindow ) ) ); +} + GtkSalGraphics::~GtkSalGraphics() { } diff --git a/vcl/unx/gtk/window/gtkframe.cxx b/vcl/unx/gtk/window/gtkframe.cxx index 614af44ecdc1..e48aa15cbfea 100644 --- a/vcl/unx/gtk/window/gtkframe.cxx +++ b/vcl/unx/gtk/window/gtkframe.cxx @@ -2570,9 +2570,7 @@ void GtkSalFrame::createNewWindow( XLIB_Window aNewParent, bool bXEmbed, int nSc if( m_aGraphics[i].bInUse ) { m_aGraphics[i].pGraphics->SetDrawable( GDK_WINDOW_XWINDOW(widget_get_window(m_pWindow)), m_nScreen ); -#ifndef GTK_GRAPHICS_DISABLED m_aGraphics[i].pGraphics->SetWindow( m_pWindow ); -#endif } } #endif @@ -3513,9 +3511,6 @@ void GtkSalFrame::signalStyleSet( GtkWidget*, GtkStyle* pPrevious, gpointer fram aWin, pThis->m_hBackgroundPixmap ); } -#endif - -#ifndef GTK_GRAPHICS_DISABLED if( ! pThis->m_pParent ) { // signalize theme changed for NWF caches @@ -4140,115 +4135,6 @@ gboolean GtkSalFrame::IMHandler::signalIMDeleteSurrounding( GtkIMContext*, gint return sal_False; } -#ifdef GTK_GRAPHICS_DISABLED - -void GtkData::initNWF() {} -void GtkData::deInitNWF() {} - -#if !GTK_CHECK_VERSION(3,0,0) - -GtkSalGraphics::GtkSalGraphics( GtkSalFrame *pFrame, GtkWidget *pWindow ) - : X11SalGraphics() -{ - Init( pFrame, GDK_WINDOW_XID( widget_get_window( pWindow ) ), - gdk_x11_screen_get_screen_number( gtk_widget_get_screen( pWindow ) ) ); -} - -#else - -GtkSalGraphics::GtkSalGraphics( GtkSalFrame *pFrame, GtkWidget *pWindow ) - : SvpSalGraphics(), - mpFrame( pFrame ) -{ -} - -void GtkSalGraphics::updateSettings( AllSettings& rSettings ) -{ - g_warning ("unimplemented GtkSalGraphics update"); -} - -static void print_cairo_region (cairo_region_t *region, const char *msg) -{ - if (!region) { - fprintf (stderr, "%s - NULL\n", msg); - return; - } - int numrect = cairo_region_num_rectangles (region); - fprintf (stderr, "%s - %d rects\n", msg, numrect); - for (int i = 0; i < numrect; i++) { - cairo_rectangle_int_t rect; - cairo_region_get_rectangle (region, i, &rect); - fprintf( stderr, "\t%d -> %d,%d %dx%d\n", i, - rect.x, rect.y, rect.width, rect.height ); - } -} - -static void print_update_area (GdkWindow *window, const char *msg) -{ - print_cairo_region (gdk_window_get_update_area (window), msg); -} - -void GtkSalGraphics::copyArea( long nDestX, long nDestY, - long nSrcX, long nSrcY, - long nSrcWidth, long nSrcHeight, - sal_uInt16 nFlags ) -{ - mpFrame->pushIgnoreDamage(); - SvpSalGraphics::copyArea( nDestX, nDestY, nSrcX, nSrcY, nSrcWidth, nSrcHeight, nFlags ); - mpFrame->popIgnoreDamage(); - - cairo_rectangle_int_t rect = { (int)nSrcX, (int)nSrcY, (int)nSrcWidth, (int)nSrcHeight }; - cairo_region_t *region = cairo_region_create_rectangle( &rect ); - - print_update_area( gtk_widget_get_window( mpFrame->getWindow() ), "before copy area" ); - -// print_cairo_region( mpFrame->m_pRegion, "extremely odd SalFrame: shape combine region! - "); - - g_warning( "FIXME: copy area delta: %d %d needs clip intersect\n", - nDestX - nSrcX, nDestY - nSrcY ); - - // get clip region and translate it in the opposite direction & intersect ... - cairo_region_t *clip_region; - - if( m_aClipRegion.GetRectCount() <= 0) - { - basegfx::B2IVector aSize = GetSize(); - cairo_rectangle_int_t aCairoSize = { 0, 0, aSize.getX(), aSize.getY() }; - clip_region = cairo_region_create_rectangle( &aCairoSize ); - } - else - { - clip_region = cairo_region_create(); - Rectangle aClipRect; - RegionHandle aHnd = m_aClipRegion.BeginEnumRects(); - while( m_aClipRegion.GetNextEnumRect( aHnd, aClipRect ) ) - { - cairo_rectangle_int_t aRect = { aClipRect.Left(), aClipRect.Top(), - aClipRect.Right(), aClipRect.Bottom() }; - cairo_region_union_rectangle( clip_region, &aRect ); - } - m_aClipRegion.EndEnumRects (aHnd); - } - print_cairo_region( clip_region, "pristine clip region" ); - cairo_region_translate( clip_region, - (nDestX - nSrcX), - (nDestY - nSrcY) ); - print_cairo_region( clip_region, "translated clip region" ); - cairo_region_intersect( region, clip_region ); - print_cairo_region( region, "reduced copy area region" ); - - // FIXME: this will queue (duplicate) gtk+ re-rendering for the exposed area, c'est la vie - gdk_window_move_region( gtk_widget_get_window( mpFrame->getWindow() ), - region, nDestX - nSrcX, nDestY - nSrcY ); - - print_update_area( gtk_widget_get_window( mpFrame->getWindow() ), "after copy area" ); - cairo_region_destroy( clip_region ); - cairo_region_destroy( region ); -} - -#endif - -#endif -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ - Size GtkSalDisplay::GetScreenSize( int nScreen ) { GdkScreen *pScreen = gdk_display_get_screen (m_pGdkDisplay, nScreen); @@ -4258,3 +4144,5 @@ Size GtkSalDisplay::GetScreenSize( int nScreen ) return Size( gdk_screen_get_width (pScreen), gdk_screen_get_height (pScreen) ); } + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |