36 FL_EXPORT 
extern char fl_draw_shortcut;
 
   91 #define fl_clip fl_push_clip 
  126 inline int fl_clip_box(
int x , 
int y, 
int w, 
int h, 
int& X, 
int& Y, 
int& W, 
int& H) 
 
  227 inline void fl_line(
int x, 
int y, 
int x1, 
int y1, 
int x2, 
int y2) {
fl_graphics_driver->
line(x,y,x1,y1,x2,y2); }
 
  233 inline void fl_loop(
int x, 
int y, 
int x1, 
int y1, 
int x2, 
int y2) {
fl_graphics_driver->
loop(x,y,x1,y1,x2,y2); }
 
  237 inline void fl_loop(
int x, 
int y, 
int x1, 
int y1, 
int x2, 
int y2, 
int x3, 
int y3) 
 
  244 inline void fl_polygon(
int x, 
int y, 
int x1, 
int y1, 
int x2, 
int y2) {
fl_graphics_driver->
polygon(x,y,x1,y1,x2,y2); }
 
  248 inline void fl_polygon(
int x, 
int y, 
int x1, 
int y1, 
int x2, 
int y2, 
int x3, 
int y3) 
 
  304 inline void fl_arc(
int x, 
int y, 
int w, 
int h, 
double a1, 
double a2) {
fl_graphics_driver->
arc(x,y,w,h,a1,a2); }
 
  317 inline void fl_pie(
int x, 
int y, 
int w, 
int h, 
double a1, 
double a2) {
fl_graphics_driver->
pie(x,y,w,h,a1,a2); }
 
  319 FL_EXPORT 
void fl_chord(
int x, 
int y, 
int w, 
int h, 
double a1, 
double a2); 
 
  388 inline void fl_curve(
double X0, 
double Y0, 
double X1, 
double Y1, 
double X2, 
double Y2, 
double X3, 
double Y3)
 
  528 FL_EXPORT 
int fl_height(
int font, 
int size);
 
  536 FL_EXPORT 
double fl_width(
const char* txt);
 
  606 FL_EXPORT 
void fl_draw(
const char* str, 
int x, 
int y);
 
  614 FL_EXPORT 
void fl_draw(
int angle, 
const char* str, 
int x, 
int y);
 
  628 FL_EXPORT 
void fl_measure(
const char* str, 
int& x, 
int& y,
 
  629                           int draw_symbols = 1);
 
  630 FL_EXPORT 
void fl_draw(
const char* str, 
int x, 
int y, 
int w, 
int h,
 
  632                        Fl_Image* img=0, 
int draw_symbols = 1);
 
  633 FL_EXPORT 
void fl_draw(
const char* str, 
int x, 
int y, 
int w, 
int h,
 
  635                        void (*callthis)(
const char *,
int,
int,
int),
 
  636                        Fl_Image* img=0, 
int draw_symbols = 1);
 
  639 FL_EXPORT 
void fl_frame(
const char* s, 
int x, 
int y, 
int w, 
int h);
 
  640 FL_EXPORT 
void fl_frame2(
const char* s, 
int x, 
int y, 
int w, 
int h);
 
  768 FL_EXPORT 
void fl_scroll(
int X, 
int Y, 
int W, 
int H, 
int dx, 
int dy,
 
  769                          void (*draw_area)(
void*, 
int,
int,
int,
int), 
void* 
data);
 
  771 FL_EXPORT 
const char* 
fl_shortcut_label(
unsigned int shortcut, 
const char **eom);
 
  777 FL_EXPORT 
const char* 
fl_expand_text(
const char* from, 
char* buf, 
int maxbuf,
 
  778                                      double maxw, 
int& n, 
double &width,
 
  779                                      int wrap, 
int draw_symbols = 0);
 
FL_EXPORT const char * fl_latin1_to_local(const char *t, int n=-1)
Converts text from Windows/X11 latin1 character set to local encoding. 
Definition: fl_encoding_latin1.cxx:114
void fl_end_complex_polygon()
Ends complex filled polygon, and draws. 
Definition: fl_draw.H:466
virtual void begin_points()
see fl_begin_points(). 
Definition: fl_vertex.cxx:75
line style: ___________ 
Definition: fl_draw.H:179
FL_EXPORT void fl_reset_spot(void)
FL_EXPORT void fl_scroll(int X, int Y, int W, int H, int dx, int dy, void(*draw_area)(void *, int, int, int, int), void *data)
Scroll a rectangle and draw the newly exposed portions. 
Definition: fl_scroll_area.cxx:40
join style: line join extends to a point 
Definition: fl_draw.H:189
void fl_loop(int x, int y, int x1, int y1, int x2, int y2)
Outlines a 3-sided polygon with lines. 
Definition: fl_draw.H:233
virtual void begin_loop()
see fl_begin_loop(). 
Definition: fl_vertex.cxx:79
double fl_transform_dx(double x, double y)
Transforms distance using current transformation matrix. 
Definition: fl_draw.H:482
FL_EXPORT void fl_overlay_rect(int x, int y, int w, int h)
Draws a selection rectangle, erasing a previous one by XOR'ing it first. 
Definition: fl_overlay.cxx:107
This widget produces an actual window. 
Definition: Fl_Window.H:57
declaration of classes Fl_Device, Fl_Graphics_Driver, Fl_Surface_Device, Fl_Display_Device, Fl_Device_Plugin. 
Fl_Cursor
The following constants define the mouse cursors that are available in FLTK. 
Definition: Enumerations.H:910
cap style: end is flat 
Definition: fl_draw.H:185
int fl_clip_box(int x, int y, int w, int h, int &X, int &Y, int &W, int &H)
Intersects the rectangle with the current clip region and returns the bounding box of the result...
Definition: fl_draw.H:126
void fl_point(int x, int y)
Draws a single pixel at the given coordinates. 
Definition: fl_draw.H:147
int fl_descent()
Returns the recommended distance above the bottom of a fl_height() tall box to draw the text at so it...
Definition: fl_draw.H:533
void fl_clip_region(Fl_Region r)
Replaces the top of the clipping stack with a clipping region of any shape. 
Definition: fl_draw.H:136
virtual void text_extents(const char *, int n, int &dx, int &dy, int &w, int &h)
see fl_text_extents(const char*, int n, int& dx, int& dy, int& w, int& h). 
Definition: Fl_Device.cxx:64
void fl_push_matrix()
Saves the current transformation matrix on the stack. 
Definition: fl_draw.H:326
void fl_transformed_vertex(double xf, double yf)
Adds coordinate pair to the vertex list without further transformations. 
Definition: fl_draw.H:492
FL_EXPORT const char * fl_local_to_latin1(const char *t, int n=-1)
Converts text from local encoding to Windowx/X11 latin1 character set. 
Definition: fl_encoding_latin1.cxx:119
virtual void label(Fl_Widget *w)
The label() methods are an obsolete way to set the image attribute of a widget or menu item...
Definition: Fl_Image.cxx:111
void fl_gap()
Call fl_gap() to separate loops of the path. 
Definition: fl_draw.H:462
FL_EXPORT void fl_set_status(int X, int Y, int W, int H)
virtual void pop_clip()
see fl_pop_clip(). 
Definition: fl_rect.cxx:597
int fl_not_clipped(int x, int y, int w, int h)
Does the rectangle intersect the current clip region? 
Definition: fl_draw.H:114
virtual void rect(int x, int y, int w, int h)
see fl_rect(int x, int y, int w, int h). 
Definition: fl_rect.cxx:158
FL_EXPORT unsigned int fl_old_shortcut(const char *s)
Emulation of XForms named shortcuts. 
Definition: fl_shortcut.cxx:331
FL_EXPORT void fl_set_spot(int font, int size, int X, int Y, int W, int H, Fl_Window *win=0)
void fl_rotate(double d)
Concatenates rotation transformation onto the current one. 
Definition: fl_draw.H:350
int fl_height()
Returns the recommended minimum line spacing for the current font. 
Definition: fl_draw.H:527
void fl_draw_image(const uchar *buf, int X, int Y, int W, int H, int D=3, int L=0)
Draws an 8-bit per color RGB or luminance image. 
Definition: fl_draw.H:680
void fl_color(Fl_Color c)
Sets the color for all subsequent drawing operations. 
Definition: fl_draw.H:52
virtual void draw_image_mono(const uchar *buf, int X, int Y, int W, int H, int D=1, int L=0)
see fl_draw_image_mono(const uchar* buf, int X,int Y,int W,int H, int D, int L). 
Definition: Fl_Device.H:346
virtual void loop(int x0, int y0, int x1, int y1, int x2, int y2)
see fl_loop(int x0, int y0, int x1, int y1, int x2, int y2). 
Definition: fl_rect.cxx:380
FL_EXPORT void fl_overlay_clear()
Erase a selection rectangle without drawing a new one. 
Definition: fl_overlay.cxx:100
virtual int not_clipped(int x, int y, int w, int h)
see fl_not_clipped(int x, int y, int w, int h). 
Definition: fl_rect.cxx:605
Fl_Fontsize size()
see fl_size(). 
Definition: Fl_Device.H:383
virtual void xyline(int x, int y, int x1)
see fl_xyline(int x, int y, int x1). 
Definition: fl_rect.cxx:198
void fl_begin_polygon()
Starts drawing a convex filled polygon. 
Definition: fl_draw.H:374
void fl_begin_complex_polygon()
Starts drawing a complex filled polygon. 
Definition: fl_draw.H:455
void fl_pop_clip()
Restores the previous clip region. 
Definition: fl_draw.H:103
FL_EXPORT const char * fl_local_to_mac_roman(const char *t, int n=-1)
Converts text from local encoding to Mac Roman character set. 
Definition: fl_encoding_mac_roman.cxx:79
void fl_begin_line()
Starts drawing a list of lines. 
Definition: fl_draw.H:366
void pop_matrix()
see fl_pop_matrix(). 
Definition: fl_vertex.cxx:45
Fl_Image is the base class used for caching and drawing all kinds of images in FLTK. 
Definition: Fl_Image.H:52
FL_EXPORT void fl_text_extents(const char *, int &dx, int &dy, int &w, int &h)
Determines the minimum pixel dimensions of a nul-terminated string. 
Definition: fl_font.cxx:72
FL_EXPORT char fl_can_do_alpha_blending()
Checks whether platform supports true alpha blending for RGBA images. 
Definition: Fl_Double_Window.cxx:233
virtual void point(int x, int y)
see fl_point(int x, int y). 
Definition: fl_rect.cxx:487
void rotate(double d)
see fl_rotate(double d). 
Definition: fl_vertex.cxx:63
line style: _ . _ . _ . 
Definition: fl_draw.H:182
Fl_Region clip_region()
see fl_clip_region(). 
Definition: fl_rect.cxx:549
FL_EXPORT int fl_draw_symbol(const char *label, int x, int y, int w, int h, Fl_Color)
Draw the named symbol in the given rectangle using the given color. 
Definition: fl_symbols.cxx:103
virtual void end_loop()
see fl_end_loop(). 
Definition: fl_vertex.cxx:159
virtual void rtl_draw(const char *str, int n, int x, int y)
see fl_rtl_draw(const char *str, int n, int x, int y). 
Definition: Fl_Device.H:251
virtual void transformed_vertex(double xf, double yf)
see fl_transformed_vertex(double xf, double yf). 
Definition: fl_vertex.cxx:103
void fl_end_line()
Ends list of lines, and draws. 
Definition: fl_draw.H:432
Fl_Boxtype
Definition: Enumerations.H:473
virtual int height()
see fl_height(). 
Definition: Fl_Device.H:391
Fl_Fontsize fl_size()
Returns the size set by the most recent call to fl_font(). 
Definition: fl_draw.H:520
FL_EXPORT int fl_measure_pixmap(char *const *data, int &w, int &h)
Get the dimensions of a pixmap. 
Definition: fl_draw_pixmap.cxx:52
FL_EXPORT void fl_chord(int x, int y, int w, int h, double a1, double a2)
fl_chord declaration is a place holder - the function does not yet exist 
void fl_end_loop()
Ends closed sequence of lines, and draws. 
Definition: fl_draw.H:436
FL_EXPORT int fl_add_symbol(const char *name, void(*drawit)(Fl_Color), int scalable)
Adds a symbol to the system. 
Definition: fl_symbols.cxx:78
This file contains type definitions and general enumerations. 
void fl_curve(double X0, double Y0, double X1, double Y1, double X2, double Y2, double X3, double Y3)
Adds a series of points on a Bezier curve to the path. 
Definition: fl_draw.H:388
FL_EXPORT Fl_Graphics_Driver * fl_graphics_driver
Points to the driver that currently receives all graphics requests. 
Definition: Fl_Device.cxx:46
virtual void begin_polygon()
see fl_begin_polygon(). 
Definition: fl_vertex.cxx:81
virtual void end_line()
see fl_end_line(). 
Definition: fl_vertex.cxx:133
virtual void end_complex_polygon()
see fl_end_complex_polygon(). 
Definition: fl_vertex.cxx:213
virtual void begin_complex_polygon()
see fl_begin_complex_polygon(). 
Definition: fl_vertex.cxx:192
virtual void polygon(int x0, int y0, int x1, int y1, int x2, int y2)
see fl_polygon(int x0, int y0, int x1, int y1, int x2, int y2). 
Definition: fl_rect.cxx:435
virtual int descent()
see fl_descent(). 
Definition: Fl_Device.H:393
double fl_transform_dy(double x, double y)
Transforms distance using current transformation matrix. 
Definition: fl_draw.H:487
void fl_end_polygon()
Ends convex filled polygon, and draws. 
Definition: fl_draw.H:440
cap style: end wraps end point 
Definition: fl_draw.H:187
line style: _ _ _ _ _ _ 
Definition: fl_draw.H:180
virtual void line_style(int style, int width=0, char *dashes=0)
see fl_line_style(int style, int width, char* dashes). 
Definition: fl_line_style.cxx:50
void fl_mult_matrix(double a, double b, double c, double d, double x, double y)
Concatenates another transformation onto the current one. 
Definition: fl_draw.H:357
void fl_begin_points()
Starts drawing a list of points. 
Definition: fl_draw.H:362
void fl_line_style(int style, int width=0, char *dashes=0)
Sets how to draw lines (the "pen"). 
Definition: fl_draw.H:177
FL_EXPORT void fl_frame2(const char *s, int x, int y, int w, int h)
Draws a series of line segments around the given box. 
Definition: fl_boxtype.cxx:105
double fl_transform_x(double x, double y)
Transforms coordinate using the current transformation matrix. 
Definition: fl_draw.H:472
FL_EXPORT void fl_draw_box(Fl_Boxtype, int x, int y, int w, int h, Fl_Color)
Draws a box using given type, position, size and color. 
Definition: fl_boxtype.cxx:386
void fl_scale(double x, double y)
Concatenates scaling transformation onto the current one. 
Definition: fl_draw.H:335
FL_EXPORT const char * fl_expand_text(const char *from, char *buf, int maxbuf, double maxw, int &n, double &width, int wrap, int draw_symbols=0)
Copy from to buf, replacing control characters with ^X. 
Definition: fl_draw.cxx:135
virtual void begin_line()
see fl_begin_line(). 
Definition: fl_vertex.cxx:77
void fl_end_points()
Ends list of points, and draws. 
Definition: fl_draw.H:428
virtual void gap()
see fl_gap(). 
Definition: fl_vertex.cxx:200
const char *const * data() const 
Returns a pointer to the current image data array. 
Definition: Fl_Image.H:120
virtual void curve(double X0, double Y0, double X1, double Y1, double X2, double Y2, double X3, double Y3)
see fl_curve(double X0, double Y0, double X1, double Y1, double X2, double Y2, double X3...
Definition: fl_curve.cxx:32
int Fl_Fontsize
Size of a font in pixels. 
Definition: Enumerations.H:768
line style: _ . . _ . . 
Definition: fl_draw.H:183
FL_EXPORT int fl_draw_pixmap(char *const *data, int x, int y, Fl_Color=FL_GRAY)
Draw XPM image data, with the top-left corner at the given position. 
Definition: fl_draw_pixmap.cxx:78
void fl_rectf(int x, int y, int w, int h)
Colors with current color a rectangle that exactly fills the given bounding box. 
Definition: fl_draw.H:206
cap style: end is round 
Definition: fl_draw.H:186
virtual void font(Fl_Font face, Fl_Fontsize fsize)
see fl_font(Fl_Font face, Fl_Fontsize size). 
Definition: Fl_Device.H:379
FL_EXPORT void fl_draw(const char *str, int x, int y)
Draws a nul-terminated UTF-8 string starting at the given x, y location. 
Definition: fl_font.cxx:64
void translate(double x, double y)
see fl_translate(double x, double y). 
Definition: Fl_Device.H:324
virtual void vertex(double x, double y)
see fl_vertex(double x, double y). 
Definition: fl_vertex.cxx:111
void fl_begin_loop()
Starts drawing a closed sequence of lines. 
Definition: fl_draw.H:370
void restore_clip()
see fl_restore_clip(). 
Definition: fl_rect.cxx:514
void fl_draw_image_mono(const uchar *buf, int X, int Y, int W, int H, int D=1, int L=0)
Draws a gray-scale (1 channel) image. 
Definition: fl_draw.H:687
int d() const 
Returns the current image depth. 
Definition: Fl_Image.H:102
double transform_dx(double x, double y)
see fl_transform_dx(double x, double y). 
Definition: fl_vertex.cxx:87
void fl_yxline(int x, int y, int y1)
Draws a vertical line from (x,y) to (x,y1) 
Definition: fl_draw.H:270
unsigned int Fl_Color
An FLTK color value; see also Colors. 
Definition: Enumerations.H:796
virtual void yxline(int x, int y, int y1)
see fl_yxline(int x, int y, int y1). 
Definition: fl_rect.cxx:265
void fl_push_no_clip()
Pushes an empty clip region onto the stack so nothing will be clipped. 
Definition: fl_draw.H:95
double fl_transform_y(double x, double y)
Transforms coordinate using the current transformation matrix. 
Definition: fl_draw.H:477
void(* Fl_Draw_Image_Cb)(void *data, int x, int y, int w, uchar *buf)
signature of image generation callback function. 
Definition: Fl_Device.H:49
int Fl_Font
A font number is an index into the internal font table. 
Definition: Enumerations.H:739
virtual void draw_image(const uchar *buf, int X, int Y, int W, int H, int D=3, int L=0)
see fl_draw_image(const uchar* buf, int X,int Y,int W,int H, int D, int L). 
Definition: Fl_Device.H:344
virtual void push_no_clip()
see fl_push_no_clip(). 
Definition: fl_rect.cxx:590
virtual void circle(double x, double y, double r)
see fl_circle(double x, double y, double r). 
Definition: fl_vertex.cxx:244
void push_matrix()
see fl_push_matrix(). 
Definition: fl_vertex.cxx:38
virtual void arc(double x, double y, double r, double start, double end)
see fl_arc(double x, double y, double r, double start, double end). 
Definition: fl_arc.cxx:37
line style: . . . . . . 
Definition: fl_draw.H:181
virtual void pie(int x, int y, int w, int h, double a1, double a2)
see fl_pie(int x, int y, int w, int h, double a1, double a2). 
Definition: fl_arci.cxx:76
unsigned Fl_Align
FLTK type for alignment control. 
Definition: Enumerations.H:690
void fl_translate(double x, double y)
Concatenates translation transformation onto the current one. 
Definition: fl_draw.H:345
FL_EXPORT const char * fl_shortcut_label(unsigned int shortcut)
Get a human-readable string from a shortcut value. 
Definition: fl_shortcut.cxx:169
int w() const 
Returns the current image width in pixels. 
Definition: Fl_Image.H:93
void scale(double x, double y)
see fl_scale(double x, double y). 
Definition: Fl_Device.H:320
void fl_vertex(double x, double y)
Adds a single vertex to the current path. 
Definition: fl_draw.H:379
FL_EXPORT const char * fl_mac_roman_to_local(const char *t, int n=-1)
Converts text from Mac Roman character set to local encoding. 
Definition: fl_encoding_mac_roman.cxx:100
FL_EXPORT void fl_frame(const char *s, int x, int y, int w, int h)
Draws a series of line segments around the given box. 
Definition: fl_boxtype.cxx:71
void fl_pop_matrix()
Restores the current transformation matrix from the stack. 
Definition: fl_draw.H:330
virtual void line(int x, int y, int x1, int y1)
see fl_line(int x, int y, int x1, int y1). 
Definition: fl_rect.cxx:334
void fl_polygon(int x, int y, int x1, int y1, int x2, int y2)
Fills a 3-sided polygon. 
Definition: fl_draw.H:244
virtual void color(Fl_Color c)
see fl_color(Fl_Color c). 
Definition: Fl_Device.H:253
void fl_xyline(int x, int y, int x1)
Draws a horizontal line from (x,y) to (x1,y) 
Definition: fl_draw.H:255
double transform_y(double x, double y)
see fl_transform_y(double x, double y). 
Definition: fl_vertex.cxx:85
join style: line join is tidied 
Definition: fl_draw.H:191
int h() const 
Returns the current image height in pixels. 
Definition: Fl_Image.H:96
void fl_restore_clip()
Undoes any clobbering of clip done by your program. 
Definition: fl_draw.H:129
virtual void rectf(int x, int y, int w, int h)
see fl_rectf(int x, int y, int w, int h). 
Definition: fl_rect.cxx:180
virtual int clip_box(int x, int y, int w, int h, int &X, int &Y, int &W, int &H)
see fl_clip_box(int x, int y, int w, int h, int &X, int &Y, int &W, int &H). 
Definition: fl_rect.cxx:636
FL_EXPORT uchar * fl_read_image(uchar *p, int X, int Y, int W, int H, int alpha=0)
Reads an RGB(A) image from the current window or off-screen buffer. 
Definition: fl_read_image.cxx:84
virtual void end_polygon()
see fl_end_polygon(). 
Definition: fl_vertex.cxx:165
double transform_dy(double x, double y)
see fl_transform_dy(double x, double y). 
Definition: fl_vertex.cxx:89
virtual void push_clip(int x, int y, int w, int h)
see fl_push_clip(int x, int y, int w, int h). 
Definition: fl_rect.cxx:553
void fl_rtl_draw(const char *str, int n, int x, int y)
Draws a UTF-8 string of length n bytes right to left starting at the given x, y location. 
Definition: fl_draw.H:627
FL_EXPORT void fl_cursor(Fl_Cursor)
Sets the cursor for the current window to the specified shape and colors. 
Definition: fl_cursor.cxx:42
void fl_line(int x, int y, int x1, int y1)
Draws a line from (x,y) to (x1,y1) 
Definition: fl_draw.H:223
double transform_x(double x, double y)
see fl_transform_x(double x, double y). 
Definition: fl_vertex.cxx:83
void fl_arc(int x, int y, int w, int h, double a1, double a2)
Draw ellipse sections using integer coordinates. 
Definition: fl_draw.H:304
FL_EXPORT void fl_measure(const char *str, int &x, int &y, int draw_symbols=1)
Measure how wide and tall the string will be when printed by the fl_draw() function with align parame...
Definition: fl_draw.cxx:376
virtual double width(const char *str, int n)
see fl_width(const char *str, int n). 
Definition: Fl_Device.H:385
virtual void end_points()
see fl_end_points(). 
Definition: fl_vertex.cxx:115
void mult_matrix(double a, double b, double c, double d, double x, double y)
see fl_mult_matrix(double a, double b, double c, double d, double x, double y). 
Definition: fl_vertex.cxx:52
join style: line join is rounded 
Definition: fl_draw.H:190
virtual void draw(const char *str, int n, int x, int y)
see fl_draw(const char *str, int n, int x, int y). 
Definition: Fl_Device.H:244
unsigned char uchar
unsigned char 
Definition: fl_types.h:30
void fl_font(Fl_Font face, Fl_Fontsize fsize)
Sets the current font, which is then used in various drawing routines. 
Definition: fl_draw.H:509
void fl_rect(int x, int y, int w, int h)
Draws a 1-pixel border inside the given bounding box. 
Definition: fl_draw.H:201
void fl_push_clip(int x, int y, int w, int h)
Intersects the current clip region with a rectangle and pushes this new region onto the stack...
Definition: fl_draw.H:82
void fl_pie(int x, int y, int w, int h, double a1, double a2)
Draw filled ellipse sections using integer coordinates. 
Definition: fl_draw.H:317
FL_EXPORT double fl_width(const char *txt)
Returns the typographical width of a nul-terminated string using the current font face and size...
Definition: fl_font.cxx:59
void fl_circle(double x, double y, double r)
fl_circle() is equivalent to fl_arc(x,y,r,0,360), but may be faster. 
Definition: fl_draw.H:424