fltk/test
Albrecht Schlosser 1fd6f0dd3a Fix STR 3458: "GLUT compatibility mode segfaults"
... "when there's no current window".

Silently ignore GLUT function calls that need a current window if the
current window is NULL, return 0 from functions that return an 'int'.

Check if window is shown in Fl_X11_Gl_Window_Driver::swap_buffers().
This would issue "XRequest.nnn: GLXBadDrawable 0x0" on X11 otherwise.

Note: the chosen implementation to ignore GLUT calls silently appears
to be compatible with GLUT (3.7) whereas FreeGLUT 3.0 would issue error
messages and exit. The latter could be implemented as well but would
be much more work.
2023-10-07 17:14:11 +02:00
..
desktop
images Move animated gif images to the test/images folder 2023-02-23 19:28:27 +01:00
mac-resources
pixmaps Move animated gif images to the test/images folder 2023-02-23 19:28:27 +01:00
.gitignore Improve and extend fl_contrast() (#370) 2022-12-28 18:16:23 +01:00
adjuster.cxx
animated.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
arc.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
ask.cxx Fl_String refactoring and extension (#683) 2023-02-23 15:42:05 +01:00
bitmap.cxx
blocks.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
boxtype.cxx Fixing FLUID file corruption from issue #653 (#662) 2023-01-26 15:23:43 +01:00
browser.cxx Fix position() methods that shadow Fl_Widget::position() 2023-02-02 20:54:19 +01:00
button.cxx
buttons.cxx Adds compact buttons feature to create keypads. 2023-09-03 00:09:40 +02:00
cairo_test.cxx Cairo: introduce Fl::cairo_flush() in FLTK API 2023-03-14 19:51:34 +01:00
checkers_pieces.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
checkers.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
clipboard.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
clock.cxx
CMakeLists.txt Fix STR 3458: "GLUT compatibility mode segfaults" 2023-10-07 17:14:11 +02:00
colbrowser.cxx Replace all calls to sprintf() by calls to snprintf(). 2022-09-26 16:12:18 +02:00
color_chooser.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
contrast.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
coordinates.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
cube.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
CubeMain.cxx
CubeView.cxx
CubeView.h Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
CubeViewUI.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
cursor.cxx Add usage example of Fl_Window::cursor(const Fl_RGB_Image *, int, int) 2023-04-08 21:23:43 +02:00
curve.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
demo.cxx Fix test/demo for X11 on macOS (e.g. XQuartz) 2023-03-22 20:29:23 +01:00
demo.menu Cairo: introduce Fl::cairo_flush() in FLTK API 2023-03-14 19:51:34 +01:00
device.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
doublebuffer.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
editor.cxx Background color attribute for Fl_Text_Display. (#378) 2022-01-27 23:50:06 +01:00
fast_slow.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
file_chooser.cxx Replace all calls to sprintf() by calls to snprintf(). 2022-09-26 16:12:18 +02:00
flex_demo.cxx Rename some Fl_Flex methods for FLTK compliance (#594) 2022-12-15 16:46:40 +01:00
flex_login.cxx Rename some Fl_Flex methods for FLTK compliance (#594) 2022-12-15 16:46:40 +01:00
fltk-versions.cxx
fonts.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
forms.cxx
fractals.cxx Replace all calls to sprintf() by calls to snprintf(). 2022-09-26 16:12:18 +02:00
fracviewer.cxx
fracviewer.h
fromdos.c
fullscreen.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
gl_overlay.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
glpuzzle.cxx Fix position() methods that shadow Fl_Widget::position() 2023-02-02 20:54:19 +01:00
glut_test.cxx Fix STR 3458: "GLUT compatibility mode segfaults" 2023-10-07 17:14:11 +02:00
handle_events.cxx Display mouse button state in test/handle_events.cxx demo 2023-07-12 19:32:02 +02:00
hello.cxx
help_dialog.cxx Animated GIF support (Fl_Anim_GIF_Image class) (#375) 2023-01-21 17:27:58 +01:00
help_dialog.html Move animated gif images to the test/images folder 2023-02-23 19:28:27 +01:00
icon.cxx Fixes #297 - improvements for icon.cxx + icon() docs 2021-11-26 13:13:58 -08:00
iconize.cxx
image.cxx Generate FL/fl_config.h rather than FL/abi-version.h 2021-12-18 22:44:08 +01:00
inactive.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
input_choice.cxx
input.cxx Fix position() methods that shadow Fl_Widget::position() 2023-02-02 20:54:19 +01:00
keyboard_ui.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
keyboard.cxx Revert "#733 partial: Adds rotation gesture event on MacOS" 2023-08-05 16:37:38 +02:00
keyboard.h Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
label.cxx
line_style.cxx Fix position() methods that shadow Fl_Widget::position() 2023-02-02 20:54:19 +01:00
list_visuals.cxx Replace all calls to sprintf() by calls to snprintf(). 2022-09-26 16:12:18 +02:00
makedepend Update dependencies 2023-09-22 14:03:34 +02:00
Makefile Fix STR 3458: "GLUT compatibility mode segfaults" 2023-10-07 17:14:11 +02:00
mandelbrot_ui.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
mandelbrot.cxx Fix new warnings in CI 2023-01-10 17:07:03 +01:00
mandelbrot.h Add necessary initialisation in test/mandelbrot 2023-01-14 20:07:30 +01:00
menubar.cxx Avoid "#undef __APPLE__" preprocessor directive 2023-02-07 07:17:23 +01:00
message.cxx
minimum.cxx
native-filechooser.cxx
navigation.cxx
offscreen.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
output.cxx
overlay.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
pack.cxx Replace all calls to sprintf() by calls to snprintf(). 2022-09-26 16:12:18 +02:00
pixmap_browser.cxx Animated GIF support (Fl_Anim_GIF_Image class) (#375) 2023-01-21 17:27:58 +01:00
pixmap.cxx Animated GIF support (Fl_Anim_GIF_Image class) (#375) 2023-01-21 17:27:58 +01:00
preferences.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
radio.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
README-unittests.txt Make unittest conform to CMP (#597) 2022-12-17 13:16:57 +01:00
README.txt
resize-arrows.cxx
resize-arrows.h Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
resize-example1.cxx
resize-example2.cxx
resize-example3a.cxx
resize-example3b.cxx
resize-example3c.cxx
resize-example4a.cxx
resize-example4b.cxx
resize-example5a.cxx Add new resize example to test and dox (PR #165) 2021-11-08 16:18:58 +01:00
resize-example5b.cxx Add new resize example to test and dox (PR #165) 2021-11-08 16:18:58 +01:00
resize-example5c.cxx Add new resize example to test and dox (PR #165) 2021-11-08 16:18:58 +01:00
resize.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
resizebox.cxx Fixing _define before _include. 2022-11-06 16:19:53 +01:00
rgb.txt
rotated_text.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
scroll.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
shape.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
subwindow.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
sudoku.cxx macOS audio is usable with XQuartz 2023-08-16 11:18:19 +02:00
sudoku.ico
sudoku.rc
symbols.cxx Fix and update alignment #346 (#701) 2023-03-18 17:33:27 +01:00
table.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
tabs.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
threads.cxx Replace all calls to sprintf() by calls to snprintf(). 2022-09-26 16:12:18 +02:00
threads.h
tile.cxx
tiled_image.cxx Update dependencies and fix whitespace errors 2023-02-02 17:09:14 +01:00
trackball.c Fix compiler warnings (Windows, MSVC) 2021-08-30 13:56:28 +02:00
trackball.h
tree.fl FLUID: adds greatly enhanced Shell Commands (#774) 2023-09-26 16:01:03 +02:00
twowin.cxx
unittest_about.cxx Make unittest conform to CMP (#597) 2022-12-17 13:16:57 +01:00
unittest_circles.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
unittest_complex_shapes.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
unittest_core.cxx FLUID: adds greatly enhanced Shell Commands (#774) 2023-09-26 16:01:03 +02:00
unittest_fast_shapes.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
unittest_images.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
unittest_points.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
unittest_schemes.cxx Draw parent window backdrop on Fl_Tabs (#718) 2023-09-29 14:12:39 +02:00
unittest_scrollbarsize.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
unittest_simple_terminal.cxx Make unittest conform to CMP (#597) 2022-12-17 13:16:57 +01:00
unittest_symbol.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
unittest_text.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
unittest_unicode.cxx Fix position() methods that shadow Fl_Widget::position() 2023-02-02 20:54:19 +01:00
unittest_viewport.cxx Use FL_OVERRIDE for all overridden virtual methods (#611) 2022-12-30 19:14:36 +01:00
unittests.cxx Fl_String refactoring and extension (#683) 2023-02-23 15:42:05 +01:00
unittests.h Fix more compiler warnings (comma at end of enum) 2023-04-13 22:55:18 +02:00
utf8.cxx Fix some but not all memory leaks in test/utf8 demo 2023-05-08 16:26:07 +02:00
valuators.fl FLUID: Fixes regression #777 2023-09-26 00:29:26 +02:00
windowfocus.cxx
wizard.cxx Documentation on widget coordinates and layout, plus new test programs (#304) 2021-12-08 15:00:33 +01:00

test/README.txt - 20 Oct 1998
-----------------------------

This directory contains tests and demos of FL.  In most cases you can
learn a lot about how to program FL by looking at the source code.

Type "make" to compile them all.

The program "demo" is a graphical interface to run all the demos. (you
may recognize this as a rewrite of an XForms program).

Some of the more interesting programs:

fractals:       A GLUT program with FL controls added to it

glpuzzle:       A GLUT program with no modifications

fullscreen:     Demo of how to make your window toggle to fill screen

list_visuals:   necessary to debug X visual stuff

mandelbrot:     A true application, using panels built in Fluid

menubar:        Demo of how FL's menus work

shiny:          Demo of drawing FL's controls using OpenGL

forms:          An XForms program to demonstrate emulation

colbrowser:     Another XForms program that is actually useful


-----------------------------------------------------
Note: this file is outdated and incomplete. (*FIXME*)
-----------------------------------------------------