forked from imagej/ImageJA
-
Notifications
You must be signed in to change notification settings - Fork 1
/
release-notes.html
2204 lines (2169 loc) · 116 KB
/
release-notes.html
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
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<html>
<head>
<link rel="stylesheet" href="../docs/ij.css" type="text/css"/>
<title>Release Notes</title>
</head>
<body>
<li> <li> <u>1.53m 27 September 2021</u>
<ul>
<li> Thanks to Zoltan Kis, the <i>File>Import>Image Sequence</i>
dialog now displays the number of images that will be opened.
<li> Thanks to Norbert Vischer, exceptions on the Event Dispatch Thread
are now reported in the Log window.
<li> Thanks to Remi Berthoz, the <i>Analyze>Tools>Scale Bar</i>
command now has the ability to draw both vertical and/or
horizontal scale bars.
<li> Thanks to Stein Rorvik, added a "Colors..." command to the
Color Picker dropdown menu and made most of the commands in
that menu recordable.
<li> Thanks to Esteban Fernandez, added a "Fill color:"
field to the <i>Image>Stacks>Images to Stack</i>
dialog box.
<li> Thanks to Barry DeZonia, the findMinAndMax() methods
in the Short/Int/Float processors are now faster
(<i>Plugins>Utilities>Benchmark</i>
runs 3% faster).
<li> Thanks to Michael Schmid, added support for
drag and drop to JFileChooser dialogs.
<li> Thanks to Nicolas De Francesco, updated the
<i>Edit>Selection>Fit Rectangle</i> command so that
it produces more predictable results.
<li> Thanks to Philippe Carl, <i>File>Import>Image Sequence</i>
no longer limits the number of files that can be
imported to 40 when "Open as separate images"
is enabled.
<li> Thanks to Fred Damen, improved recording of the
ROI Manager's "Open..." and "Save..." commands, and
made the open(path) and save(path) methods public.
<li> Thanks to Michael Schmid, the
<i>File>Import>Image Sequence</i> command no
longer creates excessive image IDs.
<li> Thanks to Michael Schmid, added the FolderOpener.openProcessor()
method, used by the FileInfoVirtualStack class.
<li> Thanks to Norbert Vischer, fixed a bug that caused the
<i>Process>Filters>Convolve</i> command to sometimes not
be correctly recorded.
<li> Thanks to Fred Damen, fixed a bug that caused a null pointer
exception when the <i>File>Import>Results</i> dialog
was canceled.
<li> Thanks to Ved Sharma, fixed a bug that caused an invalid
macro error when assigning a string value returned by a user
defined function to an array element.
<li> Thanks to Fred Damen, fixed a bug that caused the RoiManager.save()
method to always return true.
<li> Thanks to Ved Sharma, fixed a bug that caused the
ROI Manager's "OR (Combine)" command to not work as
expected if the first ROI was composite.
<li> Thanks to Philippe Carl, fixed a bug that caused the
<i>File>Import>Image Sequence</i> command to not
work as expected when importing stacks and the
"Open as separate images" option was enabled.
<li> Thanks to Philippe Carl, fixed a bug that caused the
<i>Image>Overlay>Flatten</i> command to not work
with ROIs, or the ROI Manager in "Show All" mode, on
composite images.
<li> Thanks to Rodrigo Goncalves, fixed a bug that caused
the <i>File>Save As>Image Sequence</i> command to
display multiple error messages when the specified directory
did not exist.
<li> Thanks to Herbie Gluender, fixed a bug the caused the
exit(msg) macro function to fail when the argument was a
number or a call to a user-defined function.
<li> Thanks to Jerome Mutterer, fixed a typo in
OpenDialog.java that caused the GitHub version of ImageJ
to fail to compile.
<li> Thanks to Daniel Nebdal, fixed a bug that caused the
<i>Plugins>Macros>Edit</i> command to not open
".py" and ".bsh" files.
<li> Thanks to Remi Berthoz, fixed a bug that caused the
<i>Image>Type>RGB Stack</i> command to not work
correctly with RGB stacks that had multiple slices
and multiple frames.
<li> Thanks to Stein Rorvik, fixed a bug that caused
the Property.setSliceLabel() macro function to sometimes
not work as expected with single images.
<li> Thanks to Ved Sharma, fixed a regression that caused the
roiManager("Set Fill Color",color) macro function to fail when
used with a text selection.
<li> Thanks to 'natalia', fixed a 1.52p regression that caused
FITS images to open flipped vertically.
<li> Thanks to "J Xiong", fixed a regression that caused the
particle analyzer to not work the same as it did in ImageJ 1.52
with binary images that were not thresholded and the "Black background"
options was not set.
<li> Thanks to Hyung-song Nam, fixed a 1.53f regression that caused
menus to unexpectedly popup when using the "hand" tool to
scroll through images.
</ul>
<li> <u>1.53k 6 July 2021</u>
<ul>
<li> Thanks Mike Nelson, 16-bit images are
inverted using the full pixel value range (0-65535) or, if set,
using the "Unsigned 16-bit range" in the "Set" option of the
<i>Image>Adjust>Brightness/Contrast</i> dialog.
<li> Thanks to Alan Brooks, added the macOS-specific
MacAdapter9 plugin, which, on Java 9 or later,
supports drag and drop on the ImageJ.app and the
"About ImageJ" command.
<li> Thanks to Romain Guiet, the ROI Manager's
"Associate 'Show All' ROIs with slices" option is
now enabled by default.
<li> Thanks to Gilles Carpentier, the particle analyzer now assumes
the threshold is 255 unless "Black background" is not set,
the image does not have an inverted LUT and fewer than
half the pixels have a value of zero, in which case
the threshold is set to zero.
<li> Thanks to 'pdd2110', added the Property.setSliceLabel(label)
macro function.
<li> Thanks to 'John D.', added the GenericDialog.addButton() method
(<a href="http://wsr.imagej.net/plugins/Button_Example.java">example</a>).
<li> Thanks to 'Oodegard', fixed a bug that caused the
"Auto-next slice" option of the point tool to not
work as expected with hyperstacks.
<li> Thanks to Michael Schmid, fixed a bug that caused
NaN values in tables read from a file to be
strings instead of numbers.
<li> Thanks to Gabriel Landini and Michael Schmid, fixed a bug
that caused the "Top Hat" filter to fail when applying it to a
stack one slice at a time.
<li> Thanks to Laurent Thomas, fixed a bug that caused the
<i>Image>Stacks>Set Slice</i> command to not
work as expected with hyperstacks.
<li> Thanks to Laurent Thomas, fixed a bug that caused hyperstacks
to be displayed incorrectly if the Z or T sliders where
moved quickly and the images were slow to load.
<li> Thanks to Michael Schmid, fixed a bug that sometimes caused
the WindowManager.getIDList() method to throw an exception.
</ul>
<li> <u>1.53j 13 May 2021</u>
<ul>
<li> Thanks to 'VolkerH', the table created by
<i>Image>Overlay>List Elements</i> now
displays row numbers and arrow selection 'X' and 'Y'
values are the coordinates of the arrow tip.
<li> Thanks to Stein Rorvik, added the Color.setForegroundValue()
and Color.setBackgroundValue() macro functions and the
Toolbar.setForegroundValue(), Toolbar.setBackgroundValue(),
ImageProcessor.setGlobalForegroundColor() and
ImageProcessor.setGlobalBackgroundColor() methods.
<li> Thanks to Norbert Vischer, added the IJ.checksum() macro
function, which returns the MD5 (or SHA-256) checksum from
a string or file
(<a href="http://wsr.imagej.net/macros/ChecksumTest.txt">example</a>).
<li> Thanks to Michael Schmid, added the
Fit.doWeightedFit(equation,x,y,weights[,initialGuesses])
macro function.
<li> Thanks to Norbert Vischer, added the Plot.removeNaNs macro function.
<li> Thanks to Laurent Thomas, added support for scrollbars in
GenericDialog TextAreas.
<li> Thanks to Fred Damen, added the Zoom.in(imp), Zoom.out(imp),
Zoom.unzoom(imp) and Zoom.maximize(imp) methods.
<li> Thanks to John Dunsmuir, added the PointRoi.addPoint(x,y,position) method.
<li> Thanks to Fred Damen, fixed bugs that caused programmatic image
window zooming to not work reliably
(<a href="http://wsr.imagej.net/macros/js/ZoomTest.js">example</a>).
<li> Thanks to Michael Schmid, fixed a bug with HTMLDialogs that
caused the initial scroll position to be at the end when displaying
more text than what fits in the window.
<li> Thanks to 'Sethur', fixed bugs that caused DICOM
files using newer VRs (from 2014 and later), such as
UC and UR, to fail.
<li> Thanks to Bruno Vellutini, fixed a bug that caused images rotated
interactively using the "Enlarge image" and "Preview" options to not
have the grid lines removed after the rotation.
<li> Thanks to Jerome Mutterer, fixed a bug that caused the
Prefs.savePreferences() method to throw a null pointer
exception if the "ImageJ" window was not open.
<li> Thanks to Stein Rorvik, fixed a bug that caused the slice
label to be incorrect after importing an image sequence and
"Start" was greater than 1 and "Count" was 1.
<li> Thanks to Stein Rorvik, fixed a bug that caused
the <i>Images to Stack</i> command to ignore slice labels
when the "Use titles as labels" option was not enabled.
<li> Thanks to 'ghf', worked around a Fiji bug that caused the
<i>File>Import>Image Sequence</i> command to fail
if the folder contained a ".h5" file.
<li> Thanks to Jerome Mutterer, fixed bugs that caused the
Stack.setDisplayMode(), Stack.setSlice(), Stack.setFrame()
and Stack.setPosition() macro functions to not work as expected
in batch mode, and the ImagePlus.setDisplayMode(),
ImagePlus.setZ(), ImagePlus.setSetT() and
ImagePlus.setPosition() methods to not work as expected when
the image was not displayed.
<li> Thanks to Nicolas Montes, fixed a bug that caused the
particle analyzer to throw an exception when both the
"Composite ROIs" and "Show: Outlines" options where used.
<li> Thanks to Christian Kremser, fixed a 1.53i regression
that caused macro statements like "n=Dialog.getNumber()+1"
to generate and error.
<li> Thanks to Christian Tischer, fixed a regression that
caused the ROI Manager to not set the hyperstack position
of ROIs without a c,z,t position.
</ul>
<li> <u>1.53i 24 March 2021</u>
<ul>
<li> Thanks to Jerome Mutterer, added the
"Apply LUTs" checkbox to the command finder
(<i>Plugins>Utilities>Find Commands</i>).
<li> Thanks to Norbert Vischer, the current line number,
or selection range, in Editor, Table or Log windows,
is displayed in the status bar. The total number of lines is
displayed after <i>Select All</i>.
<li> Thanks to Norbert Vischer, ImageJ now corrects the orientation of
phone camera photos. Does not work on Fiji because it is
missing Exif_Reader.jar.
<li> Improved the Plugins>Utilities>Benchmark command. It now
suppresses subordinate status bar messages and displays
subordinate progress bars as dots.
<li> Thanks to Peter Haub, the particle analyzer displays
"ParticleAnalyzer: threshold has not set; assumed to be min-max"
in the Log window if it was not called from a macro and a
threshold was not set.
<li> Thanks to Laurent Thomas, <i>File>Save As>Image Sequence</i>,
when "Use slice labels as names" is enabled, now supports file names as
long as 111 characters, excluding the extension.
<li> Thanks to Michael Schmid, ImageJ displays "horizontal" in the
image info line of column average plots and "vertical" with
row average plots.
<li> Thanks to Jerome Mutterer, added the showStatus(message,options)
macro function and the IJ.showStatus(message,options) method
(<a href="http://wsr.imagej.net/macros/FlashingStatusMessages.txt">example</a>).
<li> Added the Overlay.update(index) macro function.
<li> Added the ImagePlus.setBorderColor() method,
used by <i>Image>Color>Split Channels</i> to
colorize image borders.
<li> Thanks to Laurent Thomas, added the ImageStack.getShortStackLabel(n,max),
Zoom.toSelection(imp), Zoom.set(imp,mag) and Zoom.set(imp,mag,x,y)
methods.
<li> Thanks to Herbie Gluender, fixed a bug that caused the status bar
to stop being updated after activating an overlay selection.
<li> Thanks to Fred Damen, fixed a bug with one slice stacks that caused the
slice label to not be displayed on the image info line or in the
<i>Image>Show Info</i> window.
<li> Thanks to Antoneta, fixed a bug with the <i>Flatten</i> command that caused
multi-point selections on stacks to lose counter information.
<li> Thanks to Herbie Gluender, fixed a bug that caused unexpected overlay
entries after running the particle analyzer with the "Add to manager" option
in a batch mode macro.
<li> Thanks to Norbert Vischer, fixed a bug that caused string functions
added in ImageJ 1.52t (s.contains(), s.endsWith(), s.indexOf(), s.lastIndexOf(),
s.lengths.startsWith()) to return a string instead of a number when used
in an assignment statement.
<li> Thanks to Robert Haase, fixed a bug with the roiManager("select",index)
macro function that caused it to sometimes restore ROIs at the
wrong position.
<li> Thanks to Laurent Thomas, fixed a bug that caused the
ContrastEnhancer.stretchHistogram() methoid to not work as
expected with stacks.
<li> Thanks to Michael Schmid, fixed a bug that caused
WaitForUserDialogs to not be scaled on high-resolution
screens.
<li> Thanks to Stein Rorvik, fixed a macro interpreter bug that caused
if statements using string functions to sometimes fail
(e.g., "if (getTitle.length>10) ...").
<li> Thanks to Norbert Vischer, fixed a bug that caused the
first column of tables copied to the clipboard to be missing
if the table did not have row numbers and the
"Copy row numbers" option in
<i>Edit>Options>Input/Output</i> was not enabled.
<li> Thanks to Shayna Sosnowik, fixed a 1.53g regression that caused
the "Properties..." command in the ROI Manager to not work as
expected when changing the stroke color.
<li> Thanks to Stein Rorvik, fixed a 1.53i regression that caused
the str.trim() macro function to sometimes fail.
</ul>
<li> <u>1.53h 04 February 2021</u>
<ul>
<li> Thanks to Laura Shankman, added the <i>Image>Overlay>Measure Overlay</i>
command.
<li> Thanks to Jerome Mutterer, added the <i>Help>Examples>Macro>Colors of 2021</i>
example, which runs more smoothly with ImageJ 1.53h20 or later, where ROIs are not
drawn in batch mode.
<li> Added the <i>Help>Examples>JavaScript>Dialog Demo</i> and
<i>Help>Examples>Macro>Save All Images</i> examples.
<li> Thanks to Christophe Leterrier, <i>Image>Type>RGB Color</i>
converts hyperstacks of HSB stacks to stacks of RGB images.
<li> Thanks to Alex Zwetsloot, line selections are no longer activated by double clicks
with the segmented and freehand line tools.
<li> Thanks to Norbert Vischer, added the Color.set(string), Color.set(number),
Color.foreground, Color.background, Color.setForeground(r,g,b),
Color.setBackground(r,b,g), Color.setForeground(string),Color.setBackground(string),
Color.toString(r,g,b), Color.toArray(color), Color.setLut(reds, greens, blues) and
Color.getLut(reds, greens, blues) macro functions.
<li> Thanks to Raniere Silva, added the Overlay.xor() macro function.
<li> Added the Overlay.fill() macro function.
<li> Thanks to Stein Rorvik, added the File.isFile() macro function.
<li> Thanks to Raniere Silva, added the getDir("cwd") ("current working directory")
macro function.
<li> Added the Roi.getFloatBounds() and Image.title macro functions.
<li> Thanks to Alan Brooks, added the Toolbar.setIcon() method
(<a href="http://wsr.imagej.net/macros/tools/ToggleIconTool.txt">example1</a>,
<a href="http://wsr.imagej.net/macros/tools/Animated_Icon_Tool.txt">example2</a>,
<a href="http://wsr.imagej.net/macros/tools/Googly_Eyes_Tool.txt">example3</a>,
<a href="http://wsr.imagej.net/macros/tools/Scrolling_Tool_Icons.txt">example4</a>.
<a href="http://wsr.imagej.net/macros/tools/Random_Color_Picker_Tool.txt">example5</a>).
<li> Added the Overlay.xor() and Roi.xor() methods.
<li> Thanks to Robert Kasumba, added the OverlayBrushTool.setWidth() method.
<li> Thanks to Laurent Thomas, added the getColumn(String), getColumnAsStrings(String)
and getActiveTable() methods to the ResultsTable class.
<li> Thanks to Dyuks, fixed a bug that caused the TIFF reader to sometimes throw
an exception when opening LZW-compressed 16-bit TIFFs.
<li> Thanks to Michael Schmid, fixed a bug that could cause the JpegWriter
to throw a NullPointerException if JAI ImageIO was installed.
<li> Thanks to Michael Cammer, fixed a bug that caused the selectWindow(title)
macro function to not work with minimized windows on Windows.
<li> Fixed a bug that caused all tools to stop working after attempting
to use the polygon, segmented line or angle tool on
<a href="https://ij.imjoy.io/">ImageJ.JS</a>.
<li> Thanks to Gabriel Landini, fixed a bug that caused the B&C tool
to sometimes perform an Undo operation on RGB images.
<li> Thanks to Raniere Silva and Jan Eglinger, fixed a bug that
caused an exception when saving the table created by
<i>Image>Overlay>List Elements</i> in .csv format.
<li> Thanks to Raniere Silva, fixed bugs that caused the open(path)
and roiManager(“Open”,path) macro functions, in macros run
from the command line, to not work as expected when ‘path’
was just a file name.
<li> Thanks to Michael Schmid, fixed bugs that caused the roi.getBounds()
method and getSelectionBounds() macro function to not work
as expected with polyline, point and straight line selections on
images zoomed more than 150%.
<li> Thanks to Christian Tischer, fixed a bug that caused the
<i>Image>Overlay>List Elements</i> command to incorrectly
report positions of time series overlays.
<li> Thanks to Laurent Thomas, fixed a bug that sometimes caused
GenericDialogs to not open URLs bound to "Help" buttons.
<li> Thanks to Jan Eglinger, fixed a bug that caused the selection
brush tool to behave inconsistantly when the brush width was odd
and the image was hightly magnified.
<li> Thanks to Christian Tischer, fixed a bug that caused overlay
calibration bars to be displayed incorrectly on images zoomed
less than 100%.
<li> Thanks to Norbert Vischer, fixed a bug that caused the
selectWindow("Results") macro function to sometimes not
work as expected.
<li> Fixed a 1.53h17 regression, caused by building ij.jar for Java 8,
that prevented Fiji from launching.
<li> Thanks to Dominik Schienstock, fixed a 1.52q regression that
caused some filters to throw exceptions in headless mode.
</ul>
<li> <u>1.53g 4 December 2020</u>
<ul>
<li> Thanks to Jerome Mutterer, added a "Run" button to Editor
windows when the file name ends with ".ijm", ".js", ".bsh" or ".py".
<li> The "Overlay Masks" option in the particle anayzer now
displays masks in colors taken from the Glasbey LUT.
<li> Thanks to J Xiong, added "Overlay" and "Composite ROIs"
checkboxes to the particle analyzer
(<a href="http://wsr.imagej.net/macros/MeasureWithOrWithoutHoles.ijm">example</a>).
<li> Thanks to Michael Doube, added an IntProcessor class that provides
support for signed 32-bit int images
(<a href="http://wsr.imagej.net/macros/js/CreateAndDisplayIntImage.js">example</a>).
<li> Thanks to Christian Tischer, the Recorder supports Python.
<li> Thanks to 'Eljonco', the "ExpandableArrays" macro option
is now enabled by default.
<l> Thanks to Peter Haub, added the String.pad(n,length)
macro function.
<li> Thanks to Wilhelm Burger, added the addEnumChoice() and
getNextEnumChoice() methods to the GenericDialog class
(<a href="http://wsr.imagej.net/plugins/GenericDialog_With_Enums.java">example</a>).
<li> Thanks to 'davidC', added the ij.gui.HistogramPlot class.
<li> Thanks to Stein Rorvik, added the ImageCanvas.setLongClickDelay()
and Toolbar.setLongClickDelay() methods.
<li> Thanks to 'Dr. Njitram', added the recordable
SubstackMaker.run(imp,rangeOrList) method.
<li> Thanks to Albert Cardona, modified the ImageJ.keyPressed() method
so that, if the KeyEvent is consumed, it returns immediately.
<li> Thanks to Wei Ouyang, replaced the "Duplicate..." command
in the default image contextual menu with "Duplicate Image",
which ignores any selection and duplicates the entire image.
<li> Thanks to Stein Rorvik, fixed a bug that sometimes caused images
to be incorrectly added to the <i>Window</i> menu.
<li> Thanks to Stein Rorvik, fixed a bug that caused the
<i>File>Show Folder>Image</i> command to not
work with stacks opened using
<i>File>Import>Image Sequence</i>.
<li> Thanks to 'muniak' and 'mountain_man', fixed a bug that
caused the Scaler.resize() method to return an image with
a calibration of Inf x Inf.
<li> Thanks to Stein Rorvik, fixed a bug that caused a list of 12 'w' letters
to appear after the Group entry in the ROI Properties dialog when it
was called from a macro.
<li> Thanks to 'davidC', fixed a bug that caused batch mode macros that
created hundreds of histograms to fail.
<li> Thanks to 'chrk139', fixed a bug that caused the drawOval() and fillOval()
macro functions to not work for images larger than 2^29 pixels.
<li> Thanks to Laurent Thomas, fixed a bug where changing
the group attribute from a group>0 to 0 in
the <i>ROI Manager>Properties</i> dialog did
not work as expected.
<li> Thanks to Gilles Vanwalleghem, fixed a bug that caused the
run(“Reduce Dimensionality…”) macro function to throw a
null pointer exception in Fiji headless mode.
<li> Thanks to Laurent Thomas and Hollandi Reka, fixed a bug
that caused the ROI group of saved composite selections
to not be restored.
<li> Thanks to Martin Hohne, fixed a bug that caused the getValue("X")
and getValue("Y") macro functions to not work as expected with
line selections.
<li> Thanks to J Xiong, fixed a v1.50 regression that caused the
particle analyzer to not work as expected when when using the
“Exclude on edges” option and a composite selection.
<li> Thanks to Fred Damen, fixed a 1.53c regression that caused
the GenericDialog.getFont() method to sometimes return null.
<li> Fixed a regression that caused the particle analyzer to
sometimes fail on MacOS.
</ul>
<li> <u>1.53f 25 October 2020</u>
<ul>
<li> Thanks to Wei Ouyang, tool bar and image popup menus are
triggered by long presses in addition to right clicks, needed
because right clicks are not normally possible when
<a href="https://ij.imjoy.io/">ImageJ.JS</a>
is running on Android and iOS devices.
<li> Thanks to Wei Ouyang, added a popup menu to the
magnifying glass tool icon.
<li> Added a popup menu triggered on a right click or
long press inside a selection.
<li> Updated the built in toolbar "Dev" menu.
<li> Thanks to Michael Schmid, the text in a text selection can
be edited in the <i>Edit>Selection>Properties</i>
dialog.
<li> Thanks to Stein Rorvik, the <i>File>Import>Image Sequence</i>
dialog is used when drag and dropping a folder on the
"ImageJ" window.
<li> Thanks to Michael Schmid and Thomas Fischer, <i>Undo</i> works with
overlays when translating and rotating images, and the "Overlay only"
checkbox is only shown in the <i>Translate</i> dialog when there
is an overlay.
<li> Thanks to Robert Haase, added the <i>Edit>Options>Fresh Start</i>
command, which closes all images, empties the ROI Manager, clears the
Results table and enables the "Black background" option.
<li> Thanks to Conner Phillips and Stein Rorvik, the <i>Reslice</i> command
is faster on Windows when re-slicing from "Left" or "Right" and it
uses an ordinary progress bar when run from a macro.
<li> Thanks to Stein Rorvik, added an "Open as separate images" checkbox
to the <i>File>Import>Image Sequence</i> dialog.
<li> Thanks to Stein Rorvik, added "Foreground..." and "Background..." entries
to the color picker tool popup menu.
<li> Thanks to 'MIKEIII' and Dmitry Fedorov, added the Image.width, Image.height,
Image.copy and Image.paste(x,y) macro functions
(<a href="http://wsr.imagej.net/macros/PasteDemo.txt">example</a>).
<li> Thanks to Stein Rorvik, added the Array.filter(arr,str),
Math.toRadians(degrees) and Math.toDegrees(radians) functions.
<li> Thanks to Nima Hojat, added the ResultsTable.addRow()
method. For an example, run
<i>Help>Examples>JavaScript>Sine/Cosine Table</i>.
<li> Thanks to Philippe Carl, fixed a bug that caused the
RoiManager.getSelectedIndexes() method to sometimes not
work as expected.
<li> Thanks to Christian Tischer, fixed a bug that slowed saving of
virtual stacks in TIFF format.
<li> Thanks to Thomas Fischer, fixed a bug that caused the
dynamic "Value" and "Count" values in HIstogram windows
to sometimes not be displayed correctly.
<li> Thanks to Gaurav Joshi, fixed a bug that caused the
Ctrl+F (<i>Edit>Fill</i>) keyboard shortcut on Windows, when
used on a stack, to not display the "Proces Stack?" dialog.
<li> Thanks to 'Quiroz-1', fixed a 1.53e regression that caused
the imageCaculator() macro function do somethimes not
work as expected.
<li> Thanks to Pradeep Rajasekhar and Jan Eglinger, fixed a 1.52
regression that caused the <i>Analyze Skeleton</i> plugin to output
incorrect Results tables.
<li> Thanks to 'tongtao', fixed a regression that caused the
<i>Edit>Copy to Image Info</i> command in the text
editor to fail.
<li> Thanks to Stein Rorvik, fixed a 1.53c regression in the AVI Reader
that caused it to throw a null pointer exception.
<li> Thanks to Eric Perlman, fixed a 1.52 regresion that caused the
IJ.getImage() method to sometimes display model error dialogs.
</ul>
<li> <u>1.53e 16 September 2020</u>
<ul>
<li> Thanks to Michael Schmid, the color picker tool has
a new icon and a right click drop down menu.
<li> The "Black background" option is no longer
saved in the preferences file. Add
setOption("BlackBackground",true) to Edit>Options>Startup
to have it set 'true' on startup.
<li> Thanks to Kees Straatman, improved recording of the
<i>Edit>Selection>Add to Manager</i> command.
<li> Thanks to Michael Ellis, added a module-info.java file,
used by the Java Module System, to the ImageJ source.
<li> Thanks to 'mkhapp', added the RoiManager.selected macro
function, which returns the number of selected ROIs in the
ROI Manager
(<a href="http://wsr.imagej.net/macros/SetGroupDemo.txt">example</a>).
<li>Thanks to Fred Damen, added the ImagePlus.copyToSystem() method.
<li> Thanks to Philippe Carl, fixed a bug that allowed multiple copies
of the Color Picker to be opened.
<li> Thanks to 'Ben', fixed a bug that caused the Table.get()
macro function to return strings instead of numbers.
<li>Thanks to Fred Damen and Michael Schmid, fixed a bug
that caused the run("Copy to System") macro function to
sometimes copy the wrong image to the system clipboard.
<li>Thanks to Fred Damen, fixed a bug that caused unreliable
zooming of images with selections when using the arrow keys
while holding the shift or control key down.
<li>Thanks to Fred Damen, fixed a bug that caused the
img3=ImageCalculator.run(img1,img2,operation) method
to return null if the 'operation' string did not contain
'create' or '32-bit'.
<li> Thanks to Martin Hohne, fixed a 1.53c regression that caused
the Counter popup menu in the Point Tool options Dialog
to not work as expected after switching to a different image.
<li> Thanks to Robert Svoboda, fixed a 1.53d regression on
Windows that could cause the getDirectory() macro function
to throw an exception or crash ImageJ.
<li> Thanks to Stein Rorvik, fixed a 1.53d regression that could cause
the run("Image Sequence...",options) macro function to fail.
</ul>
<li> <u>1.53d 20 August 2020</u>
<ul>
<li> Added drag and drop support to GenericDialog directory
and file fields, based on code from Fiji's GenericDialogPlus.
<li> The <i>File>Import>Image Sequence</i> and
<i>File>Save As>Image Sequence</i> comnands get the
directory using the new GenericDialog.addDirectoryField() method,
which is based on the very useful method with the same name
in Fiji's GenericDialogPlus class.
<li> The <i>File>Import>AVI</i> comnand gets the path to
the AVI file using the new GenericDialog.addFileField() method,
which is also from Fiji's GenericDialogPlus class.
<li> Thanks Michael Schmid, added the
<i>Process>Filters>Top Hat</i> filter.
<li> Thanks to William Berndt, added the <i>Image>Type>HSB (32-bit)</i>
command.
<li> Thanks to Laurent Thomas, added the <i>More>>Multi Crop</i>
command to the ROI Manager.
<li> Thanks to Zeynab Mousavi, the <i>Edit>Selection>Scale</i>
command uses the centroid instead of the center of the bounding
rectangle when "Centered" is checked in the dialog.
<li> The <i>Help>About ImageJ</i> window is larger
and the text is drawn in an overlay.
<li> Thanks to Peter Bankhead, the MacAdapter class is now in the ij.plugin package.
<li> Thanks to Norbert Vischer, legend labels can be indexed or hidden
in the plot window More>>Legend... dialog.
<li> Thanks to Curtis Rueden, the sample images are
now loaded from https://imagej.net/images/.
<li> Thanks to Jerome Mutterer, the Color Picker now has a clipboard-copyable
TextArea containing the selected color in hex format.
<li> Thanks to Jeff Hardin, the <i>Image>Hyperstacks>Stack to Hyperstack</i>
command now works with virtual stacks not in CZT order.
<li> The Threshold tool's "Set" function disables
"Don't reset range" if the values set are outslide
of the current display range.
<li> The ImageStack class now accepts images of different types. Images
are converted to the type specified by the setBitDepth() method or to the
type of the first image added.
<li> Added the Dialog.addDirectory() macro function
and the GenericDialog.addDirectoryField() method
(<a href="http://wsr.imagej.net/macros/tools/Square_Tool.ijm">example</a>).
<li> Added the Dialog.addFile() macro function
and the GenericDialog.addFileField() method.
<li> Added the Dialog.addImageChoice() macro function
and the GenericDialog.addImageChoice() method.
<li> Added the Overlay.cropAndSave() macro function
and the ImagePlus.cropAndSave() method
(<a href="http://wsr.imagej.net/macros/tools/Square_Tool.ijm">example</a>).
<li> Thanks to Laurent Thomas, added the RoiManager.multiCrop()
macro function and RoiManager.multiCrop() method.
<li> Thanks to Philippe Carl and Michael Schmid, added the
LutLoader.getLut() method. For an example, run
<i>Help>Examples>JavaScript>Show all LUTs</i>.
<li> Thanks to Philippe Carl, added the String.format() macro
function.
<li> Thanks to Laurent Thomas, added the ImagePlus.crop(Roi[]),
Overlay.createStackOverlay(Roi[]) and ImageStack.create(ImagePlus[])
methods. For an example, run
<i>Help>Examples>JavaScript>Crop Multiple Rois</i>.
<li> Added the FolderOpener.open(path, width, height, options)
method, which opens a stack, or virtual stack, from a folder of
images that may differ in size.
<li> Added the ImageStack.setBitDepth() method.
<li> Thanks to Aryeh Weiss, added the HyperStackConverter.toStack()
method
(<a href="http://wsr.imagej.net/macros/js/HyperstackToStack.js">example</a>).
<li> Added the StackWriter.save() method.
<li> Thanks to 'bio7' and David Gault, fixed bugs that caused
IJ.isJava18() to return false and JavaScript to not work when
running Java 14 or later.
<li> Thanks to Vivek Gupta, fixed a bug that caused the
run("Add Selection...") macro function to ignore the
current selection's position.
<li> Thanks to Michael Cammer, fixed a bug that caused the contrast to constantly
change when scrolling through a stack and the Threshold window is open.
<li> Thanks to Gilles Carpentier, fixed a bug that caused
the Duplicate command to propose an incorrect name
when duplicating an image whose name ends in "-n",
where 'n' is a digit.
<li> Thanks to Gabriel Landini and Michael Schmid, fixed a bug
that caused the <i>File>Show Folder></i> commands
to not work on some Linux systems.
<li> Thanks to 'Nhaz', fixed a bug that caused the Fit.doFit() macro
function to fail with equations containing "Math.erf()".
<li> Thanks to Michael Schmid, fixed preview and
parallelization bugs in the RankFilters (Median, Mean, Minimum, etc.).
<li> Thanks to Herbie Gluender, fixed a bug that caused
Table.* macro functions to ignore custom tables
not displayed in the active window.
<li> Thanks to Philippe Carl and Michael Schmid, fixed a bug that
caused the High Resolution Plot command to not be
correctly recorded in Java(script) mode.
<li>Thanks to Gabriel Landini, fixed the
<i>Process>Shadows>Shadows Demo</i> command,
which was too fast on modern computers.
<li>Thanks to Jerome Mutterer, fixed a bug that sometimes
caused point measurements to not work as expected
(<a href="http://wsr.imagej.net/macros/js/MeasurePointBug.js">example</a>).
<li> Fixed issues with script-mode recording of file paths on Windows.
<li> On Macs, fixed a bug that caused the <i>ImageJ>About ImageJ</i>
window to open slowly.
<li> Thanks to Michael Cammer, fixed a bug that caused the
s2=replace(s,s1,s2) and s2=s.replace(s1,s2) macro functions to fail
when 's1' was a single regular expression special character
and 's2' did not have a length of one.
<li> Thanks to Philippe Carl, fixed a bug that caused the
<i>Image>Stacks>Tools>Concatenate</i> command
to not preserve the "Info" properties.
<li> Fixed a 1.52r regression that caused ImageJ to hang
when saving images with fewer than 4 pixel in TIFF format.
<li> Thanks to Jan Brocher, fixed a 1.52u regression that caused
the <i>Edit>Selection>Enlarge</i> command to not work
as well as before.
<li> Thanks to 'jerr', fixed a 1.52 regression that made it impossible
to set the threshold by changing the textfield values.
<li> Thanks to 'Emil' and Pete Bankhead, fixed a 1.53c regression
that caused the <i>Analyze>Plot Profile</i> command not work as
expected with segmented and freehand line selections on
spatially calibrated images.
<li> Thanks to Zeynab Mousavi, fixed a 1.52 regression that caused
the getResults() macro function to unexpectadly cause a
"No results found" error
(<a href="http://wsr.imagej.net/macros/bugs/GetResultRegression.txt">example</a>).
<li> Thanks to Sumin Kim, fixed a 1.52t regression that caused
<i>Stack to Images</i> image titles to not be the same as
before for stacks with names containing spaces.
</ul>
<li> <u>1.53c 26 June 2020</u>
<ul>
<li> Added the <i>Help>Examples>Tools></i>
submenu with five tools: Circle Tool, Star Tool, Point Picker,
Big Cursor and Annular Selection. These tools use
the new "//@AutoInstall" directive that automatically
adds them to the toolbar.
<li> Added the "//@AutoInstall" and "//@AutoInstallAndHide"
directives for automatically installing macros and tools
in newly opened .ijm and .txt files.
<li> Thanks to Louise Bishop, delete multiple points from
a multi-point selection by creating a new area selection
while holding down the alt key.
<li> Thanks to Gabriel Landini, the LUT name is saved
as an image property and displayed when you
type "i" (<i>Image>Show Info</i>).
<li> Added support for 24x24 macro tool icons. The Big Cursor
and Annular Selection tools are examples.
<li> Double click on an overlay selection to activate it.
<li> Thanks to Christophe Leterrier and Christian Goosmann,
the <i>Image>Scale</i>, <i>Image>Adjust>Size</i>,
<i>Image>Transform>Rotate</i>, <i>Translate</i>,
<i>Rotate 90 Degrees Right</i> and <i>Rotate 90 Degrees Left</i>
commands now work with overlays.
<li> Thanks to 'Emma', added sliders and an "Overlay only"
option to the <i>Image>Transform>Translate</i> command.
<li> The Color Picker is improved, including a new tool icon.
<li> Toolbar buttons are one pixel larger, making the "ImageJ"
window 20 pixels wider.
<li> Tool icons are bolder when the GUI scale is greater
than 1.0 and less the 1.5.
<li> Added a "Reset" button to the Edit dialog of the
<i>Plugins>Utilities>Commands</i> window.
<li> Thanks Jerome Mutterer, added the rainbow progress bar
easter egg, activated by switching to the angle tool and running
a command that uses a progress bar (e.g., a radius 50 median
filter on a 1000x1000 image).
<li> Thanks to Fred Damen, the <i>Compile and Run</i>
command now looks for library JAR files in both
plugins/jars and plugins/lib.
<li> Added the getDir("file") macro function, which returns the
directory of the most recently opened or saved file.
<li> Thanks Jerome Mutterer, added the Overlay.activateSelectionAndWait()
macro function.
<li> Thanks to 'Eljonco', added the RoiManager.getName() macro function.
<li> Thanks to Laurent Thomas, added the RoiManager.setPosition()
macro function and method.
<li> Thanks to 'quatreulls', added the Table.saveColumnHeaders(boolean)
macro function and ResultsTable.saveColumnHeaders(boolean) method.
<li> Thanks to Laurent Thomas, added the ImagePlus.crop(Roi[]) and
ImagePlus.crop(Roi[],options) methods
(<a href="http://wsr.imagej.net/macros/js/CropMultipleRois.js">JavaScript example</a>).
<li> Thanks to Bill Christens-Barry, added the TextWindow.setFont(name,style,size)
method for setting the font used in the Log window. For monospaced text, set
'name' to "Monospaced"
(<a href="http://wsr.imagej.net/macros/examples/MonospacedText.txt">example</a>).
<li> Thanks to Gilles Carpentier, fixed a bug that caused NaN results
when measuring line selections created by <i>Edit>Selection>Area to Line</i>
from particle analyzer selections touching the right or
bottom edge of the image.
<li> Thanks to Norbert Vischer, fixed bugs that caused hyperstacks
with a "select all" selection to not be correcty copied to
the system clipboard.
<li> Thanks to Joe Want, fixed a bug that caused the macro interpreter to
sometimes generate an invalid "Numeric return value expected" message.
<li> Thanks Jerome Mutterer, fixed a bug that caused the
Roi.activateSelection(index) macro function to not work as expected
when called twice with the same index.
<li> Worked around a Java 8/Windows 10 bug that caused the
"ImageJ" window menu bar font size to become very small
after increasing the GUI scale.
<li> Thanks to Romain Guiet and Jan Eglinger, fixed a bug that caused
the multi-point tool to always reset the counter to 0.
<li> Fixed a bug that caused the <i>Edit>Selection>Fit Spline</i>
command to leave an incomplete progress bar.
<li> Fixed a bug that caused the Editor's Compile and Run "Save as" dialog
to sometimes not default to a folder inside the plugins folder.
<li> Thanks to Laurent Thomas, fixed a bug in <i>ROI Manager>Properties</i>
that caused it to not change the position of multiple ROIs.
<li> Thanks to Michael Schmid, fixed a bug that could cause an
exception with plugins using a DialogListener.
<li> Thanks to Michael Schmid, fixed a bug that could cause the
"Label Points" checkbox in Point Tool Options dialogs to be ignored.
<li> Thanks to Christian Tischer, fixed a bug that caused the macro
interpreter to not generate an "Undefined variable" error with
statements like "v=v+1".
<li> Thanks to Garbriel Landini, fixed a 1.52m regression that caused
histogram peaks to extend above the frame.
<li> Thanks to Stein Rorvik, fixed a 1.52u regression that caused
<i>File>Import>Image Sequence</i> to display unexpected
error messages in the Log window.
</ul>
<li> <u>1.53b 31 May 2020</u>
<ul>
<li> Thanks to Jerome Mutterer, added the "Overlay Editing Tools"
toolset and the "Label Maker" tool to the toolbar's ">>"
menu. Shift click on a toolset or tool in the ">>" menu to
view the macro source code.
<li> Thanks to Laurent Thomas, added the
<i>Edit>Options>Roi Defaults</i> command, which
adds support for ROI group names. Double
click on the rectangle tool to run this command.
<li> The group name, "Stroke Color:" field and the selection color
are dynamically updated as the group number is changed in the
<i>Edit>Selection>Properties</i> dialog.
<li> Thanks to Jerome Mutterer, added support for
tool icons read from image files located in the
macros/toolsets/icons/ folder. The syntax looks like<br>
<i>macro "Test Tool - icon:833.png" { }</i>.
<li> Thanks to Erod Baybay, added the Roi.setPosition(slice) macro function.
<li> Thanks to Jerome Mutterer, added the Overlay.indexAt(x,y),
Overlay.removeRois(name) and Overlay.getBounds(index,x,y,width,height)
macro functions.
<li> Thanks to Stein Rorvik, added the Roi.setJustification(str),
Roi.setFontSize(size), Property.setList(str) and Property.getList
macro functions.
<li> Added the setOption("InterpolateLines",boolean) macro function.
<li> Thanks to Adrian Martin, added the setOption("FlipFitsImages",true)
macro function.
<li> Thanks to Laurent Thomas, added the Roi.getGroupNames
and Roi.setGroupNames() macro functions.
<li> Thanks to Jan Eglinger, moved initialization of the okay and cancel
buttons in GenericDialog into the constructors.
<li> Thanks to Hidenao Yamada, fixed a bug that caused the
FileInfoVirtualStack.deleteLastSlice() method to not work.
<li> Thanks to Tom Kazimiers, fixed spelling of the ARTIST tag
in the TiffDecoder.
<li> Thanks to Jerome Mutterer and Michael Schmid, fixed a rounding
error that caused the <i>Measure</i> command to not correctly
measure point selectons with non-integer coordinates.
<li> Thanks to Herbie Gluender, fixed bugs that caused the
Rename, Duplicate, Sort and Plot Results table commands
to not work if the table did not contain a ResultsTable object.
<li> Thanks to Norbert Vischer, fixed a bug that caused the
<i>Stack to Hyperstack</i> command to throw an exception.
<li> Thanks to 'Hayato', fixed a bug that caused the
roiManager("measure") macro function to be slow on
Windows when measuring thousands of ROIs.
<li> Thanks to Gilles Carpentier, fixed a bug that caused the
<i>Stack to Hyperstack</i> command to unexpectedly display
the output image in batch mode.
<li> Thanks to Madison Williams, fixed a 1.52o regression that caused tables
created by the Cell Counter plugin to be empty.
<li> Thanks to Ron DeSpain, fixed a 1.52u regression that caused
incorrect positions to be shown in the status bar after using the
arrow keys to move line selections.
<li> Thanks to Stein Rorvik, fixed a 1.52t regression that caused
the TextRoi.setJustification() method to sometimes not work
as expected.
<li> Thanks to 'hwada', fixed a 1.52t regression that changed the order
of the points returned by Line.getFloatPolygon().
</ul>
<li> <u>1.53a 4 May 2020</u>
<ul>
<li> Thanks to Michael Ellis, added support for saving and restoring
persistent image properties via the Property.set(key,value) and
Property.get(key) macro functions and the setProp(key,string),
getProp(key), setProp(key,double) and getNumericProp(key) methods
(<a href="http://wsr.imagej.net/macros/js/ImageProperties.js">JavaScript example</a>).
<li> Removed file sizes from entries in the <i>File>Open Samples></i> submenu.
Macros that use the old entries (e.g. "Blobs (25K)") continue to work.
<li> Thanks to Laurent Thomas, the Overlay and RoiManager classes are now iterable.
Plugins can use "for (Roi roi : rm)" instead of "for (int i = 0; i != rm.getCount(); i++)".
In JavaScript, use "for each (roi in rm)"
(<a href="http://wsr.imagej.net/macros/js/ListOverlayRois.js">example</a>).
<li> Thanks to Norbert Vischer, added the [&n] macro shortcut notation
that allows shortcuts to be used on both numerical
keypads and normal (laptop) keyboards.
(<a href="http://wsr.imagej.net/macros/examples/NumpadMacroShortcuts.txt">example</a>).
<li> Thanks to Richard Boardman, increased the BufferedOutputStream
buffer size in the FileSaver class to 32K and added the static
FileSaver.setBufferSize(int) method.
<li> Thanks to Michael Schmid, added the Plot.setOptions() macro function.
See <i>Help>Examples>Plots>Plot Results</i> for an example.
<li> Added the Property.get(key), Property.set(key,value), Property.getInfo,
Property.getSliceLabel, Property.setSliceLabel(string) and
Property.getDicomTag(string) macro functions.
<li> Thanks to Michael Schmid, added the Plot.getCurrentFont(),
Plot.getDefaultFont() and Tools.getNumberFromList() methods.
<li> Thanks to Herbie Gluender, added the GenericDialog.getLabel()
and FHT.getRawPowerSpectrum() methods.
<li> Thanks to Kenneth Sloan, added the ImageProcessor.getForegroundValue()
method.
<li> Thanks to Curtis Rueden, added the GUI.getParentFrame() method
and made GenericDialog.getParentFrame() private again.
<li> Thanks to Hidenao Yamada, fixed a bug that caused
the getDirectory() and getFileName() methods of the
FileInfoVirtualStack class to always return null.
<li>Thanks to Norbert Vischer, fixed a bug that caused
the <i>File>Import>Image Sequence</i> command
to not ignore subdirectories.
<li> Thanks to Michael Cammer, fixed a 1.52v regression that caused
recording to not work correctly when Preview was checked in a filter dialog.
<li> Fixed a 1.52o regression that caused the
<i>Help>Examples>JavaScript>FFT Filter</i>
script to display an error message.
<li> Thanks to 'Eljonco', fixed a 1.52v regression that caused the Threshold tool to
sometimes freeze ImageJ.
</ul>
<li> <u>1.52v 11 April 2020</u>
<ul>
<li> Thanks to Norbert Vischer, macro error messages include the call stack.
(<a href="http://wsr.imagej.net/macros/TestCallStack.txt">example</a>).
<li> Added a "Set default directory" code choice to the
<i>Edit>Options>Startup</i> dialog.
<li> Thanks to Laurent Thomas, the RoiManager class is now iterable.
<li> The run("Viridis") macro function now works on Fiji
(<a href="http://wsr.imagej.net/macros/examples/ShowResultsInOverlay.txt">example</a>).
<li> Thanks to Fred Damen, Java compiler error messages use the default editor font.
<li> Thanks to Fred Damen and Michael Schmid, added the Math.erf(x) macro function.
<li> Added the Overlay.useNamesAsLabels(boolean) macro function
(<a href="http://wsr.imagej.net/macros/examples/ShowResultsInOverlay.txt">example</a>).
<li> Thanks to Michael Schmid, added the Fit.getEquation(index,name,formula,macroCode)
macro function
(<a href="http://wsr.imagej.net/macros/TestCurveFitMacroCode.txt">example</a>).
<li> Thanks to 'Odinsbane', added the ByteProcessor.skeletonize(foreground)
method, where 'foreground' is either 0 or 255.
<li> Thanks to Laurent Thomas, added the ResultsTable.getResultsTable(title) method.
<li> Thanks to 'Max1', fixed a bug that caused the
<i>Edit>Selection>Scale</i> command to not maintain
the selection name, group, fill color, point type and point size.
<li> Thanks to 'Odinsbane', fixed a bug that caused the ByteProcessor.skeletonize()
method to not work correctly with objects touching the image edge.
<li> Thanks to Stefan Helfrich and Olivier Burri, fixed a bug that caused the
position of ROIs added to the ROI Manager using RoiManager.setRoi()
to sometimes change.
<li> Thanks to Michael Schmid, fixed a bug that sometimes caused
GenericDialogs to throw an exception.
<li> Thanks to Jeremy Adler, fixed a bug where changing the LUT
resets the display range.
<li> Thanks to 'Sh_Ty', fixed a bug the caused the
<i>Analyze>Tools>Calibration Bar</i> command to throw
an exception in headless mode.
<li> Thanks to Michael Schmid, fixed a bug that caused
plots with custom symbols to use the wrong color
or generate an error.
<li> Thanks to Nicolas De Francesco, fixed a 1.52u regression that caused
incorrect straight line length measurements with spatially calibrated images.
<li> Thanks to Peter Haub, fixed a 1.52u regression that caused the cursor
position to not be aligned with the drawing position when creating
a polygon ROI.
<li> Thanks to 'Professor_OAT', fixed a 1.52s regresson that caused the
deleteRows() macro function to throw an exception when deleting
rows in a non-numeric table.
</ul>
<li> <u>1.52u 17 March 2020</u>
<ul>
<li> ROI enhancements, thanks to Michael Schmid:
<ul>
<li> Line and point selections have integer coordinates at
pixel centers when displayed at high magnification. Area selections
have integer coordinates at the top-left corner of pixels.
<li> All interactively created ROIs, except rectangles and ovals, are created
with subpixel resolution when the magnification is above 150%.
<li> Removed the "Sub-pixel resolution" option from the
<i>Edit>Options>Plots</i> dialog.
<li> The <i>Line to Area</i> command is faster and more accurate
<li> The <i>Straighten</i> command is more accurate.
<li> The <i>Image>Info</i> command displays more
information about ROIs.
<li> Long-click to select ROIs from overlays now also works
with lines.
<li> The <i>Measure</i> command uses <i>Line to Area</i> instead of
<i>Straighten</i> to get statistics from segmented and freehand lines
with a width geater than one.
<li> Fixed a bug that could (rarely) cause an exception during
"wipe back" when drawing a polygon or polyline. In "wipe back"
mode, the mouse behaves like an eraser when
moved backwards with alt key down.
</ul>
<li> Thanks to Nicolas De Francesco, added the
<i>Edit>Selection>Fit Rectangle</i> command.
<li> Thanks to 'Dcolam' and Jan Eglinger, the
<i>Edit>Selection>Enlarge</i> command no
longer has a 255 pixel limit.
<li> Thanks to Peter Bankhead, the default TIFF reader uses the HandleExtraFileTypes
plugin when it is unable to open a file. As an example, .svs files dragged and dropped
on the "ImageJ" window are now opened by the Bio-Formats plugin.
<li> Added the <i>Help>Examples>JavaScript>Overlay Text</i> example.
<li> Thanks to Laurent Thomas, added a
"Install Keypad Shortcuts" command to the
ROI Menu tool. Add<br>
call("ij.plugin.MacroInstaller.installFromJar", "/macros/RoiMenuTool.txt+");<br>
to the <i>Edit>Options>Startup</i> dialog
to have the shortcuts automatically installed on startup.
<li> Thanks to Laurent Thomas, the commands in the
ROI Menu tool and the "Group" setting in the ROI Manager's
Properties dialog are recordable.
<li> Added the
Math.abs(n), Math.acos(n), Math.asin(n), Math.atan(n), Math.atan2(n1,n2), Math.ceil(n),
Math.cos(n), Math.exp(n), Math.floor(n), Math.log(n), Math.log10(n), Math.min(n1,n2),
Math.max(n1,n2), Math.pow(n1,n2), Math.round(n), Math.sin(n), Math.sqr(n),
Math.sqrt(n) and Math.tan(n) macro functions.
<li> Added the RoiManager.setGroup(group) and
RoiManager.selectGroup(group) macro functions.
<li> Thanks to Ken Gilbert, added the getValue("image.size")
macro function.
<li> Thanks to Laurent Thomas, added the setOption("WaitForCompletion",false)
macro function, which causes the next exec() call to return an empty string and
not wait for the command being executed to finish.
<li> Thanks to Nortbert Vischer, added the Array.sort(array1,array2,array3...)
macro function
(<a href="../../macros/examples/ArraySortDemo.txt">example</a>).
<li> Thanks to Volker Backer, added the ImagePlus.resize()
method, which is recorded by the <i>Image>Scale</i>
and <i>Image>Adjust>Size</i> commands.
<li> Thanks to Fred Damen, added the Plot.setWindowSize() method.
<li> Thanks to Lewis Muir, fixed a bug the caused the Pixel Inspection Tool's
red selection box to be included with the image when saving in
GIF, JPEG or PNG format.
<li> Thanks to 'cooketho', fixed a bug that caused the
<i>Edit>Copy to System</i> command to sometimes not work
as expected with composite images.
<li> Thanks to Fred Damen, fixed bugs that caused the
TextRoi.setJustification() and TextRoi.drawPixels() methods
to not work as expected.
<li> Thanks to Nicolas De Francesco, fixed a bug that caused
empty tables to not be opened correctly.
<li> Fixed a bug that caused the Color Picker to not work
correctly if the GUI scale was greater than one.
<li> Thanks to Michael Schmid, fixed a bug that could cause
a thread deadlock in plugins using the ImageListener interface.
<li> Thanks to Michael Schmid, fixed a bug that caused the
"List coordinates" option in the <i>Edit>Selection>Properties</i>
dialog to ignore the "Origin" setting in the
<i>Image>Properties</i> dialog.
<li> Thanks to 'sebi06', fixed a 1.52p regression that caused the
particle analyzer to thow an exception in headless mode.
</ul>
<li> <u>1.52t 30 January 2020</u>
<ul>
<li> Thanks to Laurent Thomas, added a "Group" field to the
<i>Edit>Selection>Properties</i> dialog and an
"ROI Menu" tool to the toolbar's <i>>></i> menu.
<li> Thanks to Norbert Vischer, added support for superscripts and
subscripts in plot axis labels