summaryrefslogtreecommitdiff
path: root/FL
diff options
context:
space:
mode:
authorMatthias Melcher <fltk@matthiasm.com>2016-02-01 23:06:14 +0000
committerMatthias Melcher <fltk@matthiasm.com>2016-02-01 23:06:14 +0000
commit6e16d033aefffab71e2674143bbb722bf43df7c0 (patch)
treecc99b67fde50b1ce2a76780168e42c573ec39d70 /FL
parent5af1344b80335a73f20d372b993eae188d8ecdec (diff)
Add fl_focus_rect function to driver.
Focus rectangles are dotted lines. The default implementation uses the dotted line style, However, for systems without line stye, we draw many dots instead. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11110 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'FL')
-rw-r--r--FL/Fl_Device.H1
-rw-r--r--FL/fl_draw.H4
2 files changed, 5 insertions, 0 deletions
diff --git a/FL/Fl_Device.H b/FL/Fl_Device.H
index 597ffa7e2..082d65775 100644
--- a/FL/Fl_Device.H
+++ b/FL/Fl_Device.H
@@ -160,6 +160,7 @@ public:
// --- implementation is in src/fl_rect.cxx which includes src/drivers/xxx/Fl_xxx_Graphics_Driver_rect.cxx
virtual void point(int x, int y) = 0;
virtual void rect(int x, int y, int w, int h) = 0;
+ virtual void focus_rect(int x, int y, int w, int h);
virtual void rectf(int x, int y, int w, int h) = 0;
virtual void line(int x, int y, int x1, int y1) = 0;
virtual void line(int x, int y, int x1, int y1, int x2, int y2) = 0;
diff --git a/FL/fl_draw.H b/FL/fl_draw.H
index 71dc2224d..690534982 100644
--- a/FL/fl_draw.H
+++ b/FL/fl_draw.H
@@ -200,6 +200,10 @@ enum {
*/
inline void fl_rect(int x, int y, int w, int h) { fl_graphics_driver->rect(x,y,w,h); }
+/**
+ Draw a dotted rectangle, used to indicate keyboard focus on a widget.
+ */
+inline void fl_focus_rect(int x, int y, int w, int h) { fl_graphics_driver->focus_rect(x, y, w, h); }
/** Draws with passed color a 1-pixel border \e inside the given bounding box */
inline void fl_rect(int x, int y, int w, int h, Fl_Color c) {fl_color(c); fl_rect(x,y,w,h);}
/** Colors with current color a rectangle that exactly fills the given bounding box */