Commit Graph

429 Commits

Author SHA1 Message Date
Michael R Sweet
3d08842222 We need to install mac.r...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5745 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-03-15 13:27:41 +00:00
Matthias Melcher
11a15d83a2 This is a suggested change. It is complete except for documentation.
I did not like the awake_cb system at all. These changes implement Fl::awake(Fl_Awake_Handler, void*) which is called from a thread and tells the main loop to call the specified handler (rather a callback I guess) as soon as possible from within the main thread. It is implemented as Fifo (currently 1024 entry ring buffer), so handlers are called in the order that they are generated in.

"test/threads" was modified to change the label color as soon as a thread reaches 10000 - pretty boring, but it show the wonderful simplicity of this approach: you can write libraries that don't need to add to the main loop or register a handler at all... .

I will do some more stress testing tonight.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5729 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-03-06 17:15:03 +00:00
Matthias Melcher
e52cb1cbb9 STR #1614: added missing FL_EXPORT to glutGet()
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5715 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-25 00:05:06 +00:00
Michael R Sweet
6e9a163035 Add handler for thread messages (STR #1536)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5683 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-08 23:04:20 +00:00
Michael R Sweet
c9a93b10f5 Drop extra (unnecessary) INSTALL_DIR call.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5680 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-08 20:52:41 +00:00
Michael R Sweet
44b2ff35cf Use install command instead of CHMOD, CP, and MKDIR.
Drop all POSTBUILD stuff as it is no longer used.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5663 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-06 19:35:28 +00:00
Michael R Sweet
85c2e38825 Update documentation and move glutDeviceGet() into code so we can return
the correct value for GLUT_NUM_MOUSE_BUTTONS.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5652 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-01 21:11:20 +00:00
Michael R Sweet
bda374b386 Add GLUT support functions from FreeGLUT (STR #1522)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5650 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-02-01 18:10:07 +00:00
Michael R Sweet
48a997d0ad Hide window before doing callback for OK button (STR #1565)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5644 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-28 19:41:56 +00:00
Michael R Sweet
84fe87f472 Fix indentation of elements (STR #1549)
Update layout of help dialog to look like other help dialogs.

Drop resource fork stuff from fltk-config (no more --post, it is a no-op)

Use a single table for the header on the documentation page.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5643 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-28 19:36:51 +00:00
Michael R Sweet
c8f1e91448 Rename fl_filename_isdir_quick to _fl_filename_isdir_quick, do not
export it, and add comments to indicate that it is a private API we
do not support outside of FLTK.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5635 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-23 15:02:00 +00:00
Matthias Melcher
e4586d1572 Removed 'optimization' for fl_filename_isdir which would break the original purpose of the fuction (testing the *existence* of a directory). But I did not want to lose the performance in the directory chooser where I *know* that a directory exists, just not if it is a file or directory, so I added the function fl_filename_isdir_quick() to do just that. Please verify that the new version works as expected, especially with regard to the directory chooser.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5630 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-22 11:14:29 +00:00
Matthias Melcher
f2ec919f29 Added Fl_RGB_Image header which simply include Fl_Image.H to keep the interface consitaent (STR #1551).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5619 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-18 19:27:51 +00:00
Matthias Melcher
cf9391c7b1 Changed Fl_Scroll::bbox() from private to protected.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5618 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-18 19:23:24 +00:00
Matthias Melcher
4b59f90ba7 Added "names.h" in "FL" to support developer output of event names etc. . This file is never compiled into the executable unless specifically added by the developer.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5612 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-18 12:11:02 +00:00
Matthias Melcher
5411396ea6 Fixed mousewheel event propagation (STR #1521)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5607 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-18 10:40:37 +00:00
Michael R Sweet
5456a2b8fc Add fl_open_uri() function as discussed on fltk.development.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5579 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-01-04 14:53:54 +00:00
Michael R Sweet
d168950719 Don't range check typed numbers until the user presses enter or leaves
the spinner.

Set the input field to floating point mode for non-integer steps.

Use %g as the default format.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5555 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-12-08 04:41:52 +00:00
Michael R Sweet
8ea3a45772 Merge all of the scrollbar sizes into a single API call
(Fl::scrollbar_size()) rather than a bunch of separate APIs and
hardcoded values (STR #1800)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5547 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-11-16 23:17:13 +00:00
Michael R Sweet
3ebd631cf0 Fl::x(), Fl::y(), Fl::w(), and Fl::h() did not report the desktop
work area on X11 (STR #1482)

Fix another "missing sentinel" warning in the Xft code.

FL/Fl.H:
    - Remove in-line x() and y() implementation for X11.

src/Fl_x.cxx:
    - Fl::x(), Fl::y(): Added.
    - fl_init_workarea(): Added to get _NET_WORKAREA property from the
      root window; if none, is available, the code falls back to 0, 0,
      DisplayWidth, and DisplayHeight.

src/fl_font_xft.cxx:
    - Missing sentinel needs cast to void *.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5535 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-10-30 14:16:08 +00:00
Michael R Sweet
8a64710a17 Fl_Spinner did not handle the arrow keys properly (STR #1476)
FL/Fl_Spinner.H:
    - Add Fl_Spinner::handle() method to handle arrow key and
      focus events.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5530 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-10-29 12:34:14 +00:00
Michael R Sweet
7febae3f9e Add GTK thin up/down box/frame types.
Update the GTK round up/down box types.

Update radio/check box drawing for gtk+ scheme.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5505 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-10-03 02:35:12 +00:00
Michael R Sweet
69dcc7c685 Adjust arrow sizefor consistency.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5488 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-25 01:17:20 +00:00
Michael R Sweet
b4c1d3ef03 Implement new "gtk+" scheme which provides a Bluecurve look-n-feel.
Fix size and position of dialog controls in FLUID to match the HIG.

Add "GTK+" scheme to the list of selectable schemes in FLUID.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5438 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-17 14:58:25 +00:00
Matthias Melcher
b39938e5cc OK, I believe I fixed the transparency issues on WIN32. Please everyone, test the code on all machines.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5436 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-16 16:02:00 +00:00
Matthias Melcher
c6de2dd3ef Implemented alpha blending for WIN32. I believe that I did it in a way that is compatible even with Windows 95, but please let me know if you have any concerns. Cygwin not tested, but hopefully OK.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5430 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-15 15:35:16 +00:00
Matthias Melcher
7ae0ff0240 Updated OSX subwindow simulation code to better add and remove from the clipping list
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5379 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-29 11:03:05 +00:00
Matthias Melcher
8cd9871d19 Added unversal header for OpenGL's GLu library.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5365 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-25 10:05:20 +00:00
Matthias Melcher
2c22cfd94a - Fixed floating point value formatting for Fl_Spinner (STR #1331)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5348 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-23 14:37:28 +00:00
Matthias Melcher
972624d613 STR #1381: added optional "precision" argument when writing floats or doubles to a Preferences file.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5330 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-18 07:29:09 +00:00
Matthias Melcher
2f4706602d Fixed ABI issue with const on glutCreateWindow.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5327 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-17 13:49:46 +00:00
Matthias Melcher
49a0693962 Undid the previous Fl_Tabs::value() const change because adding 'const' *does* changed the ABI. Sigh.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5326 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-17 13:43:07 +00:00
Matthias Melcher
c8288bd7b4 Added some GLUT4 functions (STR #1370)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5323 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-17 09:56:59 +00:00
Matthias Melcher
51d67574ec New context_changed() function for OpenGL windows allowing efficient texture loading (str #1372)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5322 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-17 09:49:43 +00:00
Matthias Melcher
ef48f007a1 Added missing const to GLUT call (STR #1371)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5321 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-17 09:05:44 +00:00
Matthias Melcher
538a1c62ee Fl_Tabs::value() is now const as described in the documentation (STR #1379)
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5319 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-17 08:43:50 +00:00
Matthias Melcher
a5389c9014 Removed stub for Fl_Input::handle_mouse(int) because it is not implemented anywhere.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5300 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-08-14 07:06:45 +00:00
Michael R Sweet
d9eecaf4ab Fix problems with new FLUID output, add common to closing braces to show
what widget is being closed, and bump the version number to 1.1.8 in the
repo...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5271 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-07-27 19:26:11 +00:00
Matthias Melcher
e6818b19a6 Fixed byte order in OS X cursor shape data. Added Xft font pointer fl_xftfont.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5262 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-07-18 11:23:20 +00:00
Matthias Melcher
05bd3ade18 Added support for floating point Fl_Spinner
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5221 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-22 07:35:39 +00:00
Matthias Melcher
582447c164 Converted global static variables into class static variables
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5207 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-18 15:53:26 +00:00
Matthias Melcher
b51dd39f07 Added text selection and copy/paste to Fl_Help_View. Text can be selected by clicking and dragging the mouse over text. After releasing the mouse button, a stripped down ASCII text is in the text clipboard. Press Ctrl-C to copy the text into the main clipboard. Pressing Ctrl-A selects all text.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5205 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-16 19:45:13 +00:00
Matthias Melcher
428a283f83 Added an event variable "Fl::event_original_key()" which returns the current key code (see Fl::event_key()) before it gets mangled through the NumLock keypad conversion. This way, an application can differentiate between an arrow key and a numeric keypad w/NumLock off.
On Win32, releasing a numeric keypad key w/NumLock off wiould return the wrong keycode (keypad instead of arrow key).

Documentation changed accordingly. X11 code is yet to be tested.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5188 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-09 07:48:08 +00:00
Matthias Melcher
987d9e05f2 Fixed shortcut and default focus for message dialogs (STR #1298).
Default focus is now on the button that also reacts to the 'Enter' key. This should avoid confusion about Enter triggering the button1 or button 0.

Also, I changed the shortcut call to the new convention which works on MSWindows. I don't have a Linux system right now for testing... .

Fixed focus issues (STR #1286, STR #1289, STR #1296)

fl_xfocus was not always updated, making widgets or even whole windows loose focus when any focus changes were not accompanied by a click into the same window. Also, Fl_Tabs would not redraw correctly if focus returned to the active tab.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5165 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-05-30 09:38:19 +00:00
Matthias Melcher
ad0fc9ca23 STR #1162: Fl_Menu_Button::popup was trying to access a previously deleted widget (itself). The delayed deleting mechanism in 'Fl::delete_widget' did not work in this case because the main loop is called before the callback returns. The fix implements a type of automatic pointer that will be cleared to NULL should the widget get deleted. This may not be a 'nice' solution, but it does fix the problem reliably. We could actually use this for all widget pointers and remove the delayed delete mechanism alltogether
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5037 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-04-27 21:40:47 +00:00
Matthias Melcher
a82e7879ce STR #1232: it was not possible to toggle a checkbox in Fl_Check_Browser by clicking the same box twice.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5006 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-04-20 03:53:41 +00:00
Matthias Melcher
c9908d97e3 THIS FIX CONTAINS TWO MORE FILES THAT MUST BE COMPILED. I would
like to ask the maintainers of the build environments to please
add these files to the setup:

  src/fl_encoding_latin1.cxx
  src/fl_encoding_mac_roman.cxx

I ADDED SOME DOCUMENTATION THAT NEEDS TO BE FIXED. Beeing not a
native English speaker, I have a hard time writing documentation.
Would someone please update my babbeling in 
documentation/drawing.html? Thanks.

This commit fixes some very basic problems with OS X's code page in
preparation for the compose-character keyboard fix. It also fixes
issues with MS Windows and X11 not rendering the characters
in the Western (Latin-1) set between 0x80 and 0x9F. In the original
ISO font, they were unused, but are now assigned to international
characters like the Euro currency sign.

This patch also tries to fix one basic flaw with FLTK 1 and
font encoding. I will not put much more work into this because
FLTK 1.2 and FLTK 2 fix the problem entirely by using UTF-8
instead of 8-bit "C"-style strings.

All these changes are only meaningful for foreign language
users or users of special characters like the Euro, the Degree
or the Permille symbol. A short explanation follows.

Max OS X uses a different code page than X11 and Win32. This means
that all characters above 0x7f have an entirely different meaning.
If your source code contains international characters, your 
text will appear different if you change to another OS. This patch
provides two functions that convert text with international
characters from the character set of the source code into the
local character set. Two more functions are provided to convert
them back. The functions are fl_latin1_to_local (source is in Win32 
or X11), fl_mac_roman_to_local (source was written on OS X) and the 
corresponding fl_local_to_latin1 and fl_local_to_mac_roman, which
are very useful if yoou want to store strings with intl. characters
that will be moved between systems.

All this is assuming a "Western" code page as it is common in
the Americas and most of Europe. User of other languages will have 
to use FLTK 2.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4975 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-04-18 13:07:42 +00:00
Matthias Melcher
b8bc24764e STR 1183: swapping two items in an Fl_Browser_ widget would corrupt redrawing if either item was "top". This fix swaps the top_ variable correctly, and also swaps the selection flag as the user would expect.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4879 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-03-28 23:27:20 +00:00
Matthias Melcher
7e42a63aa6 ST 1148: a preselected filename will also be selected in the file chooser when popping up. I put a lot of effort into trying to make the chooser behave as it previously did in all other situations, e.g. to choose a directory
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4875 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-03-28 15:24:14 +00:00
Michael R Sweet
e6bbd2d525 Update copyrights.
Also check for feof() when the character returned by getc is < 0
to work around a bug in Cygwin.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4782 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-01-31 19:00:08 +00:00