forked from tcobbs/ldview
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeHistory.html
2198 lines (2101 loc) · 87.4 KB
/
ChangeHistory.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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1"/>
<title>LDView change history</title>
<link rel="SHORTCUT ICON" href="favicon.ico"/>
<style type="text/css"><!--
body
{
margin: 20px;
background-color: #F8F8F8;
text-color: #000000;
font-family: helvetica, arial, sans-serif;
}
a:link
{
color: #808080;
}
a:visited
{
color: #505050;
}
a:active
{
color: #0080d0;
}
table
{
border-collapse: collapse;
border: 2px solid #000000;
margin-bottom: 8px;
width: 100%;
}
table th
{
background-color: #0080D0;
font-size: 130%;
font-weight: bold;
color: #FFFFFF;
text-align: left;
padding-left: 10px;
border-color: #000000;
}
table td
{
padding: 4px;
vertical-align: top;
border-color: #000000;
}
table td.NoWrap
{
white-space: nowrap;
}
b.Bigger
{
font-size: 150%;
}
img.SFLogo
{
border-width: 0;
float: right;
}
p.FinePrint
{
font-size: 75%;
}
--></style></head>
<body>
<h2>Change history</h2>
<p></p>
<table border="1">
<tr>
<th>
Version
</th>
<th colspan="2">
Changes
</th>
</tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">4.6</b><br/>
(?? ???, 2024)
</td>
<td colspan="2">
<b>Additions</b>
<ul>
<li>Added support for using an LDraw Library Zip file to load parts instead of
files in the LDraw directory.</li>
<li>Added support for cylh and edgh primitives (not in POV export).</li>
</ul>
<b>Updates</b>
<ul>
<li>Use https for library and unofficial part downloads (except for command
line-only OS-Mesa-based ldview).</li>
<li>Deal more gracefully with the http 429 (Too many requests) status code.
Specifically, don't record a failed download attempt when this code is received,
and show an error to the user instructing them to wait a short time and then try
reloading the file.</li>
<li>Updated so that random colors produce the same colors each time you load a
given model. (That was the original intended behavior. This feature is designed
for parts authors, so having new colors show up every time they reload can be
distracting.)</li>
<li><b>Qt & Windows:</b> Move the LDraw and Extra dirs functionality from the
File menu to a new LDraw tab in Preferences.</li>
</ul>
<b>Bug Fixes</b>
<ul>
<li>Fixed initial directory creation during unzip of LDraw Parts library.</li>
<li>Fixed crash when canceling parts library update at the wrong time.</li>
<li>Fix CYLINDRICAL TEXMAP to be right side up.</li>
<li>Calculate best guess texture coords for on-axis vertices with
CYLINDRICAL TEXMAPs.</li>
<li>Fixed problem that resulted in duplicate and/or out of place conditional
lines.</li>
<li>Fixed problems when edge lines were enabled in POV exports.</li>
<li>Use alpha channel for auto-crop when transparent background is enabled.</li>
<li>Fixed highlighting of line geometry in the Model Tree.</li>
<li>Fixed minor problems with !LDRAW_ORG meta processing.
<li><b>Mac:</b> Fixed opening a file in LDView from Finder.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">4.5</b><br/>
(23 Apr, 2023)
</td>
<td colspan="2">
<b>Additions</b>
<ul>
<li>Added support for custom config LDraw file.</li>
</ul>
<b>Updates</b>
<ul>
<li>Optimize checking for library updates to finish quickly when the latest
available LDraw library update is detected in the local LDraw library.</li>
<li><b>Mac:</b> Now requires macOS 10.13 (High Sierra) or later.</li>
<li><b>Mac:</b> Improve toolbar buttons in Big Sur and later.</li>
</ul>
<b>Bug Fixes</b>
<ul>
<li>Fixed unofficial part downloads from the updated ldraw.org server.</li>
<li>Fixed LDraw library updates to work with new script on
library.ldraw.org.</li>
<li>Disabled BFC in opaque portions of transparent parts.</li>
<li>Fixed green/red/blue front/back/neutral BFC faces to work when lighting is
disabled.</li>
<li>Fixed primitive substitution for 48/ cone primitives with 2-digit
sizes.</li>
<li>Fixed specular and shininess in parent model leaking into child models.</li>
<li>Fixed possible threading problem with conditional lines.</li>
<li>Fixed possible problem loading preferences.</li>
<li>Fixed crash when textures were applied to colored geometry.</li>
<li>Fixed problem where a primitive in a user model would prevent subsequent
parts in the same model from being detected as being parts.</li>
<li>Fixed directly opening a file from LDraw library to recognize the attributes
(part, primitive, unofficial) of the directory from which it was loaded.</li>
<li>Fixed memory leak in Model Tree</li>
<li>Fixed model tree to treat LDraw files as UTF-8.</li>
<li><b>Mac:</b> Fixed possible problem with network address lookup.</li>
<li><b>Mac:</b> Fixed Errors & Warnings dialog to properly refresh when the
model is reloaded after changing the Extra Search Folders.</li>
<li><b>Mac:</b> Fixed crash when creating a new preference set on an Apple
Silicon Mac with macOS Monterey.</li>
<li><b>Windows:</b> Fixed Model Tree search to pick up from the current
selection when <i>Highlight selected line</i> is unchecked.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">4.4.1</b><br/>
(10 Feb, 2022)
</td>
<td colspan="2">
<b>Additions</b>
<ul>
<li>Added primitive substitution support for "tndis" (truncated not-disc)
primitives.</li>
</ul>
<b>Bug Fixes</b>
<ul>
<li>Fixed -CommandLinesList option ignoring some options on most lines.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">4.4</b><br/>
(07 Jul, 2021)
</td>
<td colspan="2">
<b>Additions</b>
<ul>
<li>Added support for SPHERICAL and CYLINDRICAL texture maps.</li>
<li>Added a search field to the Model Tree Dialog.</li>
<li>Added support for !DATA meta-command.</li>
<li>Added support for more n-16 primitives.</li>
<li>Added Camera Location Dialog.</li>
<li>Added Rotation Center Dialog.</li>
<li>Updated formatting of lines from LDraw files in Errors & Warnings dialog
to use double spaces around vertices.</li>
<li>Added support for -SaveSnapshotsList=<path>,
-ExportFilesList=<path>, and -CommandLinesList<path> command line
options.</li>
<li>Added ability to reset times for unofficial part downloads, to force LDView
to check the Parts Tracker again when it next opens any of those files. Also,
automatically do this when a new LDraw directory is chosen via the UI.</li>
<li>Added ability to create Z map files (with ldvz extension) alongside
snapshots.</li>
<li>Added setting to enable or disable the background in POV exports.</li>
<li>Added SnapshotTNMetas option to cause snapshot saves to write
Gnome-compatible metadata to PNG snapshots.</li>
<li>Added support for ~Moved to part lookup for LGEO POV exports.</li>
<li><b>Windows:</b> Added support for DPI scaling (AKA High DPI). Requires
Windows 10 Version 1703 (AKA Creators Update) or later.</li>
<li><b>Windows:</b> Added "LDView.com", a wrapper for LDView64.exe and
LDView.exe that is designed to be used from the command line so that errors and
warnings can be displayed.</li>
<li><b>Windows:</b> Added context help to Save Snapshot options.</li>
<li><b>Windows:</b> Added Save Snapshot options to disable Framebuffer Object
and Custom Pixel Formats.</li>
<li><b>Windows:</b> Added ShowErrorsMessageBox option to show errors in a
message box at the end of a command line snapshot or export run of LDView.exe
or LDView64.exe. (LDView.com is still recommended instead.)</li>
<li><b>Mac:</b> Added Retina support.</li>
<li><b>Mac:</b> Added support for QuickLook thumbnails for .ldr and .mpd files.
This can be disabled by unchecking the "Use LDView to generate thumbnails for
LDraw files" check box in the LDraw tab of LDView's Preferences.</li>
<li><b>Mac:</b> Added LDraw file line content to Errors & Warnings
panel.</li>
<li><b>Mac:</b> Added support for "Dark Mode".</li>
<li><b>Mac:</b> Added support for rotate (twist) trackpad gestures.</li>
<li><b>Mac:</b> Added support for Apple Silicon Macs.</li>
</ul>
<b>Updates</b>
<ul>
<li>Updated curve smoothing to not smooth edges that are coincident with edge
lines.</li>
<li>Increased the maximum angle between two surfaces that are allowed to be
smoothed, due to the edge line check added above.</li>
<li>Updated filename handling to use UTF-8 internally everywhere, and whatever
is appropriate for each platform in parts that need to be platform-specific.
This should mean that characters for any language can be used for
filenames.</li>
<li>Antialiased edge lines are now more visible visible around the edges of
transparent geometry, although this has a slight performance penalty.</li>
<li>Updated so that hitting space while the model is spinning will stop the
rotation.</li>
<li>Updated the Model Tree highlight so that if edge lines are enabled, they
show through all solid geometry in the model.</li>
<li>Update default verbosity for command line snapshots and exports to show
errors (but not warnings).</li>
<li>Wrapped LDX... declarations in #ifndef statements to allow them to be
declared in a wrapper file that includes LDView's generated POV file.</li>
<li>Removed "Transparent textures last" option in the Primitives tab of
preferences. It caused problems when it was unchecked, so now LDView always
behaves like it used to behave when this was checked.</li>
<li>Updated default POV file version to 3.7.</li>
<li>Updated to use srgb colors in POV 3.7 (or later).</li>
<li>Updated to disable SaveZoomToFit if ModelSize is specified, since the two
options are mutually exclusive.</li>
<li>Updated LGEO POV export to use LGEO hollow studs even on non-LGEO
parts.</li>
<li>Updated shapshot for parts list to be 800x600 instead of 400x300.</li>
<li><b>Windows:</b> Updated to Visual Studio 2019 compiler. (32-bit version uses
Visual Studio 2017 compiler for Windows XP compatibility.)</li>
<li><b>Mac:</b> Now requires macOS 10.9 Mavericks or later.</li>
<li><b>Mac:</b> No longer uses drawers (which are deprecated).</li>
<li><b>Mac:</b> Updated icon to Big Sur style.</li>
</ul>
<b>Bug Fixes</b>
<ul>
<li>Fixed texture coordinate memory corruption problem.</li>
<li>Fixed primitive substitution of ring primitives with 2-digit sizes.</li>
<li>Updated primitive substitution to round curve quality up to nearest 16
(except for the minimum value of 8) to fix problem where n-16 primitives
ended up spanning the wrong angle.</li>
<li>Fixed crashes when quads or triangles had to be converted to something else
and their coordinates had too many decimal places.</li>
<li>Fixed problem where textures with alpha blending would produce invalid
snapshot output when Transparent Background was enabled.</li>
<li>Fixed problem where texmaps wouldn't be visible on studs when stud textures
were enabled; this introduces a lesser problem, where no stud texture appears on
studs with opaque texmaps on top, and parts of the stud texture show through if
the texmap is partially transparent.</li>
<li>Fixed problem where edge lines were hidden by texmaps.</li>
<li>Fixed problem where using texmaps on geometry that is not color 16 would
cause corruption.</li>
<li>Fixed texmaps not working properly on triangle fans.</li>
<li>Fixed texmaps to work with BFC INVERTNEXT geometry.</li>
<li>Fixed to support loading LDraw files with arbitrarily long lines.</li>
<li>Fixed problem where a texmap with no geometry would cause subsequent
geometry to be textured.</li>
<li>Fixed problems handling invalid !TEXMAP meta-commands.</li>
<li>Fixed -CommandLinesList so it can properly handle files with CRLF (Windows)
line endings.</li>
<li>Fixed command line POV exports to include LDView version number.</li>
<li>Fixed error handling during smoothing in POV exports.</li>
<li>Fixed Model Tree highlight to properly deal with different line widths.</li>
<li>Fixed Model Tree highlight to draw edge lines in the highlight color.</li>
<li>Fixed POV export of chrd primitives with a fraction greater than 1/2 when
primitive substitution is enabled.</li>
<li>Fixed POV export of ndis primitives with a fraction not divisible by 8 when
primitive substitution is enabled.</li>
<li>Fixed so that "Random colors" setting does not corrupt exports.</li>
<li>Fixed primitive substitution of rm torus primitives.</li>
<li><b>Mac:</b> Fixed command line snapshot generation to work in macOS High
Sierra and later.</li>
<li><b>Mac:</b> Fixed Errors & Warnings panel "Copy Error to Clipboard"
button.</li>
<li><b>Mac:</b> Fixed Errors & Warnings panel to not truncate rows.</li>
<li><b>Mac:</b> Fixed Model Tree panel to not truncate rows.</li>
<li><b>Mac:</b> Fixed full screen support.</li>
<li><b>Mac:</b> Fixed behavior when macOS has been configured to treat the
three-finger trackpad swipe gesture as a mouse drag gesture with the left button
pressed.</li>
<li><b>Mac:</b> Fixed "Last Saved" preferences to work for snapshots, parts
lists, and exports.</li>
<li><b>Mac:</b> Fixed toolbar problems in Big Sur.</li>
<li><b>Qt:</b> Fixed snapshot saving from Qt 5 UI.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">4.3</b><br/>
(30 Jan, 2018)
</td>
<td colspan="2">
<b>Additions</b>
<ul>
<li>Added support for command line exports.</li>
<li>Added ability to specify an alternate LDConfig.ldr file on the command
line.</li>
<li>Added support for -IniFile=<path> on the command line.</li>
<li>Added Keep Right Side Up feature to Mac version.</li>
<li>Added support for mixed-resolution torus primitives.</li>
<li>Added FreeBSD packaging support</li>
<li>Added AppImage packaging support</li>
<li>Added new texture mapping settings to allow user control over tradeoffs
introduced with the texture mapping fix for transparent surfaces.</li>
</ul>
<b>Updates</b>
<ul>
<li>Updated Mac, Qt, and OSMesa versions to optionally show errors and warnings
when used to generate snapshots or perform exports from the command line.</li>
<li>Updated "What's This?" help in Windows version to work on modern versions
of Windows.</li>
<li>Updated Linux packaging scripts for RPM and Debian based distros</li>
</li>
</ul>
<b>Bug Fixes</b>
<ul>
<li>Fixed crash when loading a file that contained a spherical texmap.</li>
<li>Fixed "Extra search directories" to work again.</li>
<li>Fixed OSMesa version to work properly on case-sensitive file systems.</li>
<li>Various fixes of memory leaks and potential (unlikely) crashes based on
output from the Xcode static analyzer.</li>
<li>Fixed Windows screen saver to use the LDraw directory set in the main
application.</li>
<li>Fixed POV-Ray export problem with 48/ torus primitives.</li>
<li>In Windows, ignore the saved window position of any dialog when it results
in a window that is less than half visible.</li>
<li>Ignore UTF-8 Byte Order Mark (BOM) if it is present in a model file.</li>
<li>Fixed so that texture mapping a transparent surface doesn't make that
surface opaque.</li>
<li>Fixed crash when a !TEXMAP meta-command in an LDraw file does not result in
any textured geometry.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">4.2</b><br/>
(09 Jul, 2016)
</td>
<td colspan="2">
<b>Additions</b>
<ul>
<li>Added support for blue neutral faces for BFC.</li>
<li>Added "Right Side Up" feature, along with "Keep Right Side Up" setting while
in fly-through mode.</li>
<li>Added support for menu item images in Windows on OSes prior to Windows
Vista. (Menu item images already worked on Vista and later.)</li>
<li>Added scale selection to STL export. (Previously it was always cm.)</li>
<li>Updated Mac version to support pinch gesture for zooming and three-finger
swipe gesture for panning.</li>
<li>Added support of
<a href="https://build.opensuse.org/package/show?package=LDView&project=home%3Apbartfai">
openSUSE Build Service</a>.</li>
</ul>
<b>Updates</b>
<ul>
<li>Updated "Random colors" setting to avoid BFC face highlight colors enabled
under BFC (green front faces, red back faces, and blue neutral faces), but only
if they are enabled.</li>
<li>Updated transparency sorting to use less memory during initialization.</li>
<li>Updated highlighting in the model tree to work better on sub-geometry of the
selected line that has hard-coded colors (not color 16).</li>
<li>Updated HTML Parts List for improved printing.</li>
<li>Disable transparency when one or more of the red back faces, green front
faces, or blue neutral faces options is enabled, and BFC is enabled.</li>
<li>Update POV export to improve generated file.</li>
<li>Updated code to be compatible with Qt 5.x</li>
<li>No longer require BASE install package on initial LDraw library install,
since it is no longer present in ptreleases.cgi.</li>
</ul>
<b>Bug Fixes</b>
<ul>
<li>Fixed crash when taking a snapshot using a video card without Frame Buffer
Object support.</li>
<li>Fixed detection of LDConfig.ldr on case-sensitive file systems (Linux).</li>
<li>Fixed zoom to fit to ignore conditional control points when they aren't set
to be drawn.</li>
<li>Fixed rare bug where a recent filename getting truncated to fit in the menu
could cause memory corruption.</li>
<li>Fixed crash related to BFC INVERTNEXT.</li>
<li>Fixed menu item images when running in Vista and later with visual styles in
LDView disabled.</li>
<li>Fixed crash in POV export when triangles or quads were in the file with
points less than .001 LDraw Units apart (but greater than 0 units).</li>
<li>Fixed bug where sloped LGEO bricks would use the _slope version of the color
even if it was a color not directly supported by LGEO, and therefore without a
corresponding _slope color definition. This would result in a POV error.</li>
<li>Fixed 3DS export to properly handle BFC INVERTNEXT.</li>
<li>Fixed STL export problem where some colored geomtry would not be
exported.</li>
<li>Fixed command line snapshot generation to pay attention to the Extra Search
Directories set via the UI.</li>
<li>Fixed seams in POV export to not fail for parts that are as thin as or
thinner than the seam width (like stickers).</li>
<li>Fixed autocrop to generate a 1x1 pixel image when all pixels in the image
match the background color. Previousy, it didn't crop at all.</li>
<li>Fixed 3DS exporter to use object names that don't have too many
characters.</li>
<li>Fixed position of pneumatic pistons on 8464.mpd to correct for their origin
having changed before they became official parts.</li>
<li>Fixed uninitialized variable that sometimes prevented steps from
working.</li>
<li>Fixed Show All/Show None buttons on Mac version to not skip the last error
type, and to repopulate the error list based on the new selected errors.</li>
<li>Fixed 3DS exporter creating files that are way bigger than needed.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">4.1</b><br/>
(03 Dec, 2009)
</td>
<td colspan="2">
<b>Additions</b>
<ul>
<li>Added curve smoothing option for POV-Ray exports.</li>
<li>Added ability to highlight the geometry represented by currently selected
line(s) in the model tree. (Note that multiple selection in the model tree is
only supported on the Mac.)</li>
<li>Added status bar to model tree showing the filename and line number of the
currently selected line.</li>
<li>Added ability to randomize colors (useful for part authoring).</li>
<li>Added view mode toggle to default toolbar (Windows and Mac only).</li>
<li>Added toolbar customization, along with the ability to put a lot of LDView
functionality on the toolbar (Windows and Mac only).</li>
<li>Added OK and Cancel buttons to the MPD dialog. Hitting OK causes the
selected sub-model to remain selection after the dialog is dismissed.</li>
<li>Added remote control support to Windows version, so other programs can
make LDView perform certain functions.</li>
<li>Added "Overwrite existing snapshot" option to Parts List dialog when
"Show model" is checked.</li>
<li>Added 3D-Studio export.</li>
<li>Added ability to specify step from the command line.</li>
<li>Added ability to specify MPD sub-model name from the command line.</li>
<li>Added "Automatic" aspect ratio setting for POV exports.</li>
<li>Added new !LDVIEW BBOX_IGNORE meta command, to allow you to specify parts of
the model that LDView should ignore during bounding box calculations. That way,
the default zoom and zoom to fit can be tighter.</li>
<li>Add support for "ri" and "r" ring primitives.</li>
<li>Add support for "r" torus primitives.</li>
<li>Added 64-bit version of the Windows Explorer thumbnail generator plugin, so
thumbnail generation can now be performed on 64-bit versions of Windows.</li>
<li>Added 64-bit Ubuntu package.</li>
</ul>
<b>Updates</b>
<ul>
<li>Updated Linux version to use Qt 4.4/4.5 instead of Qt 3.3.</li>
<li>Removed BFC and Show Axes from the default toolbar (Windows and Mac
only).</li>
<li>Updated examine/fly-through status bar icons.</li>
<li>Changed the Model Bounding Box feature to be a toggle.</li>
<li>Updated full screen mode to not change the display settings if the requested
display mode matches the current display mode.</li>
<li>Updated snapshot save to include MPD sub-model name as part of the default
filename if an MPD sub-model is selected.</li>
<li>Updated LGEO POV export to use LGEO studs even on non-LGEO parts.</li>
<li>Updated automatic part downloading to improve its performance.</li>
<li>Updates library update check to scan all existing part files to determine
the latest update already installed, instead of trying to figure this out based
on the contents of files in the models directory.</li>
<li>Updated handling of quads with colinear points to split the quad into two
triangles at the colinear point in order to avoid T-Junctions.</li>
<li>Improved detection of what version of the parts library is installed.</li>
</ul>
<b>Bug Fixes</b>
<ul>
<li>Fixed problem that caused the view mode icon to show up in the wrong part
of the status bar sometimes, and show the lat/lon when in fly-through mode.</li>
<li>Fixed crash when loading a part with "Part Bounding Boxes Only"
enabled.</li>
<li>Fixed resize grip on Model Tree dialog to not disappear immediately after
hiding the options.</li>
<li>Fixed bug that caused a crash any time you tried to bring up the screensaver
settings.</li>
<li>Fixed full screen support when used on a second monitor.</li>
<li>Fixed POV export to not apply seams to sub-parts of parts.</li>
<li>Fixed bug that caused the step in the toolbar to not update if you changed
steps while the model was rotating on its own.</li>
<li>Stop applying seams to parts that have been transformed non-uniformly. This
was causing significant problems with flex tubes, which are stretched to
arbitrary lengths. The excessive stretching messed up the seam calculation,
causing them to be way too short.</li>
<li>Fixed primitive substitution with 48-segment torus primitives to extract the
proper angle from the filename, instead of 3 times the proper angle.</li>
<li>Fixed steps on toolbar when number of steps is more than 100.</li>
<li>Fixed ring primitive substitution to support n-16rinx.dat files.</li>
<li>Fixed opaque dithered extended colors to not be transparent.</li>
<li>Fixed problem when a new preference set was selected via Apply (not OK) and
the new pref set has a different FSAA state than the previous one.</li>
<li>Fixed it to give an error if the latest update currently installed doesn't
show up on ldraw.org's ptreleases.cgi script.</li>
<li>Fixed Windows Explorer thumbnail generator plugin to not skip some LDraw
files.</li>
<li>Fixed uninstall to perform a reboot if uninstalling the Windows Explorer
thumbnail generator plugin, which often fails to properly uninstall without a
reboot.</li>
<li>Fixed final conditional line in cyls2 primitive substitution to not be
wrong when "Curve Quality" is set to anything other than its default value.</li>
<li>Fixed "Check for Library Updates" to properly deal with recent part
libaries.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">4.0.1</b><br/>
(08 Feb, 2009)
</td>
<td colspan="2">
<b>Bug Fixes</b>
<ul>
<li>Fixed official part detection for parts in 2008-1 LDraw library update.</li>
<li>Fixed generation of conditional lines on full tori to not produce invalid
lines.</li>
<li>Fixed problem that caused invalid lighting with certain rare sub-model
matrices.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">4.0</b><br/>
(05 Jan, 2009)
</td>
<td colspan="2">
<b>Additions</b><br/>
<ul>
<li>New Cocoa-based LDView for the Mac.</li>
<li>Added basic support for steps.</li>
<li>Added export feature to convert LDraw files into other file formats.
Currently POV-Ray and Stereo Lithography file formats are supported.</li>
<li>Added Model Tree dialog (drawer in Cocoa version) to show a tree with all
the data from the model.</li>
<li>Added MPD model selection to show sub-models inside MPD models.</li>
<li>Added new latitude/longitude rotation mode.</li>
<li>Added dialog to set the latitude/longitude. (This does not require you to
be in the new latitude/longitude rotation mode.)</li>
<li>Added support for multiple processors, and multi-core processors.
Transparency sorting and conditional line calculations now happen in background
threads when LDView is run on a computer with more than one processor core.</li>
<li>Added option to show the coordinate axes for the model, originating at the
model's origin.</li>
<li>Added support for JPEG snapshots. The default JPEG settings are set using
rarely-used JPEG compression options that result in much better quality for
computer-generated imagery than is typically achieved with image tools.
(Specifically, LDView uses the 4:4:4 JPEG color sub-sampling by default.)</li>
<li>Added Bounding Box dialog that shows the minimum and maximum coordinates of
the bounding box for the model, and draws that bounding box.</li>
<li>Added view mode that only shows part bounding boxes.</li>
<li>Added support for rotation in examine mode with the arrow keys on the
keyboard.</li>
<li>Added steps to m6459.ldr sample model.</li>
<li>Added -SaveSnapshots command line option to allow multiple snapshots to be
saved at once from the command line.</li>
<li>Added "Transparent background" and "Auto-crop" to the snapshot saving UI.
(Previously, these options were only available via manual registry entries or
command line parameters.)</li>
<li>Added ability to set the 3D portion of the LDView window to various sizes
with standard aspect ratios.</li>
<li>Added ability to use the current LDView aspect ratio in the POV-Ray camera
info command.</li>
<li>Added ability to control the default directory where snapshots and part
lists get saved. Choices are in the model directory, the most recently used
directory for the given file type, or a specified directory.</li>
<li>Added support for Black_Edge color definition. Add a color to your
ldconfig.ldr with Black_Edge as its color name (case doesn't matter), and
LDView will use the given color for its black edge lines (assuming that
"Process ldconfig.ldr is checked in the general prefs.)</li>
<li>Added icons from toolbar to corresponding menu items when running in Windows
Vista.</li>
</ul>
<b>Updates</b><br/>
<ul>
<li>Decreased the amount of time needed to make certain preference changes (for
example, toggling edge lines).</li>
<li>Greatly improved the output quality of "Transparent background" snapshots
when antialiased lines are enabled.</li>
<li>Changed snapshot rendering in Windows to do software rendering directly to
an in-memory bitmap when the Pixel Buffer OpenGL extension is unavailable or
disabled. Previously, it rendered into the window, which caused a window to
appear for command line snapshot renders.</li>
<li>Changed the default setting for conditional lines from off to on. Note that
since edge lines default to off, this won't be seen until the first time edge
lines are enabled.</li>
<li>Changed the default setting for seams to on.</li>
<li>Rotated 8464.mpd sample model 180 degrees so that it faces forward in the
default viewing angle.</li>
<li>Updated the toolbar to have smaller buttons in Windows XP and Windows
Vista.</li>
<li>Changed "Always black" edges to be truly black, instead of whatever color
was assigned to color code 0.</li>
<li>Updated "Always black" edges to use gray when used on dark colors, isntead
of black.</li>
</ul>
<b>Bug Fixes</b>
<ul>
<li>Fixed Windows version so that switching to full screen doesn't trigger a
full model reload.</li>
<li>Fixed handling of shift key when moving via the keyboard in fly-through
mode.</li>
<li>Fixed check boxes in group box titles in preferences to only show underlines
under mnemonic characters when appropriate when running with themes
enabled.</li>
<li>Fixed bug where mouse control got messed up badly if you used
<Alt><Tab> to switch to another program while dragging with the
mouse in LDView.</li>
<li>Don't show model load failure error message if the user cancels the model
load.</li>
<li>Fixed bug that sometimes caused a vertical line to appear on the left edge
of large snapshots.</li>
<li>Fixed handling of transparent and invisible LDLite color codes.</li>
<li>Fixed Errors & Warnings Dialog on Windows verison to show the proper
error and warning counts when the dialog isn't shown automatically.</li>
<li>Fixed lock up when "Show View Info" was selected in Windows while themodel
was spinning.</li>
<li>Diable Open Model toolbar button during load. Using it would result in a
crash.</li>
<li>Fixed bug where hitting escape during load didn't work in Windows Vista
(and maybe other versions of Windows also).</li>
<li>Fixed bug where changing to a new LDraw directory would still give you a
message that the LDraw directory could not be found.</li>
<li>Fixed primitive substitution to work with primitives in the Unofficial/p
directory.</li>
<li>Fixed primitive substitution for 3-8ndis primitive.</li>
<li>Fixed fly-through speed to be dependent of FPS, so that having a super
high FPS doesn't produce super fast fly-through.</li>
<li>Fixed primitive substitution to work better with curve smoothing with
cone, sphere, and torus primitives.</li>
<li>Fixed problem with condtional lines showing up when they weren't supposed to
when their control points went outside of the view frustum.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">3.2</b><br/>
(20 Aug, 2007)
</td>
<td colspan="2">
<b>Additions</b><br/>
<ul>
<li>Added ability to generate an HTML parts list of your model.</li>
<li>Added ability to set the direction that the light source points, both with
predefined light directions in the Preferences Dialog, and by holding down
Shift and dragging with the mouse.</li>
<li>Added support for light.dat files in LDraw models. Unless disabled, these
will generate point light sources in the scene, up to a total of 8 lights.</li>
<li>Added ability to use LDView to generate thumbnails of .ldr and .mpd files in
Windows Explorer and Gnome Nautilus.</li>
<li>Made it so dragging with the middle mouse button pans (in addition to
the existing dragging with the left mouse button while holding down
Control).</li>
<li>Added support for anisotropic filtering on video cards that support it.</li>
<li>Added scroll wheel support to QT version.</li>
<li>Added BFC toolbar button to QT version.</li>
<li>Added support for the new !ldraw_org meta-statement to be used in the next
official parts release.</li>
</ul>
<b>Updates</b><br/>
<ul>
<li>Made it so that settings specified on the command line don't get saved as if
they had been specified in the UI. (For example, -WindowWidth=320 on the
command line would result in LDView launching with a window width of 320 the
next time it was run.)</li>
<li>Updated Zoom to Fit command so that the model remaines auto-centered after
using it.</li>
<li>Moved Errors & Warnings, Show View Info, and Show POV-Ray Camera Info to
a new Tools menu.</li>
<li>Made it so only the main row of an error entry is bold. Sub-rows are now
non-bold.</li>
<li>Made it so that transparency values of 240 and above are considered opaque.
This was done to get rid of ugly artifacts that show up on the glow-in-the-dark
color, which has a transparency value of 250.</li>
</ul>
<b>Bug Fixes</b>
<ul>
<li>Fixed bug in error reporting that would lead to a crash when the model file
has a really long line.</li>
<li>Fixed command line processing of -SaveSnapshot so that it doesn't generate a
blank snapshot.</li>
<li>Fixed bug that caused the LDView screensaver to crash when you tried to
bring up its settings.</li>
<li>Fixed bug where some models would be clipped after a Zoom to Fit.</li>
<li>Fixed bug where the Errors & Warnings window would sporadically not draw
correctly after being resized.</li>
<li>Fixed cutaway wireframe causing one entire eye image to be drawn in
wireframe when stereo is enabled.</li>
<li>Fixed tiled snapshot saves to not ignore the SaveAlpha setting.</li>
<li>Fixed -cg option to support the optional radius portion.</li>
<li>Fixed tiled snapshot saves when PBuffer isn't available to make the image
size an even multiple of the number of tiles used. It already did this with
PBuffer snapshots. With non-PBuffer snapshots, you ended up with a border
(usually black) on the top and right sides of the image.</li>
<li>Fixed display glitch in Windows versions when switching the viewing angle
via the toolbar. Switching the viewing angle via the main menu still has the
display glitch.</li>
<li>Fixed command line snapshot saves to pay attention to the file extension of
the snapshot file specified on the command line, instead of using the
SaveImageType setting.</li>
<li>Fixed crash when LDView encounters two LDraw files that refer to each other.
It now generates an error and skips the child model's reference to its
ancestor model.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">3.1</b><br/>
(09 Oct, 2006)
</td>
<td colspan="2">
<b>Additions</b><br/>
<ul>
<li>Added automatic download of the LDraw parts library.</li>
<li>Added automatic updating of the LDraw parts library.</li>
<li>Added automatic downloading of unofficial parts from the LDraw.org Parts
Tracker.</li>
<li>Added ability to generate a POV-Ray camera section based on the current view
in LDView.</li>
<li>Added warning for parts that have been renamed.</li>
<li>Added warning for usage of automatically downloaded unofficial parts.</li>
<li>Added full snapshot support to the Linux version.</li>
<li>Added printing support to Linux version.</li>
<li>Added option to the Windows installer to open .ldr and .mpd files with
LDView.</li>
</ul>
<b>Updates</b><br/>
<ul>
<li>Updated <i>m6459.ldr</i> sample model to no longer contain renamed
parts.</li>
<li>Updated generation of new triangles and lines from quads and triangles that
contain identical or co-linear vertices to use the original text from the file
to generate the new primitives, instead of using text generated based on
rounding of the numbers.</li>
<li>Updated the warning messages generated in the above case to also use the
text from the file, instead of rounding the numbers.</li>
<li>Renamed the Error window to <i>Errors & Warnings</i>.</li>
<li>Updated Windows version to disable more menu items when there's no model
loaded.</li>
</ul>
<b>Bug Fixes</b>
<ul>
<li>Fixed handling of 12-bit dithered transparent direct colors.</li>
<li>Fixed crash that occurred when one of the numeric parameters was missing
from a line-type 1 line that referenced a filename that began with a number
(such as a part).</li>
<li>Fixed LDView so that it gives you an error if you select a file from the
recent files list, and the file no longer exists.</li>
</ul>
</td></tr>
<tr><td class="NoWrap" align="right">
<b class="Bigger">3.0</b><br/>
(13 Dec, 2005)
</td>
<td colspan="2">
<b>Additions</b><br/>
<ul>
<li>Completely new rendering engine, written from scratch. This allows for
the following enhancements that would have been very difficult before:
<ul>
<li>Significantly reduced memory usage on large models. Measured reduction on
Orion Pobursky's Imperial Star Destroyer model with all settings set to default:
86%. The same, but with LDView 3's <i>Memory usage</i> setting set to Low: 90%.
(Note that these are <i>reductions</i> of and 86% and 90%, respectively, meaning
LDView 3 requires 16% the memory LDView 2.1.01 requires on that model with
default settings.)</li>
<li>Significantly reduced load time on large models.</li>
<li>BFC (Back Face Culling) support.</li>
<li>BFC verification support (red back faces and/or green front faces).</li>
<li>Potentially faster rendering. (Actual speed differences vary significantly
based on video hardware and what settings are set.)</li>
<!--<li>Support for steps (not implemented yet, but coming).</li>-->
</ul></li>
<li>Added a toolbar (which can of course be disabled if desired).</li>
<li>Added support for translation DLLs.</li>
<li>Added a distinction between errors and warnings.</li>
<li>Added detection of more problems and potential problems with model files,
leading to more errors and warnings.</li>
<li>Added support for making the default color transparent. (Primarily useful
for part authors.)</li>
<li>Added direct access to the help file to the Linux version.</li>
<li>Added primitive substitution support for full-circle versions of new torus
primitives.</li>
<li>Added primitive substitution support for chord primitives.</li>
<li>Added context-sensitive help to the save snapshot dialog.</li>
<li>Added workaround for snapshot corruption that was happening on some video
cards (<i>Don't use Pixel Buffer</i> option during snapshot save).</li>
<li>Added Memory usage option to allow LDView to conserve even more memory.
(This comes at the possible expense of speed. However, if you're swapping when
the <i>Memory usage</i> setting is set to High, and not swapping when it's set
to Low, then Low will be faster.)</li>
<li>Added support for LDraw search directory list in ldraw.ini using Lars
Hassing's LDrawIni code.</li>
<li>Added support for spaces in submodel filenames. (Generates a warning.)</li>
<li>Added extra command line parsing for use when using LDView as a renderer
from LPub.</li>
<li>Added detection of primitive comment so that primitive detection can work on
primitives outside the ldraw\p directory.</li>
<li>Added support for automatic cropping of images (via the command line only;
no UI at this time.</li>
<li>Added new sample model created by Peter Bartfai: 8464.mpd.</li>
</ul>
<b>Updates</b><br/>
<ul>
<li>Rearranged items in the File menu.</li>
<li>Revamped error dialog box.</li>
<li>Removed the recompile requirement for P-Buffer snapshots.</li>
<li>Updated primitive substitution support to also substitute primitives in the
p/48 directory.</li>
<li>Updated text of check buttons in group box titles of preferences to match
the color of other group box titles when run in Windows XP with themes
enabled.</li>
<li>Improved sorting of transparent substituted primitives.</li>
<li>Updated color handling to match LDraw's behavior for unknown colors.</li>
</ul>
<br/>
<b>Bug Fixes</b>
<ul>
<li>Fixed transparent extended colors so they work.</li>
<li>Fixed snapshot saving to always redraw the model after the snapshot
save.</li>
<li>Fixed maximum depth of cutaway mode.</li>
<li>Fixed default zoom for tall windows.</li>
<li>Fixed zoom-to-fit with wide edge lines and wide wireframe lines.</li>
<li>Fixed panning to be usable over the entire supported field-of-view
range.</li>
<li>Fixed problem in OpenGL driver information dialog that would cause a crash
on some video cards.</li>
<li>Fixed problem that caused the delete button not to be enabled after a single
directory was added to the extra search directories list.</li>
<li>Fixed smoothing to not smooth across sharp angles.</li>
<li>Fixed auto-calculated extension for BMP snapshots when the save snapshot
series option wasn't enabled.</li>
<li>Fixed zooming with the mouse wheel.</li>
<li>Fixed seams to not double-shrink parts that are referenced from other
parts.</li>
<li>Fixed clipping problem that sometimes showed up in fly-through mode.</li>
<li>Fixed command line parsing problem that could cause LDView to crash.</li>
<li>Fixed command line parsing problem that could cause LDView to incorrectly
miss an LDraw file specified on the command line.</li>
<li>Fixed problem that caused subfiles in an MPD file with a backslash (\) in
their filename not to load.</li>
<li>Fixed problem that prevented screensaver settings from sticking when a
preference set was selected in the screensaver.</li>
<li>Fixed problem that prevented status bar from being visible when LDView was
started up maximized.</li>
</ul></td></tr>
<tr><td class="NoWrap" rowspan="3" align="right">
<b class="Bigger">2.1.01</b><br/>
(10 Jul, 2004)
</td>
<td align="right">
<b>Additions</b>
</td>
<td><ul>
<li>Re-introduced co-linear point detection in quads. I discovered that my
previous belief that there was a legitimate use for them was flawed.</li>
<li>Added ability to the screen saver to have it randomly choose a preference
set each time it runs. It should be noted that the preference set
includes the screen saver file or directory selection, so you can have
individual models display with particular settings if you want.</li>
<li>Added support for snapshots up to 9999x9999 on any video card by using
tiling to construct images bigger than would otherwise be supported.</li>
</ul></td></tr>
<tr><td align="right">
<b>Updates</b>
</td>
<td><ul>
<li>Updated line drawing when antialiased lines are enabled to get rid of
artifacts around some edge lines of transparent colors. This has the
(somewhat undesirable) side-effect of making edge lines around transparent
shapes less distinct.</li>
</ul></td></tr>
<tr><td align="right">
<b>Bug Fixes</b>
</td>
<td><ul>
<li>Fixed Zoom to Fit to work properly after panning the view.</li>
<li>Fixed hidden line removal when sorting of transparent shapes isn't
enabled.</li>
<li>Fixed problem that caused LDView to lock up if the background color or
default color was chosen without a model loaded.</li>
<li>Fixed preference set deletion. It had no permanent effect before.</li>
<li>Fixed zoom to fit so that it works when stereo viewing is enabled.</li>
</ul></td></tr>
<tr><td class="NoWrap" rowspan="3" align="right">
<b class="Bigger">2.1</b><br/>
(03 Jan, 2004)
</td>
<td align="right">
<b>Additions</b>
</td>
<td><ul>
<li>Added Zoom to Fit command, as well as Zoom to Fit option during snapshot
saving. This uses the auto camera positioning algorithm from L3P (which was
graciously provided to me by Lars Hassing).</li>
<li>Added ability to remove hidden lines from wireframe mode.</li>
<li>Added ability to change the default viewing angle, and added the ability to
get to the original isometric viewing angle if you change the default one.</li>
<li>Added ability to specify a view matrix on the command line.</li>
<li>Added ability to specify the camera's latitude and longitude on the
command line (similar to L3P's -cg command line option).</li>
<li>Added ability to modify the default zoom level on the command line.</li>
<li>Added menu command to show information about the current view and copy it
to the clipboard in a format suitable for use on the command line.</li>
<li>Added ability to control the field of view.</li>
<li>Added documentation for the -SaveSnapshot command line option.</li>
<li>Added support for ldconfig.ldr.</li>
<li>Added support for custom colors inside model files (as well as inside
ldconfig.ldr) using the 0 COLOR meta-command.</li>
<li>Added ability to specify extra part/sub-model search directories.</li>
<li>Added an optional work-around for a problem that sometimes prevented
Windows 98 systems from going into power save mode when LDView was used as a
screen saver.</li>
<li>Added context-sensitive help to screen saver settings.</li>
<li>Added ability to screen saver to select a directory and have a random model
from that directory picked each time the screen saver runs.</li>
</ul></td></tr>
<tr><td align="right">
<b>Updates</b>
</td>
<td><ul>
<li>Updated fly controls to deal with FOV changes. They won't work quite as
well at extreme FOV settings, but they should still be usable.</li>
<li>Removed Default from Viewing Angles menu. It was redundant, since it did
the same thing as the Reset View command, and likely more confusing than
useful.</li>
<li>Improved transparent shape sorting performance.</li>
</ul></td></tr>
<tr><td align="right">
<b>Bug Fixes</b>
</td>
<td><ul>
<li>Fixed precision in error window to prevent excessive rounding of the
displayed values (note that the actual values were never rounded).</li>
<li>Added missing documentation for HiResPrimitives registry/command line
setting.</li>
<li>Added code to prevent multiple copies of the LDView screen saver from
running simultaneously. This shouldn't be necessary, but since I received a
report in Windows 98SE indicating about 50 copies of the LDView screen saver, it
is obviously useful as a safety measure.</li>
<li>Added code to allow power save mode to work in Windows 98 when using LDView
as a screen saver. As with the multiple copies problem, this shouldn't be
necessary, but it appears to be (at least on some systems).</li>
<li>Fixed -SaveSnapshot to handle relative paths correctly for the image
filename.</li>
<li>Fixed -SaveAlpha to work again. It was broken at some point.</li>
<li>Fixed the Reset functionality of each preference page to work properly.</li>
<li>Fixed status bar to continue to correctly display the FPS after you switch
FSAA modes.</li>
<li>Removed detection and handling of co-linear points in quads. There is
a legitimate reason to have a quad that degenerates into a triangle; it can
prevent seams from being visible in certain circumstances.</li>
<li>Fixed SaveSnapshot so that it now only loads the model once; previously it
would load it and then immediately reload it, doubling the load time.</li>
<li>Fixed default camera zoom level to be the correct value, instead of a loose
approximation that occasionally resulted in clipping.</li>
<li>Fixed FOV calculation when the window is taller than it is wide.</li>
<li>Fixed command line parsing to properly handle quotes around a filename