Commit Graph

79 Commits

Author SHA1 Message Date
Albrecht Schlosser
904039c4c6 Fix typos and trailing whitespace
Also replace 'MSWindows' with 'Windows' where appropriate, leaving
only old documents like README files from 1.3 and older as-is.
2025-02-05 12:34:39 +01:00
Matthias Melcher
72ee34d1cb Fixes Fl_Text_Editor Home and End keys in line wrap mode
Pressing Home would go to hard newline character, even in
line wrap mode. It now stops  at the soft newline, as expected.
Same for End which now findes the wrapped line break
instaead of the next '\n' character.
2024-08-04 15:59:44 +02:00
ManoloFLTK
9df6dc2aeb Fix uses of isupper() and isprint() - STR #3436 2024-05-15 14:59:13 +02:00
Matthias Melcher
39a3212fc3 Adds pulldown menu to Fl_Text_Display and ..._Editor 2023-11-25 22:52:00 +01:00
Matthias Melcher
f3b490134e Fixes text input widget undo propagation.
If not handled, undo propagates to other random widgets,
and if none takes it, it is resent as a redo to all widgets.
2023-11-05 22:19:03 +01:00
Matthias Melcher
7f87c847ba
Unlimited undo/redo for Fl_Input_ and Fl_Text_Buffer (#558) (#676) 2023-02-10 17:13:20 +01:00
Matthias Melcher
8826dca106
Add close buttons for individual tabs in Fl_Tabs (#628)
Add close buttons for Fl_Tabs
Introducing callback reasons
FLUID shows all FL_WHEN_... options
Adding Fl_Tabs overflow types
Improved test/tabs to show new features
2023-01-05 13:51:30 +01:00
Matthias Melcher
495b2395c1
Fix selection extension in Fl_Text_*, issue 196 (#550)
Selecting a text range programmatically would not sync
some variables with the actual selection. This also fixes
a crash bug in macOS when dragging text that was
selected by buffer()->select() only.
2022-11-22 16:18:56 +01:00
ManoloFLTK
5bab46940c Re-organize cross-platform support for text input methods.
FLTK 1.3 supports complex text input methods (TIMs) for the 3 platforms
(X11, Windows, macOS). This support has an interface with FLTK that is
common for X11 and Windows, via (undocumented) functions fl_set_spot(),
fl_set_status() and fl_reset_spot().
In contrast, and because it's been developed independently, the
interface between the macOS TIM and FLTK 1.3 is completely different :
static functions FL::insertion_point_location() and Fl::reset_marked_text().

The present change implements a single TIM/FLTK interface
used by all platforms based on functions fl_set_spot() and
fl_reset_spot().

The previous macOS-specific functions FL::insertion_point_location() and
Fl::reset_marked_text() are maintained only for compatibility with 1.3
and deprecated.
2022-01-07 16:34:54 +01:00
Albrecht Schlosser
f09e17c3c5 Remove $Id$ tags, update URL's, and more
- remove obsolete svn '$Id$' tags from all source files
- update .fl files and generated files accordingly
- replace 'http://www.fltk.org' URL's with 'https://...'
- replace bug report URL 'str.php' with 'bugs.php'
- remove trailing whitespace
- fix other whitespace errors flagged by Git
- add and/or fix missing or wrong standard headers
- convert tabs to spaces in all source files

The only relevant code changes are in the fluid/ folder where
some .fl files and other source files were used to generate
the '$Id' headers and footers.
2020-07-06 20:28:20 +02:00
Manolo Gouy
26cb08badb Move Fl_Screen_Driver.H from FL/ to src/
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12975 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-06-26 14:04:09 +00:00
Matthias Melcher
e8818e968c Android: Widgets can now request the on-screen keyboard when they get focus. This may fail if visible_focus is disabled.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12804 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-03-26 15:33:22 +00:00
Albrecht Schlosser
52ae3582a2 Replace "WIN32" with "_WIN32" or "Windows".
Replace compiler/preprocessor/platform macro "WIN32" with "_WIN32".
Replace "WIN32" in text and documentation with "Windows".
Replace "MSWindows" with "Windows".

To do: README.Windows.txt (and maybe other documentation as well)
needs updates.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12655 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-02-09 14:39:42 +00:00
Greg Ercolano
d2d5573bc5 Bringing over fix [r11759] from 1.3 current to the porting branch.
Fl_Text_Editor documentation mods for kf_xxx functions.
(Discussion on fltk.coredev May 29 - 30th 2016)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11827 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-07-20 00:55:06 +00:00
Greg Ercolano
ec4120795d Removed ABI guards that snuck in with r11819.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11822 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-07-19 23:19:16 +00:00
Greg Ercolano
dfd97e4639 Bringing over this fix from 1.3 current to the porting branch.
Fixes STR #3305; adds tab_nav() method allowing Fl_Text_Editor
to honor tab key focus navigation.



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11820 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-07-19 20:18:18 +00:00
Greg Ercolano
dc8a00fbba Bringing over this fix from 1.3 current to the porting branch.
Fixes STR #3306; const version of bound_key_function().
Also affects patches in STR #3305, which will be applied in next commit.




git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11819 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-07-19 20:12:21 +00:00
Manolo Gouy
20b00f29ce Rewrite Fl_Text_Editor.cxx under the driver model.
Fl_Cocoa_Screen_Driver contains the Mac OS-specific text editor key bindings.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11497 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-04-01 14:49:29 +00:00
Manolo Gouy
2de2f54968 Move the marked text support member functions from Fl_System_Driver to Fl_Screen_Driver.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11486 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-31 17:25:18 +00:00
Manolo Gouy
059664e7d4 Begin to remove platform-dependent code from the Fl.H header file.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11482 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-31 06:24:26 +00:00
Matthias Melcher
5d1df0e789 Details on PORTME items. Move fl_parse_color() to screen drivers.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11163 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-13 12:57:00 +00:00
Matthias Melcher
50ee3bcd66 Mark places that need to be refactored with // PORTME:
Searching for __APPLE, WIN32 or X11 did give me many false results. I instead marked most ifdef's that I would like to get rid of with the text // PORTME:, so they can be easily found by a global search.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11155 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-11 12:02:36 +00:00
Matthias Melcher
acf6c881d3 Updated platform specific #if's to report unimplemented code when compiling with FL_PORTING defined and WIN32 and __APPLE__ undefined>
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@10989 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-03 22:54:29 +00:00
Albrecht Schlosser
0650563c7b Document Fl_Text_Editor::global_key_bindings and related methods.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10830 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-08-13 10:07:17 +00:00
Manolo Gouy
34c69d3922 Fix for STR#3016: Fl_Input and Fl_Text_Editor have now the standard behavior when doing
drag-n-drop of text: if the dragged text is dropped in the widget it comes from, it's cut and pasted.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10031 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-12-13 16:28:38 +00:00
Manolo Gouy
914e7f9b09 Mac OS text input: removed the Fl::marked_text_length() function that's not necessary.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9816 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-02-08 11:58:19 +00:00
Manolo Gouy
482c4a5e0a Mac OS: added support for the text input feature introduced in OS 10.7 "Lion" where pressing and holding
some key opens a window with possible accented characters. This feature is used by the Fl_Input_ and
Fl_Text_Editor widgets. User-defined text input widgets can optionally use this feature, but the default
behavior is to not use it. Fl_Secret_Input turns it off, for example.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9792 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-01-13 15:25:37 +00:00
Manolo Gouy
cf672dba0d Mac OS text input: defined a small API that user-defined text editing widgets can use to signal marked text.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9774 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-12-24 11:45:07 +00:00
Manolo Gouy
05d20db147 Mac OS text input: Fl::compose_state is a number of bytes (not of characters).
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9757 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-12-15 22:03:55 +00:00
Fabien Costantini
8809c5d65d Fixed build error in msvs because Fl ref to FULLSCREEN enum was not accessible in Fl_Widget. new inline is_fullscreen() getter has been implemented to avoid a build error with (at least) msvc compilers. Fixed a ton of warnings / problems when bilding on windows 64 bits target with ms toolchain. cleaned up about 200 warnings raised when building win74 targets.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9325 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-04-05 05:12:30 +00:00
Greg Ercolano
4f4a8fc3c7 Modifications to all LGPL headers for STR #2685.
(to clarify static exception LGPL by changing license references)



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8864 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-07-19 04:49:30 +00:00
Albrecht Schlosser
113c9df703 Removed obsolete #define NORMAL_INPUT_MOVE from src/Fl_Text_Editor.cxx.
To do: Check remaining #define and usage in src/Fl_Input.cxx.


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8034 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-15 12:21:55 +00:00
Manolo Gouy
5889675f7d Fix STR # 2484. Middle mouse button paste now works within an Fl_Text_Editor
and from/to other applications. Also fixed interaction between selection and insertion cursor.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8027 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-14 17:07:45 +00:00
Manolo Gouy
8132eba4f5 Fix STR #2478: added missing code that updates the FLTK selection buffer after
the Fl_Text_xxx selection is changed by shift-arrow key.

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8024 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-13 12:30:49 +00:00
Albrecht Schlosser
e5fc1560b0 Fixed Doxygen comments, typos, and a few indenting issues.
Part 1, more to come ...


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7936 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-12-02 00:43:07 +00:00
Matthias Melcher
e454f97acc Fixed Copyright to 2010.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7903 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-28 21:06:39 +00:00
Matthias Melcher
35c8c77e5e This should fix all remaining issues with Fl_Text_*. Wrapping is no pixel aligned. Pressing up and down will be pixle bound. A few crashes removed (we still crash with faulty UTF-8svn diff | grep Index:). Fixed blinking selection when outside the widget. Added dnd sending and receiving.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7819 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-11 19:08:52 +00:00
Matthias Melcher
b1c062ebd1 Minor changes of Fl_Text_Editor.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7805 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-06 17:51:00 +00:00
Matthias Melcher
4758e39d28 Fixed accidental deletion of 'del'
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7803 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-06 15:23:50 +00:00
Matthias Melcher
8ae745f5b3 UTF8 Text Display and Editor: added tons of tests for utf8 alignment, fixed a bunch of methods that did not understand utf8. Still lots of places to visit.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7800 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-06 14:29:12 +00:00
Matthias Melcher
cac40a9b02 STR 2158: partially solved. This commit is huge, I admit. I recoded most of Fl_Text_Buffer and large chunks of Fl_Text_Display to make it UTF-8 safe. Rendering of all left-to-right scripts works well on OS X for all tested fonts. International input works AFAIK. Copy and paste of UTF-8 data works. ----> what's not working yet though is line wrapping. Also, text search for internationsl characters is not working yet.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7792 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-03 22:01:43 +00:00
Matthias Melcher
29317e7b2d Marked some more issues with Fl_Text_...
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7462 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-06 23:00:56 +00:00
Greg Ercolano
7346268f4a Fixed problem caught by matt in STR#2169:
COMMAND-LEFT and COMMAND-RIGHT didn't scroll if line
wider than screen.. 



git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6894 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-09-20 21:55:21 +00:00
Greg Ercolano
6c54b06dd8 Fixes STR #2169: Adds missing cursor movement to OSX:
CLOVERLEAF-LEFT  move cursor to beginning of line,
	CLOVERLEAF-RIGHT move cursor to end of line,
	CLOVERLEAF-UP    move to top line
	CLOVERLEAD-DOWN  move to end line

	..and SHIFT combos with those will do a 'text selection'
	equivalents.

	


git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6893 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-09-20 19:24:24 +00:00
Matthias Melcher
d3206f01ec More Fl_Input keyboard fixes / OS X transparency for RGBA data / some utf8 reorganisation
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6765 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-04-15 08:35:28 +00:00
Matthias Melcher
90d4e65767 Added an arrow-key function lookup table for MSWindows vs. OS X to Fl_Text_Editor, waiting for implementation.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6762 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-04-13 18:53:24 +00:00
Matthias Melcher
5251b64d57 Changed Copyright in 'src' directory
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6616 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-01-01 21:28:26 +00:00
Fabien Costantini
bd882119e7 Doxygen documentation : minor comment fixes.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6365 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-03 07:48:38 +00:00
Fabien Costantini
b8955a9ced Doxygen documentation WP11 Done!
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6255 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-15 16:39:05 +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