mirror of
https://github.com/fltk/fltk.git
synced 2026-06-04 06:24:15 +08:00
Major documentation update including: now html doc API is sorted, navigation problems/side effects fixed, html tags replaced by proper doxygen commands, parameters command switched from a to p. Includes a pdf update.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6716 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
@@ -503,7 +503,7 @@ public:
|
|||||||
*/
|
*/
|
||||||
static int event_original_key(){return e_original_keysym;}
|
static int event_original_key(){return e_original_keysym;}
|
||||||
/**
|
/**
|
||||||
Returns true if the given \a key was held
|
Returns true if the given \p key was held
|
||||||
down (or pressed) <I>during</I> the last event. This is constant until
|
down (or pressed) <I>during</I> the last event. This is constant until
|
||||||
the next event is read from the server.
|
the next event is read from the server.
|
||||||
|
|
||||||
@@ -542,7 +542,7 @@ public:
|
|||||||
*/
|
*/
|
||||||
static int event_key(int key);
|
static int event_key(int key);
|
||||||
/**
|
/**
|
||||||
Returns true if the given \a key is held down <I>now</I>.
|
Returns true if the given \p key is held down <I>now</I>.
|
||||||
Under X this requires a round-trip to the server and is <I>much</I>
|
Under X this requires a round-trip to the server and is <I>much</I>
|
||||||
slower than Fl::event_key(int). \see event_key(int)
|
slower than Fl::event_key(int). \see event_key(int)
|
||||||
*/
|
*/
|
||||||
@@ -591,7 +591,7 @@ public:
|
|||||||
@{ */
|
@{ */
|
||||||
// cut/paste:
|
// cut/paste:
|
||||||
/**
|
/**
|
||||||
Copies the data pointed to by \a stuff to the selection (0) or
|
Copies the data pointed to by \p stuff to the selection (0) or
|
||||||
primary (1) clipboard. The selection clipboard is used for
|
primary (1) clipboard. The selection clipboard is used for
|
||||||
middle-mouse pastes and for drag-and-drop selections. The primary
|
middle-mouse pastes and for drag-and-drop selections. The primary
|
||||||
clipboard is used for traditional copy/cut/paste operations.
|
clipboard is used for traditional copy/cut/paste operations.
|
||||||
@@ -676,7 +676,7 @@ public:
|
|||||||
guarantee that each face has a different name. The return value points
|
guarantee that each face has a different name. The return value points
|
||||||
to a static buffer that is overwritten each call.
|
to a static buffer that is overwritten each call.
|
||||||
|
|
||||||
The integer pointed to by \a attributes (if the pointer is not
|
The integer pointed to by \p attributes (if the pointer is not
|
||||||
zero) is set to zero, FL_BOLD or FL_ITALIC or
|
zero) is set to zero, FL_BOLD or FL_ITALIC or
|
||||||
FL_BOLD | FL_ITALIC. To locate a "family" of fonts, search
|
FL_BOLD | FL_ITALIC. To locate a "family" of fonts, search
|
||||||
forward and back for a set with non-zero attributes, these faces along
|
forward and back for a set with non-zero attributes, these faces along
|
||||||
@@ -684,7 +684,7 @@ public:
|
|||||||
*/
|
*/
|
||||||
static const char* get_font_name(Fl_Font, int* attributes = 0);
|
static const char* get_font_name(Fl_Font, int* attributes = 0);
|
||||||
/**
|
/**
|
||||||
Return an array of sizes in \a sizep. The return value is the
|
Return an array of sizes in \p sizep. The return value is the
|
||||||
length of this array. The sizes are sorted from smallest to largest
|
length of this array. The sizes are sorted from smallest to largest
|
||||||
and indicate what sizes can be given to fl_font() that will
|
and indicate what sizes can be given to fl_font() that will
|
||||||
be matched exactly (fl_font() will pick the closest size for
|
be matched exactly (fl_font() will pick the closest size for
|
||||||
@@ -900,7 +900,7 @@ public:
|
|||||||
FL::cairo_make_current(Fl_Window*). This will create a cairo context
|
FL::cairo_make_current(Fl_Window*). This will create a cairo context
|
||||||
but only for this Window.
|
but only for this Window.
|
||||||
Still in custom cairo application it is possible to handle
|
Still in custom cairo application it is possible to handle
|
||||||
completely this process automatically by setting \a alink to true.
|
completely this process automatically by setting \p alink to true.
|
||||||
In this last case, you don't need anymore to call Fl::cairo_make_current().
|
In this last case, you don't need anymore to call Fl::cairo_make_current().
|
||||||
You can use Fl::cairo_cc() to get the current cairo context anytime.
|
You can use Fl::cairo_cc() to get the current cairo context anytime.
|
||||||
\note Only available when configure has the --enable-cairo option
|
\note Only available when configure has the --enable-cairo option
|
||||||
@@ -916,8 +916,8 @@ public:
|
|||||||
static bool cairo_autolink_context() {return cairo_state_.autolink();}
|
static bool cairo_autolink_context() {return cairo_state_.autolink();}
|
||||||
/** Gets the current cairo context linked with a fltk window. */
|
/** Gets the current cairo context linked with a fltk window. */
|
||||||
static cairo_t * cairo_cc() { return cairo_state_.cc(); }
|
static cairo_t * cairo_cc() { return cairo_state_.cc(); }
|
||||||
/** Sets the current cairo context to \a c.
|
/** Sets the current cairo context to \p c.
|
||||||
Set \a own to true if you want fltk to handle this cc deletion.
|
Set \p own to true if you want fltk to handle this cc deletion.
|
||||||
\note Only available when configure has the --enable-cairo option
|
\note Only available when configure has the --enable-cairo option
|
||||||
*/
|
*/
|
||||||
static void cairo_cc(cairo_t * c, bool own=false){ cairo_state_.cc(c, own); }
|
static void cairo_cc(cairo_t * c, bool own=false){ cairo_state_.cc(c, own); }
|
||||||
|
|||||||
+3
-3
@@ -67,7 +67,7 @@ public:
|
|||||||
// access attributes
|
// access attributes
|
||||||
cairo_t* cc() const {return cc_;} ///< Gets the current cairo context
|
cairo_t* cc() const {return cc_;} ///< Gets the current cairo context
|
||||||
bool autolink() const {return autolink_;} ///< Gets the autolink option. See Fl::cairo_autolink_context(bool)
|
bool autolink() const {return autolink_;} ///< Gets the autolink option. See Fl::cairo_autolink_context(bool)
|
||||||
/** Sets the current cairo context, \a own indicates cc deletion is handle externally by user */
|
/** Sets the current cairo context, \p own indicates cc deletion is handle externally by user */
|
||||||
void cc(cairo_t* c, bool own=true) {
|
void cc(cairo_t* c, bool own=true) {
|
||||||
if (cc_ && own_cc_) cairo_destroy(cc_);
|
if (cc_ && own_cc_) cairo_destroy(cc_);
|
||||||
cc_=c;
|
cc_=c;
|
||||||
@@ -75,9 +75,9 @@ public:
|
|||||||
own_cc_=own;
|
own_cc_=own;
|
||||||
}
|
}
|
||||||
void autolink(bool b); ///< Sets the autolink option, only available with --enable-cairoext
|
void autolink(bool b); ///< Sets the autolink option, only available with --enable-cairoext
|
||||||
void window(void* w) {window_=w;} ///< Sets the window \a w to keep track on
|
void window(void* w) {window_=w;} ///< Sets the window \p w to keep track on
|
||||||
void* window() const {return window_;} ///< Gets the last window attached to a cc
|
void* window() const {return window_;} ///< Gets the last window attached to a cc
|
||||||
void gc(void* c) {gc_=c;} ///< Sets the gc \a c to keep track on
|
void gc(void* c) {gc_=c;} ///< Sets the gc \p c to keep track on
|
||||||
void* gc() const {return gc_;} ///< Gets the last gc attached to a cc
|
void* gc() const {return gc_;} ///< Gets the last gc attached to a cc
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ public:
|
|||||||
typedef void (*cairo_draw_cb) (Fl_Cairo_Window* self, cairo_t* def);
|
typedef void (*cairo_draw_cb) (Fl_Cairo_Window* self, cairo_t* def);
|
||||||
/**
|
/**
|
||||||
You must provide a draw callback which will implement your cairo rendering.
|
You must provide a draw callback which will implement your cairo rendering.
|
||||||
This method will permit you to set your cairo callback to \a cb.
|
This method will permit you to set your cairo callback to \p cb.
|
||||||
*/
|
*/
|
||||||
void set_draw_cb(cairo_draw_cb cb){draw_cb_=cb;}
|
void set_draw_cb(cairo_draw_cb cb){draw_cb_=cb;}
|
||||||
private:
|
private:
|
||||||
|
|||||||
+3
-3
@@ -102,17 +102,17 @@ public:
|
|||||||
|
|
||||||
/** Gets the text font */
|
/** Gets the text font */
|
||||||
Fl_Font textfont() const {return textfont_;}
|
Fl_Font textfont() const {return textfont_;}
|
||||||
/** Sets the text font to \a s */
|
/** Sets the text font to \p s */
|
||||||
void textfont(Fl_Font s) {textfont_ = s;}
|
void textfont(Fl_Font s) {textfont_ = s;}
|
||||||
|
|
||||||
/** Gets the font size */
|
/** Gets the font size */
|
||||||
Fl_Fontsize textsize() const {return textsize_;}
|
Fl_Fontsize textsize() const {return textsize_;}
|
||||||
/** Sets the font size to \a s */
|
/** Sets the font size to \p s */
|
||||||
void textsize(Fl_Fontsize s) {textsize_ = s;}
|
void textsize(Fl_Fontsize s) {textsize_ = s;}
|
||||||
|
|
||||||
/** Gets the font color */
|
/** Gets the font color */
|
||||||
Fl_Color textcolor() const {return (Fl_Color)textcolor_;}
|
Fl_Color textcolor() const {return (Fl_Color)textcolor_;}
|
||||||
/** Sets the font color to \a s */
|
/** Sets the font color to \p s */
|
||||||
void textcolor(unsigned s) {textcolor_ = s;}
|
void textcolor(unsigned s) {textcolor_ = s;}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|||||||
+1
-1
@@ -83,7 +83,7 @@ public:
|
|||||||
\todo Better docs for Fl_File_Input::errorcolor() - is it even used?
|
\todo Better docs for Fl_File_Input::errorcolor() - is it even used?
|
||||||
*/
|
*/
|
||||||
Fl_Color errorcolor() const { return errorcolor_; }
|
Fl_Color errorcolor() const { return errorcolor_; }
|
||||||
/** Sets the current error color to \a c */
|
/** Sets the current error color to \p c */
|
||||||
void errorcolor(Fl_Color c) { errorcolor_ = c; }
|
void errorcolor(Fl_Color c) { errorcolor_ = c; }
|
||||||
|
|
||||||
int value(const char *str);
|
int value(const char *str);
|
||||||
|
|||||||
+3
-3
@@ -105,12 +105,12 @@ public:
|
|||||||
void insert(Fl_Widget&, int i);
|
void insert(Fl_Widget&, int i);
|
||||||
/**
|
/**
|
||||||
This does insert(w, find(before)). This will append the
|
This does insert(w, find(before)). This will append the
|
||||||
widget if \a before is not in the group.
|
widget if \p before is not in the group.
|
||||||
*/
|
*/
|
||||||
void insert(Fl_Widget& o, Fl_Widget* before) {insert(o,find(before));}
|
void insert(Fl_Widget& o, Fl_Widget* before) {insert(o,find(before));}
|
||||||
void remove(Fl_Widget&);
|
void remove(Fl_Widget&);
|
||||||
/**
|
/**
|
||||||
Removes the widget \a o from the group.
|
Removes the widget \p o from the group.
|
||||||
\sa void remove(Fl_Widget&)
|
\sa void remove(Fl_Widget&)
|
||||||
*/
|
*/
|
||||||
void remove(Fl_Widget* o) {remove(*o);}
|
void remove(Fl_Widget* o) {remove(*o);}
|
||||||
@@ -163,7 +163,7 @@ public:
|
|||||||
Controls whether the group widget clips the drawing of
|
Controls whether the group widget clips the drawing of
|
||||||
child widgets to its bounding box.
|
child widgets to its bounding box.
|
||||||
|
|
||||||
Set \a c to 1 if you want to clip the child widgets to the
|
Set \p c to 1 if you want to clip the child widgets to the
|
||||||
bounding box.
|
bounding box.
|
||||||
|
|
||||||
The default is to not clip (0) the drawing of child widgets.
|
The default is to not clip (0) the drawing of child widgets.
|
||||||
|
|||||||
+6
-6
@@ -815,8 +815,8 @@ public:
|
|||||||
|
|
||||||
/** Calls the widget callback.
|
/** Calls the widget callback.
|
||||||
Causes a widget to invoke its callback function with arbitrary arguments.
|
Causes a widget to invoke its callback function with arbitrary arguments.
|
||||||
\param[in] o call the callback with \a o as the widget argument
|
\param[in] o call the callback with \p o as the widget argument
|
||||||
\param[in] arg call the callback with \a arg as the user data argument
|
\param[in] arg call the callback with \p arg as the user data argument
|
||||||
\see callback()
|
\see callback()
|
||||||
*/
|
*/
|
||||||
void do_callback(Fl_Widget* o,long arg) {do_callback(o,(void*)arg);}
|
void do_callback(Fl_Widget* o,long arg) {do_callback(o,(void*)arg);}
|
||||||
@@ -834,14 +834,14 @@ public:
|
|||||||
|
|
||||||
/** Checks if w is a child of this widget.
|
/** Checks if w is a child of this widget.
|
||||||
\param[in] w potential child widget
|
\param[in] w potential child widget
|
||||||
\return Returns 1 if \a w is a child of this widget, or is
|
\return Returns 1 if \p w is a child of this widget, or is
|
||||||
equal to this widget. Returns 0 if \a w is NULL.
|
equal to this widget. Returns 0 if \p w is NULL.
|
||||||
*/
|
*/
|
||||||
int contains(const Fl_Widget *w) const ;
|
int contains(const Fl_Widget *w) const ;
|
||||||
|
|
||||||
/** Checks if this widget is a child of w.
|
/** Checks if this widget is a child of w.
|
||||||
Returns 1 if this widget is a child of \a w, or is
|
Returns 1 if this widget is a child of \p w, or is
|
||||||
equal to \a w. Returns 0 if \a w is NULL.
|
equal to \p w. Returns 0 if \p w is NULL.
|
||||||
\param[in] w the possible parent widget.
|
\param[in] w the possible parent widget.
|
||||||
\see contains()
|
\see contains()
|
||||||
*/
|
*/
|
||||||
|
|||||||
+1
-1
@@ -34,7 +34,7 @@
|
|||||||
@{ */
|
@{ */
|
||||||
|
|
||||||
# define FL_PATH_MAX 256 /**< all path buffers should use this length */
|
# define FL_PATH_MAX 256 /**< all path buffers should use this length */
|
||||||
/** Gets the file name from a path. \return a pointer to the char after the last slash, or to \a filename if there is none. */
|
/** Gets the file name from a path. \return a pointer to the char after the last slash, or to \p filename if there is none. */
|
||||||
FL_EXPORT const char *fl_filename_name(const char * filename);
|
FL_EXPORT const char *fl_filename_name(const char * filename);
|
||||||
FL_EXPORT const char *fl_filename_ext(const char *);
|
FL_EXPORT const char *fl_filename_ext(const char *);
|
||||||
FL_EXPORT char *fl_filename_setext(char *to, int tolen, const char *ext);
|
FL_EXPORT char *fl_filename_setext(char *to, int tolen, const char *ext);
|
||||||
|
|||||||
+32
-32
@@ -175,9 +175,9 @@ FL_EXPORT void fl_transformed_vertex(double x, double y);
|
|||||||
You may call this outside a draw context if necessary to call fl_width(),
|
You may call this outside a draw context if necessary to call fl_width(),
|
||||||
but on X this will open the display.
|
but on X this will open the display.
|
||||||
|
|
||||||
The font is identified by a \a face and a \a size.
|
The font is identified by a \p face and a \p size.
|
||||||
The size of the font is measured in pixels and not "points".
|
The size of the font is measured in pixels and not "points".
|
||||||
Lines should be spaced \a size pixels apart or more.
|
Lines should be spaced \p size pixels apart or more.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Fonts:
|
// Fonts:
|
||||||
@@ -185,14 +185,14 @@ FL_EXPORT void fl_font(Fl_Font face, Fl_Fontsize size);
|
|||||||
extern FL_EXPORT Fl_Font fl_font_; ///< current font index
|
extern FL_EXPORT Fl_Font fl_font_; ///< current font index
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Returns the \a face set by the most recent call to fl_font().
|
Returns the \p face set by the most recent call to fl_font().
|
||||||
This can be used to save/restore the font.
|
This can be used to save/restore the font.
|
||||||
*/
|
*/
|
||||||
inline Fl_Font fl_font() {return fl_font_;}
|
inline Fl_Font fl_font() {return fl_font_;}
|
||||||
/** current font size */
|
/** current font size */
|
||||||
extern FL_EXPORT Fl_Fontsize fl_size_;
|
extern FL_EXPORT Fl_Fontsize fl_size_;
|
||||||
/**
|
/**
|
||||||
Returns the \a size set by the most recent call to fl_font().
|
Returns the \p size set by the most recent call to fl_font().
|
||||||
This can be used to save/restore the font.
|
This can be used to save/restore the font.
|
||||||
*/
|
*/
|
||||||
inline Fl_Fontsize fl_size() {return fl_size_;}
|
inline Fl_Fontsize fl_size() {return fl_size_;}
|
||||||
@@ -200,15 +200,15 @@ inline Fl_Fontsize fl_size() {return fl_size_;}
|
|||||||
// information you can get about the current font:
|
// information you can get about the current font:
|
||||||
/**
|
/**
|
||||||
Returns the recommended minimum line spacing for the current font.
|
Returns the recommended minimum line spacing for the current font.
|
||||||
You can also use the value of \a size passed to fl_font()
|
You can also use the value of \p size passed to fl_font()
|
||||||
*/
|
*/
|
||||||
FL_EXPORT int fl_height(); // using "size" should work ok
|
FL_EXPORT int fl_height(); // using "size" should work ok
|
||||||
/**
|
/**
|
||||||
Dummy passthru function called only in Fl_Text_Display that simply returns
|
Dummy passthru function called only in Fl_Text_Display that simply returns
|
||||||
the font height as given by the \a size parameter in the same call!
|
the font height as given by the \p size parameter in the same call!
|
||||||
|
|
||||||
\todo Is fl_height(int, int size) required for Fl_Text_Dispay?
|
\todo Is fl_height(int, int size) required for Fl_Text_Dispay?
|
||||||
Why not use \a size parameter directly?
|
Why not use \p size parameter directly?
|
||||||
*/
|
*/
|
||||||
inline int fl_height(int, int size) {return size;}
|
inline int fl_height(int, int size) {return size;}
|
||||||
/**
|
/**
|
||||||
@@ -218,7 +218,7 @@ inline int fl_height(int, int size) {return size;}
|
|||||||
FL_EXPORT int fl_descent();
|
FL_EXPORT int fl_descent();
|
||||||
/** Return the typographical width of a nul-terminated string */
|
/** Return the typographical width of a nul-terminated string */
|
||||||
FL_EXPORT double fl_width(const char* txt);
|
FL_EXPORT double fl_width(const char* txt);
|
||||||
/** Return the typographical width of a sequence of \a n characters */
|
/** Return the typographical width of a sequence of \p n characters */
|
||||||
FL_EXPORT double fl_width(const char* txt, int n);
|
FL_EXPORT double fl_width(const char* txt, int n);
|
||||||
/** Return the typographical width of a single character :
|
/** Return the typographical width of a single character :
|
||||||
\note if a valid fl_gc is NOT found then it uses the first window gc,
|
\note if a valid fl_gc is NOT found then it uses the first window gc,
|
||||||
@@ -233,7 +233,7 @@ fl_rect(x+dx, y+dy, wo, ho). Note the dx, dy values hold the offset of the first
|
|||||||
"colored in" pixel of the string, from the draw origin.
|
"colored in" pixel of the string, from the draw origin.
|
||||||
*/
|
*/
|
||||||
FL_EXPORT void fl_text_extents(const char*, int& dx, int& dy, int& w, int& h); // NO fltk symbol expansion will be performed
|
FL_EXPORT void fl_text_extents(const char*, int& dx, int& dy, int& w, int& h); // NO fltk symbol expansion will be performed
|
||||||
/** Determine the minimum pixel dimensions of a sequence of \a n characters.
|
/** Determine the minimum pixel dimensions of a sequence of \p n characters.
|
||||||
\see fl_text_extents(const char*, int& dx, int& dy, int& w, int& h)
|
\see fl_text_extents(const char*, int& dx, int& dy, int& w, int& h)
|
||||||
*/
|
*/
|
||||||
FL_EXPORT void fl_text_extents(const char*, int n, int& dx, int& dy, int& w, int& h);
|
FL_EXPORT void fl_text_extents(const char*, int n, int& dx, int& dy, int& w, int& h);
|
||||||
@@ -276,7 +276,7 @@ FL_EXPORT const char *fl_local_to_mac_roman(const char *t, int n=-1);
|
|||||||
Draws a nul-terminated string starting at the given location.
|
Draws a nul-terminated string starting at the given location.
|
||||||
|
|
||||||
Text is aligned to the left and to the baseline of the font.
|
Text is aligned to the left and to the baseline of the font.
|
||||||
To align to the bottom, subtract fl_descent() from \a y.
|
To align to the bottom, subtract fl_descent() from \p y.
|
||||||
To align to the top, subtract fl_descent() and add fl_height().
|
To align to the top, subtract fl_descent() and add fl_height().
|
||||||
This version of fl_draw provides direct access to the text drawing
|
This version of fl_draw provides direct access to the text drawing
|
||||||
function of the underlying OS. It does not apply any special handling
|
function of the underlying OS. It does not apply any special handling
|
||||||
@@ -284,11 +284,11 @@ FL_EXPORT const char *fl_local_to_mac_roman(const char *t, int n=-1);
|
|||||||
*/
|
*/
|
||||||
FL_EXPORT void fl_draw(const char* str, int x, int y);
|
FL_EXPORT void fl_draw(const char* str, int x, int y);
|
||||||
/**
|
/**
|
||||||
Draws an array of \a n characters starting at the given location.
|
Draws an array of \p n characters starting at the given location.
|
||||||
*/
|
*/
|
||||||
FL_EXPORT void fl_draw(const char* str, int n, int x, int y);
|
FL_EXPORT void fl_draw(const char* str, int n, int x, int y);
|
||||||
/**
|
/**
|
||||||
Draws an array of \a n characters right to left starting at given location.
|
Draws an array of \p n characters right to left starting at given location.
|
||||||
*/
|
*/
|
||||||
FL_EXPORT void fl_rtl_draw(const char*, int n, int x, int y);
|
FL_EXPORT void fl_rtl_draw(const char*, int n, int x, int y);
|
||||||
FL_EXPORT void fl_measure(const char* str, int& x, int& y,
|
FL_EXPORT void fl_measure(const char* str, int& x, int& y,
|
||||||
@@ -311,8 +311,8 @@ FL_EXPORT void fl_draw_box(Fl_Boxtype, int x, int y, int w, int h, Fl_Color);
|
|||||||
signature of image generation callback function.
|
signature of image generation callback function.
|
||||||
\param[in] data user data passed to function
|
\param[in] data user data passed to function
|
||||||
\param[in] x,y,w position and width of scan line in image
|
\param[in] x,y,w position and width of scan line in image
|
||||||
\param[out] buf buffer for generated image data. You must copy \a w
|
\param[out] buf buffer for generated image data. You must copy \p w
|
||||||
pixels from scanline \a y, starting at pixel \a x
|
pixels from scanline \p y, starting at pixel \p x
|
||||||
to this buffer.
|
to this buffer.
|
||||||
*/
|
*/
|
||||||
typedef void (*Fl_Draw_Image_Cb)(void* data,int x,int y,int w,uchar* buf);
|
typedef void (*Fl_Draw_Image_Cb)(void* data,int x,int y,int w,uchar* buf);
|
||||||
@@ -327,8 +327,8 @@ typedef void (*Fl_Draw_Image_Cb)(void* data,int x,int y,int w,uchar* buf);
|
|||||||
any value greater than or equal to 3, or it can be
|
any value greater than or equal to 3, or it can be
|
||||||
negative to flip the image horizontally
|
negative to flip the image horizontally
|
||||||
\param[in] L delta to add to the pointer between lines (if 0 is
|
\param[in] L delta to add to the pointer between lines (if 0 is
|
||||||
passed it uses \a W * \a D), and may be larger than
|
passed it uses \p W * \p D), and may be larger than
|
||||||
\a W * \a D to crop data, or negative to flip the
|
\p W * \p D to crop data, or negative to flip the
|
||||||
image vertically
|
image vertically
|
||||||
|
|
||||||
It is highly recommended that you put the following code before the
|
It is highly recommended that you put the following code before the
|
||||||
@@ -341,7 +341,7 @@ typedef void (*Fl_Draw_Image_Cb)(void* data,int x,int y,int w,uchar* buf);
|
|||||||
<tt>abs(D)</tt> is less than 3, or by calling fl_draw_image_mono().
|
<tt>abs(D)</tt> is less than 3, or by calling fl_draw_image_mono().
|
||||||
Only one 8-bit sample is used for each pixel, and on screens with
|
Only one 8-bit sample is used for each pixel, and on screens with
|
||||||
different numbers of bits for red, green, and blue only gray colors
|
different numbers of bits for red, green, and blue only gray colors
|
||||||
are used. Setting \a D greater than 1 will let you display one channel
|
are used. Setting \p D greater than 1 will let you display one channel
|
||||||
of a color image.
|
of a color image.
|
||||||
|
|
||||||
\par Note:
|
\par Note:
|
||||||
@@ -370,25 +370,25 @@ FL_EXPORT void fl_draw_image_mono(const uchar* buf, int X,int Y,int W,int H, int
|
|||||||
\param[in] D
|
\param[in] D
|
||||||
\see fl_draw_image(const uchar* buf, int X,int Y,int W,int H, int D, int L)
|
\see fl_draw_image(const uchar* buf, int X,int Y,int W,int H, int D, int L)
|
||||||
|
|
||||||
The callback function \a cb is called with the <tt>void*</tt> \a data
|
The callback function \p cb is called with the <tt>void*</tt> \p data
|
||||||
user data pointer to allow access to a structure of information about
|
user data pointer to allow access to a structure of information about
|
||||||
the image, and the \a x, \a y, and \a w of the scan line desired from
|
the image, and the \p x, \p y, and \p w of the scan line desired from
|
||||||
the image. 0,0 is the upper-left corner of the image, not \a X, \a Y.
|
the image. 0,0 is the upper-left corner of the image, not \p X, \p Y.
|
||||||
A pointer to a buffer to put the data into is passed. You must copy
|
A pointer to a buffer to put the data into is passed. You must copy
|
||||||
\a w pixels from scanline \a y, starting at pixel \a x, to this buffer.
|
\p w pixels from scanline \p y, starting at pixel \p x, to this buffer.
|
||||||
|
|
||||||
Due to cropping, less than the whole image may be requested. So \a x
|
Due to cropping, less than the whole image may be requested. So \p x
|
||||||
may be greater than zero, the first \a y may be greater than zero,
|
may be greater than zero, the first \p y may be greater than zero,
|
||||||
and \a w may be less than \a W. The buffer is long enough to store
|
and \p w may be less than \p W. The buffer is long enough to store
|
||||||
the entire \a W * \a D pixels, this is for convenience with some
|
the entire \p W * \p D pixels, this is for convenience with some
|
||||||
decompression schemes where you must decompress the entire line at
|
decompression schemes where you must decompress the entire line at
|
||||||
once: decompress it into the buffer, and then if \a x is not zero,
|
once: decompress it into the buffer, and then if \p x is not zero,
|
||||||
copy the data over so the \a x'th pixel is at the start of the buffer.
|
copy the data over so the \p x'th pixel is at the start of the buffer.
|
||||||
|
|
||||||
You can assume the \a y's will be consecutive, except the first one
|
You can assume the \p y's will be consecutive, except the first one
|
||||||
may be greater than zero.
|
may be greater than zero.
|
||||||
|
|
||||||
If \a D is 4 or more, you must fill in the unused bytes with zero.
|
If \p D is 4 or more, you must fill in the unused bytes with zero.
|
||||||
*/
|
*/
|
||||||
FL_EXPORT void fl_draw_image(Fl_Draw_Image_Cb cb, void* data, int X,int Y,int W,int H, int D=3);
|
FL_EXPORT void fl_draw_image(Fl_Draw_Image_Cb cb, void* data, int X,int Y,int W,int H, int D=3);
|
||||||
|
|
||||||
@@ -414,12 +414,12 @@ FL_EXPORT char fl_can_do_alpha_blending();
|
|||||||
\param[in] alpha alpha value for image (0 fr none)
|
\param[in] alpha alpha value for image (0 fr none)
|
||||||
\returns pointer to pixel buffer, or NULL if allocation failed.
|
\returns pointer to pixel buffer, or NULL if allocation failed.
|
||||||
|
|
||||||
The \a p argument points to a buffer that can hold the image and must
|
The \p p argument points to a buffer that can hold the image and must
|
||||||
be at least \a W*H*3 bytes when reading RGB images, or \a W*H*4 bytes
|
be at least \p W*H*3 bytes when reading RGB images, or \p W*H*4 bytes
|
||||||
when reading RGBA images. If NULL, fl_read_image() will create an
|
when reading RGBA images. If NULL, fl_read_image() will create an
|
||||||
array of the proper suze which can be freed using <tt>delete[]</tt>.
|
array of the proper suze which can be freed using <tt>delete[]</tt>.
|
||||||
|
|
||||||
The \a alpha parameter controls whether an alpha channel is created
|
The \p alpha parameter controls whether an alpha channel is created
|
||||||
and the value that is placed in the alpha channel. If 0, no alpha
|
and the value that is placed in the alpha channel. If 0, no alpha
|
||||||
channel is generated.
|
channel is generated.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -57,14 +57,14 @@ void fl_draw_box(Fl_Boxtype b, int x, int y, int w, int h, Fl_Color c);
|
|||||||
|
|
||||||
\par
|
\par
|
||||||
The first box drawing function is fl_draw_box()
|
The first box drawing function is fl_draw_box()
|
||||||
which draws a standard boxtype \a b in the specified color \a c .
|
which draws a standard boxtype \p b in the specified color \p c .
|
||||||
|
|
||||||
<A NAME="fl_frame"></A> <!-- For old HTML links only ! -->
|
<A NAME="fl_frame"></A> <!-- For old HTML links only ! -->
|
||||||
void fl_frame(const char *s, int x, int y, int w, int h)
|
void fl_frame(const char *s, int x, int y, int w, int h)
|
||||||
|
|
||||||
\par
|
\par
|
||||||
The fl_frame() function draws a series of line segments around the
|
The fl_frame() function draws a series of line segments around the
|
||||||
given box. The string \a s must contain groups of 4 letters which specify
|
given box. The string \p s must contain groups of 4 letters which specify
|
||||||
one of 24 standard grayscale values, where 'A' is black and 'X' is white.
|
one of 24 standard grayscale values, where 'A' is black and 'X' is white.
|
||||||
The order of each set of 4 characters is: top, left, bottom, right. The
|
The order of each set of 4 characters is: top, left, bottom, right. The
|
||||||
results of calling fl_frame() with a string that is not a multiple
|
results of calling fl_frame() with a string that is not a multiple
|
||||||
@@ -82,7 +82,7 @@ void fl_frame2(const char *s, int x, int y, int w, int h);
|
|||||||
|
|
||||||
\par
|
\par
|
||||||
The fl_frame2() function draws a series of line segments around
|
The fl_frame2() function draws a series of line segments around
|
||||||
the given box. The string \a s must contain groups of 4 letters which
|
the given box. The string \p s must contain groups of 4 letters which
|
||||||
specify one of 24 standard grayscale values, where 'A' is black and 'X' is
|
specify one of 24 standard grayscale values, where 'A' is black and 'X' is
|
||||||
white. The order of each set of 4 characters is: bottom, right, top, left.
|
white. The order of each set of 4 characters is: bottom, right, top, left.
|
||||||
The results of calling fl_frame2() with a string that is
|
The results of calling fl_frame2() with a string that is
|
||||||
|
|||||||
+2
-2
@@ -299,7 +299,7 @@ int Fl_Menu_::add(const char *str) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Changes the text of item \a i. This is the only way to get
|
Changes the text of item \p i. This is the only way to get
|
||||||
slash into an add()'ed menu item. If the menu array was directly set
|
slash into an add()'ed menu item. If the menu array was directly set
|
||||||
with menu(x) then copy() is done to make a private array.
|
with menu(x) then copy() is done to make a private array.
|
||||||
*/
|
*/
|
||||||
@@ -313,7 +313,7 @@ void Fl_Menu_::replace(int i, const char *str) {
|
|||||||
menu_[i].text = str;
|
menu_[i].text = str;
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
Deletes item \a i from the menu. If the menu array was directly
|
Deletes item \p i from the menu. If the menu array was directly
|
||||||
set with menu(x) then copy() is done to make a private array.
|
set with menu(x) then copy() is done to make a private array.
|
||||||
|
|
||||||
No items must be removed from a menu during a callback to the same menu.
|
No items must be removed from a menu during a callback to the same menu.
|
||||||
|
|||||||
+13
-13
@@ -91,8 +91,8 @@ Fl_Preferences::Fl_Preferences( Root root, const char *vendor, const char *appli
|
|||||||
arbitrary position in the file system.
|
arbitrary position in the file system.
|
||||||
|
|
||||||
The file name is generated in the form
|
The file name is generated in the form
|
||||||
<tt><i>path</i>/<i>application</i>.prefs</tt>. If \a application
|
<tt><i>path</i>/<i>application</i>.prefs</tt>. If \p application
|
||||||
is \c NULL, \a path must contain the full file name.
|
is \c NULL, \p path must contain the full file name.
|
||||||
|
|
||||||
\param[in] path path to the directory that contains the preferences file
|
\param[in] path path to the directory that contains the preferences file
|
||||||
\param[in] vendor unique text describing the company or author of this file
|
\param[in] vendor unique text describing the company or author of this file
|
||||||
@@ -108,8 +108,8 @@ Fl_Preferences::Fl_Preferences( const char *path, const char *vendor, const char
|
|||||||
/**
|
/**
|
||||||
\brief Generate or read a new group of entries within another group.
|
\brief Generate or read a new group of entries within another group.
|
||||||
|
|
||||||
Use the \a group argument to name the group that you would like to access.
|
Use the \p group argument to name the group that you would like to access.
|
||||||
\a Group can also contain a path to a group further down the hierarchy by
|
\p Group can also contain a path to a group further down the hierarchy by
|
||||||
separating group names with a forward slash '/'.
|
separating group names with a forward slash '/'.
|
||||||
|
|
||||||
\param[in] parent reference object for the new group
|
\param[in] parent reference object for the new group
|
||||||
@@ -164,7 +164,7 @@ int Fl_Preferences::groups()
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Returns the name of the Nth (\a num_group) group.
|
Returns the name of the Nth (\p num_group) group.
|
||||||
There is no guaranteed order of group names. The index must
|
There is no guaranteed order of group names. The index must
|
||||||
be within the range given by groups().
|
be within the range given by groups().
|
||||||
|
|
||||||
@@ -249,7 +249,7 @@ char Fl_Preferences::entryExists( const char *key )
|
|||||||
/**
|
/**
|
||||||
Deletes a single name/value pair.
|
Deletes a single name/value pair.
|
||||||
|
|
||||||
This function removes the entry \a key from the database.
|
This function removes the entry \p key from the database.
|
||||||
|
|
||||||
\param[in] key name of entry to delete
|
\param[in] key name of entry to delete
|
||||||
\return 0 if deleting the entry failed
|
\return 0 if deleting the entry failed
|
||||||
@@ -285,7 +285,7 @@ char Fl_Preferences::get( const char *key, int &value, int defaultValue )
|
|||||||
file.
|
file.
|
||||||
|
|
||||||
\param[in] key name of entry
|
\param[in] key name of entry
|
||||||
\param[in] value set this entry to \a value
|
\param[in] value set this entry to \p value
|
||||||
\return 0 if setting the value failed
|
\return 0 if setting the value failed
|
||||||
*/
|
*/
|
||||||
char Fl_Preferences::set( const char *key, int value )
|
char Fl_Preferences::set( const char *key, int value )
|
||||||
@@ -321,7 +321,7 @@ char Fl_Preferences::get( const char *key, float &value, float defaultValue )
|
|||||||
file.
|
file.
|
||||||
|
|
||||||
\param[in] key name of entry
|
\param[in] key name of entry
|
||||||
\param[in] value set this entry to \a value
|
\param[in] value set this entry to \p value
|
||||||
\return 0 if setting the value failed
|
\return 0 if setting the value failed
|
||||||
*/
|
*/
|
||||||
char Fl_Preferences::set( const char *key, float value )
|
char Fl_Preferences::set( const char *key, float value )
|
||||||
@@ -339,7 +339,7 @@ char Fl_Preferences::set( const char *key, float value )
|
|||||||
file.
|
file.
|
||||||
|
|
||||||
\param[in] key name of entry
|
\param[in] key name of entry
|
||||||
\param[in] value set this entry to \a value
|
\param[in] value set this entry to \p value
|
||||||
\param[in] precision number of decimal digits to represent value
|
\param[in] precision number of decimal digits to represent value
|
||||||
\return 0 if setting the value failed
|
\return 0 if setting the value failed
|
||||||
*/
|
*/
|
||||||
@@ -376,7 +376,7 @@ char Fl_Preferences::get( const char *key, double &value, double defaultValue )
|
|||||||
file.
|
file.
|
||||||
|
|
||||||
\param[in] key name of entry
|
\param[in] key name of entry
|
||||||
\param[in] value set this entry to \a value
|
\param[in] value set this entry to \p value
|
||||||
\return 0 if setting the value failed
|
\return 0 if setting the value failed
|
||||||
*/
|
*/
|
||||||
char Fl_Preferences::set( const char *key, double value )
|
char Fl_Preferences::set( const char *key, double value )
|
||||||
@@ -394,7 +394,7 @@ char Fl_Preferences::set( const char *key, double value )
|
|||||||
file.
|
file.
|
||||||
|
|
||||||
\param[in] key name of entry
|
\param[in] key name of entry
|
||||||
\param[in] value set this entry to \a value
|
\param[in] value set this entry to \p value
|
||||||
\param[in] precision number of decimal digits to represent value
|
\param[in] precision number of decimal digits to represent value
|
||||||
\return 0 if setting the value failed
|
\return 0 if setting the value failed
|
||||||
*/
|
*/
|
||||||
@@ -502,7 +502,7 @@ char Fl_Preferences::get( const char *key, char *&text, const char *defaultValue
|
|||||||
file.
|
file.
|
||||||
|
|
||||||
\param[in] key name of entry
|
\param[in] key name of entry
|
||||||
\param[in] text set this entry to \a value
|
\param[in] text set this entry to \p value
|
||||||
\return 0 if setting the value failed
|
\return 0 if setting the value failed
|
||||||
*/
|
*/
|
||||||
char Fl_Preferences::set( const char *key, const char *text )
|
char Fl_Preferences::set( const char *key, const char *text )
|
||||||
@@ -628,7 +628,7 @@ char Fl_Preferences::get( const char *key, void *&data, const void *defaultValue
|
|||||||
file.
|
file.
|
||||||
|
|
||||||
\param[in] key name of entry
|
\param[in] key name of entry
|
||||||
\param[in] data set this entry to \a value
|
\param[in] data set this entry to \p value
|
||||||
\param[in] dsize size of data array
|
\param[in] dsize size of data array
|
||||||
\return 0 if setting the value failed
|
\return 0 if setting the value failed
|
||||||
*/
|
*/
|
||||||
|
|||||||
+79
-79
@@ -218,9 +218,9 @@ void Fl_Text_Buffer::text(const char *t) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Return a copy of the text between \a start and \a end character positions
|
Return a copy of the text between \p start and \p end character positions
|
||||||
from text buffer \a buf. Positions start at 0, and the range does not
|
from text buffer \p buf. Positions start at 0, and the range does not
|
||||||
include the character pointed to by \a end.
|
include the character pointed to by \p end.
|
||||||
When you are done with the text, free it using the free() function.
|
When you are done with the text, free it using the free() function.
|
||||||
*/
|
*/
|
||||||
char * Fl_Text_Buffer::text_range(int start, int end) {
|
char * Fl_Text_Buffer::text_range(int start, int end) {
|
||||||
@@ -269,7 +269,7 @@ char Fl_Text_Buffer::character(int pos) {
|
|||||||
return mBuf[ pos + mGapEnd - mGapStart ];
|
return mBuf[ pos + mGapEnd - mGapStart ];
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Inserts null-terminated string \a text at position \a pos. */
|
/** Inserts null-terminated string \p text at position \p pos. */
|
||||||
void Fl_Text_Buffer::insert(int pos, const char *text) {
|
void Fl_Text_Buffer::insert(int pos, const char *text) {
|
||||||
int nInserted;
|
int nInserted;
|
||||||
|
|
||||||
@@ -287,7 +287,7 @@ void Fl_Text_Buffer::insert(int pos, const char *text) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Deletes the characters between \a start and \a end, and inserts the null-terminated string \a text in their place in the buffer.
|
Deletes the characters between \p start and \p end, and inserts the null-terminated string \p text in their place in the buffer.
|
||||||
*/
|
*/
|
||||||
void Fl_Text_Buffer::replace(int start, int end, const char *text) {
|
void Fl_Text_Buffer::replace(int start, int end, const char *text) {
|
||||||
const char * deletedText;
|
const char * deletedText;
|
||||||
@@ -415,12 +415,12 @@ void Fl_Text_Buffer::canUndo(char flag) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Insert \a s columnwise into buffer starting at displayed character
|
Insert \p s columnwise into buffer starting at displayed character
|
||||||
position \a column on the line beginning at \a startPos. Opens a rectangular
|
position \p column on the line beginning at \p startPos. Opens a rectangular
|
||||||
space the width and height of \a s, by moving all text to the right of
|
space the width and height of \p s, by moving all text to the right of
|
||||||
\a column right. If \a charsInserted and \a charsDeleted are not NULL, the
|
\p column right. If \p charsInserted and \p charsDeleted are not NULL, the
|
||||||
number of characters inserted and deleted in the operation (beginning
|
number of characters inserted and deleted in the operation (beginning
|
||||||
at \a startPos) are returned in these arguments.
|
at \p startPos) are returned in these arguments.
|
||||||
*/
|
*/
|
||||||
void Fl_Text_Buffer::insert_column(int column, int startPos, const char *text,
|
void Fl_Text_Buffer::insert_column(int column, int startPos, const char *text,
|
||||||
int *charsInserted, int *charsDeleted) {
|
int *charsInserted, int *charsDeleted) {
|
||||||
@@ -446,10 +446,10 @@ void Fl_Text_Buffer::insert_column(int column, int startPos, const char *text,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Overlay \a text between displayed character positions \a rectStart and
|
Overlay \p text between displayed character positions \p rectStart and
|
||||||
\a rectEnd on the line beginning at \a startPos. If \a charsInserted and
|
\p rectEnd on the line beginning at \p startPos. If \p charsInserted and
|
||||||
\a charsDeleted are not NULL, the number of characters inserted and deleted
|
\p charsDeleted are not NULL, the number of characters inserted and deleted
|
||||||
in the operation (beginning at \a startPos) are returned in these arguments.
|
in the operation (beginning at \p startPos) are returned in these arguments.
|
||||||
*/
|
*/
|
||||||
void Fl_Text_Buffer::overlay_rectangular(int startPos, int rectStart,
|
void Fl_Text_Buffer::overlay_rectangular(int startPos, int rectStart,
|
||||||
int rectEnd, const char *text, int *charsInserted, int *charsDeleted) {
|
int rectEnd, const char *text, int *charsInserted, int *charsDeleted) {
|
||||||
@@ -475,8 +475,8 @@ void Fl_Text_Buffer::overlay_rectangular(int startPos, int rectStart,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Replaces a rectangular area in the buffer, given by \a start, \a end,
|
Replaces a rectangular area in the buffer, given by \p start, \p end,
|
||||||
\a rectStart, and \a rectEnd, with \a text. If \a text is vertically
|
\p rectStart, and \p rectEnd, with \p text. If \p text is vertically
|
||||||
longer than the rectangle, add extra lines to make room for it.
|
longer than the rectangle, add extra lines to make room for it.
|
||||||
*/
|
*/
|
||||||
void Fl_Text_Buffer::replace_rectangular(int start, int end, int rectStart,
|
void Fl_Text_Buffer::replace_rectangular(int start, int end, int rectStart,
|
||||||
@@ -731,7 +731,7 @@ void Fl_Text_Buffer::remove_secondary_selection() {
|
|||||||
remove_selection_(&mSecondary);
|
remove_selection_(&mSecondary);
|
||||||
}
|
}
|
||||||
/** Replaces the text from the buffer corresponding to the secondary
|
/** Replaces the text from the buffer corresponding to the secondary
|
||||||
text selection object with the new string \a text.*/
|
text selection object with the new string \p text.*/
|
||||||
void Fl_Text_Buffer::replace_secondary_selection(const char *text) {
|
void Fl_Text_Buffer::replace_secondary_selection(const char *text) {
|
||||||
replace_selection_(&mSecondary, text);
|
replace_selection_(&mSecondary, text);
|
||||||
}
|
}
|
||||||
@@ -759,7 +759,7 @@ void Fl_Text_Buffer::highlight_rectangular(int start, int end,
|
|||||||
mHighlight.set_rectangular(start, end, rectStart, rectEnd);
|
mHighlight.set_rectangular(start, end, rectStart, rectEnd);
|
||||||
redisplay_selection(&oldSelection, &mHighlight);
|
redisplay_selection(&oldSelection, &mHighlight);
|
||||||
}
|
}
|
||||||
/** Highlights the specified text between \a start and \a end within the buffer.*/
|
/** Highlights the specified text between \p start and \p end within the buffer.*/
|
||||||
int Fl_Text_Buffer::highlight_position(int *start, int *end
|
int Fl_Text_Buffer::highlight_position(int *start, int *end
|
||||||
) {
|
) {
|
||||||
return mHighlight.position(start, end);
|
return mHighlight.position(start, end);
|
||||||
@@ -882,7 +882,7 @@ void Fl_Text_Buffer::add_predelete_callback(Fl_Text_Predelete_Cb bufPreDeleteCB,
|
|||||||
mPredeleteProcs = newPreDeleteProcs;
|
mPredeleteProcs = newPreDeleteProcs;
|
||||||
mPredeleteCbArgs = newCBArgs;
|
mPredeleteCbArgs = newCBArgs;
|
||||||
}
|
}
|
||||||
/** Removes a callback routine \a bufPreDeleteCB associated with argument \a cbArg
|
/** Removes a callback routine \p bufPreDeleteCB associated with argument \p cbArg
|
||||||
to be called before text is deleted from the buffer. */
|
to be called before text is deleted from the buffer. */
|
||||||
void Fl_Text_Buffer::remove_predelete_callback(
|
void Fl_Text_Buffer::remove_predelete_callback(
|
||||||
Fl_Text_Predelete_Cb bufPreDeleteCB, void *cbArg) {
|
Fl_Text_Predelete_Cb bufPreDeleteCB, void *cbArg) {
|
||||||
@@ -941,14 +941,14 @@ char * Fl_Text_Buffer::line_text(int pos) {
|
|||||||
return text_range(line_start(pos), line_end(pos));
|
return text_range(line_start(pos), line_end(pos));
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Returns the position of the start of the line containing position \a pos. */
|
/** Returns the position of the start of the line containing position \p pos. */
|
||||||
int Fl_Text_Buffer::line_start(int pos) {
|
int Fl_Text_Buffer::line_start(int pos) {
|
||||||
if (!findchar_backward(pos, '\n', &pos))
|
if (!findchar_backward(pos, '\n', &pos))
|
||||||
return 0;
|
return 0;
|
||||||
return pos + 1;
|
return pos + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Finds and returns the position of the end of the line containing position \a pos
|
/** Finds and returns the position of the end of the line containing position \p pos
|
||||||
(which is either a pointer to the newline character ending the line,
|
(which is either a pointer to the newline character ending the line,
|
||||||
or a pointer to one character beyond the end of the buffer)
|
or a pointer to one character beyond the end of the buffer)
|
||||||
*/
|
*/
|
||||||
@@ -979,8 +979,8 @@ int Fl_Text_Buffer::word_end(int pos) {
|
|||||||
other control characters are given special treatment.
|
other control characters are given special treatment.
|
||||||
Get a character from the text buffer expanded into its screen
|
Get a character from the text buffer expanded into its screen
|
||||||
representation (which may be several characters for a tab or a
|
representation (which may be several characters for a tab or a
|
||||||
control code). Returns the number of characters written to \a outStr.
|
control code). Returns the number of characters written to \p outStr.
|
||||||
\a indent is the number of characters from the start of the line
|
\p indent is the number of characters from the start of the line
|
||||||
for figuring tabs. Output string is guranteed to be shorter or
|
for figuring tabs. Output string is guranteed to be shorter or
|
||||||
equal in length to FL_TEXT_MAX_EXP_CHAR_LEN
|
equal in length to FL_TEXT_MAX_EXP_CHAR_LEN
|
||||||
*/
|
*/
|
||||||
@@ -1004,14 +1004,14 @@ int Fl_Text_Buffer::expand_character(int pos, int indent, char *outStr) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Expand a single character \a c from the text buffer into it's displayable
|
Expand a single character \p c from the text buffer into it's displayable
|
||||||
screen representation (which may be several characters for a tab or a
|
screen representation (which may be several characters for a tab or a
|
||||||
control code). Returns the number of characters added to \a outStr.
|
control code). Returns the number of characters added to \p outStr.
|
||||||
\a indent is the number of characters from the start of the line
|
\p indent is the number of characters from the start of the line
|
||||||
for figuring tabs of length \a tabDist. Output string is guaranteed
|
for figuring tabs of length \p tabDist. Output string is guaranteed
|
||||||
to be shorter or equal in length to FL_TEXT_MAX_EXP_CHAR_LEN
|
to be shorter or equal in length to FL_TEXT_MAX_EXP_CHAR_LEN
|
||||||
Tabs and other control characters are given special treatment.
|
Tabs and other control characters are given special treatment.
|
||||||
\a nulSubsChar represent the null character to be transformed in \<nul\>
|
\p nulSubsChar represent the null character to be transformed in \<nul\>
|
||||||
*/
|
*/
|
||||||
int Fl_Text_Buffer::expand_character(char c, int indent, char *outStr, int tabDist,
|
int Fl_Text_Buffer::expand_character(char c, int indent, char *outStr, int tabDist,
|
||||||
char nullSubsChar) {
|
char nullSubsChar) {
|
||||||
@@ -1049,7 +1049,7 @@ int Fl_Text_Buffer::expand_character(char c, int indent, char *outStr, int tabDi
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Return the length in displayed characters of character \a c expanded
|
Return the length in displayed characters of character \p c expanded
|
||||||
for display (as discussed above in expand_character() ). If the
|
for display (as discussed above in expand_character() ). If the
|
||||||
buffer for which the character width is being measured is doing null
|
buffer for which the character width is being measured is doing null
|
||||||
substitution, nullSubsChar should be passed as that character (or nul
|
substitution, nullSubsChar should be passed as that character (or nul
|
||||||
@@ -1075,7 +1075,7 @@ int Fl_Text_Buffer::character_width(char c, int indent, int tabDist, char nullSu
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Count the number of displayed characters between buffer position
|
Count the number of displayed characters between buffer position
|
||||||
\a lineStartPos and \a targetPos. (displayed characters are the characters
|
\p lineStartPos and \p targetPos. (displayed characters are the characters
|
||||||
shown on the screen to represent characters in the buffer, where tabs and
|
shown on the screen to represent characters in the buffer, where tabs and
|
||||||
control characters are expanded)
|
control characters are expanded)
|
||||||
*/
|
*/
|
||||||
@@ -1090,7 +1090,7 @@ int Fl_Text_Buffer::count_displayed_characters(int lineStartPos, int targetPos)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Count forward from buffer position \a startPos in displayed characters
|
Count forward from buffer position \p startPos in displayed characters
|
||||||
(displayed characters are the characters shown on the screen to represent
|
(displayed characters are the characters shown on the screen to represent
|
||||||
characters in the buffer, where tabs and control characters are expanded)
|
characters in the buffer, where tabs and control characters are expanded)
|
||||||
*/
|
*/
|
||||||
@@ -1110,8 +1110,8 @@ int Fl_Text_Buffer::skip_displayed_characters(int lineStartPos, int nChars) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Counts the number of newlines between \a startPos and \a endPos in buffer.
|
Counts the number of newlines between \p startPos and \p endPos in buffer.
|
||||||
The character at position \a endPos is not counted.
|
The character at position \p endPos is not counted.
|
||||||
*/
|
*/
|
||||||
int Fl_Text_Buffer::count_lines(int startPos, int endPos) {
|
int Fl_Text_Buffer::count_lines(int startPos, int endPos) {
|
||||||
int pos, gapLen = mGapEnd - mGapStart;
|
int pos, gapLen = mGapEnd - mGapStart;
|
||||||
@@ -1134,7 +1134,7 @@ int Fl_Text_Buffer::count_lines(int startPos, int endPos) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Finds the first character of the line \a nLines forward from \a startPos
|
Finds the first character of the line \p nLines forward from \p startPos
|
||||||
in the buffer and returns its position
|
in the buffer and returns its position
|
||||||
*/
|
*/
|
||||||
int Fl_Text_Buffer::skip_lines(int startPos, int nLines) {
|
int Fl_Text_Buffer::skip_lines(int startPos, int nLines) {
|
||||||
@@ -1163,9 +1163,9 @@ int Fl_Text_Buffer::skip_lines(int startPos, int nLines) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Finds and returns the position of the first character of the line \a nLines backwards
|
Finds and returns the position of the first character of the line \p nLines backwards
|
||||||
from \a startPos (not counting the character pointed to by \a startpos if
|
from \p startPos (not counting the character pointed to by \p startpos if
|
||||||
that is a newline) in the buffer. \a nLines == 0 means find the beginning of the line
|
that is a newline) in the buffer. \p nLines == 0 means find the beginning of the line
|
||||||
*/
|
*/
|
||||||
int Fl_Text_Buffer::rewind_lines(int startPos, int nLines) {
|
int Fl_Text_Buffer::rewind_lines(int startPos, int nLines) {
|
||||||
int pos, gapLen = mGapEnd - mGapStart;
|
int pos, gapLen = mGapEnd - mGapStart;
|
||||||
@@ -1193,8 +1193,8 @@ int Fl_Text_Buffer::rewind_lines(int startPos, int nLines) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Search forwards in buffer for string \a searchString, starting with the
|
Search forwards in buffer for string \p searchString, starting with the
|
||||||
character \a startPos, and returning the result in \a foundPos
|
character \p startPos, and returning the result in \p foundPos
|
||||||
returns 1 if found, 0 if not.
|
returns 1 if found, 0 if not.
|
||||||
*/
|
*/
|
||||||
int Fl_Text_Buffer::search_forward(int startPos, const char *searchString,
|
int Fl_Text_Buffer::search_forward(int startPos, const char *searchString,
|
||||||
@@ -1218,7 +1218,7 @@ int Fl_Text_Buffer::search_forward(int startPos, const char *searchString,
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Search backwards in buffer for string <i>searchCharssearchString</i>, starting with the
|
Search backwards in buffer for string <i>searchCharssearchString</i>, starting with the
|
||||||
character BEFORE \a startPos, returning the result in \a foundPos
|
character BEFORE \p startPos, returning the result in \p foundPos
|
||||||
returns 1 if found, 0 if not.
|
returns 1 if found, 0 if not.
|
||||||
*/
|
*/
|
||||||
int Fl_Text_Buffer::search_backward(int startPos, const char *searchString,
|
int Fl_Text_Buffer::search_backward(int startPos, const char *searchString,
|
||||||
@@ -1242,8 +1242,8 @@ int Fl_Text_Buffer::search_backward(int startPos, const char *searchString,
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Finds the next occurrence of the specified characters.
|
Finds the next occurrence of the specified characters.
|
||||||
Search forwards in buffer for characters in \a searchChars, starting
|
Search forwards in buffer for characters in \p searchChars, starting
|
||||||
with the character \a startPos, and returning the result in \a foundPos
|
with the character \p startPos, and returning the result in \p foundPos
|
||||||
returns 1 if found, 0 if not.
|
returns 1 if found, 0 if not.
|
||||||
*/
|
*/
|
||||||
int Fl_Text_Buffer::findchars_forward(int startPos, const char *searchChars,
|
int Fl_Text_Buffer::findchars_forward(int startPos, const char *searchChars,
|
||||||
@@ -1276,8 +1276,8 @@ int Fl_Text_Buffer::findchars_forward(int startPos, const char *searchChars,
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Finds the previous occurrence of the specified characters.
|
Finds the previous occurrence of the specified characters.
|
||||||
Search backwards in buffer for characters in \a searchChars, starting
|
Search backwards in buffer for characters in \p searchChars, starting
|
||||||
with the character BEFORE \a startPos, returning the result in \a foundPos
|
with the character BEFORE \p startPos, returning the result in \p foundPos
|
||||||
returns 1 if found, 0 if not.
|
returns 1 if found, 0 if not.
|
||||||
*/
|
*/
|
||||||
int Fl_Text_Buffer::findchars_backward(int startPos, const char *searchChars,
|
int Fl_Text_Buffer::findchars_backward(int startPos, const char *searchChars,
|
||||||
@@ -1427,9 +1427,9 @@ static char chooseNullSubsChar(char hist[ 256 ]) {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Internal (non-redisplaying) version of BufInsert. Returns the length of
|
Internal (non-redisplaying) version of BufInsert. Returns the length of
|
||||||
text inserted (this is just strlen(\a text), however this calculation can be
|
text inserted (this is just strlen(\p text), however this calculation can be
|
||||||
expensive and the length will be required by any caller who will continue
|
expensive and the length will be required by any caller who will continue
|
||||||
on to call redisplay). \a pos must be contiguous with the existing text in
|
on to call redisplay). \p pos must be contiguous with the existing text in
|
||||||
the buffer (i.e. not past the end).
|
the buffer (i.e. not past the end).
|
||||||
*/
|
*/
|
||||||
int Fl_Text_Buffer::insert_(int pos, const char *text) {
|
int Fl_Text_Buffer::insert_(int pos, const char *text) {
|
||||||
@@ -1523,9 +1523,9 @@ void Fl_Text_Buffer::remove_(int start, int end) {
|
|||||||
/**
|
/**
|
||||||
Inserts a column of text without calling the modify callbacks. Note that
|
Inserts a column of text without calling the modify callbacks. Note that
|
||||||
in some pathological cases, inserting can actually decrease the size of
|
in some pathological cases, inserting can actually decrease the size of
|
||||||
the buffer because of spaces being coalesced into tabs. \a nDeleted and
|
the buffer because of spaces being coalesced into tabs. \p nDeleted and
|
||||||
\a nInserted return the number of characters deleted and inserted beginning
|
\p nInserted return the number of characters deleted and inserted beginning
|
||||||
at the start of the line containing \a startPos. \a endPos returns buffer
|
at the start of the line containing \p startPos. \p endPos returns buffer
|
||||||
position of the lower left edge of the inserted column (as a hint for
|
position of the lower left edge of the inserted column (as a hint for
|
||||||
routines which need to set a cursor position).
|
routines which need to set a cursor position).
|
||||||
*/
|
*/
|
||||||
@@ -1606,9 +1606,9 @@ void Fl_Text_Buffer::insert_column_(int column, int startPos, const char *insTex
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Deletes a rectangle of text without calling the modify callbacks. Returns
|
Deletes a rectangle of text without calling the modify callbacks. Returns
|
||||||
the number of characters replacing those between \a start and \a end. Note that
|
the number of characters replacing those between \p start and \p end. Note that
|
||||||
in some pathological cases, deleting can actually increase the size of
|
in some pathological cases, deleting can actually increase the size of
|
||||||
the buffer because of tab expansions. \a endPos returns the buffer position
|
the buffer because of tab expansions. \p endPos returns the buffer position
|
||||||
of the point in the last line where the text was removed (as a hint for
|
of the point in the last line where the text was removed (as a hint for
|
||||||
routines which need to position the cursor after a delete operation)
|
routines which need to position the cursor after a delete operation)
|
||||||
*/
|
*/
|
||||||
@@ -1660,9 +1660,9 @@ void Fl_Text_Buffer::remove_rectangular_(int start, int end, int rectStart,
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Overlay a rectangular area of text without calling the modify callbacks.
|
Overlay a rectangular area of text without calling the modify callbacks.
|
||||||
\a nDeleted and \a nInserted return the number of characters deleted and
|
\p nDeleted and \p nInserted return the number of characters deleted and
|
||||||
inserted beginning at the start of the line containing \a startPos.
|
inserted beginning at the start of the line containing \p startPos.
|
||||||
\a endPos returns buffer position of the lower left edge of the inserted
|
\p endPos returns buffer position of the lower left edge of the inserted
|
||||||
column (as a hint for routines which need to set a cursor position).
|
column (as a hint for routines which need to set a cursor position).
|
||||||
*/
|
*/
|
||||||
void Fl_Text_Buffer::overlay_rectangular_(int startPos, int rectStart,
|
void Fl_Text_Buffer::overlay_rectangular_(int startPos, int rectStart,
|
||||||
@@ -1732,9 +1732,9 @@ void Fl_Text_Buffer::overlay_rectangular_(int startPos, int rectStart,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Inserts characters from single-line string \a insLine in single-line string
|
Inserts characters from single-line string \p insLine in single-line string
|
||||||
\a line at \a column, leaving \a insWidth space before continuing line.
|
\p line at \p column, leaving \p insWidth space before continuing line.
|
||||||
\a outLen returns the number of characters written to \a outStr, \a endOffset
|
\p outLen returns the number of characters written to \p outStr, \p endOffset
|
||||||
returns the number of characters from the beginning of the string to
|
returns the number of characters from the beginning of the string to
|
||||||
the right edge of the inserted text (as a hint for routines which need
|
the right edge of the inserted text (as a hint for routines which need
|
||||||
to position the cursor).
|
to position the cursor).
|
||||||
@@ -1821,11 +1821,11 @@ static void insertColInLine(const char *line, char *insLine, int column, int ins
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Removes characters in single-line string \a line between displayed positions
|
Removes characters in single-line string \p line between displayed positions
|
||||||
\a rectStart and \a rectEnd, and write the result to \a outStr, which is
|
\p rectStart and \p rectEnd, and write the result to \p outStr, which is
|
||||||
assumed to be large enough to hold the returned string. Note that in
|
assumed to be large enough to hold the returned string. Note that in
|
||||||
certain cases, it is possible for the string to get longer due to
|
certain cases, it is possible for the string to get longer due to
|
||||||
expansion of tabs. \a endOffset returns the number of characters from
|
expansion of tabs. \p endOffset returns the number of characters from
|
||||||
the beginning of the string to the point where the characters were
|
the beginning of the string to the point where the characters were
|
||||||
deleted (as a hint for routines which need to position the cursor).
|
deleted (as a hint for routines which need to position the cursor).
|
||||||
*/
|
*/
|
||||||
@@ -1881,9 +1881,9 @@ static void deleteRectFromLine(const char *line, int rectStart, int rectEnd,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Overlay characters from single-line string \a insLine on single-line string
|
Overlay characters from single-line string \p insLine on single-line string
|
||||||
\a line between displayed character offsets \a rectStart and \a rectEnd.
|
\p line between displayed character offsets \p rectStart and \p rectEnd.
|
||||||
\a outLen returns the number of characters written to \a outStr, \a endOffset
|
\p outLen returns the number of characters written to \p outStr, \p endOffset
|
||||||
returns the number of characters from the beginning of the string to
|
returns the number of characters from the beginning of the string to
|
||||||
the right edge of the inserted text (as a hint for routines which need
|
the right edge of the inserted text (as a hint for routines which need
|
||||||
to position the cursor).
|
to position the cursor).
|
||||||
@@ -2020,7 +2020,7 @@ int Fl_Text_Selection::position(int *startpos, int *endpos,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Return true if position \a pos with indentation \a dispIndex is in
|
Return true if position \p pos with indentation \p dispIndex is in
|
||||||
the Fl_Text_Selection.
|
the Fl_Text_Selection.
|
||||||
*/
|
*/
|
||||||
int Fl_Text_Selection::includes(int pos, int lineStartPos, int dispIndex) {
|
int Fl_Text_Selection::includes(int pos, int lineStartPos, int dispIndex) {
|
||||||
@@ -2050,7 +2050,7 @@ char * Fl_Text_Buffer::selection_text_(Fl_Text_Selection *sel) {
|
|||||||
else
|
else
|
||||||
return text_range(start, end);
|
return text_range(start, end);
|
||||||
}
|
}
|
||||||
/** Removes the text from the buffer corresponding to \a sel.*/
|
/** Removes the text from the buffer corresponding to \p sel.*/
|
||||||
void Fl_Text_Buffer::remove_selection_(Fl_Text_Selection *sel) {
|
void Fl_Text_Buffer::remove_selection_(Fl_Text_Selection *sel) {
|
||||||
int start, end;
|
int start, end;
|
||||||
int isRect, rectStart, rectEnd;
|
int isRect, rectStart, rectEnd;
|
||||||
@@ -2065,7 +2065,7 @@ void Fl_Text_Buffer::remove_selection_(Fl_Text_Selection *sel) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Replaces the \a text in selection \a sel.*/
|
/** Replaces the \p text in selection \p sel.*/
|
||||||
|
|
||||||
void Fl_Text_Buffer::replace_selection_(Fl_Text_Selection *sel, const char *text) {
|
void Fl_Text_Buffer::replace_selection_(Fl_Text_Selection *sel, const char *text) {
|
||||||
int start, end, isRect, rectStart, rectEnd;
|
int start, end, isRect, rectStart, rectEnd;
|
||||||
@@ -2217,8 +2217,8 @@ void Fl_Text_Buffer::move_gap(int pos) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Reallocates the text storage in the buffer to have a gap starting at \a newGapStart
|
Reallocates the text storage in the buffer to have a gap starting at \p newGapStart
|
||||||
and a gap size of \a newGapLen, preserving the buffer's current contents.
|
and a gap size of \p newGapLen, preserving the buffer's current contents.
|
||||||
*/
|
*/
|
||||||
void Fl_Text_Buffer::reallocate_with_gap(int newGapStart, int newGapLen) {
|
void Fl_Text_Buffer::reallocate_with_gap(int newGapStart, int newGapLen) {
|
||||||
char * newBuf;
|
char * newBuf;
|
||||||
@@ -2285,8 +2285,8 @@ void Fl_Text_Selection::update(int pos, int nDeleted,
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Finds the next occurrence of the specified character.
|
Finds the next occurrence of the specified character.
|
||||||
Search forwards in buffer for character \a searchChar, starting
|
Search forwards in buffer for character \p searchChar, starting
|
||||||
with the character \a startPos, and returning the result in \a foundPos
|
with the character \p startPos, and returning the result in \p foundPos
|
||||||
returns 1 if found, 0 if not. (The difference between this and
|
returns 1 if found, 0 if not. (The difference between this and
|
||||||
BufSearchForward is that it's optimized for single characters. The
|
BufSearchForward is that it's optimized for single characters. The
|
||||||
overall performance of the text widget is dependent on its ability to
|
overall performance of the text widget is dependent on its ability to
|
||||||
@@ -2321,8 +2321,8 @@ int Fl_Text_Buffer::findchar_forward(int startPos, char searchChar,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Search backwards in buffer \a buf for character \a searchChar, starting
|
Search backwards in buffer \p buf for character \p searchChar, starting
|
||||||
with the character BEFORE \a startPos, returning the result in \a foundPos
|
with the character BEFORE \p startPos, returning the result in \p foundPos
|
||||||
returns 1 if found, 0 if not. (The difference between this and
|
returns 1 if found, 0 if not. (The difference between this and
|
||||||
BufSearchBackward is that it's optimized for single characters. The
|
BufSearchBackward is that it's optimized for single characters. The
|
||||||
overall performance of the text widget is dependent on its ability to
|
overall performance of the text widget is dependent on its ability to
|
||||||
@@ -2356,9 +2356,9 @@ int Fl_Text_Buffer::findchar_backward(int startPos, char searchChar,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Copies from \a text to end up to but not including newline (or end of \a text)
|
Copies from \p text to end up to but not including newline (or end of \p text)
|
||||||
and return the copy as the function value, and the length of the line in
|
and return the copy as the function value, and the length of the line in
|
||||||
\a lineLen
|
\p lineLen
|
||||||
*/
|
*/
|
||||||
static char *copyLine(const char *text, int *lineLen) {
|
static char *copyLine(const char *text, int *lineLen) {
|
||||||
int len = 0;
|
int len = 0;
|
||||||
@@ -2386,7 +2386,7 @@ static int countLines(const char *string) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Measures the width in displayed characters of string \a text
|
Measures the width in displayed characters of string \p text
|
||||||
*/
|
*/
|
||||||
static int textWidth(const char *text, int tabDist, char nullSubsChar) {
|
static int textWidth(const char *text, int tabDist, char nullSubsChar) {
|
||||||
int width = 0, maxWidth = 0;
|
int width = 0, maxWidth = 0;
|
||||||
@@ -2458,9 +2458,9 @@ void Fl_Text_Buffer::rectangular_selection_boundaries(int lineStartPos,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Adjust the space and tab characters from string \a text so that non-white
|
Adjust the space and tab characters from string \p text so that non-white
|
||||||
characters remain stationary when the text is shifted from starting at
|
characters remain stationary when the text is shifted from starting at
|
||||||
\a origIndent to starting at \a newIndent. Returns an allocated string
|
\p origIndent to starting at \p newIndent. Returns an allocated string
|
||||||
which must be freed by the caller with XtFree.
|
which must be freed by the caller with XtFree.
|
||||||
*/
|
*/
|
||||||
static char *realignTabs(const char *text, int origIndent, int newIndent,
|
static char *realignTabs(const char *text, int origIndent, int newIndent,
|
||||||
@@ -2491,8 +2491,8 @@ static char *realignTabs(const char *text, int origIndent, int newIndent,
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
Expand tabs to spaces for a block of text. The additional parameter
|
Expand tabs to spaces for a block of text. The additional parameter
|
||||||
\a startIndent if nonzero, indicates that the text is a rectangular selection
|
\p startIndent if nonzero, indicates that the text is a rectangular selection
|
||||||
beginning at column \a startIndent
|
beginning at column \p startIndent
|
||||||
*/
|
*/
|
||||||
static char *expandTabs(const char *text, int startIndent, int tabDist,
|
static char *expandTabs(const char *text, int startIndent, int tabDist,
|
||||||
char nullSubsChar, int *newLen) {
|
char nullSubsChar, int *newLen) {
|
||||||
|
|||||||
+2
-2
@@ -297,8 +297,8 @@ Fl_Widget::copy_label(const char *a) {
|
|||||||
|
|
||||||
Causes a widget to invoke its callback function with arbitrary arguments.
|
Causes a widget to invoke its callback function with arbitrary arguments.
|
||||||
|
|
||||||
\param[in] o call the callback with \a o as the widget argument
|
\param[in] o call the callback with \p o as the widget argument
|
||||||
\param[in] arg use \a arg as the user data argument
|
\param[in] arg use \p arg as the user data argument
|
||||||
\see callback()
|
\see callback()
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
|
|||||||
@@ -30,7 +30,7 @@
|
|||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Checks if a string \a s matches a pattern \a p.
|
Checks if a string \p s matches a pattern \p p.
|
||||||
The following syntax is used for the pattern:
|
The following syntax is used for the pattern:
|
||||||
- * matches any sequence of 0 or more characters.
|
- * matches any sequence of 0 or more characters.
|
||||||
- ? matches any single character.
|
- ? matches any single character.
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
#include "flstring.h"
|
#include "flstring.h"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Replaces the extension in \a buf of max. size \a buflen with the extension in \a ext.
|
Replaces the extension in \p buf of max. size \p buflen with the extension in \p ext.
|
||||||
\return buf itself for calling convenience.
|
\return buf itself for calling convenience.
|
||||||
*/
|
*/
|
||||||
char *fl_filename_setext(char *buf, int buflen, const char *ext) {
|
char *fl_filename_setext(char *buf, int buflen, const char *ext) {
|
||||||
|
|||||||
+1
-1
@@ -48,7 +48,7 @@ static double _fl_hypot(double x, double y) {
|
|||||||
can get elliptical paths by using scale and rotate before calling fl_arc().
|
can get elliptical paths by using scale and rotate before calling fl_arc().
|
||||||
\param[in] x,y,r center and radius of circular arc
|
\param[in] x,y,r center and radius of circular arc
|
||||||
\param[in] start,end angles of start and end of arc measured in degrees
|
\param[in] start,end angles of start and end of arc measured in degrees
|
||||||
counter-clockwise from 3 o'clock. If \a end is less than \a start
|
counter-clockwise from 3 o'clock. If \p end is less than \p start
|
||||||
then it draws the arc in a clockwise direction.
|
then it draws the arc in a clockwise direction.
|
||||||
*/
|
*/
|
||||||
void fl_arc(double x, double y, double r, double start, double end) {
|
void fl_arc(double x, double y, double r, double start, double end) {
|
||||||
|
|||||||
+6
-6
@@ -57,8 +57,8 @@
|
|||||||
|
|
||||||
If a complete circle is drawn it will fit inside the passed bounding box.
|
If a complete circle is drawn it will fit inside the passed bounding box.
|
||||||
The two angles are measured in degrees counterclockwise from 3 o'clock and
|
The two angles are measured in degrees counterclockwise from 3 o'clock and
|
||||||
are the starting and ending angle of the arc, \a a2 must be greater or equal
|
are the starting and ending angle of the arc, \p a2 must be greater or equal
|
||||||
to \a a1.
|
to \p a1.
|
||||||
|
|
||||||
fl_arc() draws a series of lines to approximate the arc. Notice that the
|
fl_arc() draws a series of lines to approximate the arc. Notice that the
|
||||||
integer version of fl_arc() has a different number of arguments than the
|
integer version of fl_arc() has a different number of arguments than the
|
||||||
@@ -66,8 +66,8 @@
|
|||||||
|
|
||||||
\param[in] x,y,w,h bounding box of complete circle
|
\param[in] x,y,w,h bounding box of complete circle
|
||||||
\param[in] a1,a2 start and end angles of arc measured in degrees
|
\param[in] a1,a2 start and end angles of arc measured in degrees
|
||||||
counter-clockwise from 3 o'clock. \a a2 must be greater
|
counter-clockwise from 3 o'clock. \p a2 must be greater
|
||||||
than or equal to \a a1.
|
than or equal to \p a1.
|
||||||
*/
|
*/
|
||||||
void fl_arc(int x,int y,int w,int h,double a1,double a2) {
|
void fl_arc(int x,int y,int w,int h,double a1,double a2) {
|
||||||
if (w <= 0 || h <= 0) return;
|
if (w <= 0 || h <= 0) return;
|
||||||
@@ -111,8 +111,8 @@ void fl_arc(int x,int y,int w,int h,double a1,double a2) {
|
|||||||
|
|
||||||
\param[in] x,y,w,h bounding box of complete circle
|
\param[in] x,y,w,h bounding box of complete circle
|
||||||
\param[in] a1,a2 start and end angles of arc measured in degrees
|
\param[in] a1,a2 start and end angles of arc measured in degrees
|
||||||
counter-clockwise from 3 o'clock. \a a2 must be greater
|
counter-clockwise from 3 o'clock. \p a2 must be greater
|
||||||
than or equal to \a a1.
|
than or equal to \p a1.
|
||||||
*/
|
*/
|
||||||
void fl_pie(int x,int y,int w,int h,double a1,double a2) {
|
void fl_pie(int x,int y,int w,int h,double a1,double a2) {
|
||||||
if (w <= 0 || h <= 0) return;
|
if (w <= 0 || h <= 0) return;
|
||||||
|
|||||||
+7
-7
@@ -317,7 +317,7 @@ void fl_alert(const char *fmt, ...) {
|
|||||||
va_end(ap);
|
va_end(ap);
|
||||||
iconlabel = "?";
|
iconlabel = "?";
|
||||||
}
|
}
|
||||||
/** Shows a dialog displaying the \a fmt message,
|
/** Shows a dialog displaying the \p fmt message,
|
||||||
this dialog features 2 yes/no buttons
|
this dialog features 2 yes/no buttons
|
||||||
\param[in] fmt can be used as an sprintf-like format and variables for the message text
|
\param[in] fmt can be used as an sprintf-like format and variables for the message text
|
||||||
\retval 0 if the no button is selected
|
\retval 0 if the no button is selected
|
||||||
@@ -335,15 +335,15 @@ int fl_ask(const char *fmt, ...) {
|
|||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Shows a dialog displaying the \a fmt message,
|
/** Shows a dialog displaying the \p fmt message,
|
||||||
this dialog features up to 3 customizable choice buttons
|
this dialog features up to 3 customizable choice buttons
|
||||||
\param[in] fmt can be used as an sprintf-like format and variables for the message text
|
\param[in] fmt can be used as an sprintf-like format and variables for the message text
|
||||||
\param[in] b0 text label of button 0
|
\param[in] b0 text label of button 0
|
||||||
\param[in] b1 text label of button 1
|
\param[in] b1 text label of button 1
|
||||||
\param[in] b2 text label of button 2
|
\param[in] b2 text label of button 2
|
||||||
\retval 0 if the first button with \a b0 text is selected
|
\retval 0 if the first button with \p b0 text is selected
|
||||||
\retval 1 if the second button with \a b1 text is selected
|
\retval 1 if the second button with \p b1 text is selected
|
||||||
\retval 2 if the third button with \a b2 text is selected
|
\retval 2 if the third button with \p b2 text is selected
|
||||||
*/
|
*/
|
||||||
int fl_choice(const char*fmt,const char *b0,const char *b1,const char *b2,...){
|
int fl_choice(const char*fmt,const char *b0,const char *b1,const char *b2,...){
|
||||||
va_list ap;
|
va_list ap;
|
||||||
@@ -376,7 +376,7 @@ static const char* input_innards(const char* fmt, va_list ap,
|
|||||||
return r ? input->value() : 0;
|
return r ? input->value() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Shows an input dialog displaying the \a fmt message
|
/** Shows an input dialog displaying the \p fmt message
|
||||||
\param[in] fmt can be used as an sprintf-like format and variables for the message text
|
\param[in] fmt can be used as an sprintf-like format and variables for the message text
|
||||||
\param[in] defstr defines the default returned string if no text is entered
|
\param[in] defstr defines the default returned string if no text is entered
|
||||||
\return the user string input if OK was pushed, NULL if Cancel was pushed
|
\return the user string input if OK was pushed, NULL if Cancel was pushed
|
||||||
@@ -391,7 +391,7 @@ const char* fl_input(const char *fmt, const char *defstr, ...) {
|
|||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Shows an input dialog displaying the \a fmt message.
|
/** Shows an input dialog displaying the \p fmt message.
|
||||||
|
|
||||||
Like fl_input() except the input text is not shown,
|
Like fl_input() except the input text is not shown,
|
||||||
'*' characters are displayed instead.
|
'*' characters are displayed instead.
|
||||||
|
|||||||
+2
-2
@@ -67,7 +67,7 @@ uchar *fl_gray_ramp() {return (draw_it_active?active_ramp:inactive_ramp)-'A';}
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Draws a series of line segments around the given box.
|
Draws a series of line segments around the given box.
|
||||||
The string \a s must contain groups of 4 letters which specify one of 24
|
The string \p s must contain groups of 4 letters which specify one of 24
|
||||||
standard grayscale values, where 'A' is black and 'X' is white.
|
standard grayscale values, where 'A' is black and 'X' is white.
|
||||||
The order of each set of 4 characters is: top, left, bottom, right.
|
The order of each set of 4 characters is: top, left, bottom, right.
|
||||||
The result of calling fl_frame() with a string that is not a multiple
|
The result of calling fl_frame() with a string that is not a multiple
|
||||||
@@ -101,7 +101,7 @@ void fl_frame(const char* s, int x, int y, int w, int h) {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Draws a series of line segments around the given box.
|
Draws a series of line segments around the given box.
|
||||||
The string \a s must contain groups of 4 letters which specify one of 24
|
The string \p s must contain groups of 4 letters which specify one of 24
|
||||||
standard grayscale values, where 'A' is black and 'X' is white.
|
standard grayscale values, where 'A' is black and 'X' is white.
|
||||||
The order of each set of 4 characters is: bottom, right, top, left.
|
The order of each set of 4 characters is: bottom, right, top, left.
|
||||||
The result of calling fl_frame2() with a string that is not a multiple
|
The result of calling fl_frame2() with a string that is not a multiple
|
||||||
|
|||||||
+5
-5
@@ -322,7 +322,7 @@ Fl_Color fl_color_;
|
|||||||
/**
|
/**
|
||||||
Sets the color for all subsequent drawing operations.
|
Sets the color for all subsequent drawing operations.
|
||||||
For colormapped displays, a color cell will be allocated out of
|
For colormapped displays, a color cell will be allocated out of
|
||||||
\a fl_colormap the first time you use a color. If the colormap fills up
|
\p fl_colormap the first time you use a color. If the colormap fills up
|
||||||
then a least-squares algorithm is used to find the closest color.
|
then a least-squares algorithm is used to find the closest color.
|
||||||
If no valid graphical context (fl_gc) is available,
|
If no valid graphical context (fl_gc) is available,
|
||||||
the foreground is not set for the current window.
|
the foreground is not set for the current window.
|
||||||
@@ -340,7 +340,7 @@ void fl_color(Fl_Color i) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Free color \a i if used, and clear mapping table entry.
|
Free color \p i if used, and clear mapping table entry.
|
||||||
\param[in] i color index
|
\param[in] i color index
|
||||||
\param[in] overlay 0 for normal, 1 for overlay color
|
\param[in] overlay 0 for normal, 1 for overlay color
|
||||||
*/
|
*/
|
||||||
@@ -364,7 +364,7 @@ void Fl::free_color(Fl_Color i, int overlay) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Set color mapping table entry \a i to color \a c
|
Set color mapping table entry \p i to color \p c
|
||||||
\param[in] i color index
|
\param[in] i color index
|
||||||
\param[in] c color
|
\param[in] c color
|
||||||
*/
|
*/
|
||||||
@@ -420,7 +420,7 @@ void Fl::get_color(Fl_Color i, uchar &red, uchar &green, uchar &blue) {
|
|||||||
\code
|
\code
|
||||||
color = color1 * weight + color2 * (1 - weight)
|
color = color1 * weight + color2 * (1 - weight)
|
||||||
\endcode
|
\endcode
|
||||||
Thus, a \a weight value of 1.0 will return the first color, while a
|
Thus, a \p weight value of 1.0 will return the first color, while a
|
||||||
value of 0.0 will return the second color.
|
value of 0.0 will return the second color.
|
||||||
\param[in] color1, color2 boundary colors
|
\param[in] color1, color2 boundary colors
|
||||||
\param[in] weight weighting factor
|
\param[in] weight weighting factor
|
||||||
@@ -453,7 +453,7 @@ Fl_Color fl_inactive(Fl_Color c) {
|
|||||||
/**
|
/**
|
||||||
Returns a color that contrasts with the background color.
|
Returns a color that contrasts with the background color.
|
||||||
This will be the foreground color if it contrasts sufficiently with the
|
This will be the foreground color if it contrasts sufficiently with the
|
||||||
background color. Otherwise, returns \a FL_WHITE or \a FL_BLACK depending
|
background color. Otherwise, returns \p FL_WHITE or \p FL_BLACK depending
|
||||||
on which color provides the best contrast.
|
on which color provides the best contrast.
|
||||||
\param[in] fg,bg foreground and background colors
|
\param[in] fg,bg foreground and background colors
|
||||||
\return contrasting color
|
\return contrasting color
|
||||||
|
|||||||
+7
-7
@@ -102,7 +102,7 @@ static bool handle_utf8_seq(const char * &s,char * &d) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Copy \a from to \a buf, replacing unprintable characters with ^X and \\nnn.
|
Copy \p from to \p buf, replacing unprintable characters with ^X and \\nnn.
|
||||||
|
|
||||||
Stop at a newline or if MAXBUF characters written to buffer.
|
Stop at a newline or if MAXBUF characters written to buffer.
|
||||||
Also word-wrap if width exceeds maxw.
|
Also word-wrap if width exceeds maxw.
|
||||||
@@ -178,7 +178,7 @@ fl_expand_text(const char* from, char* buf, int maxbuf, double maxw, int& n,
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
The same as fl_draw(const char*,int,int,int,int,Fl_Align,Fl_Image*,int) with
|
The same as fl_draw(const char*,int,int,int,int,Fl_Align,Fl_Image*,int) with
|
||||||
the addition of the \a callthis parameter, which is a pointer to a text drawing
|
the addition of the \p callthis parameter, which is a pointer to a text drawing
|
||||||
function such as fl_draw(const char*, int, int, int) to do the real work
|
function such as fl_draw(const char*, int, int, int) to do the real work
|
||||||
*/
|
*/
|
||||||
void fl_draw(
|
void fl_draw(
|
||||||
@@ -333,11 +333,11 @@ void fl_draw(
|
|||||||
The string is formatted and aligned inside the passed box.
|
The string is formatted and aligned inside the passed box.
|
||||||
Handles '\\t' and '\\n', expands all other control characters to '^X',
|
Handles '\\t' and '\\n', expands all other control characters to '^X',
|
||||||
and aligns inside or against the edges of the box.
|
and aligns inside or against the edges of the box.
|
||||||
See Fl_Widget::align() for values of \a align. The value FL_ALIGN_INSIDE
|
See Fl_Widget::align() for values of \p align. The value FL_ALIGN_INSIDE
|
||||||
is ignored, as this function always prints inside the box.
|
is ignored, as this function always prints inside the box.
|
||||||
If \a img is provided and is not \a NULL, the image is drawn above or
|
If \p img is provided and is not \p NULL, the image is drawn above or
|
||||||
below the text as specified by the \a align value.
|
below the text as specified by the \p align value.
|
||||||
The \a draw_symbols argument specifies whether or not to look for symbol
|
The \p draw_symbols argument specifies whether or not to look for symbol
|
||||||
names starting with the '\@' character'
|
names starting with the '\@' character'
|
||||||
The text length is limited to 1024 characters per line.
|
The text length is limited to 1024 characters per line.
|
||||||
*/
|
*/
|
||||||
@@ -356,7 +356,7 @@ void fl_draw(
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Measure how wide and tall the string will be when printed by the
|
Measure how wide and tall the string will be when printed by the
|
||||||
fl_draw() function with \a align parameter. If the incoming \a w
|
fl_draw() function with \p align parameter. If the incoming \p w
|
||||||
is non-zero it will wrap to that width.
|
is non-zero it will wrap to that width.
|
||||||
\param[in] str nul-terminated string
|
\param[in] str nul-terminated string
|
||||||
\param[out] w,h width and height of string in current font
|
\param[out] w,h width and height of string in current font
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ void fl_quartz_restore_line_style_() {
|
|||||||
you \e must set the line style \e after setting the drawing
|
you \e must set the line style \e after setting the drawing
|
||||||
color. If you set the color after the line style you will lose
|
color. If you set the color after the line style you will lose
|
||||||
the line style settings.
|
the line style settings.
|
||||||
\note The \a dashes array does not work under Windows 95, 98 or Me,
|
\note The \p dashes array does not work under Windows 95, 98 or Me,
|
||||||
since those operating systems do not support complex line styles.
|
since those operating systems do not support complex line styles.
|
||||||
*/
|
*/
|
||||||
void fl_line_style(int style, int width, char* dashes) {
|
void fl_line_style(int style, int width, char* dashes) {
|
||||||
|
|||||||
+2
-2
@@ -619,11 +619,11 @@ int fl_not_clipped(int x, int y, int w, int h) {
|
|||||||
|
|
||||||
Returns non-zero if the resulting rectangle is different to the original.
|
Returns non-zero if the resulting rectangle is different to the original.
|
||||||
This can be used to limit the necessary drawing to a rectangle.
|
This can be used to limit the necessary drawing to a rectangle.
|
||||||
\a W and \a H are set to zero if the rectangle is completely outside
|
\p W and \p H are set to zero if the rectangle is completely outside
|
||||||
the region.
|
the region.
|
||||||
\param[in] x,y,w,h position and size of rectangle
|
\param[in] x,y,w,h position and size of rectangle
|
||||||
\param[out] X,Y,W,H position and size of resulting bounding box.
|
\param[out] X,Y,W,H position and size of resulting bounding box.
|
||||||
\a W and \a H are set to zero if the rectangle is
|
\p W and \p H are set to zero if the rectangle is
|
||||||
completely outside the region.
|
completely outside the region.
|
||||||
\returns Non-zero if the resulting rectangle is different to the original.
|
\returns Non-zero if the resulting rectangle is different to the original.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -42,8 +42,8 @@
|
|||||||
\param[in] dx,dy pixel offsets for shifting rectangle
|
\param[in] dx,dy pixel offsets for shifting rectangle
|
||||||
\param[in] draw_area callback function to draw rectangular areas
|
\param[in] draw_area callback function to draw rectangular areas
|
||||||
\param[in] data pointer to user data for callback
|
\param[in] data pointer to user data for callback
|
||||||
The contents of the rectangular area is first shifted by \a dx
|
The contents of the rectangular area is first shifted by \p dx
|
||||||
and \a dy pixels. The \a draw_area callback is then called for
|
and \p dy pixels. The \p draw_area callback is then called for
|
||||||
every newly exposed rectangular area.
|
every newly exposed rectangular area.
|
||||||
*/
|
*/
|
||||||
void fl_scroll(int X, int Y, int W, int H, int dx, int dy,
|
void fl_scroll(int X, int Y, int W, int H, int dx, int dy,
|
||||||
|
|||||||
+1
-1
@@ -81,7 +81,7 @@ static void fl_init_symbols(void);
|
|||||||
Adds a symbol to the system.
|
Adds a symbol to the system.
|
||||||
\param[in] name name of symbol (without the "@")
|
\param[in] name name of symbol (without the "@")
|
||||||
\param[in] drawit function to draw symbol
|
\param[in] drawit function to draw symbol
|
||||||
\param[in] scalable set to 1 if \a drawit uses scalable vector drawing
|
\param[in] scalable set to 1 if \p drawit uses scalable vector drawing
|
||||||
\returns 1 on success, 0 on failure
|
\returns 1 on success, 0 on failure
|
||||||
*/
|
*/
|
||||||
int fl_add_symbol(const char *name, void (*drawit)(Fl_Color), int scalable)
|
int fl_add_symbol(const char *name, void (*drawit)(Fl_Color), int scalable)
|
||||||
|
|||||||
+36
-36
@@ -103,7 +103,7 @@ static unsigned short cp1252[32] = {
|
|||||||
and \e len is set the the number of bytes in the UTF-8 encoding
|
and \e len is set the the number of bytes in the UTF-8 encoding
|
||||||
(adding \e len to \e p will point at the next character).
|
(adding \e len to \e p will point at the next character).
|
||||||
|
|
||||||
If \a p points at an illegal UTF-8 encoding, including one that
|
If \p p points at an illegal UTF-8 encoding, including one that
|
||||||
would go past \e end, or where a code is uses more bytes than
|
would go past \e end, or where a code is uses more bytes than
|
||||||
necessary, then *(unsigned char*)p is translated as though it is
|
necessary, then *(unsigned char*)p is translated as though it is
|
||||||
in the Microsoft CP1252 character set and \e len is set to 1.
|
in the Microsoft CP1252 character set and \e len is set to 1.
|
||||||
@@ -203,7 +203,7 @@ unsigned fl_utf8decode(const char* p, const char* end, int* len)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*! Move \a p forward until it points to the start of a UTF-8
|
/*! Move \p p forward until it points to the start of a UTF-8
|
||||||
character. If it already points at the start of one then it
|
character. If it already points at the start of one then it
|
||||||
is returned unchanged. Any UTF-8 errors are treated as though each
|
is returned unchanged. Any UTF-8 errors are treated as though each
|
||||||
byte of the error is an individual character.
|
byte of the error is an individual character.
|
||||||
@@ -239,7 +239,7 @@ const char* fl_utf8fwd(const char* p, const char* start, const char* end)
|
|||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*! Move \a p backward until it points to the start of a UTF-8
|
/*! Move \p p backward until it points to the start of a UTF-8
|
||||||
character. If it already points at the start of one then it
|
character. If it already points at the start of one then it
|
||||||
is returned unchanged. Any UTF-8 errors are treated as though each
|
is returned unchanged. Any UTF-8 errors are treated as though each
|
||||||
byte of the error is an individual character.
|
byte of the error is an individual character.
|
||||||
@@ -270,7 +270,7 @@ const char* fl_utf8back(const char* p, const char* start, const char* end)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*! Returns number of bytes that utf8encode() will use to encode the
|
/*! Returns number of bytes that utf8encode() will use to encode the
|
||||||
character \a ucs. */
|
character \p ucs. */
|
||||||
int fl_utf8bytes(unsigned ucs) {
|
int fl_utf8bytes(unsigned ucs) {
|
||||||
if (ucs < 0x000080U) {
|
if (ucs < 0x000080U) {
|
||||||
return 1;
|
return 1;
|
||||||
@@ -287,7 +287,7 @@ int fl_utf8bytes(unsigned ucs) {
|
|||||||
|
|
||||||
/*! Write the UTF-8 encoding of \e ucs into \e buf and return the
|
/*! Write the UTF-8 encoding of \e ucs into \e buf and return the
|
||||||
number of bytes written. Up to 4 bytes may be written. If you know
|
number of bytes written. Up to 4 bytes may be written. If you know
|
||||||
that \a ucs is less than 0x10000 then at most 3 bytes will be written.
|
that \p ucs is less than 0x10000 then at most 3 bytes will be written.
|
||||||
If you wish to speed this up, remember that anything less than 0x80
|
If you wish to speed this up, remember that anything less than 0x80
|
||||||
is written as a single byte.
|
is written as a single byte.
|
||||||
|
|
||||||
@@ -295,7 +295,7 @@ int fl_utf8bytes(unsigned ucs) {
|
|||||||
according to RFC 3629. These are converted as though they are
|
according to RFC 3629. These are converted as though they are
|
||||||
0xFFFD (REPLACEMENT CHARACTER).
|
0xFFFD (REPLACEMENT CHARACTER).
|
||||||
|
|
||||||
RFC 3629 also says many other values for \a ucs are illegal (in
|
RFC 3629 also says many other values for \p ucs are illegal (in
|
||||||
the range 0xd800 to 0xdfff, or ending with 0xfffe or
|
the range 0xd800 to 0xdfff, or ending with 0xfffe or
|
||||||
0xffff). However I encode these as though they are legal, so that
|
0xffff). However I encode these as though they are legal, so that
|
||||||
utf8encode/fl_utf8decode will be the identity for all codes between 0
|
utf8encode/fl_utf8decode will be the identity for all codes between 0
|
||||||
@@ -332,19 +332,19 @@ int fl_utf8encode(unsigned ucs, char* buf) {
|
|||||||
/*! Convert a UTF-8 sequence into an array of wchar_t. These
|
/*! Convert a UTF-8 sequence into an array of wchar_t. These
|
||||||
are used by some system calls, especially on Windows.
|
are used by some system calls, especially on Windows.
|
||||||
|
|
||||||
\a src points at the UTF-8, and \a srclen is the number of bytes to
|
\p src points at the UTF-8, and \p srclen is the number of bytes to
|
||||||
convert.
|
convert.
|
||||||
|
|
||||||
\a dst points at an array to write, and \a dstlen is the number of
|
\p dst points at an array to write, and \p dstlen is the number of
|
||||||
locations in this array. At most \a dstlen-1 words will be
|
locations in this array. At most \p dstlen-1 words will be
|
||||||
written there, plus a 0 terminating word. Thus this function
|
written there, plus a 0 terminating word. Thus this function
|
||||||
will never overwrite the buffer and will always return a
|
will never overwrite the buffer and will always return a
|
||||||
zero-terminated string. If \a dstlen is zero then \a dst can be
|
zero-terminated string. If \p dstlen is zero then \p dst can be
|
||||||
null and no data is written, but the length is returned.
|
null and no data is written, but the length is returned.
|
||||||
|
|
||||||
The return value is the number of words that \e would be written
|
The return value is the number of words that \e would be written
|
||||||
to \a dst if it were long enough, not counting the terminating
|
to \p dst if it were long enough, not counting the terminating
|
||||||
zero. If the return value is greater or equal to \a dstlen it
|
zero. If the return value is greater or equal to \p dstlen it
|
||||||
indicates truncation, you can then allocate a new array of size
|
indicates truncation, you can then allocate a new array of size
|
||||||
return+1 and call this again.
|
return+1 and call this again.
|
||||||
|
|
||||||
@@ -442,14 +442,14 @@ unsigned fl_utf8towc(const char* src, unsigned srclen,
|
|||||||
fl_utf8decode() does. This allows ISO-8859-1 text mistakenly identified
|
fl_utf8decode() does. This allows ISO-8859-1 text mistakenly identified
|
||||||
as UTF-8 to be printed correctly (and possibly CP1512 on Windows).
|
as UTF-8 to be printed correctly (and possibly CP1512 on Windows).
|
||||||
|
|
||||||
\a src points at the UTF-8, and \a srclen is the number of bytes to
|
\p src points at the UTF-8, and \p srclen is the number of bytes to
|
||||||
convert.
|
convert.
|
||||||
|
|
||||||
Up to \a dstlen bytes are written to \a dst, including a null
|
Up to \p dstlen bytes are written to \p dst, including a null
|
||||||
terminator. The return value is the number of bytes that would be
|
terminator. The return value is the number of bytes that would be
|
||||||
written, not counting the null terminator. If greater or equal to
|
written, not counting the null terminator. If greater or equal to
|
||||||
\a dstlen then if you malloc a new array of size n+1 you will have
|
\p dstlen then if you malloc a new array of size n+1 you will have
|
||||||
the space needed for the entire string. If \a dstlen is zero then
|
the space needed for the entire string. If \p dstlen is zero then
|
||||||
nothing is written and this call just measures the storage space
|
nothing is written and this call just measures the storage space
|
||||||
needed.
|
needed.
|
||||||
*/
|
*/
|
||||||
@@ -490,20 +490,20 @@ unsigned fl_utf8toa(const char* src, unsigned srclen,
|
|||||||
/*! Turn "wide characters" as returned by some system calls
|
/*! Turn "wide characters" as returned by some system calls
|
||||||
(especially on Windows) into UTF-8.
|
(especially on Windows) into UTF-8.
|
||||||
|
|
||||||
Up to \a dstlen bytes are written to \a dst, including a null
|
Up to \p dstlen bytes are written to \p dst, including a null
|
||||||
terminator. The return value is the number of bytes that would be
|
terminator. The return value is the number of bytes that would be
|
||||||
written, not counting the null terminator. If greater or equal to
|
written, not counting the null terminator. If greater or equal to
|
||||||
\a dstlen then if you malloc a new array of size n+1 you will have
|
\p dstlen then if you malloc a new array of size n+1 you will have
|
||||||
the space needed for the entire string. If \a dstlen is zero then
|
the space needed for the entire string. If \p dstlen is zero then
|
||||||
nothing is written and this call just measures the storage space
|
nothing is written and this call just measures the storage space
|
||||||
needed.
|
needed.
|
||||||
|
|
||||||
\a srclen is the number of words in \a src to convert. On Windows
|
\p srclen is the number of words in \p src to convert. On Windows
|
||||||
this is not necessairly the number of characters, due to there
|
this is not necessairly the number of characters, due to there
|
||||||
possibly being "surrogate pairs" in the UTF-16 encoding used.
|
possibly being "surrogate pairs" in the UTF-16 encoding used.
|
||||||
On Unix wchar_t is 32 bits and each location is a character.
|
On Unix wchar_t is 32 bits and each location is a character.
|
||||||
|
|
||||||
On Unix if a \a src word is greater than 0x10ffff then this is an
|
On Unix if a \p src word is greater than 0x10ffff then this is an
|
||||||
illegal character according to RFC 3629. These are converted as
|
illegal character according to RFC 3629. These are converted as
|
||||||
though they are 0xFFFD (REPLACEMENT CHARACTER). Characters in the
|
though they are 0xFFFD (REPLACEMENT CHARACTER). Characters in the
|
||||||
range 0xd800 to 0xdfff, or ending with 0xfffe or 0xffff are also
|
range 0xd800 to 0xdfff, or ending with 0xfffe or 0xffff are also
|
||||||
@@ -588,17 +588,17 @@ unsigned fl_utf8fromwc(char* dst, unsigned dstlen,
|
|||||||
instead. This would translate the codes in the range 0x80-0x9f
|
instead. This would translate the codes in the range 0x80-0x9f
|
||||||
to different characters. Currently it does not do this.
|
to different characters. Currently it does not do this.
|
||||||
|
|
||||||
Up to \a dstlen bytes are written to \a dst, including a null
|
Up to \p dstlen bytes are written to \p dst, including a null
|
||||||
terminator. The return value is the number of bytes that would be
|
terminator. The return value is the number of bytes that would be
|
||||||
written, not counting the null terminator. If greater or equal to
|
written, not counting the null terminator. If greater or equal to
|
||||||
\a dstlen then if you malloc a new array of size n+1 you will have
|
\p dstlen then if you malloc a new array of size n+1 you will have
|
||||||
the space needed for the entire string. If \a dstlen is zero then
|
the space needed for the entire string. If \p dstlen is zero then
|
||||||
nothing is written and this call just measures the storage space
|
nothing is written and this call just measures the storage space
|
||||||
needed.
|
needed.
|
||||||
|
|
||||||
\a srclen is the number of bytes in \a src to convert.
|
\p srclen is the number of bytes in \p src to convert.
|
||||||
|
|
||||||
If the return value equals \a srclen then this indicates that
|
If the return value equals \p srclen then this indicates that
|
||||||
no conversion is necessary, as only ASCII characters are in the
|
no conversion is necessary, as only ASCII characters are in the
|
||||||
string.
|
string.
|
||||||
*/
|
*/
|
||||||
@@ -671,17 +671,17 @@ int fl_utf8locale(void) {
|
|||||||
Unfortunately due to stupid design you will have to do this as
|
Unfortunately due to stupid design you will have to do this as
|
||||||
needed for filenames. This is a bug on both Unix and Windows.
|
needed for filenames. This is a bug on both Unix and Windows.
|
||||||
|
|
||||||
Up to \a dstlen bytes are written to \a dst, including a null
|
Up to \p dstlen bytes are written to \p dst, including a null
|
||||||
terminator. The return value is the number of bytes that would be
|
terminator. The return value is the number of bytes that would be
|
||||||
written, not counting the null terminator. If greater or equal to
|
written, not counting the null terminator. If greater or equal to
|
||||||
\a dstlen then if you malloc a new array of size n+1 you will have
|
\p dstlen then if you malloc a new array of size n+1 you will have
|
||||||
the space needed for the entire string. If \a dstlen is zero then
|
the space needed for the entire string. If \p dstlen is zero then
|
||||||
nothing is written and this call just measures the storage space
|
nothing is written and this call just measures the storage space
|
||||||
needed.
|
needed.
|
||||||
|
|
||||||
If fl_utf8locale() returns true then this does not change the data.
|
If fl_utf8locale() returns true then this does not change the data.
|
||||||
It is copied and truncated as necessary to
|
It is copied and truncated as necessary to
|
||||||
the destination buffer and \a srclen is always returned.
|
the destination buffer and \p srclen is always returned.
|
||||||
*/
|
*/
|
||||||
unsigned fl_utf8to_mb(const char* src, unsigned srclen,
|
unsigned fl_utf8to_mb(const char* src, unsigned srclen,
|
||||||
char* dst, unsigned dstlen)
|
char* dst, unsigned dstlen)
|
||||||
@@ -744,17 +744,17 @@ unsigned fl_utf8to_mb(const char* src, unsigned srclen,
|
|||||||
/*! Convert a filename from the locale-specific multibyte encoding
|
/*! Convert a filename from the locale-specific multibyte encoding
|
||||||
used by Windows to UTF-8 as used by FLTK.
|
used by Windows to UTF-8 as used by FLTK.
|
||||||
|
|
||||||
Up to \a dstlen bytes are written to \a dst, including a null
|
Up to \p dstlen bytes are written to \p dst, including a null
|
||||||
terminator. The return value is the number of bytes that would be
|
terminator. The return value is the number of bytes that would be
|
||||||
written, not counting the null terminator. If greater or equal to
|
written, not counting the null terminator. If greater or equal to
|
||||||
\a dstlen then if you malloc a new array of size n+1 you will have
|
\p dstlen then if you malloc a new array of size n+1 you will have
|
||||||
the space needed for the entire string. If \a dstlen is zero then
|
the space needed for the entire string. If \p dstlen is zero then
|
||||||
nothing is written and this call just measures the storage space
|
nothing is written and this call just measures the storage space
|
||||||
needed.
|
needed.
|
||||||
|
|
||||||
On Unix or on Windows when a UTF-8 locale is in effect, this
|
On Unix or on Windows when a UTF-8 locale is in effect, this
|
||||||
does not change the data. It is copied and truncated as necessary to
|
does not change the data. It is copied and truncated as necessary to
|
||||||
the destination buffer and \a srclen is always returned.
|
the destination buffer and \p srclen is always returned.
|
||||||
You may also want to check if fl_utf8test() returns non-zero, so that
|
You may also want to check if fl_utf8test() returns non-zero, so that
|
||||||
the filesystem can store filenames in UTF-8 encoding regardless of
|
the filesystem can store filenames in UTF-8 encoding regardless of
|
||||||
the locale.
|
the locale.
|
||||||
@@ -808,14 +808,14 @@ unsigned fl_utf8from_mb(char* dst, unsigned dstlen,
|
|||||||
return srclen;
|
return srclen;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*! Examines the first \a srclen bytes in \a src and returns a verdict
|
/*! Examines the first \p srclen bytes in \p src and returns a verdict
|
||||||
on whether it is UTF-8 or not.
|
on whether it is UTF-8 or not.
|
||||||
- Returns 0 if there is any illegal UTF-8 sequences, using the
|
- Returns 0 if there is any illegal UTF-8 sequences, using the
|
||||||
same rules as fl_utf8decode(). Note that some UCS values considered
|
same rules as fl_utf8decode(). Note that some UCS values considered
|
||||||
illegal by RFC 3629, such as 0xffff, are considered legal by this.
|
illegal by RFC 3629, such as 0xffff, are considered legal by this.
|
||||||
- Returns 1 if there are only single-byte characters (ie no bytes
|
- Returns 1 if there are only single-byte characters (ie no bytes
|
||||||
have the high bit set). This is legal UTF-8, but also indicates
|
have the high bit set). This is legal UTF-8, but also indicates
|
||||||
plain ASCII. It also returns 1 if \a srclen is zero.
|
plain ASCII. It also returns 1 if \p srclen is zero.
|
||||||
- Returns 2 if there are only characters less than 0x800.
|
- Returns 2 if there are only characters less than 0x800.
|
||||||
- Returns 3 if there are only characters less than 0x10000.
|
- Returns 3 if there are only characters less than 0x10000.
|
||||||
- Returns 4 if there are characters in the 0x10000 to 0x10ffff range.
|
- Returns 4 if there are characters in the 0x10000 to 0x10ffff range.
|
||||||
|
|||||||
+1
-1
@@ -152,7 +152,7 @@ int Fl::screen_count() {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Gets the bounding box of a screen
|
Gets the bounding box of a screen
|
||||||
that contains the specified screen position \a mx, \a my
|
that contains the specified screen position \p mx, \p my
|
||||||
\param[out] X,Y,W,H the corresponding screen bounding box
|
\param[out] X,Y,W,H the corresponding screen bounding box
|
||||||
\param[in] mx, my the absolute screen position
|
\param[in] mx, my the absolute screen position
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user