Skip to content

Commit

Permalink
Large clean-up of various GDI interop functions
Browse files Browse the repository at this point in the history
I'm slowly moving GDI interop bits into a dedicated GDI-only module,
which will both 1) make it easier to convert pd2D to a standalone
library, and 2) help clean-up PD's rather messy code layout.

As part of this commit, pd2DSurface objects can now be created from
scratch (e.g. without the requirement to wrap an existing DC).
Internally, the surface is managed using pdDIB, which makes things like
GDI interop much simpler.

Also, pdSurface objects can be queries for the width, height, stride,
and alpha support.  Surfaces wrapped around external DCs will
automatically query the DC for this information, as necessary.
  • Loading branch information
tannerhelland committed Jun 20, 2016
1 parent fe84563 commit d6071cd
Show file tree
Hide file tree
Showing 52 changed files with 1,190 additions and 955 deletions.
110 changes: 58 additions & 52 deletions App/PhotoDemon/Languages/Deutsch_1.xml
Expand Up @@ -6,14 +6,14 @@

<langid>de-DE</langid>
<langname>Deutsch (Helmut Kuerbiss)</langname>
<langversion>6.7.194</langversion>
<langversion>6.7.195</langversion>
<langstatus>Complete</langstatus>

<author>Helmut Kuerbiss (orig. Frank Donckers)</author>

<!-- BEGIN AUTOMATIC TEXT GENERATION -->

<!-- BEGIN text for VBP_Main.bas -->
<!-- BEGIN text for Main.bas -->

<phrase>
<original>Detecting Windows® version</original>
Expand Down Expand Up @@ -100,11 +100,11 @@
<translation>Programm-Menüs vorbereiten</translation>
</phrase>

<!-- VBP_Main.bas contains 17 phrases. All 17 were unique, so 17 new phrases were written to file. -->
<!-- Main.bas contains 17 phrases. All 17 were unique, so 17 new phrases were written to file. -->

<!-- END text for VBP_Main.bas-->
<!-- END text for Main.bas-->

<!-- BEGIN text for VBP_AutosaveHandler.bas -->
<!-- BEGIN text for AutosaveEngine.bas -->

<phrase>
<original>Purging old autosave data</original>
Expand All @@ -121,11 +121,11 @@
<translation>Der Autosave-Zustand konnte nicht vollständig, sondern nur teilweise erreicht werden.</translation>
</phrase>

<!-- VBP_AutosaveHandler.bas contains 3 phrases. All 3 were unique, so 3 new phrases were written to file. -->
<!-- AutosaveEngine.bas contains 3 phrases. All 3 were unique, so 3 new phrases were written to file. -->

<!-- END text for VBP_AutosaveHandler.bas-->
<!-- END text for AutosaveEngine.bas-->

<!-- BEGIN text for VBP_ColorManagement.bas -->
<!-- BEGIN text for ColorManagement_ICM.bas -->

<phrase>
<original>sRGB transform could not be applied. Image remains in CMYK format.</original>
Expand Down Expand Up @@ -167,15 +167,15 @@
<translation>Eingebettetes ICC-Profil ist ungültig. Das Farbmanagement für dieses Bild ist deaktiviert.</translation>
</phrase>

<!-- VBP_ColorManagement.bas contains 8 phrases. All 8 were unique, so 8 new phrases were written to file. -->
<!-- ColorManagement_ICM.bas contains 8 phrases. All 8 were unique, so 8 new phrases were written to file. -->

<!-- END text for VBP_ColorManagement.bas-->
<!-- END text for ColorManagement_ICM.bas-->

<!-- BEGIN text for VBP_ColorFunctions.bas -->
<!-- BEGIN text for Colors.bas -->

<!-- VBP_ColorFunctions.bas contains 0 phrases. -->
<!-- Colors.bas contains 0 phrases. -->

<!-- END text for VBP_ColorFunctions.bas-->
<!-- END text for Colors.bas-->

<!-- BEGIN text for VBP_DIBHandler.bas -->

Expand All @@ -201,7 +201,7 @@

<!-- END text for Drawing2D.bas-->

<!-- BEGIN text for VBP_ExifToolInterface.bas -->
<!-- BEGIN text for Plugin_ExifTool.bas -->

<phrase>
<original>ExifTool could not be started. Metadata unavailable for this session.</original>
Expand Down Expand Up @@ -263,9 +263,9 @@
<translation>Plugin-Dienst konnte nicht gestartet werden (konnte den Prozess %1 nicht erzeugen).</translation>
</phrase>

<!-- VBP_ExifToolInterface.bas contains 15 phrases. 3 were duplicates of existing phrases, so only 12 new phrases were written to file. -->
<!-- Plugin_ExifTool.bas contains 15 phrases. 3 were duplicates of existing phrases, so only 12 new phrases were written to file. -->

<!-- END text for VBP_ExifToolInterface.bas-->
<!-- END text for Plugin_ExifTool.bas-->

<!-- BEGIN text for VBP_FastDrawing.bas -->

Expand Down Expand Up @@ -735,7 +735,13 @@ Sie können das Unterprogramm MenuTest () im Modul Filters_Miscellaneous verwend

<!-- END text for VBP_FontManagement.bas-->

<!-- BEGIN text for VBP_GDIPlus.bas -->
<!-- BEGIN text for GDI.bas -->

<!-- GDI.bas contains 0 phrases. -->

<!-- END text for GDI.bas-->

<!-- BEGIN text for GDIPlus.bas -->

<phrase>
<original>GDI+ failed to render blur effect (Error Code %1).</original>
Expand Down Expand Up @@ -777,15 +783,15 @@ Sie können das Unterprogramm MenuTest () im Modul Filters_Miscellaneous verwend
<translation>Speichern abgeschlossen.</translation>
</phrase>

<!-- VBP_GDIPlus.bas contains 8 phrases. All 8 were unique, so 8 new phrases were written to file. -->
<!-- GDIPlus.bas contains 8 phrases. All 8 were unique, so 8 new phrases were written to file. -->

<!-- END text for VBP_GDIPlus.bas-->
<!-- END text for GDIPlus.bas-->

<!-- BEGIN text for Histogram_Analysis.bas -->
<!-- BEGIN text for Histograms.bas -->

<!-- Histogram_Analysis.bas contains 0 phrases. -->
<!-- Histograms.bas contains 0 phrases. -->

<!-- END text for Histogram_Analysis.bas-->
<!-- END text for Histograms.bas-->

<!-- BEGIN text for VBP_MenuIcons.bas -->

Expand Down Expand Up @@ -1367,7 +1373,7 @@ Please verify that these image(s) exist, and that they use a supported image for

<!-- END text for VBP_LoadModule.bas-->

<!-- BEGIN text for VBP_BatchConversion.bas -->
<!-- BEGIN text for BatchProcessor.bas -->

<phrase>
<original>This macro does not contain any recordable actions. Are you sure you want to stop recording?
Expand Down Expand Up @@ -1478,9 +1484,9 @@ In Version 6.0 wurden das Format der PhotoDemon-Makrodateien überarbeitet, um n
<translation>Makrodaten verarbeiten</translation>
</phrase>

<!-- VBP_BatchConversion.bas contains 27 phrases. 8 were duplicates of existing phrases, so only 19 new phrases were written to file. -->
<!-- BatchProcessor.bas contains 27 phrases. 8 were duplicates of existing phrases, so only 19 new phrases were written to file. -->

<!-- END text for VBP_BatchConversion.bas-->
<!-- END text for BatchProcessor.bas-->

<!-- BEGIN text for VBP_MiscMath.bas -->

Expand All @@ -1494,11 +1500,11 @@ In Version 6.0 wurden das Format der PhotoDemon-Makrodateien überarbeitet, um n

<!-- END text for VBP_Win7_Specific_Features.bas-->

<!-- BEGIN text for VBP_OutsideDevelopment_FreeImageV3.bas -->
<!-- BEGIN text for FreeImageWrapper.bas -->

<!-- VBP_OutsideDevelopment_FreeImageV3.bas contains 0 phrases. -->
<!-- FreeImageWrapper.bas contains 0 phrases. -->

<!-- END text for VBP_OutsideDevelopment_FreeImageV3.bas-->
<!-- END text for FreeImageWrapper.bas-->

<!-- BEGIN text for Plugin_Management.bas -->

Expand Down Expand Up @@ -1536,7 +1542,7 @@ In Version 6.0 wurden das Format der PhotoDemon-Makrodateien überarbeitet, um n

<!-- END text for Plugin_Management.bas-->

<!-- BEGIN text for VBP_ScannerInterface.bas -->
<!-- BEGIN text for Plugin_EZTwain.bas -->

<phrase>
<original>Scanner successfully enabled</original>
Expand Down Expand Up @@ -1636,11 +1642,11 @@ Um mit dem Scanner arbeiten zu können, kopieren Sie bitte die Datei EZTW32.dll
<translation>Scan abgebrochen</translation>
</phrase>

<!-- VBP_ScannerInterface.bas contains 32 phrases. 14 were duplicates of existing phrases, so only 18 new phrases were written to file. -->
<!-- Plugin_EZTwain.bas contains 32 phrases. 14 were duplicates of existing phrases, so only 18 new phrases were written to file. -->

<!-- END text for VBP_ScannerInterface.bas-->
<!-- END text for Plugin_EZTwain.bas-->

<!-- BEGIN text for VBP_FreeImage_Expanded.bas -->
<!-- BEGIN text for Plugin_FreeImage.bas -->

<phrase>
<original>Import via FreeImage failed (Err # %1)</original>
Expand All @@ -1652,9 +1658,9 @@ Um mit dem Scanner arbeiten zu können, kopieren Sie bitte die Datei EZTW32.dll
<translation></translation>
</phrase>

<!-- VBP_FreeImage_Expanded.bas contains 2 phrases. Both phrases were unique, so 2 new phrases were written to file. -->
<!-- Plugin_FreeImage.bas contains 2 phrases. Both phrases were unique, so 2 new phrases were written to file. -->

<!-- END text for VBP_FreeImage_Expanded.bas-->
<!-- END text for Plugin_FreeImage.bas-->

<!-- BEGIN text for Plugin_OptiPNG.bas -->

Expand All @@ -1672,7 +1678,7 @@ Um mit dem Scanner arbeiten zu können, kopieren Sie bitte die Datei EZTW32.dll

<!-- END text for Plugin_OptiPNG.bas-->

<!-- BEGIN text for VBP_pngnqInterface.bas -->
<!-- BEGIN text for Plugin_PNGQuant.bas -->

<phrase>
<original>Using pngquant to optimize the PNG file. This may take a moment</original>
Expand All @@ -1689,15 +1695,15 @@ Um mit dem Scanner arbeiten zu können, kopieren Sie bitte die Datei EZTW32.dll
<translation></translation>
</phrase>

<!-- VBP_pngnqInterface.bas contains 4 phrases. One was a duplicate of an existing phrase, so only 3 new phrases were written to file. -->
<!-- Plugin_PNGQuant.bas contains 4 phrases. One was a duplicate of an existing phrase, so only 3 new phrases were written to file. -->

<!-- END text for VBP_pngnqInterface.bas-->
<!-- END text for Plugin_PNGQuant.bas-->

<!-- BEGIN text for VBP_CompressionUtility.bas -->
<!-- BEGIN text for Plugin_ZLib.bas -->

<!-- VBP_CompressionUtility.bas contains 0 phrases. -->
<!-- Plugin_ZLib.bas contains 0 phrases. -->

<!-- END text for VBP_CompressionUtility.bas-->
<!-- END text for Plugin_ZLib.bas-->

<!-- BEGIN text for VBP_PrinterSupport.bas -->

Expand All @@ -1715,7 +1721,7 @@ Um mit dem Scanner arbeiten zu können, kopieren Sie bitte die Datei EZTW32.dll

<!-- END text for VBP_PrinterSupport.bas-->

<!-- BEGIN text for VBP_ProcessorModule.bas -->
<!-- BEGIN text for Processor.bas -->

<phrase>
<original>Remove selection</original>
Expand Down Expand Up @@ -2035,9 +2041,9 @@ Wenn Sie fertig sind, klicken Sie bitte auf "Senden". Danke!</translation>
<translation>Farbton</translation>
</phrase>

<!-- VBP_ProcessorModule.bas contains 91 phrases. 37 were duplicates of existing phrases, so only 54 new phrases were written to file. -->
<!-- Processor.bas contains 91 phrases. 37 were duplicates of existing phrases, so only 54 new phrases were written to file. -->

<!-- END text for VBP_ProcessorModule.bas-->
<!-- END text for Processor.bas-->

<!-- BEGIN text for VBP_MiscProgBar.bas -->

Expand Down Expand Up @@ -2289,7 +2295,7 @@ Versuchen Sie bitte vorläufig, das Bild in einem anderen Format zu speichern. S

<!-- END text for VBP_SelectionHandler.bas-->

<!-- BEGIN text for VBP_SoftwareUpdater.bas -->
<!-- BEGIN text for UpdateEngine.bas -->

<phrase>
<original>Update check postponed (a check has been performed recently)</original>
Expand All @@ -2316,9 +2322,9 @@ Versuchen Sie bitte vorläufig, das Bild in einem anderen Format zu speichern. S
<translation>Beta</translation>
</phrase>

<!-- VBP_SoftwareUpdater.bas contains 9 phrases. 4 were duplicates of existing phrases, so only 5 new phrases were written to file. -->
<!-- UpdateEngine.bas contains 9 phrases. 4 were duplicates of existing phrases, so only 5 new phrases were written to file. -->

<!-- END text for VBP_SoftwareUpdater.bas-->
<!-- END text for UpdateEngine.bas-->

<!-- BEGIN text for VBP_MiscValidation.bas -->

Expand Down Expand Up @@ -2372,11 +2378,11 @@ Bitte geben Sie einen Zahlwert ein.</translation>

<!-- END text for VBP_ToolSupport.bas-->

<!-- BEGIN text for VBP_UniscribeInterface.bas -->
<!-- BEGIN text for Uniscribe.bas -->

<!-- VBP_UniscribeInterface.bas contains 0 phrases. -->
<!-- Uniscribe.bas contains 0 phrases. -->

<!-- END text for VBP_UniscribeInterface.bas-->
<!-- END text for Uniscribe.bas-->

<!-- BEGIN text for VBP_UnitConversions.bas -->

Expand All @@ -2396,7 +2402,7 @@ Bitte geben Sie einen Zahlwert ein.</translation>

<!-- END text for VB_Hacks.bas-->

<!-- BEGIN text for VBP_ZoomModule.bas -->
<!-- BEGIN text for ViewportEngine.bas -->

<phrase>
<original>WARNING! GDI+ could not be found. (PhotoDemon requires GDI+ for proper program operation.)</original>
Expand All @@ -2423,9 +2429,9 @@ Bitte geben Sie einen Zahlwert ein.</translation>
<translation>Anzeige des Bildfensters angehalten wegen eines unerwarteten Fehlers (Nr. %1)</translation>
</phrase>

<!-- VBP_ZoomModule.bas contains 5 phrases. All 5 were unique, so 5 new phrases were written to file. -->
<!-- ViewportEngine.bas contains 5 phrases. All 5 were unique, so 5 new phrases were written to file. -->

<!-- END text for VBP_ZoomModule.bas-->
<!-- END text for ViewportEngine.bas-->

<!-- BEGIN text for cFileDialogVista.cls -->

Expand Down

0 comments on commit d6071cd

Please sign in to comment.