-
-
Notifications
You must be signed in to change notification settings - Fork 4
/
changelog.txt
371 lines (313 loc) · 15.7 KB
/
changelog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
Legend:
! Breaking change
* Compatible change
- Bugfix
+ New feature
===============================================================================
~~~~~~~~~
* v4.0.0:
~~~~~~~~~
* KGySoft.Drawing.ImagingTools.exe
==================================
- Zooming keeps the center of the currently visible rectangle
* Pixel Format/Quantizing/Dithering:
+ Improved configuration of parameters
+ New localizable tool tips for every parameter
- Fixing quantizing CMYK images when no new pixel format is selected
* Resizing: Improved validation
+ API changes:
+ KGySoft.Drawing.ImagingTools.Model namespace:
+ CustomBitmapInfo class: New CustomPalette property
+ CustomPaletteInfo class: New EntryType property
+ CustomColorInfo class: New CustomColorComponents property
+ KGySoft.Drawing.DebuggerVisualizers.dll
=========================================
+ API changes:
+ KGySoft.Drawing.DebuggerVisualizers.Serialization namespace:
+ New CustomColorSerializationInfo class for serializing custom colors
+ New CustomPaletteSerializationInfo class for serializing custom palettes
* KGySoft.Drawing.DebuggerVisualizers.Wpf.dll
=============================================
* Better support of ScRGB and color profile-based colors.
+ KGySoft.Drawing.DebuggerVisualizers.SkiaSharp.dll
===================================================
+ New visualizer for SKPMColor type
+ New visualizer for SKColorF type
+ KGySoft.Drawing.DebuggerVisualizers.Core.dll
==============================================
+ A new debugger visualizer assembly to support KGySoft.Drawing.Core types.
* KGySoft.Drawing.DebuggerVisualizers.Package.dll
=================================================
* Whenever possible (VS2015 and later) using info bars instead of message dialogs.
* KGySoft.Drawing.DebuggerVisualizers.Package.x64.dll
=====================================================
* Using info bars instead of message dialogs.
~~~~~~~~~
+ v3.1.0:
~~~~~~~~~
+ KGySoft.Drawing.DebuggerVisualizers.SkiaSharp.dll
===================================================
+ A new debugger visualizer assembly to support SkiaSharp types.
~~~~~~~~~
! v3.0.0:
~~~~~~~~~
* KGySoft.Drawing.ImagingTools.exe
==================================
- Adjust Gamma: Adjusting the slider with the mouse not always worked.
- Supporting CMYK images
- Fixing language initialization from custom location
+ API changes:
+ KGySoft.Drawing.ImagingTools.Model namespace:
+ New CustomBitmapInfo class
+ New CustomColorInfo class
+ New CustomPaletteInfo class
+ KGySoft.Drawing.ImagingTools.ViewModel namespace:
+ ViewModelFactory class:
+ New FromPalette overload
+ New FromCustomBitmap method
+ New FromCustomColor method
+ New FromCustomPalette method
! KGySoft.Drawing.DebuggerVisualizers.dll
=========================================
! The actual debugger visualizers have been extracted into a new assembly.
+ API changes:
+ New KGySoft.Drawing.DebuggerVisualizers.Serialization namespace
+ New CustomBitmapSerializationInfoBase class for serializing custom bitmaps
+ DebuggerHelper class:
+ New DebugCustomBitmap method
+ New DebugCustomColor method
+ New DebugCustomPalette method
* KGySoft.Drawing.DebuggerVisualizers.GdiPlus.dll
=================================================
+ A new assembly. The original debugger visualizers of KGySoft.Drawing.DebuggerVisualizers have been
extracted into this assembly to support GDI+ (System.Drawing) types.
- Supporting CMYK images
+ KGySoft.Drawing.DebuggerVisualizers.Wpf.dll
=============================================
+ A new debugger visualizer assembly to support WPF types.
~~~~~~~~~
* v2.6.0:
~~~~~~~~~
* KGySoft.Drawing.ImagingTools.exe
==================================
+ Supporting saving animated GIF images even if frames have been changed. Saving icons or TIFF files as GIF while
the compound mode is checked also saves an animated GIF file with 1 second delay for each frames.
- Opening a .bdat file in Bitmap visualizer mode triggered the "Metafile has been converted to Bitmap..." message.
- Could not open an animated GIF in Mono/Linux. Still existing known issue: libgdiplus decodes delta frames and
different frame sizes incorrectly. This could only be solved by a custom decoder.
+ API changes:
+ ImageInfo class: New constructor overloads to be able to prevent cloning each frames.
- KGySoft.Drawing.DebuggerVisualizers.dll
=========================================
- Debugging a Graphics instance did not always work from a .NET [Core] project.
- Fixing possible AcessViolationException when replacing a small debugged image to a huge one and debugging the
replaced huge image again. In such case the Visual Studio debugger may dispose large objects even in the middle
of a serialization session to prevent running out of memory. It also rendered the debugged object invalid.
- When serializing, not cloning each frame of multi-page images to prevent the Visual Studio debugger from disposing
the debugged image.
- Fixing possible OutOfMemoryException from the debugger domain when a large debugged image has been replaced to
a modified but unsaved image, in which case huge memory streams were transferred between application domains.
From now on the debugger visualizer uses temp files if its domain has write access to the system TEMP folder.
~~~~~~~~~
* v2.5.0:
~~~~~~~~~
* KGySoft.Drawing.ImagingTools.exe
==================================
* Language Settings
+ An absolute path can be set for the resources.
- .NET 5 build: Opening URLs from the help menu didn't work due to a breaking change introduced in .NET Core 3.1.
* API changes:
* ViewModelFactory class: CreateEditResources has an optional hasPendingChanges parameter that allows applying
changes without any editing.
+ KGySoft.Drawing.DebuggerVisualizers.Package.x64.dll
=====================================================
+ This is a new installer for the 64-bit Visual Studio 2022
~~~~~~~~~
* v2.4.0:
~~~~~~~~~
* KGySoft.Drawing.ImagingTools.exe
==================================
+ Targeting also .NET 5.0
+ Now panning a zoomed image is possible also by clicking and dragging with the mouse (besides usual scrolling).
+ Zooming is now possible also with keyboard shortcuts, the Auto Zoom button has now a drop-down part for the
additional options.
+ Supporting localization from .resx files with editing, downloading and applying changes on-the-fly.
Note: Right-to-left languages are also supported though with some limitations, especially under Mono.
On Windows some validation tool tips are not aligned right but otherwise the layout is arranged correctly.
* Image visualizer form:
+ OK/Cancel buttons in debug mode when image is editable
- Fixing several tool strip appearance issues, including high DPI and high contrast modes
* Palette visualizer form:
+ OK/Cancel buttons when palette is editable
- Fixing the alpha pattern on Mono
+ Color visualizer form: OK/Cancel buttons then the color is editable
* Manual zooming is enabled even if Auto Zoom is on; this turns off Auto Zoom automatically.
* ImageViewer control:
* Turning on/off smoothing of zoomed images affects also shrunk images (previously affected enlarged images only).
* Improving performance of some image formats.
- Fixing scaling of menu item images under Linux/Mono when using high DPI
- Color Count: Result was not always shown (and progress bar was not removed) if the operation ended very quickly.
- Resize:
- Preventing that invalid sizes replace current text to 0
- Changing error provider associated controls so the layout is not messed up on Linux
- Manage Installations:
- Remove was always enabled even it there was no installed version
- Fixing possible errors when closing forms while an async operation is still in progress.
* API changes:
* Members are annotated for using C# 8.0 nullable references
+ InstallationManager class:
+ New ImagingToolsVersion property
+ ViewModelFactory class:
+ New CreateLanguageSettings method
+ New CreateEditResources method
+ New CreateDownloadResources method
+ IViewModel interface
+ New IsModified property
* IViewModel<TModel> interface
* The IsModified property is now inherited from IViewModel
+ IView interface:
+ New ShowDialog(IView) overload
+ ViewFactory class:
+ New ShowDialog(IViewModel, IView) overload
+ New LocalizableLibraries enum
+ New LocalizationInfo class
- KGySoft.Drawing.DebuggerVisualizers.dll
=========================================
- Fixing a possible IndexOutOfRangeException when debugging an animated GIF.
- Fixing possible incorrect initially displayed size info when debugging a multi-resolution icon or bitmap.
* Improved performance and reduced memory consumption when serializing and deserializing debugged objects.
* KGySoft.Drawing.DebuggerVisualizers.Package.dll
=================================================
* ImagingTools and Manage Installations executed from the Visual Studio Tools menu are executed on a new thread
so the possible lagging of Visual Studio does not affect the performance anymore.
~~~~~~~~~
+ v2.3.0:
~~~~~~~~~
+ KGySoft.Drawing.ImagingTools.exe
==================================
+ Key shortcuts for several commands
+ Improving the image viewer control performance for large images
+ Save/Load: Supporting saving/loading raw bitmap data, which preserves any pixel format
+ Color Settings:
+ Count Colors
+ New Edit Image drop down button
+ Rotate Left/Right
+ Resize Bitmap
+ Pixel Format/Quantizing/Dithering
+ Adjust Brightness/Contrast/Gamma
+ Tool strip items can be clicked even if the container form is not activated
+ API changes:
+ ViewModelFactory class:
+ New CreateResizeBitmap method
+ New CreateAdjustColorSpace method
+ New CreateCountColors method
+ New CreateAdjustBrightness method
+ New CreateAdjustContrast method
+ New CreateAdjustGamma method
~~~~~~~~~
* v2.2.1:
~~~~~~~~~
* KGySoft.Drawing.ImagingTools.exe
==================================
- Tolerating if uncompressed icon stream does not have a transparency mask.
* InstallationManager class:
* To avoid confusion the Install method installs the .NET Core support only for the .NET 4.5 build. This is
considered as a compatible change as .NET Core support didn't work for other builds anyway so only the error
message will be different (and more reasonable) if we try to debug a Core project with the wrong installation.
~~~~~~~~~
* v2.2.0:
~~~~~~~~~
+ KGySoft.Drawing.ImagingTools.exe
==================================
+ Targeting also .NET Core 3.0
- The Framework builds now support Mono (tested on Ubuntu Linux)
+ The image preview now can be zoomed and scrolled freely when Auto Zoom is turned off.
To zoom use the Ctrl + Mouse Wheel or the pinch zooming gesture on the touchpad.
For scrolling vertical and horizontal mouse wheels and the touchpad scrolling gestures are completely supported.
+ New Smooth Zooming toggle button:
For bitmaps and icons toggles pixelated/smoothed appearance when the image is enlarged.
For metafiles toggles anti-aliasing on any size. Can be ignored on low memory when zooming is too large
+ API changes:
+ InstallationInfo class: New TargetFramework property (not used in the .NET Framework 3.5 version)
- KGySoft.Drawing.DebuggerVisualizers.dll
=========================================
- Changing ColorPalette serialization so now it works also when debugging .NET Core projects.
- KGySoft.Drawing.DebuggerVisualizers.Test.exe
==============================================
- Fixing issues on Mono/Linux
~~~~~~~~~
! v2.1.0:
~~~~~~~~~
! KGySoft.Drawing.ImagingTools.exe
==================================
+ API changes: New public types to be able to debug several types by referencing the KGySoft.Drawing.ImagingTools
assembly:
+ New public types in KGySoft.Drawing.ImagingTools namespace:
+ InstallationManager class
+ New public types in KGySoft.Drawing.ImagingTools.Model namespace:
+ ImageInfoBase class
+ ImageInfo class
+ ImageFrameInfo class
+ BitmapDataInfo class
+ GraphicsInfo class
+ InstallationInfo class
+ ImageInfoType enum
+ New public types in KGySoft.Drawing.ImagingTools.ViewModel namespace:
+ IViewModel interface
+ IViewModel<TModel> interface
+ ViewModelFactory class
+ New public types in KGySoft.Drawing.ImagingTools.View namespace:
+ IView interface
+ ViewFactory class
! Functional changes:
! When Icon type is being debugged and a non-icon image is opened, then the image will be converted to icon
without changing the size (allowing any icon size).
! When an icon is debugged as an image, the raw format of its images is always displayed as Icon. Though when
an icon is opened from file or is debugged as icon, Bmp/Png format is displayed for non-compound view.
! When debugging a Graphics instance not showing all those properties anymore, which are obvious also from the
regular debug window.
! Improving quality, when image is saved in a format that does not support current pixel format. Though this is
is an improvement the result might not be incompatible with earlier results.
! Installation Manager: When there are multiple detected VisualStudio versions the newest one is selected by
default instead of the oldest one.
+ Supporting all possible PixelFormats
+ Always allowing to save in Icon format
+ Saving as TIFF allows to save a multi-page image even for animations and icons if compound view is selected.
+ Installation Manager: The installer now supports .NET Core 2.1+ projects
- If an indexed bitmap was debugged, then changing a transparent palette entry did not always work properly.
+ KGySoft.Drawing.DebuggerVisualizers.dll
=========================================
+ The DebuggerHelper class have been made public, which provides public access for some debugger visualizers.
- Serialization of a Metafile with WMF format failed in some cases.
- Debugging Bitmaps of rare PixelFormats failed, now all possible formats are supported.
+ KGySoft.Drawing.DebuggerVisualizers.Test.exe
==============================================
+ Providing tests for all possible PixelFormats (applies Bitmap, BitmapData, Graphics, Palette)
+ Bitmap/Metafile/Icon types can be debugged as Image or as their self type (affects replacing while debugging)
+ Also BitmapData and Graphics can be opened directly
- If an image was debugged directly, then after replacing the image and closing the debugger the tester was crashed.
- A Metafile with WMF format was not be able to be opened by the debugger
~~~~~~~~~
! v2.0.0:
~~~~~~~~~
! Assembly names:
=================
! Instead of many separate KGySoft.DebuggerVisualizers.VS<version>.dll files from now on there is one
KGySoft.Drawing.DebuggerVisualizers.dll for each .NET frameworks.
! KGySoft.DebuggerVisualizers.Common.dll has been renamed to KGySoft.Drawing.ImagingTools.exe, which
is an executable file now.
! KGySoft.Drawing.ImagingTools.exe
==================================
! As an executable file, it can be launched as a standalone application.
! In Windows XP icons will be converted to uncompressed ones.
+ New "Manage debugger visualizer installations" menu (gear icon) for installing the debugger
visualizer to any Visual Studio version (requires the KGySoft.Drawing.DebuggerVisualizers.dll)
+ Supporting high-resolution icons in Windows XP.
+ Multi page TIFF images can be saved all together and also separately.
+ High DPI displays are supported
+ KGySoft.Drawing.DebuggerVisualizers.dll
=========================================
+ Compatible with all Visual Studio versions starting with Visual Studio 2008 (tested with versions from 2008 to 2019).
+ KGySoft.Drawing.DebuggerVisualizers.Package.dll
=================================================
+ Installer for the visualizer as a VSIX Package (only for .NET 4.5, requires at least Visual Studio 2013)