projects
/
wxWidgets.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
removed unneeded makefiles
[wxWidgets.git]
/
src
/
gtk1
/
dcmemory.cpp
diff --git
a/src/gtk1/dcmemory.cpp
b/src/gtk1/dcmemory.cpp
index 95bf5b9a8a7bd11d0e2dea3d69f6a3da72040a8b..0ec10532b7d8ce554a856cda72862eee8115ed91 100644
(file)
--- a/
src/gtk1/dcmemory.cpp
+++ b/
src/gtk1/dcmemory.cpp
@@
-7,10
+7,13
@@
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#if
def __GNUG__
+#if
defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "dcmemory.h"
#endif
#pragma implementation "dcmemory.h"
#endif
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
#include "wx/dcmemory.h"
#include <gdk/gdk.h>
#include "wx/dcmemory.h"
#include <gdk/gdk.h>
@@
-27,6
+30,12
@@
wxMemoryDC::wxMemoryDC() : wxWindowDC()
m_ok = FALSE;
m_cmap = gtk_widget_get_default_colormap();
m_ok = FALSE;
m_cmap = gtk_widget_get_default_colormap();
+
+#ifdef __WXGTK20__
+ m_context = gdk_pango_context_get();
+ m_layout = pango_layout_new( m_context );
+ m_fontdesc = pango_font_description_copy( pango_context_get_font_description( m_context ) );
+#endif
}
wxMemoryDC::wxMemoryDC( wxDC *WXUNUSED(dc) )
}
wxMemoryDC::wxMemoryDC( wxDC *WXUNUSED(dc) )
@@
-35,6
+44,12
@@
wxMemoryDC::wxMemoryDC( wxDC *WXUNUSED(dc) )
m_ok = FALSE;
m_cmap = gtk_widget_get_default_colormap();
m_ok = FALSE;
m_cmap = gtk_widget_get_default_colormap();
+
+#ifdef __WXGTK20__
+ m_context = gdk_pango_context_get();
+ m_layout = pango_layout_new( m_context );
+ m_fontdesc = pango_font_description_copy( pango_context_get_font_description( m_context ) );
+#endif
}
wxMemoryDC::~wxMemoryDC()
}
wxMemoryDC::~wxMemoryDC()
@@
-56,9
+71,9
@@
void wxMemoryDC::SelectObject( const wxBitmap& bitmap )
m_window = m_selected.GetBitmap();
}
m_window = m_selected.GetBitmap();
}
- SetUpDC();
-
m_isMemDC = TRUE;
m_isMemDC = TRUE;
+
+ SetUpDC();
}
else
{
}
else
{
@@
-67,44
+82,51
@@
void wxMemoryDC::SelectObject( const wxBitmap& bitmap )
}
}
}
}
-void wxMemoryDC::SetPen( const wxPen
&pen
)
+void wxMemoryDC::SetPen( const wxPen
& penOrig
)
{
{
- if (m_selected.Ok() && m_selected.GetBitmap() && (*wxTRANSPARENT_PEN != pen))
- {
- if (*wxWHITE_PEN == pen)
- wxWindowDC::SetPen( *wxBLACK_PEN );
- else
- wxWindowDC::SetPen( *wxWHITE_PEN );
- }
- else
+ wxPen pen( penOrig );
+ if ( m_selected.Ok() &&
+ m_selected.GetBitmap() &&
+ (pen != *wxTRANSPARENT_PEN) )
{
{
-
wxWindowDC::SetPen( pen
);
+
pen.SetColour( pen.GetColour() == *wxWHITE ? *wxBLACK : *wxWHITE
);
}
}
+
+ wxWindowDC::SetPen( pen );
}
}
-void wxMemoryDC::SetBrush( const wxBrush
&brush
)
+void wxMemoryDC::SetBrush( const wxBrush
& brushOrig
)
{
{
- if (m_selected.Ok() && m_selected.GetBitmap() && (*wxTRANSPARENT_BRUSH != brush))
+ wxBrush brush( brushOrig );
+ if ( m_selected.Ok() &&
+ m_selected.GetBitmap() &&
+ (brush != *wxTRANSPARENT_BRUSH) )
{
{
- if (*wxWHITE_BRUSH == brush)
- wxWindowDC::SetBrush( *wxBLACK_BRUSH );
- else
- wxWindowDC::SetBrush( *wxWHITE_BRUSH );
+ brush.SetColour( brush.GetColour() == *wxWHITE ? *wxBLACK : *wxWHITE);
}
}
- else
+
+ wxWindowDC::SetBrush( brush );
+}
+
+void wxMemoryDC::SetBackground( const wxBrush& brushOrig )
+{
+ wxBrush brush(brushOrig);
+
+ if ( m_selected.Ok() &&
+ m_selected.GetBitmap() &&
+ (brush != *wxTRANSPARENT_BRUSH) )
{
{
-
wxWindowDC::SetBrush( brush
);
+
brush.SetColour( brush.GetColour() == *wxWHITE ? *wxBLACK : *wxWHITE
);
}
}
+
+ wxWindowDC::SetBackground( brush );
}
}
-void wxMemoryDC::SetTextForeground( const wxColour
&
col )
+void wxMemoryDC::SetTextForeground( const wxColour
&
col )
{
{
- if (
m_selected.Ok() && m_selected.GetBitmap()
)
+ if (
m_selected.Ok() && m_selected.GetBitmap()
)
{
{
- if (col == *wxWHITE)
- wxWindowDC::SetTextForeground( *wxBLACK );
- else
- wxWindowDC::SetTextForeground( *wxWHITE );
+ wxWindowDC::SetTextForeground( col == *wxWHITE ? *wxBLACK : *wxWHITE);
}
else
{
}
else
{
@@
-116,10
+138,7
@@
void wxMemoryDC::SetTextBackground( const wxColour &col )
{
if (m_selected.Ok() && m_selected.GetBitmap())
{
{
if (m_selected.Ok() && m_selected.GetBitmap())
{
- if (col == *wxWHITE)
- wxWindowDC::SetTextBackground( *wxBLACK );
- else
- wxWindowDC::SetTextBackground( *wxWHITE );
+ wxWindowDC::SetTextBackground( col == *wxWHITE ? *wxBLACK : *wxWHITE );
}
else
{
}
else
{