-
Notifications
You must be signed in to change notification settings - Fork 254
/
CHANGES
2572 lines (2306 loc) · 102 KB
/
CHANGES
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
CHANGES IN FLTK 1.1.5rc3
- Documentation updates (STR #505, STR #513)
- Updated PNG library source to 1.2.6 + wutil patch.
- Updated ZLIB library source to 1.2.1.
- Added (unsupported) CMake files (STR #499)
- Tooltips would not reappear on the same widget, and
the initial tooltip delay was not used after a tooltip
was shown (STR #465)
- Fixed a compile problem with the Linux 2.6 threading
support (STR #483)
- Fixed problems with 2-byte Xpm files on 64-bit
platforms (STR #525)
- FLTK didn't handle the ReparentNotify event on X11
(STR #524)
- The old source file "fl_set_gray.cxx" is not needed
(STR #516)
- Fl_Text_Display still called delete[] instead of
free() in one place (STR #503)
- The symbol test program did not handle the @+ symbol
properly (STR #490)
- Fl_File_Chooser didn't correctly call isprint() and
isspace() when checking to see if the current file was
text that can be previewed (STR #517)
- FLUID didn't compile with Borland C++ due to a
compiler bug (STR #496)
- Fl_Positioner did not handle reversed min and max
values (STR #510)
- fl_descent(), fl_height(), and fl_width() would crash
a program if you didn't call fl_font() first; they now
return -1 if no font is set (STR #500)
- Added test/unittests to verify pixel drawing and
alignment across platforms
- Fl_Menu_::find_item() didn't determine the menu path
properly (STR #481)
- The build system now installs image library header
files in FL/images/filename.h so that FLTK programs
will use the same header files as the FLTK image
libraries.
- The build system now creates image libraries named
"libfltk_name.a" instead of "libname.a" to avoid
clobbering an existing installed library (STR #480)
CHANGES IN FLTK 1.1.5rc2
- Documentation updates (STR #365, STR #399, STR #407,
STR #412, STR #414, STR #452, STR #462)
- Fl_Text_Display did not handle drawing of overlapping
text (italic next to plain, etc.) properly (STR #381)
- All of the core widgets now consistently set changed()
before calling the callback function for a change in
value; this allows programs to check the changed()
state in a callback to see why they are being called
(STR #475)
- Fl_File_Chooser did not handle some cases for filename
completion (STR #376)
- Fl_Help_View didn't properly compute the default
maximum width of the page properly, resulting in
non-wrapped text in table cells (STR #464)
- Fl_Text_Editor no longer tries to emulate the Emacs
CTRL-A shortcut to move to the first column, since
there is a key for that and the widget does not
emulate any other Emacs keys (STR #421)
- Fl_File_Chooser always disabled the OK button when the
user pressed DELETE or BACKSPACE (STR #397)
- Added Fl_Browser::swap() methods (STR #459)
- Fl_Counter didn't use a thin down box for the text
field if the box type was set to FL_THIN_UP_BOX (STR
#467)
- Fl_Help_View now resets the scrollbars if they go
outside the current view (STR #464)
- fl_dir_chooser() did not show the previous selection
as documented (STR #443)
- Fl_Text_Display used delete[] instead of free() in
some places (STR #466)
- FLTK now includes copies of the PNG, JPEG, and ZLIB
libraries for platforms that do not have them (STR
#441)
- The fltk-config script did not include the
"-mno-cygwin" option under CygWin (STR #434)
- Fl_Help_View::find() did not check for a NULL value
(STR #442)
- Added search symbol to the search field of
Fl_Help_Dialog (STR #417)
- Added two new symbols, @search and @FLTK, which can be
used in labels.
- MacOS X: fixed NumLock mixup, added support for
FL_Menu and FL_Delete keys on external (PC) keyboards
(STR #445)
- Fl_File_Icon::draw() did not support drawing of complex
polygons in icon descriptions (STR #474)
- The configure script now offers options for JPEG, PNG,
and ZLIB libraries (STR #416)
- The first menu item in a list would not go invisible
(STR #406)
- Fl_Text_Buffer::replace() now range checks its input
(STR #385)
- FLTK now builds with the current release of MinGW (STR
#325, STR #401, STR #402)
- FLTK now honors the numlock key state (STR #369)
- The Fl_Text_Display widget did not redraw selections
when focus changed (STR #390)
- The plastic background image is now less contrasty
(STR #394)
- Fl_Scroll now uses a full redraw when the scheme is
set to plastic and the box type is a frame (STR #205)
- Fl_Window::resize() did not work properly with KDE 3.2
(STR #356)
- FLTK didn't delete font bitmaps when the last OpenGL
window was deleted, preventing future text from
displaying (STR #310)
- FLUID didn't include a full initialization record for
the trailing NULL menu items (STR #375)
- Fl_Browser::item_width() did not properly handle
format modifiers (STR #372)
- Fl_Browser::item_height() did not handle columns
properly (STR #371)
- Fl_Gl_Window's on WIN32 now prefer accelerated pixel
formats over generic formats (STR #382)
- Fl_Window::resize() did not work on some systems if
the window was not shown (STR #373)
- FLUID did not write the user_data type if the
user_data field was empty (STR #374)
- The value(const Fl_Menu_Item*) method was not
implemented for Fl_Choice (STR #366)
- Fl_Pack didn't draw child widget labels the same way
as Fl_Group, causing display problems (STR #360)
- fl_read_image() didn't work when reading from an
offscreen buffer with some X11 servers (STR #364)
CHANGES IN FLTK 1.1.5rc1
- Documentation updates (STR #186, STR #245, STR #250,
STR #277, STR #281, STR #328, STR #338)
- fl_scroll() did not handle scrolling from off-screen on
WIN32 (STR #315)
- Fl_File_Chooser did not allow manual entry of a drive
letter (STR #339)
- Fl_Menu now uses the boxtype to redraw the menu
background (STR #204)
- Fl_Scroll now shows the background image when a framed
box type is used and the Fl_Scroll is a direct
decendent of a window (STR #205)
- Added a new_directory_tooltip string pointer to allow
localization of the file chooser's new directory
button (STR #340)
- Added Fl_Menu_::find_item() method (STR #316)
- The Fl_Widget copy operator definitions were not
conditionally compiled properly (STR #329)
- FLUID's Layout functionality did not move child
widgets when laying out group widgets (STR #319)
- FLUID's Layout->Center In Group functionality did not
properly handle widgets that were children of a
Fl_Window widget (STR #318)
- The Fl_Text_Display destructor did not remove the
predelete callback associated with the current buffer
(STR #332)
- Fixed several bugs in the MacOS X Fl::add_fd()
handling (STR #333, STR #337)
- The Fl_Text_Display widget did not display selections
set by the application (STR #322)
- FLUID crashed if you did layout with a window widget
(STR #317)
- Fl_Scroll::clear() didn't remove the child widget from
the Fl_Scroll widget (STR #327)
- Fl_Value_Slider::draw_bg() didn't always apply the
clipping rectangle (STR #235)
- fl_filename_relative() returned the wrong string if
the absolute pathname was equal to the current working
directory (STR #224)
- Fl_Help_Dialog didn't correctly restore the scroll
position when going forward/back in the link history
if the file changed (STR #218)
- glutGetModifiers() did not mask off extra state bits,
confusing some GLUT-based applications (STR #213)
- Fixed mouse capture problems on MacOS X (STR #209, STR
#229)
- Fl_Sys_Menu_Bar is now built into the library for
MacOS X (STR #229)
- Fl_Menu_ now provides item_pathname() methods to get
the "pathname" of a menu item, e.g. "File/Quit" (STR
#283)
- Fl_Text_Display now provides cursor_color() methods to
get and set the cursor color (STR #271)
- Fl_Scroll didn't honor FL_NO_BOX (STR #305)
- FLUID declaration blocks didn't support public/private
definitions (STR #301)
- Fl_Preferences incorrectly created the preferences
directory before necessary (STR #247)
- The WIN32 project files still defined the (obsolete)
FL_STATIC constant (STR #279)
- Fl_Text_Display::buffer() did not support NULL values,
making it impossible to clean up text buffers from a
subclass (STR #295)
- Fl_Text_Display did not support a NULL
unfinishedStyleCB function (STR #241)
- Fl::background2() incorrectly marked the foreground
color as initialized (STR #255)
- Fixed the X11 CTRL + "-" detection code to properly
track the state of the CTRL key (STR #264)
- Fl_File_Icon::load_system_icons() didn't support KDE
3.x (STR #299)
- WIN32's scandir() emulation did not allocate enough
memory for directory names (STR #263)
- Fl::compose() did not handle special keys like
backspace properly (STR #293)
- Fl_Choice did not clip its text when drawing using the
plastic scheme (STR #287)
- Fl_Group incorrectly mapped the emacs CTRL keys to
keyboard navigation (STR #228)
- Fl_File_Browser::load() didn't handle a NULL directory
name (STR #266)
- 64-bit library fixes (STR #261)
- The Fl_Valuator::format() function did not limit the
size of the number buffer (STR #268)
- The keypad Enter key works as the normal Enter/Return
key in common widgets (STR #191)
- Fixed some OS/2-specific build problems (STR #185, STR
#197)
- Calling Fl_Text_Display::buffer() with the same buffer
would cause an application to lockup (STR #196)
- Some of the widgets could crash an application if the
cursor was changed after a window was deleted (STR
#181)
- The Fl_Gl_Window WIN32 pixel format code did not
choose the pixel format with the largest depth buffer
(STR #175)
- The configure script didn't leave space between the
CFLAGS/CXXFLAGS and X_CFLAGS variables (STR #174)
- The Fl_JPEG_Image and Fl_PNG_Image classes did not
trap errors from the corresponding image libraries
(STR #168)
- Added "--with-links" configure option to control
whether symlinks are created for the FLTK header files
(STR #164)
- Added new hoverdelay() to Fl_Tooltip to control how
quickly recent tooltips appear (STR #126)
- FLUID now sets the size range when a window is shown.
This seems to be necessary with some window managers
(STR #166)
CHANGES IN FLTK 1.1.4
- The fl_read_image() function was not implemented on
OSX (STR #161)
- VC++ 7.1 didn't like how the copy operators were
disabled for the Fl_Widget class; now include inline
code which will never be used but makes VC++ happy
(STR #156)
- Fixed an IRIX compile problem caused by a missing
#include (STR #157)
- FLUID didn't write color/selection_color() calls using
the symbolic names when possible, nor did it cast
integer colors to Fl_Color (STR #146)
- Fl_File_Chooser was very close for multiple file
selection in large directories (STR #140)
- Fl_Text_Display/Editor did not disable the current
selection when focus was shifted to another widget
(STR #131)
- Fl_Choice didn't use the normal focus box when the
plastic scheme was in use (STR #129)
- Fl_Text_Editor didn't use selection_color()
consistently (STR #130)
- The fltk_forms, fltk_gl, and fltk_images DSO's and
HP-UX shared libraries are now linked against the fltk
shared library to provide complete dependency
resolution (STR #118)
- The configure.in file did not work with autoconf 2.57.
- FLUID didn't redraw widgets when changing the X, Y, W,
or H values in the widget panel (STR #120)
- Fl_Window::show(argc, argv) wasn't calling
Fl::get_system_colors() as documented (STR #119)
- DSO (shared library) building wasn't quite right for
some platforms (STR #118)
- OSX: some changes to make ProjectBuilder compiles
possible.
- OSX: FLTK would not know where a window was positioned
by the OS. As a result, popup menus could open at
wrong positions.
CHANGES IN FLTK 1.1.4rc2
- Fl_Window::show(argc,argv) incorrectly opened the
display prior to parsing the arguments; this prevented
the "-display foo" option from working (STR #111)
- Images were not clipped properly on MacOS X (STR #114)
- Fl::reload_scheme() and Fl::scheme("foo") incorrectly
called Fl::get_system_colors(). This prevented an
application from setting its own color preferences
(STR #115)
- The 'Enter' key event on OS X would not set
Fl::e_text.
- Changed behaviour of fluid to always paste into
a selected group (STR #88)
- Menuitem now changes font, even if fontsize
is not set (STR #110)
- Swapped shortcut labels in OS X (STR #86)
- Non-square Fl_Dial would calculate angle from user
input wrong (STR #101)
- Updated documentatiopn of fl_draw (STR #94)
and Fl_Menu_::add() (STR #99)
- Fluid collapse triangle events were not offset by
horizontal scroll (STR #106)
- QuitAppleEvent now correctly returns from Fl::run()
instead of just exiting (STR #87)
- Hiding the first created OpenGL context was not
possible. FLTK now manages a list of contexts (STR #77)
- FLUID didn't keep the double/single buffer type for
windows.
- FLTK didn't work with Xft2.
- OSX window resizing didn't work (STR #64)
- Fixed MacOS X shared library generation (STR #51)
- Several widgets defined their own size() method but
didn't provide an inline method that mapped to the
Fl_Widget::size() method (STR #62)
- Fl_Scroll didn't provide its own clear() method, so
calling clear() on a Fl_Scroll widget would also
destroy the scrollbars (STR #75)
- Fl::event_text() was sometimes initialized to NULL
instead of an empty string (STR #70)
- fl_draw() didn't properly handle a trailing escaped
"@" character (STR #84)
- Added documentation for all forms of
Fl_Widget::damage() (STR #61)
- Fl_Double_Window now has a type() value of
FL_DOUBLE_WINDOW, to allow double-buffered windows to
process redraws properly on WIN32 (STR #46)
- Added FL_DAMAGE_USER1 and FL_DAMAGE_USER2 damage bits
for use by widget developers (STR #57)
- Fl_Help_View didn't support numeric character entities
(STR #66)
- Menu shortcuts didn't use the Mac key names under
MacOS X (STR #71)
- CodeWarrior Mac OS X updated to work with current
CW8.3 (STR #34)
- Apple-C/X/V/Z didn't work in the Fl_Input widget due
to a bad mapping to control keys (STR #79)
- Added the OSX-specific fl_open_callback() function to
handle Open Documents messages from the Finder (STR
#80)
- The configure script contained erroneous whitespace in
various tests which caused errors on some platforms
(STR #60)
- The fltk-config script still supported the deprecated
--prefix and --exec-prefix options; dropped them since
they serve no useful purpose and would never have
worked for the intended purpose anyways... (STR #56)
- fl_filename_list returned 0 on Win32 if no directory
existed (STR #54)
- Pressing 'home' after the last letter in a Text_Editor
would move the cursor to pos 0 (STR #39)
- Fl::get_key(x) would mix up Ctrl and Meta on OS X (STR
#55)
- The configure script used the wrong dynamic library
linking command for OSX (STR #51)
- The Fl_Text_Editor widget did not set changed() nor
did it call the widget's callback function for
FL_WHEN_CHANGED when processing characters that
Fl::compose() handles (STR #52)
CHANGES IN FLTK 1.1.4rc1
- The file chooser did not reset the click count when
changing directories; if you clicked on a file in the
same position after changing directories with a
double-click, the chooser treated it as a triple
click (STR #27)
- Symbols with outlines did not get drawn inactive.
- The Fl_Help_View widget now provides a find() method
to search for text within the page.
- The Fl_Help_Dialog widget now provides a search box
for entering text to search for.
- The default font encoding on OSX did not match the
default on WIN32 or X11.
- Menu items were not drawn using the font specified in
the Fl_Menu_Item structure (STR #30)
- Long menus that were aligned such that the top of an
item was exactly at the top of the screen would not
scroll (STR #33)
- The OS issues appendix incorrectly stated that MacOS
8.6 and 9 were supported; they are not (STR #28)
- Fixed handling of nested double-buffered windows (STR
#1)
- Showing a subwindow inside a hidden window would crash
the application (STR #23)
- OSX users couldn't enter some special chars when using
some foreign key layouts (STR #32)
- Hiding subwindows on OSX would hide the parent window
(STR #22)
- Added thin plastic box types.
- Fl_Pack ignored the box() setting and cleared any
unused areas to the widget color; it now only does so
if the box() is set to something other than FL_NO_BOX.
- Updated the Fl_Tabs widget to offset the first tab by
the box dx value to avoid visual errors.
- Updated the plastic up box to draw only a single
border frame instead of the old double one for
improved appearance.
- Updated the default background color on OSX to provide
better contrast.
- Fl_Text_Display and friends now look for the next
non-punctuation/space character for word boundaries
(STR #26)
- gl_font() didn't work properly for X11 when Xft was
used (STR #12)
- Fl_File_Browser incorrectly included "." on WIN32 (STR
#9)
- Include shellapi.h instead of ShellAPI.h in the WIN32
drag-n-drop code in order to work with the MingW cross
compiler (STR #6)
- The cursor was not properly restored when doing
drag-n-drop on X11 (STR #4)
- Fl::remove_fd() didn't recalculate the highest file
descriptor properly (STR #20)
- Fl_Preferences::deleteGroup() didn't work properly
(STR #13)
- Fixed the fl_show_file_selector() function - it was
copying using the wrong string size (STR #14)
- fl_font() and fl_size() were not implemented on MacOS
X.
- Sorted the icon menu bar in fluid.
- Fixed minor memory access complaints from Valgrind
- Compiling src/flstring.h on OS X with BSD header would
fail.
- Fl_Text_Editor didn't scroll the buffer when the user
pressed Ctrl+End or Ctrl+Home.
- Fl_Text_Editor didn't show its cursor when the mouse
was moved inside the window.
- FLUID now uses an Fl_Text_Display widget for command
output, which allows you to copy and paste text from
command output into other windows.
- Fl_Gl_Window could cause a bus error on MacOS X if the
parent window was not yet shown.
- FLUID could crash after displaying a syntax error
dialog for the callback code.
- FLUID would reset the callback code if you opened the
widget panel for multiple widgets.
- Added a NULL check to Fl_Text_Display (SF Bug #706921).
- The fltk-config script placed the LDFLAGS at the wrong
place in the linker options.
- Fl_Text_Display didn't draw the outer box in the right
dimensions, so it was invisible.
- Fl_Help_Dialog used the same color for links as for
the background, causing links to be invisible on pages
without a background color set.
CHANGES IN FLTK 1.1.3
- Documentation updates.
- FLTK now ignores KeyRelease events when X11 sends them
for repeating keys.
- FLUID now supports up to two additional qualifiers
before a class name (FL_EXPORT, etc.) to aide in
developing DLL interfaces for WIN32.
- Additional NULL checks in Fl_Button,
fl_draw_boxtype(), Fl_File_Chooser, and
Fl_Window::hotspot().
- The Fl_Preferences header file needed to FL_EXPORT all
of the nested classes for WIN32.
- Fl_Double_Window couldn't be nested on WIN32. [SF Bug
#658219]
- Fl_Slider didn't call the callback function when the
user changed the value using the keyboard and the
"when" condition was FL_WHEN_RELEASE. [SF Bug #647072]
- Lines with less than 2 unique vertices and polygons
with less the 3 unique vertices were not drawn
properly. [SF Bug #647067]
- The size_range() values were not honored under MacOS
X. [SF Bug #647074]
- OpenGL windows didn't resize correctly on MacOS X.
[SF Bug #667855]
- The menus incorrectly used the overlay visual when one
or more menu items contained an image. [SF Bug #653846]
- Changed some error messages to use Fl::error() instead
of fprintf()...
- Fl_Text_Buffer and Fl_Text_Display used free to free
memory that was allocated using the new operator.
- Tweeked the plastic scheme under MacOSX to better
match the colors.
- The Fl_Image.H always included the x.H header file,
which included many system headers that could
interfere with normal GUI applications. It now uses
the corresponding based types for the image id and
mask to avoid this.
- The FLUID widget panel wasn't sorted, so keyboard
navigation was strange. [SF Bug #647069]
- Fl_Scroll didn't compute the location of labels to the
right or below when determining the area to erase.
- Added backward-compatibility macro for
filename_setext().
- Fl_Bitmap::copy(), Fl_Pixmap::copy(), and
Fl_RGB_Image::copy() all could overflow the source
image when scaling the image.
- Double/triple clicks in Fl_Input fields didn't copy
the expanded selection to the clipboard.
- Fl_Glut_Window and Fl_Gl_Window didn't always initialize
the OpenGL context on MacOS.
CHANGES IN FLTK 1.1.2
- Fl_Menu_Bar now supports drawing vertical dividers
between menu items and submenus in the menu bar.
- Fl_File_Chooser::value() didn't return NULL when the
user clicked Cancel while selecting a directory. This
bug also affected fl_dir_chooser().
- Fl_Menu_::add(const char *) used too small a menu item
label buffer and didn't do bounds checking.
- Eliminate some compiler warnings with CodeWarrier
under WIN32 (Paul Chambers)
- Fl_Gl_Window widgets did not resize properly under
MacOS X.
- The cursor could be set for the wrong window in the
text widgets.
- Fl_Check_Browser didn't provide const char * add
methods as documented.
- Fl_Check_Browser didn't draw the same style of check
marks at the other widgets.
- Fl_Button, Fl_Choice, and Fl_Menu_Button incorrectly
activated the button/menu when the spacebar was
pressed in conjunction with shift, control, alt, or
meta.
- FLTK should now compile with Xft 2.0.
- Some versions of Tru64 4.0 have snprintf and
vnsprintf, but don't have the prototypes for those
functions.
- FLTK had trouble doing character composition with some
keyboard layouts under X11 (in particular, Belgian).
- Fl_Text_Editor would cause a segfault if the user
pressed CTRL-V (paste) without having any data in the
clipboard...
- The tab key moved backwards in menus instead of
forwards. Shift-tab still moves backwards.
- The redraw_label() method didn't damage the parent
window when the label was outside the widget's
bounding box.
- Added a "draw_children()" method to Fl_Group to make
subclassing Fl_Group with a custom draw() function
easier.
- Fl_Text_Editor now supports basic undo functionality.
- FLUID now uses Fl_Text_Editor widgets for all
multi-line code fields.
- Added new widget bin and icons to FLUID.
- FLUID would try running multiple commands in parallel,
even though it wasn't capable of handling it.
- FLUID didn't generate code for some attributes when
using custom/named widget classes.
- Added a new FL_COMMAND state bit which maps to FL_CTRL
on X11 and WIN32 and FL_META on MacOS.
- MacOS keyboard modifiers mapping corrections. Cmd and
Control are no longer swapped, event_key and event_text
return (mostly) the same values as on other platforms.
- The Fl_Tabs widget should no longer be a focus hog;
previously it would take focus from child widgets.
- The file chooser now activates the OK button when
opening a directory in directory selection mode.
- Fixed a bug in the file chooser when entering an
absolute path.
- Back-ported some FLTK 2.0 tooltip changes to eliminate
erroneous tooltip display.
- MacOS windows were resizable, even when size_range
would not allow for resizing.
- Fl_Text_Editor now supports Shift+Delete, Ctrl+Insert,
and Shift+Insert for cut, copy, and paste,
respectively.
- Fl_Text_Display didn't restore the mouse pointer when
hidden.
- Fl::arg() now ignores the MacOS X -psn_N_NNNNN option.
- Added another change to the WIN32 redraw handling for
the MingW compilers.
- Fl_File_Chooser didn't handle WIN32 home directories
that used backslashes instead of forward slashes.
- Fl_Text_Display didn't limit the resize height to 1
line.
- Fl_Scrollbar widgets incorrectly took keyboard focus
when clicked on. This caused widgets such as
Fl_Text_Display to hide the cursor when you scrolled
the text.
CHANGES IN FLTK 1.1.1
- Fl_Text_Display didn't always show the cursor.
- Fl_Tabs now only redraws the tabs themselves when
making focus changes. This reduces flicker in tabbed
interfaces.
- The WIN32 redraw handler now correctly merges the FLTK
and Windows redraw regions.
- The Fl_Text_* widgets use the C++ bool type, which is
not supported by older C++ compilers. Added a
configure check and workaround code for this.
- Fl_X::set_xid() didn't initialize the backbuffer_bad
element that was used with XDBE.
- Fl_Shared_Image::uncache() was not implemented.
- Fl::set_font() didn't 0-initialize all font descriptor
data.
- Some OpenGL implementations don't support single-
buffered visuals. The Fl_Gl_Window class now emulates
single-buffered windows using double-buffered
windows.
- Added a workaround for a compiler bug in Borland C++
that prevented Fl_Help_View.cxx from compiling.
- Checkmarks didn't scale properly; copied the 2.0 check
mark code over.
- Replaced several memcpy's with memmove's for
portability (memmove allows for overlapping copies,
memcpy does not)
- Bug #621737: Fl_Bitmap::copy(), Fl_Pixmap::copy(), and
Fl_RGB_Image::copy() now range-check the new width and
height to make sure they are positive integers.
- Bug #621740: the WIN32 port needed to handle WM_MOUSELEAVE events
in order to avoid problems with tooltips.
- Fl_PNM_Image didn't set the "alloc" flag for the data,
which could lead to a memory leak.
- fl_filename_match() was inconsistently doing case-
insensitive matching.
- Fl_Button redraw fix for bug #620979 (focus boxes and
check buttons).
- Fl_Text_Display fix for bug #620633 (crash on
redisplay).
- Fl_Output now calls its callback when the user clicks
or drags in the widget.
- Shortcuts now cause buttons to take focus when visible
focus is enabled.
- fl_filename_relative() didn't check that the path was
absolute under WIN32.
- fl_filename_relative() didn't check that the path was
on the current drive under WIN32.
- The Fl_BMP_Image class now handles 16-bit BMP files
and BMP files with a transparency mask.
- The fltk-config script didn't add the required include
path, if any, when compiling a program.
- Added a license clarification that the FLTK manual is
covered by the same license as FLTK itself.
- Fl_Check_Browser wasn't documented.
- Fl_Preferences::Node::addChild(), deleteEntry(), and
remove() didn't set the "dirty" flag.
- The "no change" button didn't work in the FLUID widget
panel.
- Vertical scrollbars did not draw the arrows inactive
when the scrollbar was inactive.
CHANGES IN FLTK 1.1.0
- Documentation updates.
- Added a Fl_Widget::redraw_label() method which flags a
redraw of the appropriate area. This helps to
eliminate flicker when updating the value of a widget.
- Fl_Wizard::value() now resets the mouse cursor to the
window's default cursor.
- Fl_File_Chooser::type() didn't enable/disable the new
directory button correctly.
- Fl_Preferences::entryExists() did not work properly.
- FLUID's image file chooser pattern was incorrect.
- Fl_File_Icon::load_system_icons() now detects KDE
icons in /opt/kde, /usr/local, and /usr automatically,
and supports the KDEDIR environment variable as well.
- Submenus now display to the left of the parent menu if
they won't fit to the right. Previously they would
display right on top of the parent menu...
- Fl_Menu_:add() didn't handle a trailing "\" character
gracefully.
- Clicking/dragging the middle mouse button in a
scrollbar now moves directly to that scroll position,
matching the behavior of other toolkits.
- Added some more range checking to the Fl_Text_Display
widget.
- The editor demo did not correctly update the style
(syntax highlighting) information.
CHANGES IN FLTK 1.1.0rc7
- Updated the Fl_Text_Buffer and Fl_Text_Display classes
to be based on NEdit 5.3 (patch from George Garvey).
- Fixed a problem with Fl::wait(0.0) on MacOS X 10.2;
this affected the fractals demo and other OpenGL
applications.
- Fl_Glut_Window now takes keyboard focus and handles
shortcut events.
- The MacOS X implementation of fl_ready() now checks
the event queue for events.
- Fl_PNM_Image now supports the XV/GIMP thumbnail format
(P7).
- Fl_Preferences would not find groups inside the root
group.
- Small bug fixes for Fl_Chart, Fl_Scrollbar, Fl_Tabs,
and FLUID from Matthew Morrise.
- Fl_Chart didn't have its own destructor, so data in
the chart wasn't freed.
- Fl_Menu_Button no longer responds to focus or keyboard
events when box() is FL_NO_BOX.
- FLTK convenience dialogs put the buttons in the wrong
order.
- Fl_BMP_Image didn't load 4-bit BMP files properly.
- Minor tweeks to the WIN32 DLL support.
- Fl_Text_Display::resize() could go into an infinite
loop if the buffer is emptied.
- Fl::handle() didn't pass FL_RELEASE events to the
grab() widget if pushed() was set (for proper menu
handling...)
- DND events were being sent to the target window
instead of the target widget under WIN32.
- The newest Cygwin needs the same scandir() handling as
HP-UX.
- FLUID didn't register the image formats in the
fltk_images library, and had some other image
management problems.
- Fixed one more redraw bug in Fl_Browser_ where we
weren't using the box function to erase empty space in
the list.
- Fl_Text_Display::buffer() now calls resize() to show
the buffer.
- Fl_Help_View didn't support HTML comments.
- Fl_Help_View didn't include the extra cellpadding when
handling colspan attributes in cells.
- Fl_Help_View didn't support table alignment.
CHANGES IN FLTK 1.1.0rc6
- Documentation updates.
- Fl::handle() didn't apply the modal tests for
FL_RELEASE events, which caused Fl_Tabs to allow users
to change tabs even when a modal window was open.
- Fl_Browser_, Fl_Input_, Fl_Slider now use the box
function to erase the background. This fixes some
long-standing redraw problems.
- More snprintf/strlcpy/strlcat changes where needed.
- Fl::get_font_name() would leak 128 bytes.
- Eliminated most of the "shadowed" variables to avoid
potential problems with using the wrong copy of "foo"
in a class method.
- Moved Fl_BMP_Image, Fl_GIF_Image, and Fl_PNM_Image to
the fltk_images library, so the only image formats
that are supported by the core library are XBM and XPM
files. This reduces the size of the FLTK core library
by about 16k...
- The Fl_Text_Display::resize() method was incorrectly
flagged as protected.
- Fixed some memory/initialization bugs in
Fl_File_Chooser that valgrind caught.
- The PNG library png_read_destroy() is deprecated and
does not free all of the memory allocated by
png_create_read_struct(). This caused a memory leak in
FLTK apps that loaded PNG images.
- Added uncache() method to Fl_Image and friends.
- Added image() methods to Fl_Menu_Item.
- Added default_cursor() method and data to Fl_Window.
- Fl_Group would send FL_ENTER events before FL_LEAVE
events, causing problems with adjacent widgets.
- Fixed filename problems with Fl_File_Chooser -
changing the filename field directly or choosing files
from the root directory could yield interesting
filenames.
- Fl_Input_ could crash if it received an empty paste
event.
- The mouse pointer now changes to the I beam
(FL_CURSOR_INSERT) when moved over an input field or
text widget.
- "make install" didn't automatically (re)compile the
FLUID executable.
- Added an Fl::get_boxtype() method to get the current
drawing function for a specific box type.
- Fl_Output and Fl_Multiline_Output didn't prevent
middle-mouse pastes.
- Fl_JPEG_Image didn't compile out-of-the-box with Cygwin
due to a bug in the Cygwin JPEG library headers.
- Fl_BMP_Image still didn't work with some old BMP files.
- "make distclean" didn't really clean out everything.
- Tweeked the look of the check button with a patch from
Albrecht Schlosser.
CHANGES IN FLTK 1.1.0rc5
- Added "wrap" type bit to Fl_Input_, so you can now
have a multiline text field that wraps text.
- Setting the value() of an output text field no longer
selects the text in it.
- Output text fields now show a caret for the cursor
instead of the vertical bar.
- The newButton and previewButton widgets are now public
members of the Fl_File_Chooser class. This allows
developers to disable or hide the "new directory" and
"preview" buttons as desired.
- Added new visible focus flag bit and methods to
Fl_Widget, so it is now possible to do both global and
per-widget keyboard focus control.
- Removed extra 3 pixel border around input fields.
- No longer quote characters from 0x80 to 0x9f in input
fields.
- Improved speed of Fl_Browser_::display() method with
large lists (patch from Stephen Davies.)
- Fl_Help_View didn't properly handle NULL from the link
callback (the original filename/directory name were
not preserved...)
- Fl_Help_View didn't use the boxtype border values when
clipping the page that was displayed.
- Added first steps to CodeWarrior/OS_X support (see
fltk-1.1.x/CodeWarrior/OS_X.sit)
- Cleaned up the WIN32 export definitions for some of
the widget classes.
- Fixed a filename completion bug when changing
directories.
- Fl_File_Chooser::value() would return directories with
a trailing slash, but would not accept a directory
without a trailing slash.
- When installing shared libraries, FLUID is now linked
against the shared libraries.
- MacOS: missing compile rule for .dylib files.
- Fl_Group::current(), Fl_Group::begin(), and
Fl_Group::end() are no longer inlined so that they are
properly exported in DLLs under WIN32. Similar
changes for all static inline methods in other
classes.
- MacOS: support for Mac system menu (Fl_Sys_Menu_Bar)
- MacOS: wait(0) would not handle all pending events
- Added new makeinclude file for MingW using GCC 3.1.x.
- Fl_Choice::value(n) didn't range check "n".
- The MingW and OS/2 makeinclude files didn't have the
new fltk_images library definitions.
- Fl_Text_Editor didn't scroll the text in the widget
when dragging text.
- Config header file changes for Borland C++.
- FLTK didn't provide a Fl::remove_handler() method.
CHANGES IN FLTK 1.1.0rc4
- Added new filter_value() methods to Fl_File_Chooser to
get and set the current file filters.
- Added support for custom filters to Fl_File_Chooser.
- Added Borland C++ Builder IDE project files from
Alexey Parshin.
- Resource leak fixes under WIN32 from Ori Berger.
- Now register a WIN32 message for thread messages.
- Fl_Window didn't initialize the min and max window
size fields.
- The JPEG and PNG image classes have been moved to the
fltk_images library, a la FLTK 2.0. You can register
all image file formats provided in fltk_images using
the new fl_register_images() function.
- Fl_XBM_Image didn't correctly load XBM files.
- MacOS: Added Greg Ercolano's file descriptor support.
- MacOS: Fixed text width bug.
- A change in fl_fix_focus() broken click-focus in FLWM.
- Cygwin with -mnocygwin didn't like the FL/math.h
header file.
- Fl_Browser_ cleared the click count unnecessarily.
- MacOS: Pixmap draw fix, gl_font implemented
FL_FOCUS fix, window type fix for modal and nonmodal
windows, glut uninitialised 'display' proc fix
- Now support FLTK_1_0_COMPAT symbol to define
compatibility macros for the old FLTK 1.0.x function
names to the 1.1.x names.
- Now translate the window coordinates when a window is
shown, moved, or resized. This should fix the "menus
showing up at the wrong position" bug under XFree86.
- Fixed some more problems with the Fl_BMP_Image file
loader.
- BC++ fixes.
- The pixmap_browser demo didn't check for a NULL image
pointer.
- Fl_File_Icon::find() now uses fl_filename_isdir()
under WIN32 to check for directories.
- Fl_File_Chooser's preview code called refcount()
on the deleted image's object.
- Fixed another problem with the Fl_BMP_Image loader.
- The fl_file_chooser() callback was being called with a
NULL filename.
- Documented that fl_push_clip() is preferred over
fl_clip(), with a corresponding source change.
- Minor changes to the MacOS X event handling code.
- Added syntax highlighting example code to the editor
test program.
- Fl_Text_Display didn't range check style buffer
values.
- Added "dark" color constants (FL_DARK_RED, etc.)
- The MacOS font code was missing definitions for
fl_font_ and fl_size_.
CHANGES IN FLTK 1.1.0rc3
- Documentation updates.
- New file chooser from design contest.
- Did some testing with Valgrind and fixed some memory
problems in Fl_Help_View::Fl_HelpView,
Fl_Menu_::remove(), Fl_Text_Display::draw_vline(), and
resizeform() (convenience dialogs).
- Fixed some redraw() bugs, and now redraw portions of
the parent widget when the label appears outside the
widget.
- The boolean (char) value methods in Fl_Preferences
have been removed since some C++ compilers can't
handle char and int value methods with the same name.
- Added fl_read_image() function.
- Fixed Fl_Valuator::format() so that the correct format
type is used when step == 1.0.
- Fl_Help_View didn't support the TT markup.
- Fl_Shared_Image used a double-pointer to the image
handler functions, which was unnecessary and
unintuitive.
- Fl_PNM_Image didn't load the height of the image
properly.
- Fl_BMP_Image, Fl_JPEG_Image, Fl_PNG_Image, and
Fl_Shared_Image didn't delete image data that was
allocated.
- Enabled the OpenGL and threads demos when compiling
for MingW.
- Fl_File_Input didn't update the directory buttons if a
callback was registered with the widget.
- The file chooser would return the last selected
file(s) when cancel was pressed.
- The file chooser limited the resizing of the chooser
window unnecessarily.
- Fixed WM_PAINT handling under WIN32.
- Minor tweeks to MingW and OS/2 config headers.
- Fl_Value_Input now correctly determines if step()
specifies an integer value.
- Fl_Help_View didn't add links inside PRE elements.
- OS/2 build fixes from Alexander Mai.
- Now use strlcat() instead of strncat() which could
cause buffer overflows.
- Now use of strlcpy() instead of strncpy() to simplify
the code.
- Drag-n-drop under WIN32 now shows a [+] cursor instead
of the link cursor.
- Fixed widget width tooltip and default argument
handling code in FLUID.
- Fixed colors used when drawing antialiased text using
Xft.
- Fl_Preferences::makePath() now uses access() instead
of stat() when checking to see if the destination
directory already exists.
- Fl_BMP_Image now supports older BMP files with the 12
byte header.
- Optimized the redrawing of tabs and radio/check
buttons when the keyboard focus changes.
- More tooltip fixes.
- DND text operations would loop under X11.
CHANGES IN FLTK 1.1.0rc2
- Portability fixes.
- Backported 2.0 tooltip changes.
- Several of the valuators did not support tooltips.
- The last menu item in a menu didn't pick up on font
changes.
- FLUID now properly handles default argument parameters
properly.
- Fixed WM_PAINT handling under WIN32 - didn't validate
the correct region that was drawn.
- Fl_Multiline_Output would insert the enter key.
- Fl_File_Browser didn't clip items to the column width.
- Fl_Window::draw() cleared the window label but didn't
restore it, so windows could lose their titles.
- Eliminated multiple definitions of dirent structure
when compiling under WIN32.
- Adjusted the size of the circle that is drawn inside
radio buttons to scale better for larger labels.
- FLUID was opening the display when it shouldn't have.
- Fl_File_Chooser.cxx defined the file chooser functions
again; they should only be defined in the header file.
- Wide arcs would draw with "teeth".
- The preferences demo included Fl/Fl_Preferences.H
instead of FL/Fl_Preferences.H.
CHANGES IN FLTK 1.1.0rc1
- The fl_file_chooser() and fl_dir_chooser() functions
now support an optional "relative" argument to get
relative pathnames; the default is to return absolute
pathnames.
- The backspace and delete keys now work as expected in
the file chooser when doing filename completion.
- FLUID now supports running shell commands.
- New Fl_File_Input widget that shows directory
separators with filename in input field.
- The Fl_File_Chooser dialog now shows the absolute path
in the filename field using the Fl_File_Input widget.
- FLUID now keeps track of grid, tooltip, and other
GUI options, along with the last 10 files opened.
- Tooltip windows would show up in the task bar under
WIN32.
- Now append trailing slash to directory names in names
in WIN32 version of scandir(). This takes care of a
file chooser performance problem with large
directories.
- Added Fl_Preferences class from Matthias Melcher,