summaryrefslogtreecommitdiff
path: root/vcl/unx/gtk
diff options
context:
space:
mode:
authorMichael Meeks <michael.meeks@novell.com>2011-08-17 14:33:25 +0100
committerMichael Meeks <michael.meeks@suse.com>2011-10-25 13:41:44 +0100
commitc11c452aa180393e56b79eb256c79e895fa169c8 (patch)
tree6c7a238642476a2170f92da99d7f5830a12b731d /vcl/unx/gtk
parent4a7e3482912c90b73d6e12c82bcd9ce31975e3f1 (diff)
remove conditionals, and split pieces into salnativewidgets
Diffstat (limited to 'vcl/unx/gtk')
-rw-r--r--vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx9
-rw-r--r--vcl/unx/gtk/window/gtkframe.cxx116
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: */