← Back to team overview

linuxdcpp-team team mailing list archive

[Branch ~dcplusplus-team/dcplusplus/trunk] Rev 2379: better Rich Edit printing for taskbar previews

 

------------------------------------------------------------
revno: 2379
committer: poy <poy@xxxxxxxxxx>
branch nick: trunk
timestamp: Tue 2011-01-04 19:13:07 +0100
message:
  better Rich Edit printing for taskbar previews
modified:
  Compile.txt
  dwt/src/widgets/RichTextBox.cpp


--
lp:dcplusplus
https://code.launchpad.net/~dcplusplus-team/dcplusplus/trunk

Your team Dcplusplus-team is subscribed to branch lp:dcplusplus.
To unsubscribe from this branch go to https://code.launchpad.net/~dcplusplus-team/dcplusplus/trunk/+edit-subscription
=== modified file 'Compile.txt'
--- Compile.txt	2010-10-23 19:39:20 +0000
+++ Compile.txt	2011-01-04 18:13:07 +0000
@@ -65,6 +65,8 @@
 		Also grab natupnp.h from the .Net 1.1 SDK and place it in the root of the repository.
 		<http://www.microsoft.com/downloads/details.aspx?FamilyID=9b3a2ca6-3647-4070-9f41-a333c6b9181d&DisplayLang=en>
 
+		A pre-packaged MinGW set can be found on <http://code.google.com/p/pcxprj/>.
+
 	b. Microsoft Visual C++ 10 (2010):
 	<http://msdn.microsoft.com/en-us/visualc/default.aspx>
 

=== modified file 'dwt/src/widgets/RichTextBox.cpp'
--- dwt/src/widgets/RichTextBox.cpp	2011-01-02 17:12:02 +0000
+++ dwt/src/widgets/RichTextBox.cpp	2011-01-04 18:13:07 +0000
@@ -93,10 +93,12 @@
 
 		::FORMATRANGE format = { canvas.handle(), canvas.handle() };
 		format.rc = rect;
-		format.rc.right *= canvas.getDeviceCaps(LOGPIXELSX);
-		format.rc.bottom *= canvas.getDeviceCaps(LOGPIXELSY);
+		format.rc.bottom += 2; // useful when edge lines are cropped.
+		// convert to twips and respect DPI settings.
+		format.rc.right *= 1440 / canvas.getDeviceCaps(LOGPIXELSX);
+		format.rc.bottom *= 1440 / canvas.getDeviceCaps(LOGPIXELSY);
 		format.rcPage = format.rc;
-		format.chrg.cpMin = 0;
+		format.chrg.cpMin = GCC_WTF->lineIndex(GCC_WTF->getFirstVisibleLine());
 		format.chrg.cpMax = -1;
 		GCC_WTF->sendMessage(EM_FORMATRANGE, 1, reinterpret_cast<LPARAM>(&format));
 		GCC_WTF->sendMessage(EM_FORMATRANGE); // "free the cached information" as MSDN recommends.