| Age | Commit message (Collapse) | Author |
|
|
|
The single-function content of these files is moved to Fl_XXX_Gl_Window_Driver.cxx.
|
|
The problem to fix is that the arrow drawn by draw_arrow1() in src/fl_symbols.cxx
displays a faint clear line between the stem and head of the arrow with the Cairo
graphics driver.
This occurs because draw_arrow1() draws the arrow in 2 steps (a rectangle +
a triangle) and the Cairo driver is configured to use antialiasing when filling
polygons. The antialiasing produces the faint line between stem and head.
Why does draw_arrow1() draw a rectangle + a triangle rather than a
7-vertex polygon? That's because the X11 graphics driver fails with its polygon-
drawing function when the polygon is also rotated: the polygon is drawn
empty.
We want to keep using antialiasing under Cairo for polygons because
the result is better with non horizontal/vertical polygon edges.
This implementation changes function draw_arrow1() which draws
the arrow as a 7-vertex filled polygon except when the graphics driver
returns false for its virtual member function can_fill_non_convex_polygon().
In that situation, draw_arrow1() draws, as before, a rectangle + a triangle.
The new, virtual member function can_fill_non_convex_polygon() returns
true except for the X11 graphics driver. Therefore, draw_arrow1() is effectively
unchanged under the X11 driver.
|
|
Under X11, rotated arrows loose their inside color with f7a1777
|
|
|
|
|
|
|
|
|
|
- change drawing arrows from lines to polygons
- remove superfluous functions
- add more comments
|
|
|
|
For a very simple test program see STR 3222, File 2:
https://www.fltk.org/strfiles/3222/value_slider.cxx
Known issues:
- range checking of the value box size is very limited
- resizing the widget does not change the value box size
- drawing issues are possible if the value box size and the widget
size are not compatible (e.g. value box too large)
|
|
Fix allocation bug in Fl_String
|
|
|
|
|
|
|
|
|
|
This commit is similar to the patch given in STR 3477, oxy_v5.diff:
https://www.fltk.org/strfiles/3477/oxy_v5.diff
... with modifications, and updated to current FLTK code.
|
|
|
|
|
|
|
|
+ fix trailing whitespace (fluid)
|
|
This adds fl_rounded_rect and fl_rounded_rectf so the
user can draw rounded rectangles. This uses existing and
optimised code that is rearranged.
|
|
|
|
|
|
|
|
|
|
Use the new standard arrow drawing methods (whose style depends on
the active scheme) for "arrows" used in Fl_Menu and Fl_Menu_Button.
To do: maybe we need some "fine tuning" of arrow sizes in some of
the modified widgets using the new "arrow drawing" methods.
|
|
Make sure we don't change the current color after we finish drawing.
|
|
|
|
|
|
windows
|
|
On X11, FLTK would not send a required FL_RELEASE
event to the data source window.
|
|
The problem was that after a drag-n-drop within a window, text selection
by shift+arrow key stopped working.
Also, improves drag-n-drop within a window by leaving insertion point
at end of dragged text.
|
|
This removes the cause of this developer's message
# FIXME: This needs to be redesigned! Forcing GTK_FOUND to 0 (NO) is a bad
# FIXME: idea because there could be unwanted side effects. AlbrechtS
|
|
|
|
"Arrows" in widgets are those GUI elements mostly represented by
triangles pointing in a particular direction as in scrollbars,
choice widgets, some menus, valuators and Fl_Counter widgets.
The code has been simplified and standardized such that all these
GUI elements are drawn identically per FLTK scheme.
Widget authors no longer need to write code to calculate arrow sizes
and draw polygons etc.
Different schemes can and do implement different drawing functions.
Todo: see comments "FIXME_ARROW" in src/Fl_Menu_Button.cxx and
src/Fl_Menu.cxx
|
|
|
|
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.
|
|
|
|
|
|
Also, remove hardcoded path to wayland-protocols when
CMake version ≥ 3.4
|
|
Implement Fl_Scroll::on_move()
Fix indexing in Fl_Group::on_move()
|
|
|
|
|
|
(no code changes)
|
|
The prototype of the public Fl_SVG_Image constructor is expanded
to allow construction from in-memory, gzip'ed binary data.
|
|
|
|
|
|
|
|
Also add a comment to all platform driver implementations.
|