From: Robert Roebling Date: Tue, 25 May 1999 19:59:36 +0000 (+0000) Subject: "Corrected" logical function in wxDC. X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/01eaf507afd5326c3593dea5f67de48c68c22604?ds=inline "Corrected" logical function in wxDC. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/gtk/dcclient.cpp b/src/gtk/dcclient.cpp index 04fa10b530..79ac14f448 100644 --- a/src/gtk/dcclient.cpp +++ b/src/gtk/dcclient.cpp @@ -969,26 +969,34 @@ void wxWindowDC::SetLogicalFunction( int function ) wxCHECK_RET( Ok(), _T("invalid window dc") ); if (m_logicalFunction == function) return; - + GdkFunction mode = GDK_COPY; switch (function) { case wxXOR: mode = GDK_XOR; break; case wxINVERT: mode = GDK_INVERT; break; -#if (GDK_MINOR_VERSION > 0) +#if (GTK_MINOR_VERSION > 0) case wxOR_REVERSE: mode = GDK_OR_REVERSE; break; case wxAND_REVERSE: mode = GDK_AND_REVERSE; break; case wxCLEAR: mode = GDK_CLEAR; break; case wxSET: mode = GDK_SET; break; case wxOR_INVERT: mode = GDK_OR_INVERT; break; + case wxSRC_AND: case wxAND: mode = GDK_AND; break; + case wxSRC_OR: case wxOR: mode = GDK_OR; break; case wxEQUIV: mode = GDK_EQUIV; break; case wxNAND: mode = GDK_NAND; break; case wxAND_INVERT: mode = GDK_AND_INVERT; break; -/* ? wxSRC_INVERT GDK_AND_REVERSE, GDK_OR_REVERSE, GDK_OR_INVERT */ + case wxCOPY: mode = GDK_COPY; break; + case wxNO_OP: mode = GDK_NOOP; break; + case wxSRC_INVERT: mode = GDK_COPY_INVERT; break; #endif - default: break; + default: + { + wxFAIL_MSG( "unsupported logical function" ); + break; + } } m_logicalFunction = function; diff --git a/src/gtk1/dcclient.cpp b/src/gtk1/dcclient.cpp index 04fa10b530..79ac14f448 100644 --- a/src/gtk1/dcclient.cpp +++ b/src/gtk1/dcclient.cpp @@ -969,26 +969,34 @@ void wxWindowDC::SetLogicalFunction( int function ) wxCHECK_RET( Ok(), _T("invalid window dc") ); if (m_logicalFunction == function) return; - + GdkFunction mode = GDK_COPY; switch (function) { case wxXOR: mode = GDK_XOR; break; case wxINVERT: mode = GDK_INVERT; break; -#if (GDK_MINOR_VERSION > 0) +#if (GTK_MINOR_VERSION > 0) case wxOR_REVERSE: mode = GDK_OR_REVERSE; break; case wxAND_REVERSE: mode = GDK_AND_REVERSE; break; case wxCLEAR: mode = GDK_CLEAR; break; case wxSET: mode = GDK_SET; break; case wxOR_INVERT: mode = GDK_OR_INVERT; break; + case wxSRC_AND: case wxAND: mode = GDK_AND; break; + case wxSRC_OR: case wxOR: mode = GDK_OR; break; case wxEQUIV: mode = GDK_EQUIV; break; case wxNAND: mode = GDK_NAND; break; case wxAND_INVERT: mode = GDK_AND_INVERT; break; -/* ? wxSRC_INVERT GDK_AND_REVERSE, GDK_OR_REVERSE, GDK_OR_INVERT */ + case wxCOPY: mode = GDK_COPY; break; + case wxNO_OP: mode = GDK_NOOP; break; + case wxSRC_INVERT: mode = GDK_COPY_INVERT; break; #endif - default: break; + default: + { + wxFAIL_MSG( "unsupported logical function" ); + break; + } } m_logicalFunction = function;