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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
|
CHANGES FOR FRONTEND XSANE FOR SANE:
------------------------------------
xsane-0.11 beta and before:
---------------------------
- based on gtk-1.0.x
- histogram
- online color enhancement
- gamma table: tested with
- 8, 10 and 12 input bits per color
- 8 output bits per color
- standard and advanced options in own (non scrollable) window
- photocopy function via postscript output (gray + color, not lineart)
- frontend/Makefile.in changed for xsane
xsane-0.11 -> 0.12:
-------------------
- added ps, jpeg and png(1+8bit) output format, selected by filename
- added lineart support for ps
- changed configure.in and config.h.in and included them into xsane
- changed device selection dialog: scanner vendor and model added
- added xsane-logo (winner from gimp-contest) to device-selection and about-window,
it is loaded from SANE_DATA_PATH/sane/xsane-logo.xpm (/usr/local/share/sane/...)
- histogram window now always exists and may be hidden
- changed handling of devicename given as commandline option:
sane_get_devices is called and the vendor, model and type get identified,
if the given device name does not fit to the beginning of an existing device name
the device selection is opened
xsane-0.12 -> 0.13:
-------------------
- file format detection now works with case insensetive
- changed font for device selection
- changed output format of device list for selection
- disabled gamma table for 1 bit grayscale (lineart)
- improved error handling of saving routines
- removed ram eater in preview routine
- added default gamma upload into preview scan routine
- added tiff-output-format
- changed lineart to grayscale conversion in saving-routines
- added test if selected output format is supported before scan
xsane-0.13 -> 0.14:
-------------------
- added info window that displays hidden options/values
- xsane compiles without sane-source-package now,
sane must be installed.
- if scan is started with save for unsupported graphics format
an error message comes up before scanning is started
- tested for param.depth>1 for gamma correction
- added test for sane major version number, abort if mismatch
xsane-0.14 -> 0.15:
-------------------
- if device is given as commandline option it is now loaded again
if it is not in the devicelist
- moved some functions in xsane.c out of a #ifdef HAVE_LIBGIMP .. #endif-block
- added sliders in the gray/red/green/blue-levels for black/gray/white points
- gamma correction in preview is now only done if depth > 1
- enhancement sliders are not shown in lineart mode any more
xsane-0.15 -> 0.16:
-------------------
- moved save-routines to xsane-save, named xsane* to xsane-*
- included progress-routines into xsane.c
- moved xsane.h to xsane-text.h
- moved definitions and external used function headers to xsane.h
- added test for depth > 1 before calculating preview histogram
- added test for preview_gamma_data_red before calculating preview histogram
- added test for preview_gamma_data_red before doing preview gamma correction
- added p->image_data_raw = malloc(3*p->image_width*p->image_height);
in xsane-preview.c/scan_start
- added authorization_callback routine
- renamed a lot of routines * -> xsane_*
- added p->previous_selection.active = FALSE; draw_selection(p);
to preview_gamma_correction to redraw selection
- added preview_update(p); to scan_done in xsane-preview.c to reactivate selection
- added header for saving >8bpp raw data (SANE_GRAYSCALE_RAW, SANE_RGB_RAW)
- added 16 bit saving routines for pnm(ascii), png and raw
- added 16 bit routines to xsane_read_image_data, added 16 bit gamma software support
xsane-0.16 -> 0.17:
-------------------
- xsane-gtk.c moved free(elem->menu); elem->menu = 0; in panel_destroy out of
the for-loop
- added some #ifdefs #endifs around saving routines for TIFF, PNG and JPEG
- added BIT_DEPTH as well known option, preview sets this value to 8 if it is greater than 8
- added range checks in calculation for auto enhancement values
- calculation of auto enhancement values is not called in lineart mode any more
xsane-0.17 -> 0.18:
-------------------
- added quit_xsane in xsane_choose_dialog_ok_callback if no device was opened
- added sane_get_parameters(..) in xsane_scan_dialog
- added xsane_increase_counter_in_filename to xsane-save.[ch]
- Filename counter is automatically increased after scan
- Changed setup_dialog callbacks, cancel does work now
- zoomfactor is calculated now if copy mode is selected
- added tooltips for xsane setup options
- changed "destroy"-event of authorization dialog to "delete_event"
- in gsg_message made the ok button default
- added gsg_decision routine
- added overwrite warning
- postscript images are saved in original size in scan mode now
xsane-0.18 -> 0.19:
-------------------
- added cancel callback routine for conversion/saving routines
- printer_resolution now is set if OK is pressed in setup
- overwrite warning is not shown in copy mode any more
- changed fclose to pclose for closing pipe to printer command
- restored xsane.resolution in xsane_pref_device_restore
- added Help menu, called Netscape -remote to open help-files
- set sensetivity of xsane dialog and histogram dialog while
scan and preview scan to false
- added some help(html) files to the doc directory
xsane-0.19 -> 0.20:
-------------------
- improved online help
- added own version number for xsane, there are three version
numbers now:
- xsane version
- sane version
- package version (e.g if there is a package of different frontends)
- added gamma value (gray, red, green, blue) for printer (copy mode)
- changed sane-style.rc -> xsane.style.rc
- changed PATH_SANE_DATA_DIR -> old PATH_SANE_DATA_DIR/sane
- preview gamma correction is done by the xsane gamma correction instead of
the Xserver gamma correction, there are also values for red, green and blue
now.
- spilt setup window into notebook pages
- replaced in xsane_pref_set_unit_callback preview_update by preview_area_resize,
the ruler units are updated now if unit is changed
- made menue length unit inactive if length unit is pixel
- added dialogs for batch scan list and fax page list, but not finished and disabled
- changed local includes from <...> to "..."
- test for filetype is only done in scanmode now
- added list of (up to 10) printers for photocopy mode
- added error messages if failed to open files
- added sigpipe_handler for handling broken pipe while writing to printercommand
xsane-0.20 -> 0.21:
-------------------
- in xsane-preview.c if backend does not use scanareaselection dev_selection[i]
is set to width/height of image
- replaced most sprintf by snprintf
- made menue length unit inactive if scanare is nut supported by the backend
- set maximum value in 16 bit saving routines to 16 bit/65535
- 1 bit/pixel png file is saved with 1 bit/pixel instead of 8 bit/pixel now
- added support for gtk-1.2
- font are set in xsane-style.rc now
xsane-0.21 -> 0.22:
-------------------
- split xsane.c in:
- xsane.c
- xsane-setup.c
- xsane-gamma.c
- xsane-front-gtk.c
- xsane-scan.c
- renamed xsane-gtk.c to xsane-back-gtk.c
- removed libtool from package
- added experimental fax support
xsane-0.22 -> 0.23:
-------------------
- changed configure.in, removed some unnecessary parts
and added error messages if gtk or sane is not installed
- removed copy-mode resolution bug (was not changed if zoom slider was moved)
- removed bug in faxmode if faxproject did not exist (fclose(0))
- changed definition of struct xsane and struct xsane_setup
- added documentation-viewer-command to setup, netscaperemote is selected
via the keyword "netscape-remote"
xsane-0.23 -> 0.24:
-------------------
- removed some bugs in gamma value calculation for real scan (preview was ok)
- added activation for some windows after scan error
- removed bugs in startup if no device is available or selected,
the xsane.rc-file keeps untouched now
xsane-0.24 -> 0.25:
-------------------
- moved xsane_pixmap_new as xsane_create_histogram from xsane-front-gtk.c to
xsane-gamma.c
- now putting the histogram sliders directly into the slider preview instead
of drawing into the preview window, the sliders are not erased by other
other windows now
- added block_update_param flag, the update_param and update_histogram routines
are now called only one time if the preview scan area is changed
- added changing of one edge in preview scanarea (left mousebotton near the edge)
- added moving of preview scanarea (middle or right mousebutton)
- moved creation of histogram dialog to xsane-gamma.c
- removed some bugs in the preview, resizing the preview window should work now
- added an experimental zoom for the preview
xsane-0.25 -> 0.26:
-------------------
- removed some preview_update calls or replaced them by preview_update_selection
- renamed preview_update to preview_update_surface and made surface_changed a parameter
- ruler scaling is now ok in resized windows and zoomed previews
- added some range checks in preview_calculate_histogram
- parts in the preview window that are not part of the scan area are painted gray now
- added image_surface to preview structure, it stands for the surface of the scanned preview image
- renamed preview_get_image_scale to preview_get_scale_preview_to_image
- added routine preview_get_scale_device_to_preview
- added Zoom 20% out routine
- the selected area can be larger than the viewable preview now
- added Pipette functions (pick black, gray and white) - mouse pointer does change to pipetty icon
- p->aspect is calculated by image-size now if the surface is not defined (INF) in
preview_update_surface
- preview_update_surface is called now after preview scan and preview_restore_image
- moved the "Help" menu in the main dialog to the right
xsane-0.26 -> 0.27:
-------------------
- added scantips and index of backends to help menu
- changed configure.in, libpng should be found on (all ?) systems now
- black and white point sliders use the two additional pixels now
- user can preset (reduce) the preview area now
- added "Select visible area" button
- removed some bugs in gray gamma value calculation for real scan (preview was ok)
- setup of faxoptions: normal, fine and postscript option is saved now
xsane-0.27 -> 0.28:
-------------------
- added option negative into enhancement and changed create_gamma
draw_histogram and auto_enhancement to work with it!
- increased contrast range from -100..+100 to -100..+200
and brightness range from -100..+100 to -200..+200
because the old values were not sufficent for scanning negatives
- added selection for number of copies in copy mode
xsane-0.28 -> 0.29:
-------------------
- removed bug in xsane_set_resolution that could cause a segmentation fault
- added support for resolution of type CONSTRAINT_WORD_LIST
- xsane-mode (scan, copy, fax) can be selected as command line option (-s, -c, -f) now
- most texts that are defined in xsane are defined in xsane-text now
xsane-0.29 -> 0.30:
-------------------
- removed bug in xsane_set_resolution, now highest resolution can be set if
resolution is a list!
- added RGBI support - must be activated in xsane.h (SUPPORT_RGBI)
- added options rgb default and negative to preferences
- enhancement values are saved with device settings now
- The filename can be specified now for the file in which the device settings are saved
or from which they are loaded.
- changed extension from ".rc" to ".drc" (device rc)
- added header "XSANE_DEVICE_RC" to identify it as device-rc-file
- added calculation for color components to auto enhancement
- pipette functions: middle mouse button defines shadow/gray/highlight
for color components, left mouse button only defines gray values!
- auto enhancement values are set to standard values in
xsane_calculate_histogram if no values could be calculated
- histogram is cleared when sensitivity is set to false
- improved calculation of auto enhancement values
- increased contrast range from -100..+200 to -100..+300 (gray) and
-300..+300 (color) and brightness range from -200..+200 to -300..+300
xsane-0.30 -> 0.31:
-------------------
- changed filename character transformation: erase " ", "_" -> "__", "/" -> "_"
- device settings standard file name is vendor:model
so it does not matter any more if the sg-device name has changed
- the xsane main window can be a fixed or a scrolled, resizable window now.
selection is done with setup/display/"main window fixed",
the main window mode can be overwritten by specifying a command
line option:
-R or --Resizeable activates the resizeable, scrolled window,
-F or --Fixed activates the fixed (non resizable) window (default)
- histogram is cleared when info dialog or about dialog is opened
- changed version option from -V to -v
- added support for Automatic Document Feeder (scan until error)
this is experimentary because in the SANE-standard there is
no way defined how a frontend can identify an ADF.
The backend has to load the next document automatically!
- in xsane_enhancement_update replaced gtk_signal_emit_by_name
by gtk_signal_emit
- moved more texts to xsane-text.h
- changed all RGBI -> RGBA because the 4th channel is ALPHA
I think that SANE_FRAME_RGBA will be added to the sane standard
- gtk+-1.2.0 is minimum requirement: removed tests for
gtk_tooltips_set_tips, gtk_scrolled_window_add_with_viewport
and gtk_events_pending that were needed for gtk+-1.0.x
- added option "--device-settings file" to define default
filename for device-settings
- corrected "legal" size in preview
- added device_text to info and preview window title
- moved color definition to xsane_creat_histogram_dialog
- pixmap colors depend on histogram_dialog now because
the histogram dialog is the first dialog that exists
- renamed all gtk functions like defined in gtkcompat.h
(gtk+-1.0.x -> gtk+-1.2.x)
- removed bug in device selection, device can be selected
now with keyboard
- xsane info window prints gamma depth "none" in 1 bit modes
xsane-0.31 -> 0.32:
-------------------
- added option --no-mode-selection/-s to disable menu for
xsane mode selection
- prepared text outputs (in xsane-text.h) for NLS/gettext support
- multiple \n in scanf while reading saved preview image removed
- added AM_PROG_CC_STDC to configure.in for HP/UX
- added a break statement after each default in switch block
- changed test for multiple image scan, when sane_read returned with
SANE_STATUS_GOOD when the image is finished we start a new scan,
SANE_STATUS_EOF is expected when scanning should be stopped.
This way the Automatic Document Feeder is supported a way
like planned in the sane standard, the backend says
if the frontend shall call sane_start repeatadly.
xsane-0.32 -> 0.33:
-------------------
- removed change about SANE_STATUS_GOOD in multiple image mode.
Adf mode is detected by scanmode again. This would be better
selected by a mulit_image bit in the preferences block.
- added common rotuine xsane_set_sensitivity to xsane-front-gtk.c
- renamed xsane_test_adf to xsane_test_multi_scan
xsane-0.33 -> 0.34:
-------------------
- the preview selection is based on device coordinates instead of
preview window coordinates now
- added preview buttons and preview viewport to xsane_set_sensitivity
- info and about dialog use xsane_set_sensitivity now
- dummy_filename is created and opened for writing AFTER sane_start is called.
- sane_start() == NO_DOCS is not handled as error any more
- xsane_scan_done -> sane_cancel is called now if an error occurs
- if an error occurs while scanning the created file is removed
- xsane windows/buttons get inactive while setup dialog is open
- xsane_scan_done -> sane_cancel is called when main window is closed
(while scanning)
- if there are no standard device settings at program startup, xsane
take the backend predefined resolution (before this was set to 100)
- if no scanarea options are given, the preview works with
[0,INF] instead of [-INF,INF] now
- transformed all gif files in directory doc to jpeg format because of
all the trouble about the gif licence. Will never use gif again!
xsane-0.34 -> 0.35:
-------------------
- corrected doc/Makefile.in for change gif->jpg
- added tiff compression type selection for multi bit and one bit images to
setup:
none, CCITT 1D Huffman compression, CCITT Group 3 Fax compression,
CCITT Group 4 Fax compression, Lempel-Ziv & Welch, JPEG DCT compression,
pack bits
- implemented real single-bit format for tiff
- setup/jpeg quality selection is enabled if jpeglib or libtiff is available
- added gimp_image_set_resolution(...) to gimp saving routine
- added test for libgimp/gimpfeatures.h to configure.in and config.h.in
- disabled sensetivity while filename browse window is open
- added handling if fileselection window was closed
- moved filename "Browse" button from the right to to the left with disk-image inside
- (added image filetype menu to the image filename line - not ready)
- replaced button-texts negative, rgb default, auto, default, store and
restore by icons
xsane-0.35 -> 0.36:
-------------------
- moved xsane_generate_dummy_filename in xsane-scan.c out of a
#ifdef HAVE_LIBGIMP_H block
- changed some icons
- added #ifdef HAVE_LIBTIFF around TIFF-relevant definitions in
xsane_setup_dialog in xsane-setup.c
- included NLS/gettext version 0.10.35
- texts that are created by xsane can be converted to other languages
now - texts created by the backend can not be translated yet!
- added gettext relevant routines to aclocal.m4 and correct some bugs
- added french translation - thanks to Vincent Renardias <vincent@ldsol.com>
- added german translation table
- translation files "*.po" are created by "*.po.in" with help of the
preprocessor of gcc, all texts are #defined in frontend/xsane-text.h
xsane-0.36 -> 0.37:
-------------------
- added some texts to xsane-text.h and newlanguage.po.in[.in],
created file add-0.37.po.in where the new entries are listed
- moved generation of xsane.backend (backendname like umax)
from xsane_help_build_menu to xsane_device_dialog, needed for
translation of backend options
- added translation for backend options:
Backend translation is done with translation table sane-BACKENDNAME.mo
- removed bug in preview_update_selection()
(forgotten p->selection.active = TRUE)
The selection box is updated correct now
- removed bug in aclocal.m4: not fount "-lintl" when gettext is in glibc
xsane-0.37 -> 0.38:
-------------------
- changed STANDALONE -> XSANE_STANDALONE and
GIMP_EXTENSION -> XSANE_GIMP_EXTENSION because GIMP_EXTENSION
now (gimp-1.1.10) is used in the Gimp
- changed brightness and contrast range maximum form 300 to 400 %
- moved gimp installation texts to xsane-text.h
added entries to po/newlamguage*
- xsane -g now does not print anything and does not abort if gimp
support is compiled in
- changed lib/Makefile.in and sanei/Makefile in, make install should
work without a previous make now
- xsane gimp-plugin is selected via file/acquire now when
gimp-version >= 1.1.9
- . removed ../intl/libintl.a form frontend/Makefile.in and
. added CATOBJEXT=UNKNOWN and XGETTEXT=":" in if "gettext is in libc"
to aclocal.m4
hope this solves problems with missing "-lintl" now on all systems
- moved "show xxx" menu items form menu "Preferences" to menu "View"
- added continuous update to histogram sliders and preview selection
- added preferences menu item "Update policy"
- now options are only changable if SANE_CAP_SOFT_SELECT is set
- added test for bitdepth in xsane_scan_dialog for GIMP mode,
error message pops up when unsupported bit depths are selected
- moved case XSANE_PNM16 out of a #ifdef HAVE_LIBPNG block
- position of all windows and size of main window and preview window
is save in device settings, setting preview window geometry
does not work because window does not exist at relevant times.
xsane-0.38 -> 0.39:
-------------------
- bounded contrast to >=-100.0
- Added test if GIMP_CHECK_VERSION is defined
xsane-0.39 -> 0.40:
-------------------
- device name is saved in drc file now
- xsane version is saved in drc file now
- warning is printed if device rc file was not created for active device
- removed member device from struct preferences - was never used
- changed frontend/Makefile.in (XSCAN->BINPROGS)
- changed configure.in:
- changed order of some checks
- added status messages at the end
- added "--enable-intl-patch" which adds -lintl to check for libsane
- added "--disable-gimp"
- added "--disable-jpeg"
- added "--disable-tiff"
- added "--disable-png"
- moved xsane_generate_dummy_filename and fopen() into if XSANE_STANDALONE block,
there is no empty file created in gimp mode any more.
xsane-0.40 -> 0.41:
-------------------
- renamed xsane-incons.h -> xsane-icons.c and xsane-icons-def.h -> xsane-icons.h
- moved all includes that are needed by most xsane sources to xsane.h
problem with missing stdio.h is solved that way
- changed configure script:
- check for sane is moved to the end because of missing libintl,
- check for png is done with x_includes and x_libraries,
and libpng is added to lib after all checks are done
xsane-0.41 -> 0.42:
-------------------
- changed configure.in, error message about missing sane is also printed if sane.h
is not found.
- changed info row (size box, start button): the start button is made smaller when
the info box needs more place
- changed calculateion of size in info row from unisgned long to float
because unsigned long / 10 were to small to fit A4 with 1200x1200 dpi
- changed png part of configure, HAVE_LIBPNG is now defined again
- corrected png lineart saving
xsane-0.42 -> 0.43:
-------------------
- disabled LZW-compression for TIFF.
Unisys holds a patent for LZW compression. I am not sure
about the licence status of LZW and TIFF. GIF is not supported
because of the licence problem. LZW for TIFF is disabled now.
- removed all LZW entries in sourcecode and translation tables
xsane-0.43 -> 0.44:
-------------------
- renamed NOTEBOOK_PRINTER_OPTIONS to NOTEBOOK_COPY_OPTIONS
- added sane-problems-doc.html to the help menu
- added functions around "by ext" menu
- all functions in xsane-back-gtk.c are named with xsane_back_gtk_* now
xsane-0.44 -> 0.45:
-------------------
- added *s = 0; in sanei_codec_ascii.c when reading a string that
does not start with '"'
- added test "if (!w.status)" when reading a string in sanei_load_values.c
the missing test caused a segfault when a string was expected but
the line did not start with '"'
- merged together all needed sanei_* routines in xsane-rc-io.c
and renamed all sanei_* to xsane_rc_io_*, removed subdir sanei
and changed xsane.c and xsane-preferences.c to use xsane-rc-io.[ch]
and reprogrammed some things.
- renamed all xsane_pref_device_* to xsane_device_preferences_*
and moved them to xsane-device-preferences.c
- renamed sanei_w_[load|save]_values to xsane_device_preferencs_[load|save]_values
and moved them to xsane-device-preferences.c
xsane-0.45 -> 0.46:
-------------------
- changed xsane_rc_io_w_space: returns ENODATA instead of EINVAL at EOF
- added xsane_rc_io_w_skip_newline
- changed xsane_device_preferences_load_values:
- begin at start of file is only inciated if w.status == ENODATA
- if w.status is an other error, the line is skipped
- moved and renamed w_string, w_int, w_double from xsane-preferences.c
to xsane_rc_pref_* in xsane-rc-io.c
- repleaced fprintf/fscanf for reading xsane device preferences by
xsane_rc_io_w_* routines
This way the floating point values (xsane- gamma, brightness and contrast)
are saved different and the *.drc-files are incompatible in that point.
- added test for lineart mode (depth == 1) in xsane_enhancement_update
solves segmentation fault problem when device settings with lineart enabled
are loaded
xsane-0.46 -> 0.47:
-------------------
- if helpfile viewer is netscape-remote and netscape is not running
it is started
- replaced ENODATA (used for EOF detection in xsane-rc-io and
xsane-device-preferences) by XSANE_EOF (=-1)
(ENODATA is not defined on all systems)
- If faxproject does not exist, project data entries are made insensitive
and buttons "send project" and "delete project" are replaced by "create project"
- Added missing "&" in xsane_device_preferences_save_values:
xsane_rc_io_w_array(w, &len, (void **) &word_array, (WireCodecFunc) xsane_rc_io_w_word, sizeof(SANE_Word));
that cause segmentation fault when writing bool, int or fixpoint arrays.
xsane-0.47 -> 0.48:
-------------------
- "START" button is made insensitive in fax mode if project does not exist.
- Preview window is created at the same time as the main dialog and it is destroyed
at program end. Disabling "show preview" hides the preview window. This way the preview
window placement does work correct.
- set default values in xsane_device_preferences_load_file(char *filename)
before reading the saved values, show_preview default = true
- Mouse pointers display relevant mode icons in preview window now.
- In copy mode the maximum selectable size that fits to the selected printer is drawn
by a rect now. Selection is limited to the printer size.
- if no local xsane.rc, xsane-style.rc or DEVICE.drc file exists it is loaded from SANE_DATA_DIR/xsane
- all xsane rc files are placed in a subdirectory xsane now (~/.sane/xsane, SANE_DATA/DIR/xsane)
- temporary files (previews, conversions) are saved in /tmp (defined in SANE_PATH_TMP in xsane.h) now
- added window decoration icon (top left) to each xsane window (does work with kwm, does not work with fvwm2)
- added warning icon and error icon
- removed xsane_files_exit_callback, now xsane_scan_win_delete is used for all exit program calls
- conversion-* and preview-* files are created with permission "-rw-------",
images- and project-files are created with "preferences.image_umask"
xsane.rc and *.drc are created with XSANE_DEFAULT_UMASK defined in xsane.h
- added file permission selection in preferences/saving options for image file and for directory (faxproject)
- disabled fileoptions (mkdir, rm, mv) in loading/saving preferences
xsane-0.48 -> 0.49:
-------------------
- added support for different x/y resolutions and zoom factors,
the y-resolution slider is added to the xsane main dialog now
- in gimp mode x- and y-resolution infos are set correct now
- added resolution and zoom icons for x- and y-dimension
- added fax_width and fax_height to preferences
- added paper size frame in fax mode preview
- added czech translation - thanks to by Stanislav Brabec <utx@k332.feld.cvut.cz>
- changed gimp_install_procedure(...): "RGB, GRAY" -> 0
- changed printer geometry setup from 1/72 ich to mm
- added setup entries for fax- width, height, left_offset and bottom_offset
- corrected terminating \0 of strings in sane_choose_device
- when button "Negative" is pressed the white/gray/black points
are also inverted
- split preview_restore_image into preview_restore_image and
preview_restore_image_from_file, it can zoom into a saved
image now.
- zoom functions are done now without a new preview scan.
3 different zoom levels are stored.
- in xsane_scan_start the output file is only opend once in multi pass scan
three pass scan does work now again.
- added several missing routines for gamma correction in three pass scan
xsane-0.49 -> 0.50:
-------------------
- removed bug in calculation of paper size in copy and fax mode
- added support for rotate image in xsane_save_ps
- added support for rotate (landscape mode) in copy mode and save-ps mode
and added preferences menu "Rotate Postscript"
- added bugfix for gtk_tooltips_set_colors as long as it does not work in gtk
- improved memory allocation routines and error handling in preview
- after the main window is created the resolution, resolution_x amd resolution_y
are made up to date now
- changed dynamic menue list definition in xsane_setup for TIFF_COMPRESSION menu
xsane-0.50 -> 0.51:
-------------------
- added some rangechecks to histogram->gamma calculation
it is done as histogram->gamma->histogram now
- changed redraw frame in preview_display_partial_image(),
now the old image is completely overpainted!
- added xsane_set_all_resolutions() to xsane_printer_callback,
now paper size frame is updated when printer is changed
- corrected wrong error message in setting of scansource_selection
from "unknown type" to "unknown constraint type"
- moved xsane.header_size = 0; to the end of xsane_scan_done so it is called in each case
the missing command was responsible for a segfault when starting a scan after xsane_cancel
has been called
- moved progress_bar from it's own window to the bottom of the main window
progress_bar texts are displayed in info frame and in progress bar
- added size in mm/cm/in to progress bar when not scanning
- in scales the number of digits is defined by quantization now, if no quantization is given
by backend (quant=0, SANE_TYPE_FIXED) x.2 digits are displayed
- corrected page_step for scales
- selection_active is reset in preview_display_partial_image instead of preview_paint_image
- updated czech translation file cs.po.in - thanks to Stansislav Brabec
xsane-0.51 -> 0.52:
-------------------
- changed gimp_install_procedure(...) for specified device: "RGB, GRAY" -> 0
- in xsane-scan.c and xsane-preview.c added " | GDK_INPUT_EXCEPTION" to
gdk_input_add(fd, GDK_INPUT_READ | GDK_INPUT_EXCEPTION, preview_read_image_data, p);
- added static int xsane_set_modus_defaults(void)
zoomfactor is set to 1.0 if copy mode is selected
full preview area is selected if copy or fax mode is selected
- removed a second xsane_device_preferences_restore(); in static void xsane_device_dialog(void)
- zoom factor keeps unchanged when printer is changed
- added psfile-geometry to setup/saving options, it is used when saving postscript in scanmode
- moved exisiting routines to open functions to xsane-front-gtk.c:
void xsane_define_output_filename(void);
void xsane_identify_output_format(char **ext);
- define_maximum_output_size is called in each routine that changes filename or fileextension
because the output frame is also drawn in scanmode with filetype postscript now
- included Stanislav Brabec's <utx@penguin.cz> sed-scripts and changes for Makefile.in in xsane-*/po
- added creation of newlanguage.po in po/Makefile.in
- updated german translation file de.po
- updated czech translation file cs.po - thanks to Stanislav Brabec <utx@k332.feld.cvut.cz>
- updated french translation file fr.po
xsane-0.52 -> 0.53:
-------------------
- added test if vendor, model and type strings do exists (pointer != 0)
otherwise "no vendor",... is printed
- changed
ext = &extension;
to
if (extension)
{
*ext = strdup(extension);
}
else
{
*ext = 0;
}
in xsane_identify_output_format - bad thing, I get old ;-)
- added new routine xsane_find_best_resolution that makes sure that the selected resolution
fits into range/quantization given by backend.
This is used by xsane_set_resolution and when resolution_list is created.
- added xsane_set_all_resolutions to xsane_set_modus_defaults
- xsane resolution can be changed by backend now
xsane-0.53 -> 0.54:
-------------------
- updated french translation table
- updated german translation table
- changed type of umask in preferences from mode_t to int because
sizeof(mode_t) is on some machines only 2 bytes what cause problems.
all calls of umask(foo) are changed to umask((mode_t) foo)
- changed preferences update_policy from GtkUpdateType to int.
- selection box can not be moved out of the preview window, the
size of the selection keeps unchanged in that case now.
- removed some gtk_main_iteration and reordered some selection drawing routines.
- removed unused files/directories from package:
sanei, include/sane/sanei_(some).h, po_old
xsane-0.54 -> 0.55:
-------------------
- added preview support for 16 bpp (transformed to 8bpp)
- added copyright line in devcie selection dialog
- preview selection frame is only active when backend supports coordinate selection
- added preview oversampling factor (multiplier for calculated preview resolution)
- added lineart enhancement: preview can be done in grayscale now,
threshold value change is displayed without a new preview scan.
- added "device options" to setup dialog:
- Scanner dependant options for grayscale->lineart conversion have
to be entered there.
- a color preview is now displayed gray when grayscale mode is selected
- updated de.po, cs.po, fr.po
- updated po/xsane-pot.sed
xsane-0.55 -> 0.56:
-------------------
- added hold timer to preview (update-policy=delayed)
- added hold timer to xsane_slider (update-policy=delayed)
- moved help menu from file to help
- added swedish (sv) translation - thanks to Johan Bengtsson <johanb@lls.se>
- removed bug in xsane_rc_io_w_string, it returns EINVAL now each time when the string
does not begin with "
xsane-0.56 -> 0.57:
-------------------
- made xsane_choose_device return type to void (was gint32)
- arranged device-preferences in struct xsane in the order they are used
as device preferences, made sure that all variable types are correct:
- changed type of xsane.mode from gint32 to int
- changed type of xsane.lineart_mode from gint32 to int
- changed type of xsane.show_preview from SANE_Bool to int
- changed type of xsane.enhancement_rgb_default from SANE_Bool to int
- changed type of xsane.fax_finemode from SANE_Bool to int
- added mask for *_lock in preview motion_notify_event handling
Preview selection can be done with locks activated now
- histogram is cleared before/redrawn after saving/loading device settings
- added xsane_control_option() that tests if option >= 0 and returns SANE_STATUS_INVAL if not
- added xsane_get_option_descriptor() that tests if option >= 0 and returns NULL if not
- changed parameters of preview_area_resize and added preview_area_resize_handler
- removed a lot of gtk_main_iterations from xsane_preview.c
they make problems in the redrawing order and can cause display problems
xsane-0.57 -> 0.58:
-------------------
- split the preview_event_handler into
- preview_press_button_event_handler
- preview_motion_event_handler
- preview_release_button_event_handler
- the preview_expose_event_handler now is called twice,
the second call has been placed in the preview_event_handler_before
- reactivated gtk_main_iteration after at the end of motion_event
- added warning window when xsane is started as root
- added selection of temporary directory in preferences/setup/saving options
- added gdk_input_remove(xsane.input_tag); before xsane_start_scan is called
in 3-pass scanning mode (suggestion from Heiko_Schroeder@t-online.de)
- changed output of "xsane -v"
- in xsane_scan_done moved xsane.header_size = 0; before test for ADF
Thanks to Russell Coggrave for the info about it.
- added gtk_set_locale() before gtk_init()
- added copyright sign "(c)" to translated texts because it is not available on all charsets
- temporary filenames are created random and unique (mktemp + random number)
due to security problems with fixed/calculateable tempfiles.
- the preview-files are created (empty) at program startup now
- when program exits the previews are erased
there is no way to store the preview images any more when the program is closed
- preview_restore_image() creates the xsane-startimage if no preview is stored
- renamed directory frontend to src
- create xsane-help script that opens online helpfile
xsane-0.58 -> 0.59:
-------------------
- preview_do_gamma_correction does test for 3 pass scanner color mode
- changed fax x-resolution and standard resolution from 98 ppi to 204 ppi
and with of faxpage from 210.0 to 215.7 (so we get 1728 pixels in x direction,
hxlafax-faq says that is the correct size)
- split preferences.printer[..].resolution -> lineart, grayscale and color_resolution
- added setlocale(LC_NUMERIC, "C"); in xsane_init() and #include <locale.h> in xsane.h
this should solve the problems with empty images (100%transparent) with gimp
and other problems that were caused by local settings (1.3 <=> 1,3).
- added setup-option "disable gimp preview gamma"
- added selection (preferences/setup/enhancement options) if autoenhancement changes gamma value
- renamed Preferences/Setup/"Device options" to "Enhancement options"
- removed xsane internal callbacks from dialog struct, the functions are called directly now
- changed the reading of the preview image header. The last newline character before the image
data starts again made some problems, this seems to depend on the data that follows. So I added
a fgets() command to skip the newline character - this seems to work.
- changed increase_filename_in_counter, does work now if the only character of the base-filename
is the counter
- reduced size of src/xsane-startimage.pnm (1MB => 0.6MB)
xsane-0.59 -> 0.60:
-------------------
- after filename counter is increased the cursor in the outputfilename entry is moved to the right
- in preview_read_image_data when image is complete:
preview_update_surface(p, 0);
is called before
preview_display_image(p);
this way the geometry of the first preview scan is correct.
- moved xsane_set_all_resolutions in xsane_update_xsane_callback(),
it now also is called when the backend only uses one reesolution
- added calibration image (xsane-calibration.pnm) that is loaded when setup window is created.
The xsane enhancement functions are disabled in calibration mode, the image can not be
resized (xscale = yscale = 1.0).
The previsous image is reloaded when the setup window is closed again.
- enviornment variable SANE_DEFAULT_DEVICE is used to activate the radiobutton in the
device selection menu
- removed unused item "custom" from preview surface menu
- changed preview surface menu items:
A3 -> A3P (portrait)
A4 -> A4P (portrait)
A4H -> A4L (landscape)
A5 -> A5P (portrait)
A5H -> A5L (landscape)
- removed script xsane-help, necessary command now is listed in xsane.PROBLEMS
xsane-0.60 -> 0.61:
-------------------
- added debug output function and messages (environment variable XSANE_DEBUG)
- moved all global variables and struct GSGdialog to global struct xsane
- cleaned up some variable names
- added free gamma curve dialog (not ready)
- prepared xsane for win32:
- when BUGGY_GDK_INPUT_EXCEPTION is defined only blocking mode is used
(needed because GDK input exception does not work on win32)
- on win32 you cannot get a homedirectory, for this
XSANE_FIXED_HOME_PATH has to be set to the path that shall be
used as homedirectory
- replaced all gtk_dialog_new by gtk_window_new and added hbox and vbox to the window
(gtk_dialog_new does not work on WIN32)
- added xsane.WIN32 and xsane.WIN32-compilation that describes how xsane
is build on WIN32 with CYGWIN
- replaced "/" in all paths, added label SLASH that is predefined to '/' if it is
not defined by compiler option. For WIN32 it is set to '\' by compiler option
- all fopen functions use argument "rb" or "wb" now (b=binary). This is needed for WIN32
and the b is ignored on unix systems.
- published binary version xsane-win32-0v01 and xsane-win32-0v02 based on
xsane-pre0.61 versions
- removed an ugly bug: in struct Preferences there was predefined a string ("/tmp/")
that caused a bad memory state when the string memory was freed,
instead the string is defined in xsane_pref_restore now
- changes for tiff format:
- added support for 16 bit tiff format.
- predefined tiff-compression is changed from 5 to PACKBITS(16bit), JPEG(8bit), FAXG3(1bit).
- add resoultion-tags and datetime-tag to tiff files.
- added "change directory" entry to preferences menu
- added "scanning for devices" dialog
xsane-0.61 -> 0.62:
-------------------
- updated manpage (was about 1 year old)
- removed sigprocmask.c from xsane-*/lib (not used)
- added icons (32x32 and 48x48) for unix(xpm) and Windows(ico)
- some additional changes for rotating preview
- removed bug in preview_get_color that caused segfault when
click with pipette was placed into preview area but outside the image,
( there was no test for image size )
- in info dialog tiff is now listed as supported 16 bit format
- filename counter is increased now if path or filename includes a "."
and fileytpe is seleced by menu
- added possibility to move the edge of the preview selection frame
thanks to Laurent Martelli for his suggestion for that
- added sane_get_parameters(xsane.dev, &xsane.param) at end of preview_scan_done
this way it is made sure that xsane.param is correct after preview scan
(was not correct in copy mode with lineart=grayscale->lineart preview)
- added explaination of "[DEVICE]" in xsane help message
- gimp handling now is always called in xsane_scan_done
(was not called when an error occured or the cancel button was pressed).
- moved selection of fax finemode to fax-project window, image is always scanned
in fine mode resolution.
- html-documentation is updated (a bit)
- removed bad "+ 0.5" from calculation in preview_set_option_float: word = SANE_FIX(value) + 0.5;
- included italian translation table (it.po), thanks to Mauro Colorio <macolori@tin.it>
- added error message in xsane_control_option if command failed
- p->startimage is set to 0 in preview_scan_start
xsane-0.62 -> 0.63:
-------------------
- added turkish translation (thanks to Togan Muftuoglu <toganm@turk.net>)
- changed gimp interface from 1.0 to 1.1.2x (GParam->GimpParam etc),
added xsane-oldgimp.h that adds #defines for the old gimp interface
- added "make uninstall"
- changed confiure.in, added test for x_includes before it is used,
renamed it to configure.old
- new configure.in file that does use "sane-config" now to find the sane libraries
xsane-0.63 -> 0.64:
-------------------
- changed xsane-oldgimp.h to work with gimp-1.0.4
- added info icon (green triangle with explanation mark)
- added info window function: xsane_back_gtk_info
- ADF mode: if first scan fails with NO_DOCS => error message: no docs
if another scan ends with NO_DOCS => info message: scanned pages: #
- added some accelerator keys. The key definitions may change any time,
this is a first test version. The key-definitions are listed in xsane.ACCELKEYS
- added grab_default for close buttton in info and about dialog
- changed test for sane-libs in aclocal.m4, "-lintl" is removed from
the output of "sane-config --libs"
(this caused segfaults when gettext is included in libc)
- added about translation dialog
- added options "-p", "--print-filenames", if enabled and xsane runs in scanmode it
prints names of produced image files to stdout
- added options "-N name", "--force-filename name", if set the user filename selection
is disabled and the given name is used as filename. The filename should be of the
form "basename-00001.filetype". The size of the counter has to be suffisunt large.
- some changes in configure script (missing libs needed by sane are not linked any more)
xsane-0.64 -> 0.65:
-------------------
- src/Makefile.in: added usage of SANE_CFLAGS and GTK_CFLAGS
- added secure password transmission for authorisation (md5digest)
- ~/.sane/pass is used for reading user:password:resource from file before asking the user
- configure: removed test for X (AC_PATH_X), this is done in GTK (gtk-config)
gtk includes and libs are used for png test (because png often is in X directories)
- changed xsane_*_with_pixmap:
old status: routines used xsane.histogram_dialog->window as window for gdk_pixmap_create_from_xpm_d()
this made problems with preview window if X default color depth differd from X color depth
new status: routines are called with parameter GdkWindow *window now.
xsane-0.65 -> 0.66:
-------------------
- added setup menu for Automatic Document Feeder Scansource
(ADF-Scansource name was predefined to "Automatic Document Feeder" before,
now it can be defined for each device (is saved in decice settings))
- changed setup for lineart->grayscale scanmode from entry to menu with available scanmodes
- updated xsane.WIN32-compilation and src/Makefile.in.WIN32
I compiled a pre version of xsane-0.66 with the cygwin snapshot from 2000-12-10 and
gtk+-dev-20001023.zip, glib-dev-20001023.zip, libiconv-dev-20001007.zip
with the way described in xsane.WIN32-compilation without any problems.
The problem with the fork() seems to be solved in this cygwin version.
- updated aclocal.m4 and configure (gimp test)
xsane-0.66 -> 0.67:
-------------------
- added test if (xsane.adf_scansource) before usage of xsane.adf_scansource
(caused segfault when no ADF Scanmode was defined in setup)
xsane-0.67 -> 0.68:
-------------------
- changed src/Makefile.in.WIN32 so that the installation directory can
be selected by configure --prefix=... and the used paths are more
common to the one on unix (/usr/local => c:\sane)
- changed src/Makefile.in.WIN32 for gimp support (uncomment GIMP_LIBS)
- WIN32+gimp-support: set_gimp_PLUG_IN_INFO_PTR(&PLUG_IN_INFO) is called
- added extern GimpPlugIn PLUG_IN_INFO to xsane.h (needed in xsane.c for win32)
- replaced free(xsane.tile) by g_free(xsane.tile)
(the free(...) caused a crash on win32)
- changed aclocal.m4: gimp test does work with gimp-1.0.x version again
- renamed xsane.WIN32 and xsane.WIN32-compilation to xsane-WIN32.txt
and xsane-WIN32-compilation.txt (it is easer to use on windows)
- removed (#ifndef _WIN32) gtk_set_locale() from xsane.c for win32
(when it was called gimp plugin created transparent images)
- saved xsane-style.rc in DOS mode (\n\r)
xsane-0.68 -> 0.69:
-------------------
- some changes in aclocal.m4 for gimp test:
- When gimp-config is not found, the output of gtk-config is used
- GTK_CFLAGS or GIMP_CFLAGS are added to CPPFLAGS for test for gimp.h and gimpfeatures.h
- GTK_CFLAGS and GTK_LIBS are erased when gimp_config is available
- changed src/Makefile.in: GIMP_CFLAGS is used now
- saved xsane-style.rc in unix mode (\n) because DOS mode (\n\r) made problems
- added new way to call netscape remote command:
at first xsane tries to find out if netscape is running, for this it tries to
find out if there is a link "~/.netscape/lock". If this link exists netscape should
be running and xsane calls "netscape -remote openFile(...)". Otherwise xsane calls
"netscape ..."
- changed keywork "netscape-remote" as docviewer to "netscape"
- changed way to find out home directory in xsane-back-gtk.c:
now getenv(ENVIRONMENT_HOME_DIR_NAME) is used instead of getpwuid(...)->pw_dir.
(getenv is usable for Win32 and unix, getpwuid makes problems on Win32)
xsane-0.69 -> 0.70:
-------------------
- removed some bugs in text for pipette in sane-xsane-preview-doc.html
- changed acloacal.m4: when gimp-config is not found we look for gimptool
- for WIN32 the filetypes listed in the filetype menu are ".jpg" and ".tif"
instead of ".jpeg" and ".tiff"
- added manufacturer image to bottom of standard and advanced options window.
The name of the image is "vendor"-logo.xpm" or "sane-"backend"-logo.xpm",
the size of the image should be 256x48 pixels with a transparent background.
- changed src/Makfile.in: *-logo.xpm are installed (make install) and
uninstalled (make uninstall) now
- changed src/Makfile.in.WIN32: *-logo.xpm are installed (make install)now
- several changes in xsane-preview.c for rotating preview by 0/90/180/270 degree
the preview rotation is ready now
- added new routine xsane_save_rotate_image to xsane-save.c
- added new routine xsane_save_grayscale_image_as_lineart to xsane-save.c
- lineart images are saved in grayscale mode at first if transformation has to be done
- xsane_save_rotate_image is called beween scanning and saving image
- xsane_save_grayscale_image_as_lineart is called beween rotating and saving image
- aclocal.m4/configure: changed sane_major_version etc to SANE_CURRENT_MAJOR
- fileheader of raw format changed. This format is not defined, but some programs
can read it as 16 bit pnm binary data, so we use a compatible header now:
P5
# This file is in a not public defined data format.
# It is a 16 bit gray binary format.
# Some programs can read this as pnm/pgm format.
# SANE data follows.
100 100
65535
xsane-0.70 -> 0.71:
-------------------
- corrected aspect ratio in xsane-preview.c in routine that calculates preview resolution
- corrected user definition of maximum scanner surface
- added translation of preview menu maximum surface(preset area)
- added tooltip for maximum surface(preset area) menu and rotation menu
- finished preview_autoselect_scanarea()
- added autoselect scanarea button to preview window
- changed automaitic increase of filename counter:
- the step direction and length is not forced to +1,
the user can select one of the values -2/-1/0/+1/+2.
It is defined by preferences.filename_counter_step.
This way it is possible to scan double sided papers
with correct automatic page number generation.
- the digits are not increased by a loop any more,
the number is read, the new number is calculated
and the new filename is generated. The user can
select a minimum filename counter length now,
it is defined in preferences.filename_counter_len
and can be selected by the user in setup/saving options
- when the number of digits are not enough the number is
automatically increased now.
- a message comes up when counter gets smaller than 0
- pipette the color is averaged on a square, the size of the
square can be defined by the user
- updated html doc (not complete)
- added tooltips to permission buttons (r,w,x)
permission texts: user, group, all, read, write, execute can be translated now.
- added japanese translation (thanks to Kimizuka Tomokazu <sgtom@pluto.dti.ne.jp>)
- renamed oldgimp.h to gimp-1_0-compat.h
xsane-0.71 -> 0.72:
-------------------
- changed default postscript viewer from xv to gv
- moved int i, select = 1; in static void xsane_saving_notebook() out of #ifdef HAVE_LIBTIFF block
- filename counter length correction is only done in sane_start when there is a user selectable filename
- if external filename is given the counter len is not touched when not necessary
- added "insert file" function to fax mode
- added output of gamma, brightness and contrast settings to pnm headers
- updated xsane online-documentation (html)
- added license dialog, it is shown when it was not already accepted for this xsane version
(tested in local xsane.rc)
- about and about translation dialogs do not set XSane´s sensitivity to false any more
- copyright sign is now always defined as "(c)", can be translated with \251 if character is available
- device preferences are not saved/loaded any more when file selection is aborted
- in xsane_info_dialog the scanner type is translated now
- added accelerator keys to device selection dialog:
Escape -> Cancel
F1,F2,.. -> select device number 1,2,...
- added usleep(100ms) in device selection dialog before scanning for devices, this way we make
sure that the text "scanning for devices" is displayed
- added some accelarator keys to the preview window:
Alt ESC Cancel Preview Scan
Alt KP+ Zoom in
Alt KP- Zoom out
Alt KP* Zoom not
Alt KP/ Zoom undo
Alt A Autoselect scanarea
Alt V Select visible scanarea
- added accelerator key Escape to file-selection-dialog, about-dialog and about-translation-dialog
attached to cancel/close button
- updated translations:
- german translation
- czech translation - thanks to Stanislav Brabec <utx@penguin.cz>
- turkish translation - thanks to Togan Muftuoglo <toganm@yahoo.com>
- japanese translation - thanks to Kimizuka Tomokazu <sgtom@pluto.dti.ne.jp>
- french translation - thanks to Laurent Grawet <laurent.grawet@ibelgique.com>
xsane-0.72 -> 0.73:
-------------------
- moved call to display license after test for command line options,
so it is not necessary to accept the license to print help/version/license
- added slowenian translation, thanks to Ales Kosir <ales.kosir@zaslon.com>
- an error message is printed when a preview file could not be created
- netscape is called with option new-window now
- rotating scanned image uses memory mapped image file if possible
thanks to Salvador Pinto Abreu <spa@di.uevora.pt> for his suggestions
- xsane windows are set insensitive while faxproject is generated/queued.
For this waitpid is called in a loop.
- before a html documentation is displayed xsane does test if the requetsted file
does exist in the subdirectory language_dir = gettext("language_dir")
(what e.g. gives "de" for german). If it does exist it is displayed, otherwise
the original english doc is displayed.
"language_dir" has to be part of the translation table, it should be
translated to the correct translation direcotry name, e.g. de for german
- preferences.printer momory is defined dynamicall now (has been defined to 10
pointers to printerdefinition before)
- chaged with of some setup fields - have been too small for large fonts
- xsane-scan:xsane_scan_dialog():
added test for color scan to the test if gamma tables for red, green and blue
exists (coolscan backend defines color gamma tables in grayscale mode
what caused segfault in xsane).
- added preselect scanarea after preview scan (selection in enhancment setup)
- added automatic color correction after preview scan (selection in enhancement setup)
- removed bug (that caused segfault when opening setup dialog) in xsane_enhance_notebook
while setting up menu itmes for grayscale scanmode selection:
replaced xsane.well_known.scanSOURCE xsane.well_known.scanMODE
- added option in prefences/setup saving options: save device preferences at exit
- now using always gdk_window_get_root_origin() to get a position of a window on desktop
xsane-0.73 -> 0.74:
-------------------
- transfering data to gimp plugin now is handled like saving to a special file format.
this way it is possibe to support handheld scanners and to get advance of
some xsane features like image rotation.
- corrected mmap() part in xsane-save.c/rotation:
data is mmaped with offset pos0, the offset pos0 is removed from pointer calculation
- changed xsane_enhancement_by_histogram() and xsane_histogram_to_gamma(): the ranges
for gamma, brightness and contrast are checked correct now
- added function preview_transform_coordinate_window_to_image(), it is used in
preview_get_color(). Pipette functions do work with rotated preview now.
- corrected bug in ruler calculation. The rulers do work correct now with rotated preview
- corrected bug in reading 16 bit preview data: sizeof(buf16)-> sizeof(buf)
now preview transformation from 16 to 8 bit is as fast as 8 bit preview
- preset areas are defined with position (new) and size (old) now.
- surface changes (size and rotation) do not change the selected preview area
any more if possible
xsane-0.74 -> 0.75:
-------------------
- xsane_read_image_data() does reduce 16 bit images to 8 bit when necessary/requested
- when scanning with 16 bits/color in gimp mode, to jpeg-file or postscript-file
xsane does ask if the image should be reduced to 8 bits/color
- added functions for mirroring preview and mirroring while rotating scan
- moved saving device preferences from xsane_quit() to xsane_scan_win_delete()
and replaced call to xsane_quit() by xsane_exit() in choose_device dialog
(this could cause a segfault).
- corrected a bug in calculation of histogram for rotation of 270 degree
- added xsane_bound_int(&mid, min, max) to xsane_calculate_auto_enhancement()
a segfault could occur when autoenhancement was activated when only a few
preview-pixels where available for calculation of autoenhancement values
xsane-0.75 -> 0.76:
-------------------
- rotoation routine: mmap does map the full image file (not only from pos0)
- added xsane.depth, it stores the depth of the scanned image,
it may differ from xsane.param.depth when lineart is converted to grayscale
or 16 bit image is reduced to 8 bit
- preview: preset_area list is read from xsane.rc
- added context menu to preview preset_area menu, the preset areas can
be changed by user now
- transformation 16->8 bits/color: replaced val/256 by val >> 8,
a user said that his compiler is too stupid for such an optimization
- updated translations: cs, de, fr, ja, sv
- calibration image is not rotated any more
- corrected exposure event handling (drawing of the selection frame)
- added call of preview_restore_image() at the beginning of preview_update_surface().
This way the correct image parameters are used for the calculation in
preview_update_surface(). preview_restore_image() does not paint the image any
more, this is done at the end of preview_update_surface() now.
- corrected bug in xsane_calculate_histogram() with zoomed and rotated preview
with angels 90 and 270 degree.
- info dialog does print sane version as #.#.# (instead of #.#) again.
sane-dll will return the version of the sane package from sane-1.0.5
so it is possible to find out the used library version in most cases.
- xsane-scan.c: scan data is not written with fwrite() in 1 byte steps
any more because it looks like some systems (at least HP 9000/B1000
(processor PA8500/300 MHz, 384 MB RAM) operating system HP-UX 10.20)
have problems with this. The data is stored in the read buffer when
any transformation (gamma, 16->8 bit) is needed, the complete
buffer that is read with sane_read is written in one part.
- added xsane.spec - created by Sebastian Wenzler <wenzler@techie.com>
- autoselection of scanarea is not done for startimage
- preview image files (level 0-2) are removed and recreated when
the temporary directory is changed in the saving setup
(Preview scan has to be reacquried after changing the temporary directory)
- directory selection dialogs (change working directory and select temporary directory)
do not display filelist and delete-file widgets.
- xsane-preview.c and xsane-gamma.c:
- raw preview data is stored with 16 bits/color
- gamma correction is done with (8-16) bit to 8 bit enhanced data
the gamma input bits is set to 12 (but could be changed if we
add a widget that can change this value)
12 bit = 4096 values for each gamma table, this is a good
compromise between image quality, speed and memory usage
- All this slows down gamma and histogram routines, because of this
I accelerated these routines again:
- replaced field indexes by optimized pointer routines
- preview_motion_event_handler improved: continuous mode does use
a timer function now. this way the selection has a higher priority
than displaying the histograms.
- the raw histogram is only recalculated and displayed when it has been changed.
- improved event handling of the histogram sliders:
when continuous mode is active xsane_enhancement_by_histogram() is not called
directly any more, it is called via the xsane_slider_hold_event handler now
- split setup notebook "saving options" into "saving options" and "image options"
- added option "reduce 16 bit image to 8 bit" to setup/image options
This way you can use the preview with the full bit depth the scanner
can output and save it as image with 8 bits/color.
This is interesting e.g. when you scan slides or negatives.
- changed ouput in parameter box from "width x height (size unit)" to
"witdh x height x depth (size unit)"
- filetype menu is displayed correct now when xsane main window is rebuild
- removed a bug in aclocal.m4 wehn gimp was not found
xsane-0.76 -> 0.77:
-------------------
- removed "+0.5" in calculation of gamma table. A gamma value of 1.000 does
not change the image data any more
- xsane_update_gamma_curve(TRUE /* update raw */); is called when setup dialog is closed
(apply and cancel), now the preview is displayed with correct gamma values when setup
dialog is closed.
- configure does set gtk parameters correct when compiling gimp testprogram failed
- xsane internal gamma tables for scanning are created after sane_start is called,
this makes sure that the gamma table size calculated with param.depth really is correct
- setup uses selected length unit
- length unit is printed in top left edge between rulers in preview window
- when length unit is saved as inch the length unit submenu "in" now is selected at program start
- removed xsane.spec because I got a mail that it does not produce working installations
- length unit also can be selected now when backend length unit is pixel, so it
is possible to change the length unit of the setup window
- save device preferneces dialog is opened when user closes setup dialog and any
device options have been changed
- replaced all fprintf(stderr, ... by DBG(...
- updated translations: cs, de, fr, ja, sv, tr
xsane-0.77 -> 0.78:
-------------------
- when the backend defines a new scanner surface it is updated correct now
when the reduced preview surface does not limit the new surface
(added expand_surface to preview_update_surface()
- preview scan is aborted when backend sends more image data than expected,
the preview image is saved in this case
- the preview image is saved now when the preview scan is canceld, so the
already scanned part of the preview keeps visible
- when two preview levels have comparable quality it is used the preview
that is more up to date (scanned later)
- applied sanei_wire.c patches from sane-backends-1.0.5 to xsane-rc-io.c
- changed default values: histogram, and standard options windows are visible by default now
- added function (pirate icon) to delete preview image cache
- added mail project dialog
- added mail setup dialog
- added routines for sending images by mail (base64encoding, mail headers, smtp headers)
xsane-0.78 -> 0.79:
-------------------
- added test for lstat in configure/configure.in/config.h.in
- when lstat is available it is used for testing netscape lock file,
otherwise stat is used
- changed order of include lines in xsane-save.c
- for OS/2: in xsane_back_gtk_make_path() a colon ":" is replacte by "_"
- changed last argument of xsane_back_gtk_set_tooltip from char to gchar
- added function xsane_widget_test_uposition(GtkWidget *gtk_window)
that does test if gdk_window_get_deskrelative_origin or
gdk_window_get_root_origin gives the correct positions.
test is done with "scanning for devices" window.
- in xsane.c changed #if 1 to #ifdef BUGGY_GTK_TOOLTIPS_SET_COLORS
- split preview_increment_image_y in ... and preview_test_image_y,
test is called before a byte is copied into the buffer
- xsane-preview.c: preview_scan_start: preview image memory is only cleaned for
single pass mode and 1 pass of 3 pass mode (3 pass preview does work again)
- mail is sent in subprocess
- added "MIME-Version: 1.0" to mail header
- added mail status in mailfile, error messages while sending are stored in this file too
- aclocal.m4 test for gimp: moved saving of GTK_* to beginning of routine,
the GTK_* things should be set correct now when gimp-config is not found
- xsane.h: mail is deactivated when png is not available
- added preferences menu item "Medium":
The highlight/shadow/gamma values are defined to the intensity range
of the selected medium (e.g. agfa negative).
If possible the analog highlight/shadow function is used,
if not then the scanner internal digital gamma table is used
in bot then xsane´s internal gamma correction is used.
When the correct medium is selected it only is necessary to
do "soft" color corrections. Because of this the 400% values
in brightness/contrast have been reduced to 100% values now.
This is a typically range that e.g. also is used by the gimp.
If someone needs the larger ranges, change the following definitions
in sane.h:
#define XSANE_BRIGHTNESS_MIN -100.0
#define XSANE_BRIGHTNESS_MAX 100.0
#define XSANE_CONTRAST_GRAY_MIN -100.0
#define XSANE_CONTRAST_MIN -100.0
#define XSANE_CONTRAST_MAX 100.0
- moved call xsane_update_counter_in_filename as correction for counter length from
xsane_start_scan to xsane_scan_dialog (before open command), this way the
counter also is correct when the file is not transformed (pnm).
- corrected xsane_update_counter_in_filename: removed some pointer bugs when skipping
exisiting filenames
- added test for os2.h to configure/configure.in
- added set_gimp_PLUG_IN_INFO(&PLUG_IN_INFO); for os2
- removed "+0.5" in calculation of negative preview gamma table. A gamma value of 1.000 does
not change the image data any more
- effective user id is set to real user id in all subprocesses
- cancel preview does now only call sane_cancel and tests for SANE_STATUS_CANCELLED while
reading image data.
xsane-0.79 -> 0.80:
-------------------
- moved setting of medium gamma correction values from xsane_set_medium_callback in xsane.c
to xsane_set_medium in xsane-gamma.c
- xsane_set_medium is called in xsane_scan_dialog and in preview_scan
- replaced predefined areas 10x14 cm and 14x10 cm by 10x15 cm and 15x10 cm
- updated documentation (partly)
- correcting image height when canceling conversion to jpeg format,
program does not crash any more
- added russian translation - thanks to John Profic <profic@lrn.ru>
- solved problem with lineart image saved as png (wrong byte width)
- moved medium selection menue from preferences menu to xsane main dialog
- inactive backend options are not saved to the device-rc file
- added progress_bar to the paramter list of xsane_save_*
- added xsane-viewer.c and xsane-viewer.h to the src directory
- added fflush(outfile); to end of rotation routine, this seems to
solve a problem of incomplete files when rotating the image file
- added routine xsane_read_pnm_header to get correct header offset
and read geometrie values
- for saving routines now the header offset and geometrie values of
xsane_load_pnm_header are used instead of xsane´s internal values
- changed handling of color identification:
old: xsane_color == 0 => grayscale/lineart
new: xsane_colors == 1 => grayscale/lineart
- when image is saved as postscript file (not copy mode etc)
then the bounding box exactly surrounds the image now.
Removed psfile parts from setup and preferences.
- xsane_widget_test_uposition(gtk_window) does wait now until
gtk_window is realized before gtk_widget_set/get_uposition
test is done
- for hpux added include of alloca.h to sane.h
- added function xsane_debug_message that is used for DBG when
gcc is not used because defines with variable arguments is
not ANSI.
- updated translations: cs, de, fr, ja, ru, tr
xsane-0.80 -> 0.81:
-------------------
- xsane-gamma.c:
void xsane_calculate_raw_histogram(void): changed "maxval_raw = 0;" to "... = 1;"
void xsane_calculate_enh_histogram(void): changed "maxval_enh = 0;" to "... = 1;"
this avoids a floating point exception on some systems
- xsane-viewer.c: set default viewer size from 400, 400 to
0.3 * screen_width, 0.5 * screen height
- xsane-save.c: xsane_save_rotate_image() swaps x and y resolution when
rotation 90 or 270 degree
- removed slash at end of mkdir("~/.sane/xsane/"), OS/2 did not like this
- when temporary direcotry is not defined (xsane.rc does not exist)
then xsane at first tries to read the environment variable
defined by ENVIRONMENT_TEMP_DIR_NAME (default TMP) and if that
does not exist it uses a predefined (TEMP_PATH) path.
When xsane.rc does exist the temporary directory stored in xsane.rc is used.
- added blur and despeckle selction dialog to select filter radius
- changed viewer and preview window type from GTK_WINDOW_DIALOG to GTK_WINDOW_TOPLEVEL
- preview gamma does not have any effect to the enhanced histogram any more
- preview does medium gamma correction now when scanner does not support
gamma tables
- medium selection is disabled for lineart mode, gamma table is set to default
in this case. This guarantees that advanced lineart preview (by grayscale scan)
does work conform to the real scan.
- default resolution set to 72 dpi (if no resolution is defined by backend)
- added scanning/valid/incomplete/invalid pixmap to preview action area
- preview cancel does call preview_get_image_data after canceling the
scan, this makes sure that xsane does detect a cancled scan when
gdk_input does not detect closing the select_fd (what happens when
the backend does close the select_fd too early (what is allowed by
the sane standard))
- scan cancel does make sure that xsane_read_image_data is run
after sane_cancel is called
- added SIGTERM handler: xsane_quit() is called on SIGTERM
- when faxproject/xsane-fax-list can not be created an error
message is printed and the creation of the project is aborted
- in saving mode temporary conversion file is removed after conversion
- corrected wrong filenames while saving mail image after scanning
- added ocr function to viewer
xsane-0.81 -> 0.82:
-------------------
- number of medium items and area definitions is calculated by size of the
structure now.
- Improved security of temporary file handling:
- replaced mktemp() my mkstemp() in xsane_back_gtk_make_path.
The filename format changed because mkstemp creates the file
and so it is not possible to add an extension and the file
has to end with "XXXXXX" what is replaced by the safe random number
generated by mkstemp.
- before creating the image filename in xsane-scan.c the filename
is removed only if the created file is not a temporary file.
- removed remove() in xsane_save_image_as_lineart()
- added routine xsane_create_secure_file() that makes sure that the created
file does not follow a symlink
- when an error occurs while saving a file or the saving is aborted then
the created image is removed
- swaped order of opening inputfile and outputfile (outputfile now first) in
xsane_save_image_as_lineart()
- viewer_save_callback(): several changes for saving as lineart
- moved xsane_update_histogram() at end of xsane_update_gamma_curve()
into if (xsane.preview) block - this avoids segfault on some systems
- despeckle radius and blur radius dialogs are closed before routine is started
- removed bug in despeckle routine
- increased speed of despeckle routine by about factor 6
- changed despeckle radius range from 1-9 to 2-10
- changed blur radius range from 1-9 to 2-20
- routines xsane_draw_histogram_with_*() do not have parameter "int invert" any more,
the inversion already is done in the medium dependant histogram of the preview.
- added image scaling routine to viewer
- added spanish translation (es.po) - thanks to
Gustavo D. Vranjes <gvranjes@abaconet.com.ar>
- added dutch translation (nl.po) - thanks to
"Wim Sinke" <sinke@wirehub.nl>
xsane-0.82 -> 0.83:
-------------------
- scaling image size does work for 16 bit images now
- xsane_create_secure_file() now always removes the file (not only if it is a link),
this is needed because open(..., O_EXCL) does fail when the file exists (what can
happend when we want to overwrite an existing file).
- removed buggy ";" at end of if statement in xsane_enhancement_negative_callback
- default mode is viewer instead of saving mode
- updated po-files: nl
- xsane-front-gtk.c: void xsane_progress_cancel(GtkWidget *widget, gpointer data)
changed GtkSignalFunc callback = (GtkSignalFunc) data; to
GtkFunction callback = (GtkFunction) data;
- added media, experimentally determined values with UMAX Powerlook3:
Agfa XRG 200-4
Agfa HDC 100
Konica VX 100
Rossmann HR 100
- preview.c: preview_update_surface calls preview_update_selection at first to
make sure that the preview selection is up to date. Now xsane comes up with
the saved area selection when e.g. transparency mode is stored which forces
a change of the surface
- removed parameter negative from xsane_calculate_auto_enhancement,
autoenhancement does work again when negative button is pressed
- added mode "--Medium-definition"/"-M":
- preview is done without scanner gamma correction for medium
- added two icons to the main dialog: medium new and medium delete
- added xsanedocdir to doc/Makefile.in and src/Makefile.in
the path is used by xsane.c and the mentioned Makefiles
- removed in xsane-viewer.c, line 222: xsane_create_secure_file(outputfilename) before
xsane_save_image_as(...)
xsane-0.83 -> 0.84:
-------------------
- if xsane-license.txt is not file when it shall be displayed then xsane does
print an error message and behaves like when the user did not accept the license.
- if xsane-startimage.pnm is not found then an image of the size 1x1 pixel is
created instead. This should normally never happen but some people start
xsane without that it has been installed. Then the behaviour of the preview
has been undefined before.
- removed "rm -f $cache_file" when gtk or sane was not found in configure.in,
this was bad when a user used a global cache file
- viewer is created with image size - if possible
- added serbian translation file (sr.po) - thanks to Du¹ko Rusmir <drusmir@gmx.ch>
- xsane_sigpipe_handler: changed
xsane_cancel_save(0);
to
xsane_cancel_save(&xsane.cancel_save);
- updated po-files: es, fr, ja, nl, ru, sr, tr
- x and y resolution information are added to jpeg and png files now
- preview zoom buttons are now also available when backend does geometry
options with unit pixel
- added Plustek logo
|