Commit Graph

41 Commits

Author SHA1 Message Date
Albrecht Schlosser
0f41797b7a Cairo: introduce Fl::cairo_flush() in FLTK API
Flushing the Cairo context is necessary on Windows to make Cairo
drawings appear on the device (screen). This new method makes it easy
for user code to do this correctly after using Cairo drawings.

- add Fl::cairo_flush(cairo_t *)
- document Fl::cairo_flush(cairo_t *)
- reformat Cairo doxygen docs and code (partially)
- use the new method in Fl_Cairo_Window
- use the new method in test/cairo_test.cxx
- other minor (text) changes in test/cairo_test.cxx
- add test/cairo_test to the demo menu (test/demo.menu)
2023-03-14 19:51:34 +01:00
Matthias Melcher
1fc269b0d4
Move global FLTK options into new app fltk-admin (#560) 2023-01-21 17:14:41 +01:00
Albrecht Schlosser
78cf29ba29 Improve and extend fl_contrast() (#370)
- Add internal fl_contrast_cielab() as the new default.
- Keep old function as internal fl_contrast_legacy().
- Add fl_contrast_mode() to switch between fl_contrast() functions.
- Add fl_contrast_level() to fine tune fl_contrast() per mode.
- Add option to register and use a custom contrast function.
- Add test/contrast.cxx test program.
- Move all fl_contrast() related code to a new file src/fl_contrast.cxx.
- Add fl_lightness() convenience function for perceived lightness.
- Add fl_luminance() convenience function for physical luminance.
2022-12-28 18:16:23 +01:00
Albrecht Schlosser
0bc06e8f1a Reformat and move clipboard demo from examples to test folder
The clipboard demo is more a test program than an example and very
useful even if the examples are not built.

Also update dependencies.
2021-11-18 13:44:41 +01:00
Albrecht Schlosser
75240c9a32 Add new resize examples to demo menu, remove figure numbers
Adding only 2 of 3 new examples is intentional (9 per menu level).

Figure numbers have been removed in all the HTML docs recently for
better maintainability.
2021-11-08 16:19:48 +01:00
Albrecht Schlosser
d91160a9e0 Remove platform specific code from test apps
Test programs that open files don't use platform specific code.
They don't open files from macOS bundles.
Support files must either be in the current working directory or
given on the command line.
On macOS this requires a full path when using bundles.
2020-08-21 18:54:40 +02:00
Albrecht Schlosser
af7f485e06 Consolidate test/demo for all build systems
This is an attempt to unify the code for all build systems (CMake,
autotools with make), platforms (operating systems) and toolchains
(make + gcc/clang, Visual Studio IDE, Xcode ...) to avoid duplicate
code and clarify the differences for future devs and to simplify
maintenance.

The goal is to minimize the platform specific code.

Much of the new code are comments to describe the different situations.
The main program does now all the "hard work" to construct the paths
necessary to access the other applications and data files.

Use macOS specific code to determine the application path (app_path)
in main() instead of function dobut(), when test apps are activated.

Remove obsolete comments and dead code.

Tested on Windows and Linux with both autotools/configure/make
and CMake with make (Linux + MinGW), Visual Studio.
2020-07-21 11:11:03 +02:00
Duncan Gibson
c132ac564e add resize examples as per STR3433
add example code for creating images for resize.dox
based on Article #415: How does resizing work?
https://www.fltk.org/articles.php?L415

see also https://www.fltk.org/str.php?L3433
2020-07-20 14:08:47 +02:00
Matthias Melcher
d97836f5dd macOS: fixed all demo programs that need to access resources
MacOS uses bundles instead of executables. CMake creates those bundles in various locations, depending on the generator used (Xcode or Makefiles). I tried to fix all instances where demo apps did not find the resources they needed. This probably must be done for Linux and MSWindows as well.
2019-12-23 14:33:24 +01:00
Albrecht Schlosser
16774ddc4e Rename test/help demo program to test/help_dialog.
This change avoids a name conflict with CMake's auto-generated target 'help'
for "Unix Makefiles", "Ninja", and supposedly other generators as well.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12171 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2017-02-08 02:06:52 +00:00
Albrecht Schlosser
3f401f4477 Add Ian's offscreen test program.
Same commit as branch-1.3, svn r11287.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11288 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-05 00:53:40 +00:00
Manolo Gouy
982121f807 Added the new 'animated' test program.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10638 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-03-18 11:32:42 +00:00
Albrecht Schlosser
df31569ac4 Add unittests to demo program menu.
This test program may not be in the optimal position in the menu,
but w/o restructuring more of the menu this was the best position
I could find. Maybe we can restructure the menu in the future.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10433 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-11-04 10:05:36 +00:00
Manolo Gouy
e5536f5bc3 Undoing commit r.10422 that was a wrong move.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10423 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-10-30 20:38:53 +00:00
Manolo Gouy
7df34e02c4 Fixed typo about the editor demo program
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10422 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-10-30 20:29:21 +00:00
Manolo Gouy
598e2cb63b MacOS: create a bundled version of all example programs with fltk-config --post
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9736 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-12-05 14:53:03 +00:00
Matthias Melcher
e203237eb3 Integrated menu into demo resource branch for OS X. Indicating items that open more choices with ...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8167 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-01-02 03:50:54 +00:00
yuri
757752d164 add rotated_text example to demo menu
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7733 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-10-24 19:11:08 +00:00
Manolo Gouy
e00a106337 Added device demo to target list and to cool demos section
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7322 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-23 18:09:38 +00:00
Manolo Gouy
bbeead9259 minor changes so all demos work under Xcode.
Modified files are:
- test/demo.cxx
- test/demo.menu
- test/colbrowser.cxx

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7033 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-01-27 23:25:00 +00:00
Ian MacArthur
7c3ae1559b I've tweaked the demo.menu to include Greg's new native file chooser test alongside the
existing fltk file chooser test.

Also, I've taken the liberty of making the native file chooser load the system icons by default
(Greg had them not loaded by default, but I think it looks better with them...) and I have
adjusted the Makefile accordingly to make the linked libraries match.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7000 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-01-14 18:42:13 +00:00
Matthias Melcher
07a18370ad Added Fl_Tree source code, demo files, and documentation. Thanks, Greg!
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6934 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-11-14 15:49:12 +00:00
Matthias Melcher
fefa82e0b1 Adding Gerg's Fl_Table widget to FLTK 1.3 with kind permission. Documentation not yet added Support for both Visual Studio IDE's not yet added.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6929 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-11-14 13:05:37 +00:00
Matthias Melcher
cf61ea83a4 Remove mcast and dnd test programs. I do like them and they should be back eventually, however right now they ae not in the scope of the UTF8 port.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6216 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-11 10:38:40 +00:00
Matthias Melcher
b6bde2e456 Merging the UTF8 patch, consisting of O'ksi'd s original 1.1.6 patch and additions by Ian. PLEASE BE AWARE that the patch in its current incarnation is a regression in many aspects and further work is required before we can announce Unicode support.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6212 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-10 23:56:49 +00:00
Michael R Sweet
f27180b7cd Do some rearranging of image and desktop support files.
Add new Block Attack! game...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5358 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-25 06:58:33 +00:00
Michael R Sweet
f9f2de3572 Fix a resize issue with X11.
Add missing Id keywords to input_choice.

Add sudoku to demo program.

Add on-line help to sudoku game, and put all of the cells in the main
window so that the keyboard navigation is sane.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4659 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-11-27 05:15:47 +00:00
Michael R Sweet
2df3459457 Added Greg Ercolano's simple Fl_Input_Choice widget which is a
combination of the Fl_Input and Fl_Menu_Button widgets (STR
#650)

FL/Fl_Input_Choice.H:


documentation/Fl_Input_Choice.html:
    - Added.

documentation/fltk.book:
    - Added Fl_Input_Choice.html + --no-embedfonts option.

documentation/index.html:
    - Update version number and revision.

documentation/input_choice.jpg:
    - Added.

documentation/preface.html:
    - Update version number and revision.

documentation/widgets.html:
    - Add Fl_Input_Choice to lists.

fluid/Fl_Menu_Type.cxx:
    - Add Fl_Input_Choice_Type class and instance.

fluid/Fl_Type.h:
    - Add Fl_Input_Choice_Type class and instance.

fluid/factory.cxx:
    - Add Fl_Input_Choice menu item.

test/Makefile:
    - Add input_choice example.

test/input_choice.cxx:
    - Added.

test/demo.menu:
    - Add input_choice example.




git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4050 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24 21:14:22 +00:00
Matthias Melcher
57193e52c0 Quartz for FLTK 1.1:
- added pixmap drawing (no masking yet)
- added bitmap drawing
- added line styles (complete)
todo:
- missing refresh (double test, fluid, others)
- missing pixmap mask
- color_chooser has alignment issues
- images scale instead of beeing scissored
- fonts


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3798 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-31 00:27:40 +00:00
Michael R Sweet
6abb22c005 Dump the shiny demo.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3092 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-09-05 12:25:01 +00:00
Michael R Sweet
80c5b70c43 Add preferences demo.
Change all reference to matthiasmm.com to fltk.org.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2137 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-04-29 21:04:13 +00:00
Michael R Sweet
64f2cc0635 Fix threading test.
Add threading demo from 2.0, with minor improvements to make the
prime number generation faster/more realistic.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1823 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-12-08 16:23:51 +00:00
Michael R Sweet
313a2430ea Add tiled_image demo to menu file.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1779 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-11-28 21:08:07 +00:00
Michael R Sweet
9d81d971f7 Fl_HelpDialog and Fl_HelpView widgets.
"help" demo.

Minor doco updates.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1539 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-08-02 19:43:49 +00:00
Bill Spitzak
d5b47034a7 Added Fl::first_window(window) to change which window is at the top of
the window list.  This window is used as the "parent" of any modal
windows you create so it is a good idea to be able to change it.
Normally it is whatever window got the last event.

Fixed Fl_Menu::global handler to use first_window so if a modal window
pops up in response it is parented to the window containing the
menubar rather than the current top window.  This was an annoying bug!

Copied fl_line_style() and the line_style demo over from fltk 2.0
because I am tired of mailing this code to people.  Better to advertise this
as "added fl_line_style() function to set line thickness, dash patterns,
and end caps".

Fixed the documentation for these changes.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.0@1117 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2000-05-13 20:03:20 +00:00
Michael R Sweet
636b6de26d Added CubeView source files.
Added CubeView to the makefile and demo.menu.


git-svn-id: file:///fltk/svn/fltk/trunk@321 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
1999-02-22 21:33:55 +00:00
Michael R Sweet
5ca8c1473d Removed demod.menu, added editor arguments...
git-svn-id: file:///fltk/svn/fltk/trunk@196 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
1999-01-07 17:24:37 +00:00
Michael R Sweet
8a535a2f5b Get rid of those damned DOS lines!
git-svn-id: file:///fltk/svn/fltk/trunk@195 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
1999-01-07 17:22:38 +00:00
Michael R Sweet
b95db33f2c Lots of changes:
- Added #defines for Visual C++ to speed up compiles.
    - Added FLTK.DLL project to visualc directory.
    - Added editor project to visualc directory.
    - Added icon() method to Fl_Window class.
    - Implemented xclass() method for WIN32.
    - Fixed extern declaration of fl_send_extra_move in Fl_Menu_Window.cxx.
    - scandir_win32.c needed to include <stdlib.h>.
    - Added fix from Bill for fl_width() bug.
    - Updated fix for Fl_Input to default to FL_DOWN_BOX.
    - Added visible() check for children of Fl_Pack.
    - Added WinMain() function to library.
    - Now show console window in debug mode.
    - Fixed demo.menu and demo.cxx to work under WIN32.


git-svn-id: file:///fltk/svn/fltk/trunk@180 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
1999-01-04 19:25:40 +00:00
Michael R Sweet
e4c69fd44a Updated demo menu file (no more style demo).
git-svn-id: file:///fltk/svn/fltk/trunk@120 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
1998-12-02 18:24:50 +00:00
Michael R Sweet
f9039b2ae2 Initial revision
git-svn-id: file:///fltk/svn/fltk/trunk@2 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
1998-10-06 18:21:25 +00:00