<pre style='margin:0'>
Ken (kencu) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/889be1158f14eb05a5a2d717962eb331105bb727">https://github.com/macports/macports-ports/commit/889be1158f14eb05a5a2d717962eb331105bb727</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 889be1158f14eb05a5a2d717962eb331105bb727
</span>Author: Karl-Michael Schindler <karl-michael.schindler@web.de>
AuthorDate: Fri Oct 11 15:22:45 2019 +0200

<span style='display:block; white-space:pre;color:#404040;'>    Lazarus: more fixes
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Beautify the patch phase and fix the destroot.post argument.
</span>---
 devel/lazarus/Portfile                     | 49 ++++++++++++++-------------
 devel/lazarus/files/noGUI-Printer.patch    | 35 +++++++++++++++++++
 devel/lazarus/files/nogui/delphicompat.inc | 54 ++++++++++++++++++++++++++++++
 devel/lazarus/files/nogui/lclext.inc       | 24 +++++++++++++
 devel/lazarus/files/nogui/uses.inc         |  1 +
 devel/lazarus/files/nogui/uses_lclext.inc  |  2 ++
 6 files changed, 141 insertions(+), 24 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/lazarus/Portfile b/devel/lazarus/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index a534a21..b54f588 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/lazarus/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/lazarus/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -35,49 +35,50 @@ supported_archs     x86_64
</span> use_configure       no
 worksrcdir          lazarus
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          noGUI-Printer.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-patch {
 # add the MacPorts directory tree. This might need a check in a new version
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     set patchtarget ${worksrcpath}/ide/include/unix/lazbaseconf.inc
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    reinplace "s|1\.\.15|1\.\.16|g"                                                       ${patchtarget}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    reinplace "s|'/usr/share/fpcsrc'|'/usr/share/fpcsrc','${prefix}/share/fpcsrc'|g"      ${patchtarget}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    reinplace "s|1\.\.8|1\.\.9|g"                                                         ${patchtarget}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    reinplace "s|'/usr/share/lazarus',|'/usr/share/lazarus','${prefix}/share/lazarus',|g" ${patchtarget}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|1\.\.15|1\.\.16|g" ${patchtarget}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|'/usr/share/fpcsrc'|'/usr/share/fpcsrc',\\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    '${prefix}/share/fpcsrc'|g"      ${patchtarget}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|1\.\.8|1\.\.9|g" ${patchtarget}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|'/usr/share/lazarus',|'/usr/share/lazarus',\\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    '${prefix}/share/lazarus',|g" ${patchtarget}
</span> 
 # change the preferences directory (actually, not yet)
 #   reinplace "s|'\.lazarus'|'Library/Preferences/lazarus'|g" ${patchtarget}
     reinplace "s|'/etc/lazarus'|'${prefix}/etc/lazarus'|g"    ${patchtarget}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    reinplace "s|AddFilenameToList(List,'/usr/local/bin/'+GetDefaultCompilerFilename);|AddFilenameToList(List,'${prefix}/bin/'+GetDefaultCompilerFilename); AddFilenameToList(List,'/usr/local/bin/'+GetDefaultCompilerFilename);|g" ${patchtarget}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|'/usr/local/bin/'+GetDefaultCompilerFilename);|'${prefix}/bin/'+GetDefaultCompilerFilename);\\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  AddFilenameToList(List,'/usr/local/bin/'+GetDefaultCompilerFilename);|g" ${patchtarget}
</span> 
 # adjust the default paths to MacPorts paths
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     set patchtarget ${worksrcpath}/tools/install/macosx/environmentoptions.xml
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     reinplace "s|/usr/local/bin/_PPCARCH_|${prefix}/bin/ppcx64|g" ${patchtarget}
     reinplace "s|/usr/local/share|${prefix}/share|g"              ${patchtarget}
     reinplace "s|/Developer/lazarus|${prefix}/share/lazarus|g"    ${patchtarget}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    reinplace "s|<DebuggerFilename Value=\"/usr/bin/lldb\"/>|<DebuggerFilename Value=\"/usr/bin/lldb\"> <History Count=\"3\"> <Item1 Value=\"/usr/bin/lldb\"/> <Item2 Value=\"/usr/bin/gdb\"/> <Item3 Value=\"${prefix}/bin/gdb\"/> </History> </DebuggerFilename>|g" ${patchtarget}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|<DebuggerFilename Value=\"/usr/bin/lldb\"/>|<DebuggerFilename Value=\"/usr/bin/lldb\">\\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        <History Count=\"3\">\\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <Item1 Value=\"/usr/bin/lldb\"/>\\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <Item2 Value=\"/usr/bin/gdb\"/>\\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          <Item3 Value=\"${prefix}/bin/gdb\"/>\\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        </History>\\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      </DebuggerFilename>|g" ${patchtarget}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # fix path to X11
     reinplace "s|-Fl/usr/X11R6/lib -Fl/sw/lib|\"-Fl${prefix}/lib -Fl${prefix}/lib/pango-ft219/lib -Fl/opt/X11/lib\"|g" ${worksrcpath}/ide/Makefile
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# fix compilation of bigidecomponents with LCL_PLATFORM=nogui (LCLnogui)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# with osprinters.pas the line number needs to be given
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Note: I did not manage a solution with reinplace
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    system -W ${worksrcpath}/components/printers \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        "sed -i.tmp '50 s|LCLGtk2|LCLnogui\}\{\$I cupsprinters_h.inc\}\{\$ENDIF\}\{\$IFDEF LCLGtk2|g' osprinters.pas && \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         sed -i.tmp '87 s|LCLGtk2|LCLnogui\}\{\$I cupsprinters.inc\}\{\$ENDIF\}\{\$IFDEF LCLGtk2|g'   osprinters.pas && \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         sed -i.tmp 's|LCLGtk2|LCLnogui\}uses udlgSelectPrinter, udlgPropertiesPrinter, udlgPageSetup;\{\$I cupsprndialogs.inc\}\{\$ENDIF\}\{\$IFDEF LCLGtk2|g' ${worksrcpath}/components/printers/printersdlgs.pp "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> # some more fixes for nogui taking cocoa as a template
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# this may break, as soon as cocoa gets working versions
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    copy       ${worksrcpath}/components/lclextensions/include/cocoa ${worksrcpath}/components/lclextensions/include/nogui
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    reinplace "s|CocoaInt, CocoaGDIObjects, ||g"                     ${worksrcpath}/components/lclextensions/include/nogui/uses.inc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    reinplace "s|Cocoa Interface|NoGui Interface|g"                  ${worksrcpath}/components/lclextensions/include/nogui/delphicompat.inc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# if cocoa or nogui get updated, the files in ${filespath} need to be updated manually
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Note: I did not manage a solution with reinplace
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    system -W ${worksrcpath}/components/lclextensions/include/nogui \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        "sed -i.tmp 's|\$define HAS_GETCURRENTOBJECT|.\$define HAS_GETCURRENTOBJECT|g' delphicompat.inc && \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         sed -i.tmp '21,27d' delphicompat.inc && \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         sed -i.tmp '46,68d' delphicompat.inc "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    copy ${filespath}/nogui ${worksrcpath}/components/lclextensions/include/
</span> 
     copy ${worksrcpath}/components/virtualtreeview/units/cocoa         ${worksrcpath}/components/virtualtreeview/units/nogui
     copy ${worksrcpath}/components/virtualtreeview/include/intf/cocoa/ ${worksrcpath}/components/virtualtreeview/include/intf/nogui
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -88,7 +89,7 @@ build.target       bigide
</span> build.post_args    OPT=-gl LCL_PLATFORM=cocoa
 use_parallel_build no
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-destroot.post_args INSTALL_PREFIX=${destroot}${prefix}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.post_args INSTALL_PREFIX=${destroot}${prefix}
</span> 
 post-destroot {
     xinstall -m 755 -d ${destroot}${prefix}/etc/lazarus
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/lazarus/files/noGUI-Printer.patch b/devel/lazarus/files/noGUI-Printer.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..4b606e7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/lazarus/files/noGUI-Printer.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,35 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- components/printers/osprinters.pas     2017-11-25 11:20:02.000000000 +0100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ components/printers/osprinters.pas     2019-10-11 11:57:46.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -47,6 +47,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {$IF DEFINED(LCLQt) OR DEFINED(LCLQt5)}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {$I qtprinters_h.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {$ENDIF}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {$IFDEF LCLnogui}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {$I cupsprinters_h.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {$ENDIF}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {$IFDEF LCLGtk2}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {$I cupsprinters_h.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {$ENDIF}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -84,6 +87,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {$IF DEFINED(LCLQt) OR DEFINED(LCLQt5)}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {$I qtprinters.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {$ENDIF}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {$IFDEF LCLnogui}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {$I cupsprinters.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {$ENDIF}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {$IFDEF LCLGtk2}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {$I cupsprinters.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {$ENDIF}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- components/printers/printersdlgs.pp    2018-12-09 23:24:53.000000000 +0100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ components/printers/printersdlgs.pp    2019-10-11 12:00:06.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -160,6 +160,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       uses qtobjects, qt5, qtint, LazUTF8;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {$I qtprndialogs.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {$ENDIF}    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {$IFDEF LCLnogui}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      uses udlgSelectPrinter, udlgPropertiesPrinter, udlgPageSetup;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {$I cupsprndialogs.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {$ENDIF}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {$IFDEF LCLGtk2}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       uses udlgSelectPrinter, udlgPropertiesPrinter, udlgPageSetup;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {$I cupsprndialogs.inc}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/lazarus/files/nogui/delphicompat.inc b/devel/lazarus/files/nogui/delphicompat.inc
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..1e03a0a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/lazarus/files/nogui/delphicompat.inc
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,54 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  NoGUI Interface
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  Dummy implementation. Not tested.   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+type
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  TTimerList = class
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+var
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  FTimerList: TTimerList;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+function CF_UNICODETEXT: TClipboardFormat;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+begin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  //todo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  Result := TClipboardFormat(0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_GETCURRENTOBJECT}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_MAPMODEFUNCTIONS}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_GETTEXTEXTENTEXPOINT}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_GETDOUBLECLICKTIME}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_GETTEXTALIGN}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_GETWINDOWDC}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_INVERTRECT}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_OFFSETRGN}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_REDRAWWINDOW}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_SCROLLWINDOW}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{.$define HAS_SETBRUSHORGEX}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{$i ../generic/stubs.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{$i ../generic/independentfunctions.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{$i ../generic/unicodefunctions.inc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+function BitBlt(DestDC: HDC; X, Y, Width, Height: Integer; SrcDC: HDC; XSrc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  YSrc: Integer; Rop: DWORD): Boolean;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+begin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  Result := StretchMaskBlt(DestDC, X, Y, Width, Height, SrcDC, XSrc, YSrc,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    Width, Height, 0, 0, 0, Rop);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+function KillTimer(hWnd: THandle; nIDEvent: UINT_PTR):Boolean;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+begin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  Result := LCLIntf.KillTimer(hWnd, nIDEvent);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+function SetTimer(hWnd: THandle; nIDEvent: UINT_PTR; uElapse: LongWord; lpTimerFunc: TTimerNotify): UINT_PTR;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+begin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  Result := LCLIntf.SetTimer(hWnd, nIDEvent, uElapse, nil{lpTimerFunc});
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+end;
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/lazarus/files/nogui/lclext.inc b/devel/lazarus/files/nogui/lclext.inc
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..ed5e9ad
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/lazarus/files/nogui/lclext.inc
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,24 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+function CreateBitmapMask(BitmapDC: HDC; Width, Height: Integer; TransparentColor: TColor): HBITMAP;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+begin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  //todo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  Result := 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+function DirectMaskBlt(DestDC: HDC; X, Y, Width, Height: Integer; SrcDC: HDC; XSrc, YSrc: Integer; Mask: HBITMAP): Boolean;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+begin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  //todo: see if is possible todo it faster
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  Result := StretchMaskBlt(DestDC, X, Y, Width, Height, SrcDC, XSrc, YSrc, Width, Height,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Mask, 0, 0,  SRCCOPY);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+function OptimalPixelFormat: TPixelFormat;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+begin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  Result := pfDevice;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+end;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+function OSSupportsUTF16: Boolean;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+begin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  Result := False;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+end;
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/lazarus/files/nogui/uses.inc b/devel/lazarus/files/nogui/uses.inc
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..e74a371
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/lazarus/files/nogui/uses.inc
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  InterfaceBase, LCLIntf, Graphics, Math,
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/lazarus/files/nogui/uses_lclext.inc b/devel/lazarus/files/nogui/uses_lclext.inc
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..0a4c343
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/lazarus/files/nogui/uses_lclext.inc
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,2 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+uses
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  LclIntf;
</span></pre><pre style='margin:0'>

</pre>