diff options
| author | Michael R Sweet <michael.r.sweet@gmail.com> | 2001-11-27 04:55:48 +0000 |
|---|---|---|
| committer | Michael R Sweet <michael.r.sweet@gmail.com> | 2001-11-27 04:55:48 +0000 |
| commit | 4dc5732a3e0f376786d1d6b788e5cf601439e890 (patch) | |
| tree | 2aab2bfb14b58f41f28f327b734f1a775f2a4376 /documentation | |
| parent | 772f94ca1ac8aec25aa4ccc337454cf76c5ea700 (diff) | |
Image class docos.
Start of text buffer docos.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1754 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'documentation')
| -rw-r--r-- | documentation/Fl_Bitmap.html | 2 | ||||
| -rw-r--r-- | documentation/Fl_GIF_Image.html | 28 | ||||
| -rw-r--r-- | documentation/Fl_Image.html | 517 | ||||
| -rw-r--r-- | documentation/Fl_JPEG_Image.html | 29 | ||||
| -rw-r--r-- | documentation/Fl_PNG_Image.html | 29 | ||||
| -rw-r--r-- | documentation/Fl_PNM_Image.html | 29 | ||||
| -rw-r--r-- | documentation/Fl_Pixmap.html | 29 | ||||
| -rw-r--r-- | documentation/Fl_RGB_Image.html | 31 | ||||
| -rw-r--r-- | documentation/Fl_Text_Buffer.html | 681 | ||||
| -rw-r--r-- | documentation/Fl_XBM_Image.html | 27 | ||||
| -rw-r--r-- | documentation/Fl_XPM_Image.html | 27 | ||||
| -rw-r--r-- | documentation/fltk.book | 3 |
12 files changed, 661 insertions, 771 deletions
diff --git a/documentation/Fl_Bitmap.html b/documentation/Fl_Bitmap.html index 010fcc73a..697e2b6b7 100644 --- a/documentation/Fl_Bitmap.html +++ b/documentation/Fl_Bitmap.html @@ -3,7 +3,7 @@ <!-- NEW PAGE --> -<H2><A name=Fl_Bitmap>class Fl_Bitmap</A></H2> +<H2><A name="Fl_Bitmap">class Fl_Bitmap</A></H2> <HR> <H3>Class Hierarchy</H3> diff --git a/documentation/Fl_GIF_Image.html b/documentation/Fl_GIF_Image.html index 010fcc73a..543bfcc30 100644 --- a/documentation/Fl_GIF_Image.html +++ b/documentation/Fl_GIF_Image.html @@ -3,49 +3,47 @@ <!-- NEW PAGE --> -<H2><A name=Fl_Bitmap>class Fl_Bitmap</A></H2> +<H2><A name="Fl_GIF_Image">class Fl_GIF_Image</A></H2> <HR> <H3>Class Hierarchy</H3> <UL><PRE> -<A href="Fl_Image.html">Fl_Image</A> +<A href="Fl_Pixmap.html">Fl_Pixmap</A> | - +----<B>Fl_Bitmap</B> - | - +----<A href="Fl_XBM_Image.html">Fl_XBM_Image</A> + +----<B>Fl_GIF_Image</B> </PRE></UL> <H3>Include Files</H3> <UL><PRE> -#include <FL/Fl_Bitmap.H> +#include <FL/Fl_GIF_Image.H> </PRE></UL> <H3>Description</H3> -<P>The <TT>Fl_Bitmap</TT> class supports caching and drawing of mono-color -(bitmap) images. Images are drawn using the current color.</P> +<P>The <TT>Fl_GIF_Image</TT> class supports loading, caching, +and drawing of Compuserve GIF<SUP>SM</SUP> images. The class +loads the first image and supports transparency.</P> <H3>Methods</H3> <UL> - <LI><A href="#Fl_Bitmap.Fl_Bitmap">Fl_Bitmap</A></LI> + <LI><A href="#Fl_GIF_Image.Fl_GIF_Image">Fl_GIF_Image</A></LI> - <LI><A href="#Fl_Bitmap.~Fl_Bitmap">~Fl_Bitmap</A></LI> + <LI><A href="#Fl_GIF_Image.~Fl_GIF_Image">~Fl_GIF_Image</A></LI> </UL> -<H4><A name="Fl_Bitmap.Fl_Bitmap">Fl_Bitmap::Fl_Bitmap(const char *array, int W, int H);<BR> -Fl_Bitmap::Fl_Bitmap(const unsigned char *array, int W, int H);</A></H4> +<H4><A name="Fl_GIF_Image.Fl_GIF_Image">Fl_GIF_Image::Fl_GIF_Image(const char *filename);</A></H4> -<P>The constructors create a new bitmap from the specified bitmap data.</P> +<P>The constructor loads the named GIF image.</P> -<H4><A name="Fl_Bitmap.~Fl_Bitmap">Fl_Bitmap::~Fl_Bitmap();</A></H4> +<H4><A name="Fl_GIF_Image.~Fl_GIF_Image">Fl_GIF_Image::~Fl_GIF_Image();</A></H4> <P>The destructor free all memory and server resources that are used by -the bitmap.</P> +the image.</P> </BODY> </HTML> diff --git a/documentation/Fl_Image.html b/documentation/Fl_Image.html index e0b27db16..16d95687a 100644 --- a/documentation/Fl_Image.html +++ b/documentation/Fl_Image.html @@ -1,336 +1,199 @@ -<HTML><BODY> -<HR break> -<H2><A name=Fl_Input>class Fl_Input</A></H2> +<HTML> +<BODY> + +<!-- NEW PAGE --> + +<H2><A name="Fl_Image">class Fl_Image</A></H2> + <HR> + <H3>Class Hierarchy</H3> -<UL> -<PRE> -<A href=Fl_Input_.html#Fl_Input_>Fl_Input_</A> - | - +----<B>Fl_Input</B> - | - +----<A href=Fl_Float_Input.html#Fl_Float_Input>Fl_Float_Input</A>, <A href=Fl_Int_Input.html#Fl_Int_Input>Fl_Int_Input</A>, - <A href=Fl_Multiline_Input.html#Fl_Multiline_Input>Fl_Multiline_Input</A>, <A href=Fl_Secret_Input.html#Fl_Secret_Input>Fl_Secret_Input</A> -</PRE> -</UL> + +<UL><PRE> +<B>Fl_Image</B> + | + +----<A href="Fl_Bitmap.html">Fl_Bitmap</A>, + <A href="Fl_Pixmap.html">Fl_Pixmap</A>, + <A href="Fl_RGB_Image.html">Fl_RGB_Image</A>, + <A href="Fl_Shared_Image.html">Fl_Shared_Image</A>, + <A href="Fl_Tiled_Image.html">Fl_Tiled_Image</A> +</PRE></UL> + <H3>Include Files</H3> -<UL> -<PRE> -#include <FL/Fl_Input.H> -</PRE> -</UL> + +<UL><PRE> +#include <FL/Fl_Image.H> +</PRE></UL> + <H3>Description</H3> -<P>This is the FLTK text input widget. It displays a single line of text -and lets the user edit it. Normally it is drawn with an inset box and -a white background. The text may contain any characters (even 0), and -will correctly display anything, using ^X notation for unprintable -control characters and \nnn notation for unprintable characters with -the high bit set. It assumes the font can draw any characters in the -ISO-8859-1 character set. - -<CENTER><TABLE border=1 WIDTH=90% summary="Fl_Input keyboard and mouse bindings."> - -<TR><TD WIDTH=200><B>Mouse button 1</B></TD><TD>Moves the cursor to - this point. Drag selects characters. Double click selects words. - Triple click selects all text. Shift+click extends the selection. - When you select text it is automatically copied to the clipboard. -</TD></TR> - -<TR><TD><B>Mouse button 2</B></TD><TD>Insert the clipboard at -the point clicked. You can also select a region and replace it with the -clipboard by selecting the region with mouse button 2. -</TD></TR> - -<TR><TD><B>Mouse button 3</B></TD><TD>Currently acts like button 1.</TD></TR> - -<TR><TD><B>Backspace</B></TD><TD>Deletes one character to the left, or -deletes the selected region.</TD></TR> -<TR><TD><B>Enter</B></TD><TD>May cause the callback, see when().</TD></TR> -<TR><TD><B>^A or Home</B></TD><TD>Go to start of line.</TD></TR> -<TR><TD><B>^B or Left</B></TD><TD>Move left</TD></TR> -<TR><TD><B>^C</B></TD><TD>Copy the selection to the clipboard</TD></TR> -<TR><TD><B>^D or Delete</B></TD><TD>Deletes one character to the right -or deletes the selected region.</TD></TR> -<TR><TD><B>^E or End</B></TD><TD>Go to the end of line.</TD></TR> -<TR><TD><B>^F or Right</B></TD><TD>Move right</TD></TR> -<TR><TD><B>^K</B></TD><TD>Delete to the end of line (next \n character) -or deletes a single \n character. These deletions are all concatenated -into the clipboard.</TD></TR> -<TR><TD><B>^N or Down</B></TD><TD>Move down (for Fl_Multiline_Input -only, otherwise it moves to the next input field).</TD></TR> -<TR><TD><B>^P or Up</B></TD><TD>Move up (for Fl_Multiline_Input only, -otherwise it moves to the previous input field).</TD></TR> -<TR><TD><B>^U</B></TD><TD>Delete everything.</TD></TR> -<TR><TD><B>^V or ^Y</B></TD><TD>Paste the clipboard</TD></TR> -<TR><TD><B>^X or ^W</B></TD><TD>Copy the region to the clipboard and -delete it.</TD></TR> -<TR><TD><B>^Z or ^_</B></TD><TD>Undo. This is a single-level undo -mechanism, but all adjacent deletions and insertions are concatenated -into a single "undo". Often this will undo a lot more than you -expected.</TD></TR> -<TR><TD><B>Shift+move</B></TD><TD>Move the cursor but also extend the -selection.</TD></TR> - -<TR><TD><B>RightCtrl or -<BR>Compose</B></TD><TD><a name=compose>Start</A> -a <A href="events.html#compose">compose-character</A> -sequence. The next one or two keys typed define the character to -insert (see table that follows.) - -<p>For instance, to type "á" type [compose][a]['] or [compose]['][a]. - -<P>The character "nbsp" (non-breaking space) is typed by using -[compose][space]. - -<P>The single-character sequences may be followed by a space if -necessary to remove ambiguity. For instance, if you really want to -type "ª~" rather than "ã" you must type [compose][a][space][~]. - -<p>The same key may be used to "quote" control characters into the -text. If you need a <tt>^Q</tt> character you can get one by typing -[compose][Control+Q]. - -<p>X may have a key on the keyboard -defined as <tt>XK_Multi_key</tt>. If so this key may be used as well -as the right-hand control key. You can set this up with the program -<tt>xmodmap</tt>. - -<p>If your keyboard is set to support a foreign language you should -also be able to type "dead key" prefix characters. On X you will -actually be able to see what dead key you typed, and if you then move -the cursor without completing the sequence the accent will remain -inserted. -</TABLE></CENTER> -<!-- NEW PAGE --> -<center><table border=1 summary="Character Composition Table"> -<caption align="top">Character Composition Table</caption> -<tr> - <th>Keys</th><th>Char</th> - <th>Keys</th><th>Char</th> - <th>Keys</th><th>Char</th> - <th>Keys</th><th>Char</th> - <th>Keys</th><th>Char</th> - <th>Keys</th><th>Char</th> - -</tr><tr> - <td align=center><TT>sp</TT></td><td align=center><small>nbsp</small></td> - <td align=center><TT>*</tt></td><td align=center>°</td> - <td align=center><TT>` A</tt></td><td align=center>À</td> - <td align=center><TT>D -</tt></td><td align=center>Ð</td> - <td align=center><TT>` a</tt></td><td align=center>à</td> - <td align=center><TT>d -</tt></td><td align=center>ð -</tr><tr> - <td align=center><TT>!</tt></td><td align=center>¡</td> - <td align=center><TT>+ -</tt></td><td align=center>±</td> - <td align=center><TT>' A</tt></td><td align=center>Á</td> - <td align=center><TT>~ N</tt></td><td align=center>Ñ</td> - <td align=center><TT>' a</tt></td><td align=center>á</td> - <td align=center><TT>~ n</tt></td><td align=center>ñ -</tr><tr> - <td align=center><TT>%</tt></td><td align=center>¢</td> - <td align=center><TT>2</tt></td><td align=center>²</td> - <td align=center><TT>A ^</tt></td><td align=center>Â</td> - <td align=center><TT>` O</tt></td><td align=center>Ò</td> - <td align=center><TT>^ a</tt></td><td align=center>â</td> - <td align=center><TT>` o</tt></td><td align=center>ò -</tr><tr> - <td align=center><TT>#</tt></td><td align=center>£</td> - <td align=center><TT>3</tt></td><td align=center>³</td> - <td align=center><TT>~ A</tt></td><td align=center>Ã</td> - <td align=center><TT>' O</tt></td><td align=center>Ó</td> - <td align=center><TT>~ a</tt></td><td align=center>ã</td> - <td align=center><TT>' o</tt></td><td align=center>ó -</tr><tr> - <td align=center><TT>$</tt></td><td align=center>¤</td> - <td align=center><TT>'</tt></td><td align=center>´</td> - <td align=center><TT>: A</tt></td><td align=center>Ä</td> - <td align=center><TT>^ O</tt></td><td align=center>Ô</td> - <td align=center><TT>: a</tt></td><td align=center>ä</td> - <td align=center><TT>^ o</tt></td><td align=center>ô -</tr><tr> - <td align=center><TT>y =</tt></td><td align=center>¥</td> - <td align=center><TT>u</tt></td><td align=center>µ</td> - <td align=center><TT>* A</tt></td><td align=center>Å</td> - <td align=center><TT>~ O</tt></td><td align=center>Õ</td> - <td align=center><TT>* a</tt></td><td align=center>å</td> - <td align=center><TT>~ o</tt></td><td align=center>õ -</tr><tr> - <td align=center><TT>|</tt></td><td align=center>¦</td> - <td align=center><TT>p</tt></td><td align=center>¶</td> - <td align=center><TT>A E</tt></td><td align=center>Æ</td> - <td align=center><TT>: O</tt></td><td align=center>Ö</td> - <td align=center><TT>a e</tt></td><td align=center>æ</td> - <td align=center><TT>: o</tt></td><td align=center>ö -</tr><tr> - <td align=center><TT>&</tt></td><td align=center>§</td> - <td align=center><TT>.</tt></td><td align=center>·</td> - <td align=center><TT>, C</tt></td><td align=center>Ç</td> - <td align=center><TT>x</tt></td><td align=center>×</td> - <td align=center><TT>, c</tt></td><td align=center>ç</td> - <td align=center><TT>- :</tt></td><td align=center>÷ -</tr><tr> - <td align=center><TT>:</tt></td><td align=center>¨</td> - <td align=center><TT>,</tt></td><td align=center>¸</td> - <td align=center><TT>E `</tt></td><td align=center>È</td> - <td align=center><TT>O /</tt></td><td align=center>Ø</td> - <td align=center><TT>` e</tt></td><td align=center>è</td> - <td align=center><TT>o /</tt></td><td align=center>ø -</tr><tr> - <td align=center><TT>c</tt></td><td align=center>©</td> - <td align=center><TT>1</tt></td><td align=center>¹</td> - <td align=center><TT>' E</tt></td><td align=center>É</td> - <td align=center><TT>` U</tt></td><td align=center>Ù</td> - <td align=center><TT>' e</tt></td><td align=center>é</td> - <td align=center><TT>` u</tt></td><td align=center>ù -</tr><tr> - <td align=center><TT>a</tt></td><td align=center>ª</td> - <td align=center><TT>o</tt></td><td align=center>º</td> - <td align=center><TT>^ E</tt></td><td align=center>Ê</td> - <td align=center><TT>' U</tt></td><td align=center>Ú</td> - <td align=center><TT>^ e</tt></td><td align=center>ê</td> - <td align=center><TT>' u</tt></td><td align=center>ú -</tr><tr> - <td align=center><TT>< <</tt></td><td align=center>«</td> - <td align=center><TT>> ></tt></td><td align=center>»</td> - <td align=center><TT>: E</tt></td><td align=center>Ë</td> - <td align=center><TT>^ U</tt></td><td align=center>Û</td> - <td align=center><TT>: e</tt></td><td align=center>ë</td> - <td align=center><TT>^ u</tt></td><td align=center>û -</tr><tr> - <td align=center><TT>~</tt></td><td align=center>¬</td> - <td align=center><TT>1 4</tt></td><td align=center>¼</td> - <td align=center><TT>` I</tt></td><td align=center>Ì</td> - <td align=center><TT>: U</tt></td><td align=center>Ü</td> - <td align=center><TT>` i</tt></td><td align=center>ì</td> - <td align=center><TT>: u</tt></td><td align=center>ü -</tr><tr> - <td align=center><TT>-</tt></td><td align=center></td> - <td align=center><TT>1 2</tt></td><td align=center>½</td> - <td align=center><TT>' I</tt></td><td align=center>Í</td> - <td align=center><TT>' Y</tt></td><td align=center>Ý</td> - <td align=center><TT>' i</tt></td><td align=center>í</td> - <td align=center><TT>' y</tt></td><td align=center>ý -</tr><tr> - <td align=center><TT>r</tt></td><td align=center>®</td> - <td align=center><TT>3 4</tt></td><td align=center>¾</td> - <td align=center><TT>^ I</tt></td><td align=center>Î</td> - <td align=center><TT>T H</tt></td><td align=center>Þ</td> - <td align=center><TT>^ i</tt></td><td align=center>î</td> - <td align=center><TT>t h</tt></td><td align=center>þ -</tr><tr> - <td align=center><TT>_</tt></td><td align=center>¯</td> - <td align=center><TT>?</tt></td><td align=center>¿</td> - <td align=center><TT>: I</tt></td><td align=center>Ï</td> - <td align=center><TT>s s</tt></td><td align=center>ß</td> - <td align=center><TT>: i</tt></td><td align=center>ï</td> - <td align=center><TT>: y</tt></td><td align=center>ÿ -</table></center> +<P><TT>Fl_Image</TT> is the base class used for caching and +drawing all kinds of images in FLTK. This class keeps track of +common image data such as the pixels, colormap, width, height, +and depth. Virtual methods are used to provide type-specific +image handling.</P> + +<P>Since the <TT>Fl_Image</TT> class does not support image +drawing by itself, calling the <TT>draw()</TT> method results in +a box with an X in it being drawn instead.</P> <H3>Methods</H3> -<CENTER> -<TABLE width=90% summary="Fl_Input methods."> -<TR><TD align=left valign=top> -<UL> -<LI><A href=#Fl_Input.Fl_Input>Fl_Input</A></LI> -<LI><A href=#Fl_Input.~Fl_Input>~Fl_Input</A></LI> -<LI><A href=#Fl_Input.cursor_color>cursor_color</A></LI> -</UL> -</TD><TD align=left valign=top> -<UL> -<LI><A href=#Fl_Input.index>index</A></LI> -<LI><A href=#Fl_Input.size>size</A></LI> -</UL> -</TD><TD align=left valign=top> -<UL> -<LI><A href=#Fl_Input.static_value>static_value</A></LI> -<LI><A href=#Fl_Input.textcolor>textcolor</A></LI> -</UL> -</TD><TD align=left valign=top> -<UL> -<LI><A href=#Fl_Input.textfont>textfont</A></LI> -<LI><A href=#Fl_Input.textsize>textsize</A></LI> -</UL> -</TD><TD align=left valign=top> -<UL> -<LI><A href=#Fl_Input.value>value</A></LI> -<LI><A href=#Fl_Input.when>when</A></LI> -</UL> -</TD></TR> -</TABLE> -</CENTER> -<H4><A name=Fl_Input.Fl_Input>Fl_Input::Fl_Input(int x, int y, int w, -int h, const char *label = 0)</A></H4> - Creates a new <TT>Fl_Input</TT> widget using the given position, size, -and label string. The default boxtype is <TT>FL_DOWN_BOX</TT>. -<H4><A name=Fl_Input.~Fl_Input>virtual Fl_Input::~Fl_Input()</A></H4> - Destroys the widget and any value associated with it. -<H4><A name=Fl_Input.value>const char *Fl_Input::value() const -<BR> int Fl_Input::value(const char*) -<BR> int Fl_Input::value(const char*, int)</A></H4> - The first form returns the current value, which is a pointer to the -internal buffer and is valid only until the next event is handled. -<P>The second two forms change the text and set the mark and the point -to the end of it. The string is copied to the internal buffer. Passing <TT> -NULL</TT> is the same as "". This returns non-zero if the new value is -different than the current one. You can use the second version to -directly set the length if you know it already or want to put nul's in -the text. </P> -<H4><A name=Fl_Input.static_value>int Fl_Input::static_value(const -char*) -<BR> int Fl_Input::static_value(const char*, int)</A></H4> - Change the text and set the mark and the point to the end of it. The -string is <I>not</I> copied. If the user edits the string it is copied -to the internal buffer then. This can save a great deal of time and -memory if your program is rapidly changing the values of text fields, -but this will only work if the passed string remains unchanged until -either the <TT>Fl_Input</TT> is destroyed or <TT>value()</TT> is called -again. -<H4><A name=Fl_Input.size>int Fl_Input::size() const</A></H4> - Returns the number of characters in <TT>value()</TT>. This may be -greater than <TT>strlen(value())</TT> if there are nul characters in -it. -<H4><A name=Fl_Input.index>char Fl_Input::index(int) const</A></H4> - Same as <TT>value()[n]</TT>, but may be faster in plausible -implementations. No bounds checking is done. -<H4><A name=Fl_Input.when>Fl_When Fl_Widget::when() const -<BR> void Fl_Widget::when(Fl_When)</A></H4> - Controls when callbacks are done. The following values are useful, -the default value is <TT>FL_WHEN_RELEASE</TT>: + <UL> -<LI><TT>0</TT>: The callback is not done, but <TT>changed()</TT> is - turned on. </LI> -<LI><TT>FL_WHEN_CHANGED</TT>: The callback is done each time the text -is changed by the user. </LI> -<LI><TT>FL_WHEN_RELEASE</TT>: The callback will be done when this -widget loses the focus, including when the window is unmapped. This -is a useful value for text fields in a panel where doing the callback -on every change is wasteful. However the callback will also happen if -the mouse is moved out of the window, which means it should not do -anything visible (like pop up an error message). You might do better -setting this to zero, and scanning all the items for <TT>changed()</TT> - when the OK button on a panel is pressed. </LI> -<LI><TT>FL_WHEN_ENTER_KEY</TT>: If the user types the Enter key, the -entire text is selected, and the callback is done if the text has -changed. Normally the Enter key will navigate to the next field (or -insert a newline for a <TT>Fl_Mulitline_Input</TT>), this changes the -behavior. </LI> -<LI><TT>FL_WHEN_ENTER_KEY|FL_WHEN_NOT_CHANGED</TT>: The Enter key will -do the callback even if the text has not changed. Useful for command -fields. </LI> + + <LI><A href="#Fl_Image.Fl_Image">Fl_Image</A></LI> + + <LI><A href="#Fl_Image.~Fl_Image">~Fl_Image</A></LI> + + <LI><A href="#Fl_Image.color_average">color_average</A></LI> + + <LI><A href="#Fl_Image.copy">copy</A></LI> + + <LI><A href="#Fl_Image.count">count</A></LI> + + <LI><A href="#Fl_Image.d">d</A></LI> + + <LI><A href="#Fl_Image.data">data</A></LI> + + <LI><A href="#Fl_Image.desaturate">desaturate</A></LI> + + <LI><A href="#Fl_Image.draw">draw</A></LI> + + <LI><A href="#Fl_Image.draw_empty">draw_empty</A></LI> + + <LI><A href="#Fl_Image.h">h</A></LI> + + <LI><A href="#Fl_Image.inactive">inactive</A></LI> + + <LI><A href="#Fl_Image.label">label</A></LI> + + <LI><A href="#Fl_Image.ld">ld</A></LI> + + <LI><A href="#Fl_Image.w">w</A></LI> + </UL> -<H4><A name=Fl_Input.textcolor>Fl_Color Fl_Input::textcolor() const -<BR> void Fl_Input::textcolor(Fl_Color)</A></H4> - Gets or sets the color of the text in the input field. -<H4><A name=Fl_Input.textfont>Fl_Font Fl_Input::textfont() const -<BR> void Fl_Input::textfont(Fl_Font)</A></H4> - Gets or sets the font of the text in the input field. -<H4><A name=Fl_Input.textsize>uchar Fl_Input::textsize() const -<BR> void Fl_Input::textsize(uchar)</A></H4> - Gets or sets the size of the text in the input field. -<H4><A name=Fl_Input.cursor_color>Fl_Color Fl_Input::cursor_color() -const -<BR> void Fl_Input::cursor_color(Fl_Color)</A></H4> - Get or set the color of the cursor. This is black by default. - -</BODY></HTML> + +<H4><A NAME="Fl_Image.Fl_Image">Fl_Image(int W, int H, int D);</A></H4> + +<P>The constructor creates an empty image with the specified +width, height, and depth. The width and height are in pixels. +The depth is 0 for bitmaps, 1 for pixmap (colormap) images, and +1 to 4 for color images.</P> + +<H4><A NAME="Fl_Image.~Fl_Image">virtual ~Fl_Image();</A></H4> + +<P>The destructor is a virtual method that frees all memory used +by the image.</P> + +<H4><A NAME="Fl_Image.color_average">virtual void color_average(Fl_Color c, float i);</A></H4> + +<P>The <TT>color_average()</TT> method averages the colors in +the image with the FLTK color value <TT>c</TT>. The <TT>i</TT> +argument specifies the amount of the original image to combine +with the color, so a value of 1.0 results in no color blend, and +a value of 0.0 results in a constant image of the specified +color. <I>The original image data is not altered by this +method.</I></P> + +<H4><A NAME="Fl_Image.copy">virtual Fl_Image *copy(int W, int H);<BR> +copy();</A></H4> + +<P>The <TT>copy()</TT> method creates a copy of the specified +image. If the width and height are provided, the image is +resized to the specified size.</P> + +<H4><A NAME="Fl_Image.count">int count();</A></H4> + +<P>The <TT>count()</TT> method returns the number of data values +associated with the image. The value will be 0 for images with +no associated data, 1 for bitmap and color images, and greater +than 2 for pixmap images.</P> + +<H4><A NAME="Fl_Image.d">int d();<BR> +protected void d(int D);</A></H4> + +<P>The first form of the <TT>d()</TT> method returns the current +image depth. The return value will be 0 for bitmaps, 1 for +pixmaps, and 1 to 4 for color images.</P> + +<P>The second form is a protected method that sets the current +image depth.</P> + +<H4><A NAME="Fl_Image.data">const char * const *data();<BR> +protected void data(const char * const *data, int count);</A></H4> + +<P>The first form of the <TT>data()</TT> method returns a +pointer to the current image data array. Use the +<TT>count()</TT> method to find the size of the data array.</P> + +<P>The second form is a protected method that sets the current +array pointer and count of pointers in the array.</P> + +<H4><A NAME="Fl_Image.desaturate">virtual void desaturate()</A></H4> + +<P>The <TT>desaturate()</TT> method converts an image to +grayscale. If the image contains an alpha channel (depth = 4), +the alpha channel is preserved. <I>This method does not alter +the original image data.</I></P> + +<H4><A NAME="Fl_Image.draw">void draw(int X, int Y);<BR> +virtual void draw(int X, int Y, int W, int H, int cx, int cy);</A></H4> + +<P>The <TT>draw()</TT> methods draw the image. The first form +specifies the upper-lefthand corner of the image. The second +form specifies a bounding box for the image, with the origin +(upper-lefthand corner) of the image offset by the <TT>cx</TT> +and <TT>cy</TT> arguments.</P> + +<H4><A NAME="Fl_Image.draw_empty">protected void draw_empty(int X, int Y);</A></H4> + +<P>The protected method <TT>draw_empty()</TT> draws a box with +an X in it. It can be used to draw any image that lacks image +data.</P> + +<H4><A NAME="Fl_Image.h">int h();<BR> +protected void h(int H);</A></H4> + +<P>The first form of the <TT>h()</TT> method returns the current +image height in pixels.</P> + +<P>The second form is a protected method that sets the current +image height.</P> + +<H4><A NAME="Fl_Image.inactive">void inactive();</A></H4> + +<P>The <TT>inactive()</TT> method calls +<TT>color_average(FL_GRAY, 0.33f)</TT> to produce an image that +appears grayed out. <I>This method does not alter the original +image data.</I></P> + +<H4><A NAME="Fl_Image.label">virtual void label(Fl_Widget *w); +virtual void label(Fl_Menu_Item *m);</A></H4> + +<P>The <TT>label()</TT> methods are an obsolete way to set the +image attribute of a widget or menu item. Use the +<TT>image()</TT> or <TT>deimage()</TT> methods of the +<TT>Fl_Widget</TT> and <TT>Fl_Menu_Item</TT> classes +instead.</P> + +<H4><A NAME="Fl_Image.ld">int ld();<BR> +protected void ld(int LD);</A></H4> + +<P>The first form of the <TT>ld()</TT> method returns the current +line data size in bytes. Line data is extra data that is included +after each line of color image data and is normally not present.</P> + +<P>The second form is a protected method that sets the current +line data size in bytes.</P> + +<H4><A NAME="Fl_Image.w">int w();<BR> +protected void w(int W);</A></H4> + +<P>The first form of the <TT>w()</TT> method returns the current +image width in pixels.</P> + +<P>The second form is a protected method that sets the current +image width.</P> + +</BODY> +</HTML> diff --git a/documentation/Fl_JPEG_Image.html b/documentation/Fl_JPEG_Image.html index 010fcc73a..74c609b24 100644 --- a/documentation/Fl_JPEG_Image.html +++ b/documentation/Fl_JPEG_Image.html @@ -3,49 +3,48 @@ <!-- NEW PAGE --> -<H2><A name=Fl_Bitmap>class Fl_Bitmap</A></H2> +<H2><A name="Fl_JPEG_Image">class Fl_JPEG_Image</A></H2> <HR> <H3>Class Hierarchy</H3> <UL><PRE> -<A href="Fl_Image.html">Fl_Image</A> +<A href="Fl_RGB_Image.html">Fl_RGB_Image</A> | - +----<B>Fl_Bitmap</B> - | - +----<A href="Fl_XBM_Image.html">Fl_XBM_Image</A> + +----<B>Fl_JPEG_Image</B> </PRE></UL> <H3>Include Files</H3> <UL><PRE> -#include <FL/Fl_Bitmap.H> +#include <FL/Fl_JPEG_Image.H> </PRE></UL> <H3>Description</H3> -<P>The <TT>Fl_Bitmap</TT> class supports caching and drawing of mono-color -(bitmap) images. Images are drawn using the current color.</P> +<P>The <TT>Fl_JPEG_Image</TT> class supports loading, caching, +and drawing of Joint Photographic Experts Group (JPEG) File +Interchange Format (JFIF) images. The class supports grayscale +and color (RGB) JPEG image files.</P> <H3>Methods</H3> <UL> - <LI><A href="#Fl_Bitmap.Fl_Bitmap">Fl_Bitmap</A></LI> + <LI><A href="#Fl_JPEG_Image.Fl_JPEG_Image">Fl_JPEG_Image</A></LI> - <LI><A href="#Fl_Bitmap.~Fl_Bitmap">~Fl_Bitmap</A></LI> + <LI><A href="#Fl_JPEG_Image.~Fl_JPEG_Image">~Fl_JPEG_Image</A></LI> </UL> -<H4><A name="Fl_Bitmap.Fl_Bitmap">Fl_Bitmap::Fl_Bitmap(const char *array, int W, int H);<BR> -Fl_Bitmap::Fl_Bitmap(const unsigned char *array, int W, int H);</A></H4> +<H4><A name="Fl_JPEG_Image.Fl_JPEG_Image">Fl_JPEG_Image::Fl_JPEG_Image(const char *filename);</A></H4> -<P>The constructors create a new bitmap from the specified bitmap data.</P> +<P>The constructor loads the named JPEG image.</P> -<H4><A name="Fl_Bitmap.~Fl_Bitmap">Fl_Bitmap::~Fl_Bitmap();</A></H4> +<H4><A name="Fl_JPEG_Image.~Fl_JPEG_Image">Fl_JPEG_Image::~Fl_JPEG_Image();</A></H4> <P>The destructor free all memory and server resources that are used by -the bitmap.</P> +the image.</P> </BODY> </HTML> diff --git a/documentation/Fl_PNG_Image.html b/documentation/Fl_PNG_Image.html index 010fcc73a..a87ac5455 100644 --- a/documentation/Fl_PNG_Image.html +++ b/documentation/Fl_PNG_Image.html @@ -3,49 +3,48 @@ <!-- NEW PAGE --> -<H2><A name=Fl_Bitmap>class Fl_Bitmap</A></H2> +<H2><A name="Fl_PNG_Image">class Fl_PNG_Image</A></H2> <HR> <H3>Class Hierarchy</H3> <UL><PRE> -<A href="Fl_Image.html">Fl_Image</A> +<A href="Fl_RGB_Image.html">Fl_RGB_Image</A> | - +----<B>Fl_Bitmap</B> - | - +----<A href="Fl_XBM_Image.html">Fl_XBM_Image</A> + +----<B>Fl_PNG_Image</B> </PRE></UL> <H3>Include Files</H3> <UL><PRE> -#include <FL/Fl_Bitmap.H> +#include <FL/Fl_PNG_Image.H> </PRE></UL> <H3>Description</H3> -<P>The <TT>Fl_Bitmap</TT> class supports caching and drawing of mono-color -(bitmap) images. Images are drawn using the current color.</P> +<P>The <TT>Fl_PNG_Image</TT> class supports loading, caching, +and drawing of Portable Network Graphics (PNG) image files. The +class loads colormapped and full-color images and handles color- +and alpha-based transparency.</P> <H3>Methods</H3> <UL> - <LI><A href="#Fl_Bitmap.Fl_Bitmap">Fl_Bitmap</A></LI> + <LI><A href="#Fl_PNG_Image.Fl_PNG_Image">Fl_PNG_Image</A></LI> - <LI><A href="#Fl_Bitmap.~Fl_Bitmap">~Fl_Bitmap</A></LI> + <LI><A href="#Fl_PNG_Image.~Fl_PNG_Image">~Fl_PNG_Image</A></LI> </UL> -<H4><A name="Fl_Bitmap.Fl_Bitmap">Fl_Bitmap::Fl_Bitmap(const char *array, int W, int H);<BR> -Fl_Bitmap::Fl_Bitmap(const unsigned char *array, int W, int H);</A></H4> +<H4><A name="Fl_PNG_Image.Fl_PNG_Image">Fl_PNG_Image::Fl_PNG_Image(const char *filename);</A></H4> -<P>The constructors create a new bitmap from the specified bitmap data.</P> +<P>The constructor loads the named PNG image.</P> -<H4><A name="Fl_Bitmap.~Fl_Bitmap">Fl_Bitmap::~Fl_Bitmap();</A></H4> +<H4><A name="Fl_PNG_Image.~Fl_PNG_Image">Fl_PNG_Image::~Fl_PNG_Image();</A></H4> <P>The destructor free all memory and server resources that are used by -the bitmap.</P> +the image.</P> </BODY> </HTML> diff --git a/documentation/Fl_PNM_Image.html b/documentation/Fl_PNM_Image.html index 010fcc73a..7b761c5f9 100644 --- a/documentation/Fl_PNM_Image.html +++ b/documentation/Fl_PNM_Image.html @@ -3,49 +3,48 @@ <!-- NEW PAGE --> -<H2><A name=Fl_Bitmap>class Fl_Bitmap</A></H2> +<H2><A name="Fl_PNM_Image">class Fl_PNM_Image</A></H2> <HR> <H3>Class Hierarchy</H3> <UL><PRE> -<A href="Fl_Image.html">Fl_Image</A> +<A href="Fl_RGB_Image.html">Fl_RGB_Image</A> | - +----<B>Fl_Bitmap</B> - | - +----<A href="Fl_XBM_Image.html">Fl_XBM_Image</A> + +----<B>Fl_PNM_Image</B> </PRE></UL> <H3>Include Files</H3> <UL><PRE> -#include <FL/Fl_Bitmap.H> +#include <FL/Fl_PNM_Image.H> </PRE></UL> <H3>Description</H3> -<P>The <TT>Fl_Bitmap</TT> class supports caching and drawing of mono-color -(bitmap) images. Images are drawn using the current color.</P> +<P>The <TT>Fl_PNM_Image</TT> class supports loading, caching, +and drawing of Portable Anymap (PNM, PBM, PGM, PPM) image files. The class +loads bitmap, grayscale, and full-color images in both ASCII and +binary formats.</P> <H3>Methods</H3> <UL> - <LI><A href="#Fl_Bitmap.Fl_Bitmap">Fl_Bitmap</A></LI> + <LI><A href="#Fl_PNM_Image.Fl_PNM_Image">Fl_PNM_Image</A></LI> - <LI><A href="#Fl_Bitmap.~Fl_Bitmap">~Fl_Bitmap</A></LI> + <LI><A href="#Fl_PNM_Image.~Fl_PNM_Image">~Fl_PNM_Image</A></LI> </UL> -<H4><A name="Fl_Bitmap.Fl_Bitmap">Fl_Bitmap::Fl_Bitmap(const char *array, int W, int H);<BR> -Fl_Bitmap::Fl_Bitmap(const unsigned char *array, int W, int H);</A></H4> +<H4><A name="Fl_PNM_Image.Fl_PNM_Image">Fl_PNM_Image::Fl_PNM_Image(const char *filename);</A></H4> -<P>The constructors create a new bitmap from the specified bitmap data.</P> +<P>The constructor loads the named PNM image.</P> -<H4><A name="Fl_Bitmap.~Fl_Bitmap">Fl_Bitmap::~Fl_Bitmap();</A></H4> +<H4><A name="Fl_PNM_Image.~Fl_PNM_Image">Fl_PNM_Image::~Fl_PNM_Image();</A></H4> <P>The destructor free all memory and server resources that are used by -the bitmap.</P> +the image.</P> </BODY> </HTML> diff --git a/documentation/Fl_Pixmap.html b/documentation/Fl_Pixmap.html index 010fcc73a..8054e5ffb 100644 --- a/documentation/Fl_Pixmap.html +++ b/documentation/Fl_Pixmap.html @@ -3,7 +3,7 @@ <!-- NEW PAGE --> -<H2><A name=Fl_Bitmap>class Fl_Bitmap</A></H2> +<H2><A name="Fl_Pixmap">class Fl_Pixmap</A></H2> <HR> <H3>Class Hierarchy</H3> @@ -11,41 +11,44 @@ <UL><PRE> <A href="Fl_Image.html">Fl_Image</A> | - +----<B>Fl_Bitmap</B> + +----<B>Fl_Pixmap</B> | - +----<A href="Fl_XBM_Image.html">Fl_XBM_Image</A> + +----<A href="Fl_GIF_Image.html">Fl_GIF_Image</A>, + <A href="Fl_XPM_Image.html">Fl_XPM_Image</A> </PRE></UL> <H3>Include Files</H3> <UL><PRE> -#include <FL/Fl_Bitmap.H> +#include <FL/Fl_Pixmap.H> </PRE></UL> <H3>Description</H3> -<P>The <TT>Fl_Bitmap</TT> class supports caching and drawing of mono-color -(bitmap) images. Images are drawn using the current color.</P> +<P>The <TT>Fl_Pixmap</TT> class supports caching and drawing of colormap +(pixmap) images, including transparency.</P> <H3>Methods</H3> <UL> - <LI><A href="#Fl_Bitmap.Fl_Bitmap">Fl_Bitmap</A></LI> + <LI><A href="#Fl_Pixmap.Fl_Pixmap">Fl_Pixmap</A></LI> - <LI><A href="#Fl_Bitmap.~Fl_Bitmap">~Fl_Bitmap</A></LI> + <LI><A href="#Fl_Pixmap.~Fl_Pixmap">~Fl_Pixmap</A></LI> </UL> -<H4><A name="Fl_Bitmap.Fl_Bitmap">Fl_Bitmap::Fl_Bitmap(const char *array, int W, int H);<BR> -Fl_Bitmap::Fl_Bitmap(const unsigned char *array, int W, int H);</A></H4> +<H4><A name="Fl_Pixmap.Fl_Pixmap">Fl_Pixmap::Fl_Pixmap(const char * const *data);<BR> +Fl_Pixmap::Fl_Pixmap(const char **data);<BR> +Fl_Pixmap::Fl_Pixmap(const unsigned char * const *data);<BR> +Fl_Pixmap::Fl_Pixmap(const unsigned char **data);</A></H4> -<P>The constructors create a new bitmap from the specified bitmap data.</P> +<P>The constructors create a new pixmap from the specified XPM data.</P> -<H4><A name="Fl_Bitmap.~Fl_Bitmap">Fl_Bitmap::~Fl_Bitmap();</A></H4> +<H4><A name="Fl_Pixmap.~Fl_Pixmap">Fl_Pixmap::~Fl_Pixmap();</A></H4> <P>The destructor free all memory and server resources that are used by -the bitmap.</P> +the pixmap.</P> </BODY> </HTML> diff --git a/documentation/Fl_RGB_Image.html b/documentation/Fl_RGB_Image.html index 010fcc73a..1504a46aa 100644 --- a/documentation/Fl_RGB_Image.html +++ b/documentation/Fl_RGB_Image.html @@ -3,7 +3,7 @@ <!-- NEW PAGE --> -<H2><A name=Fl_Bitmap>class Fl_Bitmap</A></H2> +<H2><A name="Fl_RGB_Image">class Fl_RGB_Image</A></H2> <HR> <H3>Class Hierarchy</H3> @@ -11,41 +11,46 @@ <UL><PRE> <A href="Fl_Image.html">Fl_Image</A> | - +----<B>Fl_Bitmap</B> + +----<B>Fl_RGB_Image</B> | - +----<A href="Fl_XBM_Image.html">Fl_XBM_Image</A> + +----<A href="Fl_JPEG_Image.html">Fl_JPEG_Image</A>, + <A href="Fl_PNG_Image.html">Fl_PNG_Image</A>, + <A href="Fl_PNM_Image.html">Fl_PNM_Image</A> + </PRE></UL> <H3>Include Files</H3> <UL><PRE> -#include <FL/Fl_Bitmap.H> +#include <FL/Fl_RGB_Image.H> </PRE></UL> <H3>Description</H3> -<P>The <TT>Fl_Bitmap</TT> class supports caching and drawing of mono-color -(bitmap) images. Images are drawn using the current color.</P> +<P>The <TT>Fl_RGB_Image</TT> class supports caching and drawing +of full-color images with 1 to 4 channels of color information. +Images with an even number of channels are assumed to contain +alpha information, which is used to blend the image with the +contents of the screen.</P> <H3>Methods</H3> <UL> - <LI><A href="#Fl_Bitmap.Fl_Bitmap">Fl_Bitmap</A></LI> + <LI><A href="#Fl_RGB_Image.Fl_RGB_Image">Fl_RGB_Image</A></LI> - <LI><A href="#Fl_Bitmap.~Fl_Bitmap">~Fl_Bitmap</A></LI> + <LI><A href="#Fl_RGB_Image.~Fl_RGB_Image">~Fl_RGB_Image</A></LI> </UL> -<H4><A name="Fl_Bitmap.Fl_Bitmap">Fl_Bitmap::Fl_Bitmap(const char *array, int W, int H);<BR> -Fl_Bitmap::Fl_Bitmap(const unsigned char *array, int W, int H);</A></H4> +<H4><A name="Fl_RGB_Image.Fl_RGB_Image">Fl_RGB_Image::Fl_RGB_Image(const unsigned char *array, int W, int H, int D = 3, int LD = 0);</A></H4> -<P>The constructors create a new bitmap from the specified bitmap data.</P> +<P>The constructor creates a new image from the specified data.</P> -<H4><A name="Fl_Bitmap.~Fl_Bitmap">Fl_Bitmap::~Fl_Bitmap();</A></H4> +<H4><A name="Fl_RGB_Image.~Fl_RGB_Image">Fl_RGB_Image::~Fl_RGB_Image();</A></H4> <P>The destructor free all memory and server resources that are used by -the bitmap.</P> +the image.</P> </BODY> </HTML> diff --git a/documentation/Fl_Text_Buffer.html b/documentation/Fl_Text_Buffer.html index e0b27db16..8ae988a6b 100644 --- a/documentation/Fl_Text_Buffer.html +++ b/documentation/Fl_Text_Buffer.html @@ -1,336 +1,363 @@ -<HTML><BODY> -<HR break> -<H2><A name=Fl_Input>class Fl_Input</A></H2> +<HTML> +<BODY> + +<!-- NEW PAGE --> + +<H2><A name="Fl_Text_Buffer">class Fl_Text_Buffer</A></H2> + <HR> + <H3>Class Hierarchy</H3> -<UL> -<PRE> -<A href=Fl_Input_.html#Fl_Input_>Fl_Input_</A> - | - +----<B>Fl_Input</B> - | - +----<A href=Fl_Float_Input.html#Fl_Float_Input>Fl_Float_Input</A>, <A href=Fl_Int_Input.html#Fl_Int_Input>Fl_Int_Input</A>, - <A href=Fl_Multiline_Input.html#Fl_Multiline_Input>Fl_Multiline_Input</A>, <A href=Fl_Secret_Input.html#Fl_Secret_Input>Fl_Secret_Input</A> -</PRE> -</UL> + +<UL><PRE> +<B>Fl_Text_Buffer</B> + | + +----<A href="Fl_Text_Display.html">Fl_Text_Display</A>, + <A href="Fl_Text_Editor.html">Fl_Text_Editor</A> +</PRE></UL> + <H3>Include Files</H3> -<UL> -<PRE> -#include <FL/Fl_Input.H> -</PRE> -</UL> + +<UL><PRE> +#include <FL/Fl_Text_Buffer.H> +</PRE></UL> + <H3>Description</H3> -<P>This is the FLTK text input widget. It displays a single line of text -and lets the user edit it. Normally it is drawn with an inset box and -a white background. The text may contain any characters (even 0), and -will correctly display anything, using ^X notation for unprintable -control characters and \nnn notation for unprintable characters with -the high bit set. It assumes the font can draw any characters in the -ISO-8859-1 character set. - -<CENTER><TABLE border=1 WIDTH=90% summary="Fl_Input keyboard and mouse bindings."> - -<TR><TD WIDTH=200><B>Mouse button 1</B></TD><TD>Moves the cursor to - this point. Drag selects characters. Double click selects words. - Triple click selects all text. Shift+click extends the selection. - When you select text it is automatically copied to the clipboard. -</TD></TR> - -<TR><TD><B>Mouse button 2</B></TD><TD>Insert the clipboard at -the point clicked. You can also select a region and replace it with the -clipboard by selecting the region with mouse button 2. -</TD></TR> - -<TR><TD><B>Mouse button 3</B></TD><TD>Currently acts like button 1.</TD></TR> - -<TR><TD><B>Backspace</B></TD><TD>Deletes one character to the left, or -deletes the selected region.</TD></TR> -<TR><TD><B>Enter</B></TD><TD>May cause the callback, see when().</TD></TR> -<TR><TD><B>^A or Home</B></TD><TD>Go to start of line.</TD></TR> -<TR><TD><B>^B or Left</B></TD><TD>Move left</TD></TR> -<TR><TD><B>^C</B></TD><TD>Copy the selection to the clipboard</TD></TR> -<TR><TD><B>^D or Delete</B></TD><TD>Deletes one character to the right -or deletes the selected region.</TD></TR> -<TR><TD><B>^E or End</B></TD><TD>Go to the end of line.</TD></TR> -<TR><TD><B>^F or Right</B></TD><TD>Move right</TD></TR> -<TR><TD><B>^K</B></TD><TD>Delete to the end of line (next \n character) -or deletes a single \n character. These deletions are all concatenated -into the clipboard.</TD></TR> -<TR><TD><B>^N or Down</B></TD><TD>Move down (for Fl_Multiline_Input -only, otherwise it moves to the next input field).</TD></TR> -<TR><TD><B>^P or Up</B></TD><TD>Move up (for Fl_Multiline_Input only, -otherwise it moves to the previous input field).</TD></TR> -<TR><TD><B>^U</B></TD><TD>Delete everything.</TD></TR> -<TR><TD><B>^V or ^Y</B></TD><TD>Paste the clipboard</TD></TR> -<TR><TD><B>^X or ^W</B></TD><TD>Copy the region to the clipboard and -delete it.</TD></TR> -<TR><TD><B>^Z or ^_</B></TD><TD>Undo. This is a single-level undo -mechanism, but all adjacent deletions and insertions are concatenated -into a single "undo". Often this will undo a lot more than you -expected.</TD></TR> -<TR><TD><B>Shift+move</B></TD><TD>Move the cursor but also extend the -selection.</TD></TR> - -<TR><TD><B>RightCtrl or -<BR>Compose</B></TD><TD><a name=compose>Start</A> -a <A href="events.html#compose">compose-character</A> -sequence. The next one or two keys typed define the character to -insert (see table that follows.) - -<p>For instance, to type "á" type [compose][a]['] or [compose]['][a]. - -<P>The character "nbsp" (non-breaking space) is typed by using -[compose][space]. - -<P>The single-character sequences may be followed by a space if -necessary to remove ambiguity. For instance, if you really want to -type "ª~" rather than "ã" you must type [compose][a][space][~]. - -<p>The same key may be used to "quote" control characters into the -text. If you need a <tt>^Q</tt> character you can get one by typing -[compose][Control+Q]. - -<p>X may have a key on the keyboard -defined as <tt>XK_Multi_key</tt>. If so this key may be used as well -as the right-hand control key. You can set this up with the program -<tt>xmodmap</tt>. - -<p>If your keyboard is set to support a foreign language you should -also be able to type "dead key" prefix characters. On X you will -actually be able to see what dead key you typed, and if you then move -the cursor without completing the sequence the accent will remain -inserted. -</TABLE></CENTER> -<!-- NEW PAGE --> -<center><table border=1 summary="Character Composition Table"> -<caption align="top">Character Composition Table</caption> -<tr> - <th>Keys</th><th>Char</th> - <th>Keys</th><th>Char</th> - <th>Keys</th><th>Char</th> - <th>Keys</th><th>Char</th> - <th>Keys</th><th>Char</th> - <th>Keys</th><th>Char</th> - -</tr><tr> - <td align=center><TT>sp</TT></td><td align=center><small>nbsp</small></td> - <td align=center><TT>*</tt></td><td align=center>°</td> - <td align=center><TT>` A</tt></td><td align=center>À</td> - <td align=center><TT>D -</tt></td><td align=center>Ð</td> - <td align=center><TT>` a</tt></td><td align=center>à</td> - <td align=center><TT>d -</tt></td><td align=center>ð -</tr><tr> - <td align=center><TT>!</tt></td><td align=center>¡</td> - <td align=center><TT>+ -</tt></td><td align=center>±</td> - <td align=center><TT>' A</tt></td><td align=center>Á</td> - <td align=center><TT>~ N</tt></td><td align=center>Ñ</td> - <td align=center><TT>' a</tt></td><td align=center>á</td> - <td align=center><TT>~ n</tt></td><td align=center>ñ -</tr><tr> - <td align=center><TT>%</tt></td><td align=center>¢</td> - <td align=center><TT>2</tt></td><td align=center>²</td> - <td align=center><TT>A ^</tt></td><td align=center>Â</td> - <td align=center><TT>` O</tt></td><td align=center>Ò</td> - <td align=center><TT>^ a</tt></td><td align=center>â</td> - <td align=center><TT>` o</tt></td><td align=center>ò -</tr><tr> - <td align=center><TT>#</tt></td><td align=center>£</td> - <td align=center><TT>3</tt></td><td align=center>³</td> - <td align=center><TT>~ A</tt></td><td align=center>Ã</td> - <td align=center><TT>' O</tt></td><td align=center>Ó</td> - <td align=center><TT>~ a</tt></td><td align=center>ã</td> - <td align=center><TT>' o</tt></td><td align=center>ó -</tr><tr> - <td align=center><TT>$</tt></td><td align=center>¤</td> - <td align=center><TT>'</tt></td><td align=center>´</td> - <td align=center><TT>: A</tt></td><td align=center>Ä</td> - <td align=center><TT>^ O</tt></td><td align=center>Ô</td> - <td align=center><TT>: a</tt></td><td align=center>ä</td> - <td align=center><TT>^ o</tt></td><td align=center>ô -</tr><tr> - <td align=center><TT>y =</tt></td><td align=center>¥</td> - <td align=center><TT>u</tt></td><td align=center>µ</td> - <td align=center><TT>* A</tt></td><td align=center>Å</td> - <td align=center><TT>~ O</tt></td><td align=center>Õ</td> - <td align=center><TT>* a</tt></td><td align=center>å</td> - <td align=center><TT>~ o</tt></td><td align=center>õ -</tr><tr> - <td align=center><TT>|</tt></td><td align=center>¦</td> - <td align=center><TT>p</tt></td><td align=center>¶</td> - <td align=center><TT>A E</tt></td><td align=center>Æ</td> - <td align=center><TT>: O</tt></td><td align=center>Ö</td> - <td align=center><TT>a e</tt></td><td align=center>æ</td> - <td align=center><TT>: o</tt></td><td align=center>ö -</tr><tr> - <td align=center><TT>&</tt></td><td align=center>§</td> - <td align=center><TT>.</tt></td><td align=center>·</td> - <td align=center><TT>, C</tt></td><td align=center>Ç</td> - <td align=center><TT>x</tt></td><td align=center>×</td> - <td align=center><TT>, c</tt></td><td align=center>ç</td> - <td align=center><TT>- :</tt></td><td align=center>÷ -</tr><tr> - <td align=center><TT>:</tt></td><td align=center>¨</td> - <td align=center><TT>,</tt></td><td align=center>¸</td> - <td align=center><TT>E `</tt></td><td align=center>È</td> - <td align=center><TT>O /</tt></td><td align=center>Ø</td> - <td align=center><TT>` e</tt></td><td align=center>è</td> - <td align=center><TT>o /</tt></td><td align=center>ø -</tr><tr> - <td align=center><TT>c</tt></td><td align=center>©</td> - <td align=center><TT>1</tt></td><td align=center>¹</td> - <td align=center><TT>' E</tt></td><td align=center>É</td> - <td align=center><TT>` U</tt></td><td align=center>Ù</td> - <td align=center><TT>' e</tt></td><td align=center>é</td> - <td align=center><TT>` u</tt></td><td align=center>ù -</tr><tr> - <td align=center><TT>a</tt></td><td align=center>ª</td> - <td align=center><TT>o</tt></td><td align=center>º</td> - <td align=center><TT>^ E</tt></td><td align=center>Ê</td> - <td align=center><TT>' U</tt></td><td align=center>Ú</td> - <td align=center><TT>^ e</tt></td><td align=center>ê</td> - <td align=center><TT>' u</tt></td><td align=center>ú -</tr><tr> - <td align=center><TT>< <</tt></td><td align=center>«</td> - <td align=center><TT>> ></tt></td><td align=center>»</td> - <td align=center><TT>: E</tt></td><td align=center>Ë</td> - <td align=center><TT>^ U</tt></td><td align=center>Û</td> - <td align=center><TT>: e</tt></td><td align=center>ë</td> - <td align=center><TT>^ u</tt></td><td align=center>û -</tr><tr> - <td align=center><TT>~</tt></td><td align=center>¬</td> - <td align=center><TT>1 4</tt></td><td align=center>¼</td> - <td align=center><TT>` I</tt></td><td align=center>Ì</td> - <td align=center><TT>: U</tt></td><td align=center>Ü</td> - <td align=center><TT>` i</tt></td><td align=center>ì</td> - <td align=center><TT>: u</tt></td><td align=center>ü -</tr><tr> - <td align=center><TT>-</tt></td><td align=center></td> - <td align=center><TT>1 2</tt></td><td align=center>½</td> - <td align=center><TT>' I</tt></td><td align=center>Í</td> - <td align=center><TT>' Y</tt></td><td align=center>Ý</td> - <td align=center><TT>' i</tt></td><td align=center>í</td> - <td align=center><TT>' y</tt></td><td align=center>ý -</tr><tr> - <td align=center><TT>r</tt></td><td align=center>®</td> - <td align=center><TT>3 4</tt></td><td align=center>¾</td> - <td align=center><TT>^ I</tt></td><td align=center>Î</td> - <td align=center><TT>T H</tt></td><td align=center>Þ</td> - <td align=center><TT>^ i</tt></td><td align=center>î</td> - <td align=center><TT>t h</tt></td><td align=center>þ -</tr><tr> - <td align=center><TT>_</tt></td><td align=center>¯</td> - <td align=center><TT>?</tt></td><td align=center>¿</td> - <td align=center><TT>: I</tt></td><td align=center>Ï</td> - <td align=center><TT>s s</tt></td><td align=center>ß</td> - <td align=center><TT>: i</tt></td><td align=center>ï</td> - <td align=center><TT>: y</tt></td><td align=center>ÿ -</table></center> +<P>The <TT>Fl_Text_Buffer</TT> class is used by the <TT>Fl_Text_Display</TT> +and <TT>Fl_Text_Editor</TT> to manage complex text data and is based upon the +excellent NEdit text editor engine - see +<A HREF="http://www.nedit.org/">http://www.nedit.org/</A>.</P> <H3>Methods</H3> -<CENTER> -<TABLE width=90% summary="Fl_Input methods."> -<TR><TD align=left valign=top> -<UL> -<LI><A href=#Fl_Input.Fl_Input>Fl_Input</A></LI> -<LI><A href=#Fl_Input.~Fl_Input>~Fl_Input</A></LI> -<LI><A href=#Fl_Input.cursor_color>cursor_color</A></LI> -</UL> -</TD><TD align=left valign=top> -<UL> -<LI><A href=#Fl_Input.index>index</A></LI> -<LI><A href=#Fl_Input.size>size</A></LI> -</UL> -</TD><TD align=left valign=top> -<UL> -<LI><A href=#Fl_Input.static_value>static_value</A></LI> -<LI><A href=#Fl_Input.textcolor>textcolor</A></LI> -</UL> -</TD><TD align=left valign=top> -<UL> -<LI><A href=#Fl_Input.textfont>textfont</A></LI> -<LI><A href=#Fl_Input.textsize>textsize</A></LI> -</UL> -</TD><TD align=left valign=top> -<UL> -<LI><A href=#Fl_Input.value>value</A></LI> -<LI><A href=#Fl_Input.when>when</A></LI> -</UL> -</TD></TR> -</TABLE> -</CENTER> -<H4><A name=Fl_Input.Fl_Input>Fl_Input::Fl_Input(int x, int y, int w, -int h, const char *label = 0)</A></H4> - Creates a new <TT>Fl_Input</TT> widget using the given position, size, -and label string. The default boxtype is <TT>FL_DOWN_BOX</TT>. -<H4><A name=Fl_Input.~Fl_Input>virtual Fl_Input::~Fl_Input()</A></H4> - Destroys the widget and any value associated with it. -<H4><A name=Fl_Input.value>const char *Fl_Input::value() const -<BR> int Fl_Input::value(const char*) -<BR> int Fl_Input::value(const char*, int)</A></H4> - The first form returns the current value, which is a pointer to the -internal buffer and is valid only until the next event is handled. -<P>The second two forms change the text and set the mark and the point -to the end of it. The string is copied to the internal buffer. Passing <TT> -NULL</TT> is the same as "". This returns non-zero if the new value is -different than the current one. You can use the second version to -directly set the length if you know it already or want to put nul's in -the text. </P> -<H4><A name=Fl_Input.static_value>int Fl_Input::static_value(const -char*) -<BR> int Fl_Input::static_value(const char*, int)</A></H4> - Change the text and set the mark and the point to the end of it. The -string is <I>not</I> copied. If the user edits the string it is copied -to the internal buffer then. This can save a great deal of time and -memory if your program is rapidly changing the values of text fields, -but this will only work if the passed string remains unchanged until -either the <TT>Fl_Input</TT> is destroyed or <TT>value()</TT> is called -again. -<H4><A name=Fl_Input.size>int Fl_Input::size() const</A></H4> - Returns the number of characters in <TT>value()</TT>. This may be -greater than <TT>strlen(value())</TT> if there are nul characters in -it. -<H4><A name=Fl_Input.index>char Fl_Input::index(int) const</A></H4> - Same as <TT>value()[n]</TT>, but may be faster in plausible -implementations. No bounds checking is done. -<H4><A name=Fl_Input.when>Fl_When Fl_Widget::when() const -<BR> void Fl_Widget::when(Fl_When)</A></H4> - Controls when callbacks are done. The following values are useful, -the default value is <TT>FL_WHEN_RELEASE</TT>: + <UL> -<LI><TT>0</TT>: The callback is not done, but <TT>changed()</TT> is - turned on. </LI> -<LI><TT>FL_WHEN_CHANGED</TT>: The callback is done each time the text -is changed by the user. </LI> -<LI><TT>FL_WHEN_RELEASE</TT>: The callback will be done when this -widget loses the focus, including when the window is unmapped. This -is a useful value for text fields in a panel where doing the callback -on every change is wasteful. However the callback will also happen if -the mouse is moved out of the window, which means it should not do -anything visible (like pop up an error message). You might do better -setting this to zero, and scanning all the items for <TT>changed()</TT> - when the OK button on a panel is pressed. </LI> -<LI><TT>FL_WHEN_ENTER_KEY</TT>: If the user types the Enter key, the -entire text is selected, and the callback is done if the text has -changed. Normally the Enter key will navigate to the next field (or -insert a newline for a <TT>Fl_Mulitline_Input</TT>), this changes the -behavior. </LI> -<LI><TT>FL_WHEN_ENTER_KEY|FL_WHEN_NOT_CHANGED</TT>: The Enter key will -do the callback even if the text has not changed. Useful for command -fields. </LI> + + <H4><A NAME="Fl_Text_Buffer.Fl_Text_Buffer">Fl_Text_Buffer</A></H4> + <H4><A NAME="Fl_Text_Buffer.~Fl_Text_Buffer">~Fl_Text_Buffer</A></H4> + <H4><A NAME="Fl_Text_Buffer.add_modify_callback">add_modify_callback</A></H4> + <H4><A NAME="Fl_Text_Buffer.append">append</A></H4> + <H4><A NAME="Fl_Text_Buffer.appendfile">appendfile</A></H4> + <H4><A NAME="Fl_Text_Buffer.call_modify_callbacks">call_modify_callbacks</A></H4> + <H4><A NAME="Fl_Text_Buffer.character">character</A></H4> + <H4><A NAME="Fl_Text_Buffer.character_width">character_width</A></H4> + <H4><A NAME="Fl_Text_Buffer.clear_rectangular">clear_rectangular</A></H4> + <H4><A NAME="Fl_Text_Buffer.copy">copy</A></H4> + <H4><A NAME="Fl_Text_Buffer.count_displayed_characters">count_displayed_characters</A></H4> + <H4><A NAME="Fl_Text_Buffer.count_lines">count_lines</A></H4> + <H4><A NAME="Fl_Text_Buffer.expand_character">expand_character</A></H4> + <H4><A NAME="Fl_Text_Buffer.findchar_backward">findchar_backward</A></H4> + <H4><A NAME="Fl_Text_Buffer.findchar_forward">findchar_forward</A></H4> + <H4><A NAME="Fl_Text_Buffer.findchars_backward">findchars_backward</A></H4> + <H4><A NAME="Fl_Text_Buffer.findchars_forward">findchars_forward</A></H4> + <H4><A NAME="Fl_Text_Buffer.highlight">highlight</A></H4> + <H4><A NAME="Fl_Text_Buffer.highlight_position">highlight_position</A></H4> + <H4><A NAME="Fl_Text_Buffer.highlight_rectangular">highlight_rectangular</A></H4> + <H4><A NAME="Fl_Text_Buffer.highlight_selection">highlight_selection</A></H4> + <H4><A NAME="Fl_Text_Buffer.highlight_text">highlight_text</A></H4> + <H4><A NAME="Fl_Text_Buffer.insert_column">insert_column</A></H4> + <H4><A NAME="Fl_Text_Buffer.insertfile">insertfile</A></H4> + <H4><A NAME="Fl_Text_Buffer.insert">insert</A></H4> + <H4><A NAME="Fl_Text_Buffer.length">length</A></H4> + <H4><A NAME="Fl_Text_Buffer.line_end">line_end</A></H4> + <H4><A NAME="Fl_Text_Buffer.line_start">line_start</A></H4> + <H4><A NAME="Fl_Text_Buffer.line_text">line_text</A></H4> + <H4><A NAME="Fl_Text_Buffer.loadfile">loadfile</A></H4> + <H4><A NAME="Fl_Text_Buffer.null_substitution_character">null_substitution_character</A></H4> + <H4><A NAME="Fl_Text_Buffer.outputfile">outputfile</A></H4> + <H4><A NAME="Fl_Text_Buffer.overlay_rectangular">overlay_rectangular</A></H4> + <H4><A NAME="Fl_Text_Buffer.primary_selection">primary_selection</A></H4> + <H4><A NAME="Fl_Text_Buffer.remove_modify_callback">remove_modify_callback</A></H4> + <H4><A NAME="Fl_Text_Buffer.remove_rectangular">remove_rectangular</A></H4> + <H4><A NAME="Fl_Text_Buffer.remove">remove</A></H4> + <H4><A NAME="Fl_Text_Buffer.remove_secondary_selection">remove_secondary_selection</A></H4> + <H4><A NAME="Fl_Text_Buffer.remove_selection">remove_selection</A></H4> + <H4><A NAME="Fl_Text_Buffer.replace_rectangular">replace_rectangular</A></H4> + <H4><A NAME="Fl_Text_Buffer.replace">replace</A></H4> + <H4><A NAME="Fl_Text_Buffer.replace_secondary_selection">replace_secondary_selection</A></H4> + <H4><A NAME="Fl_Text_Buffer.replace_selection">replace_selection</A></H4> + <H4><A NAME="Fl_Text_Buffer.rewind_lines">rewind_lines</A></H4> + <H4><A NAME="Fl_Text_Buffer.savefile">savefile</A></H4> + <H4><A NAME="Fl_Text_Buffer.search_backward">search_backward</A></H4> + <H4><A NAME="Fl_Text_Buffer.search_forward">search_forward</A></H4> + <H4><A NAME="Fl_Text_Buffer.secondary_selection_position">secondary_selection_position</A></H4> + <H4><A NAME="Fl_Text_Buffer.secondary_selection">secondary_selection</A></H4> + <H4><A NAME="Fl_Text_Buffer.secondary_selection_text">secondary_selection_text</A></H4> + <H4><A NAME="Fl_Text_Buffer.secondary_select_rectangular">secondary_select_rectangular</A></H4> + <H4><A NAME="Fl_Text_Buffer.secondary_select">secondary_select</A></H4> + <H4><A NAME="Fl_Text_Buffer.secondary_unselect">secondary_unselect</A></H4> + <H4><A NAME="Fl_Text_Buffer.selected">selected</A></H4> + <H4><A NAME="Fl_Text_Buffer.selection_position">selection_position</A></H4> + <H4><A NAME="Fl_Text_Buffer.selection_text">selection_text</A></H4> + <H4><A NAME="Fl_Text_Buffer.select_rectangular">select_rectangular</A></H4> + <H4><A NAME="Fl_Text_Buffer.select">select</A></H4> + <H4><A NAME="Fl_Text_Buffer.skip_displayed_characters">skip_displayed_characters</A></H4> + <H4><A NAME="Fl_Text_Buffer.skip_lines">skip_lines</A></H4> + <H4><A NAME="Fl_Text_Buffer.substitute_null_characters">substitute_null_characters</A></H4> + <H4><A NAME="Fl_Text_Buffer.tab_distance">tab_distance</A></H4> + <H4><A NAME="Fl_Text_Buffer.tab_distance">tab_distance</A></H4> + <H4><A NAME="Fl_Text_Buffer.text_in_rectangle">text_in_rectangle</A></H4> + <H4><A NAME="Fl_Text_Buffer.text_range">text_range</A></H4> + <H4><A NAME="Fl_Text_Buffer.text">text</A></H4> + <H4><A NAME="Fl_Text_Buffer.unhighlight">unhighlight</A></H4> + <H4><A NAME="Fl_Text_Buffer.unselect">unselect</A></H4> + <H4><A NAME="Fl_Text_Buffer.unsubstitute_null_characters">unsubstitute_null_characters</A></H4> + <H4><A NAME="Fl_Text_Buffer.word_end">word_end</A></H4> + <H4><A NAME="Fl_Text_Buffer.word_start">word_start</A></H4> + </UL> -<H4><A name=Fl_Input.textcolor>Fl_Color Fl_Input::textcolor() const -<BR> void Fl_Input::textcolor(Fl_Color)</A></H4> - Gets or sets the color of the text in the input field. -<H4><A name=Fl_Input.textfont>Fl_Font Fl_Input::textfont() const -<BR> void Fl_Input::textfont(Fl_Font)</A></H4> - Gets or sets the font of the text in the input field. -<H4><A name=Fl_Input.textsize>uchar Fl_Input::textsize() const -<BR> void Fl_Input::textsize(uchar)</A></H4> - Gets or sets the size of the text in the input field. -<H4><A name=Fl_Input.cursor_color>Fl_Color Fl_Input::cursor_color() -const -<BR> void Fl_Input::cursor_color(Fl_Color)</A></H4> - Get or set the color of the cursor. This is black by default. - -</BODY></HTML> + +<H4><A NAME="Fl_Text_Buffer.Fl_Text_Buffer">Fl_Text_Buffer</A></H4> + +<H4><A NAME="Fl_Text_Buffer.~Fl_Text_Buffer">~Fl_Text_Buffer</A></H4> + +<H4><A NAME="Fl_Text_Buffer.add_modify_callback">add_modify_callback</A></H4> + +<H4><A NAME="Fl_Text_Buffer.append">append</A></H4> + +<H4><A NAME="Fl_Text_Buffer.appendfile">appendfile</A></H4> + +<H4><A NAME="Fl_Text_Buffer.call_modify_callbacks">call_modify_callbacks</A></H4> + +<H4><A NAME="Fl_Text_Buffer.character">character</A></H4> + +<H4><A NAME="Fl_Text_Buffer.character_width">character_width</A></H4> + +<H4><A NAME="Fl_Text_Buffer.clear_rectangular">clear_rectangular</A></H4> + +<H4><A NAME="Fl_Text_Buffer.copy">copy</A></H4> + +<H4><A NAME="Fl_Text_Buffer.count_displayed_characters">count_displayed_characters</A></H4> + +<H4><A NAME="Fl_Text_Buffer.count_lines">count_lines</A></H4> + +<H4><A NAME="Fl_Text_Buffer.expand_character">expand_character</A></H4> + +<H4><A NAME="Fl_Text_Buffer.findchar_backward">findchar_backward</A></H4> + +<H4><A NAME="Fl_Text_Buffer.findchar_forward">findchar_forward</A></H4> + +<H4><A NAME="Fl_Text_Buffer.findchars_backward">findchars_backward</A></H4> + +<H4><A NAME="Fl_Text_Buffer.findchars_forward">findchars_forward</A></H4> + +<H4><A NAME="Fl_Text_Buffer.highlight">highlight</A></H4> + +<H4><A NAME="Fl_Text_Buffer.highlight_position">highlight_position</A></H4> + +<H4><A NAME="Fl_Text_Buffer.highlight_rectangular">highlight_rectangular</A></H4> + +<H4><A NAME="Fl_Text_Buffer.highlight_selection">highlight_selection</A></H4> + +<H4><A NAME="Fl_Text_Buffer.highlight_text">highlight_text</A></H4> + +<H4><A NAME="Fl_Text_Buffer.insert_column">insert_column</A></H4> + +<H4><A NAME="Fl_Text_Buffer.insertfile">insertfile</A></H4> + +<H4><A NAME="Fl_Text_Buffer.insert">insert</A></H4> + +<H4><A NAME="Fl_Text_Buffer.length">length</A></H4> + +<H4><A NAME="Fl_Text_Buffer.line_end">line_end</A></H4> + +<H4><A NAME="Fl_Text_Buffer.line_start">line_start</A></H4> + +<H4><A NAME="Fl_Text_Buffer.line_text">line_text</A></H4> + +<H4><A NAME="Fl_Text_Buffer.loadfile">loadfile</A></H4> + +<H4><A NAME="Fl_Text_Buffer.null_substitution_character">null_substitution_character</A></H4> + +<H4><A NAME="Fl_Text_Buffer.outputfile">outputfile</A></H4> + +<H4><A NAME="Fl_Text_Buffer.overlay_rectangular">overlay_rectangular</A></H4> + +<H4><A NAME="Fl_Text_Buffer.primary_selection">primary_selection</A></H4> + +<H4><A NAME="Fl_Text_Buffer.remove_modify_callback">remove_modify_callback</A></H4> + +<H4><A NAME="Fl_Text_Buffer.remove_rectangular">remove_rectangular</A></H4> + +<H4><A NAME="Fl_Text_Buffer.remove">remove</A></H4> + +<H4><A NAME="Fl_Text_Buffer.remove_secondary_selection">remove_secondary_selection</A></H4> + +<H4><A NAME="Fl_Text_Buffer.remove_selection">remove_selection</A></H4> + +<H4><A NAME="Fl_Text_Buffer.replace_rectangular">replace_rectangular</A></H4> + +<H4><A NAME="Fl_Text_Buffer.replace">replace</A></H4> + +<H4><A NAME="Fl_Text_Buffer.replace_secondary_selection">replace_secondary_selection</A></H4> + +<H4><A NAME="Fl_Text_Buffer.replace_selection">replace_selection</A></H4> + +<H4><A NAME="Fl_Text_Buffer.rewind_lines">rewind_lines</A></H4> + +<H4><A NAME="Fl_Text_Buffer.savefile">savefile</A></H4> + +<H4><A NAME="Fl_Text_Buffer.search_backward">search_backward</A></H4> + +<H4><A NAME="Fl_Text_Buffer.search_forward">search_forward</A></H4> + +<H4><A NAME="Fl_Text_Buffer.secondary_selection_position">secondary_selection_position</A></H4> + +<H4><A NAME="Fl_Text_Buffer.secondary_selection">secondary_selection</A></H4> + +<H4><A NAME="Fl_Text_Buffer.secondary_selection_text">secondary_selection_text</A></H4> + +<H4><A NAME="Fl_Text_Buffer.secondary_select_rectangular">secondary_select_rectangular</A></H4> + +<H4><A NAME="Fl_Text_Buffer.secondary_select">secondary_select</A></H4> + +<H4><A NAME="Fl_Text_Buffer.secondary_unselect">secondary_unselect</A></H4> + +<H4><A NAME="Fl_Text_Buffer.selected">selected</A></H4> + +<H4><A NAME="Fl_Text_Buffer.selection_position">selection_position</A></H4> + +<H4><A NAME="Fl_Text_Buffer.selection_text">selection_text</A></H4> + +<H4><A NAME="Fl_Text_Buffer.select_rectangular">select_rectangular</A></H4> + +<H4><A NAME="Fl_Text_Buffer.select">select</A></H4> + +<H4><A NAME="Fl_Text_Buffer.skip_displayed_characters">skip_displayed_characters</A></H4> + +<H4><A NAME="Fl_Text_Buffer.skip_lines">skip_lines</A></H4> + +<H4><A NAME="Fl_Text_Buffer.substitute_null_characters">substitute_null_characters</A></H4> + +<H4><A NAME="Fl_Text_Buffer.tab_distance">tab_distance</A></H4> + +<H4><A NAME="Fl_Text_Buffer.tab_distance">tab_distance</A></H4> + +<H4><A NAME="Fl_Text_Buffer.text_in_rectangle">text_in_rectangle</A></H4> + +<H4><A NAME="Fl_Text_Buffer.text_range">text_range</A></H4> + +<H4><A NAME="Fl_Text_Buffer.text">text</A></H4> + +<H4><A NAME="Fl_Text_Buffer.unhighlight">unhighlight</A></H4> + +<H4><A NAME="Fl_Text_Buffer.unselect">unselect</A></H4> + +<H4><A NAME="Fl_Text_Buffer.unsubstitute_null_characters">unsubstitute_null_characters</A></H4> + +<H4><A NAME="Fl_Text_Buffer.word_end">word_end</A></H4> + +<H4><A NAME="Fl_Text_Buffer.word_start">word_start</A></H4> + + + + Fl_Text_Buffer(int requestedSize = 0); + ~Fl_Text_Buffer(); + + int length() { return mLength; } + const char* text(); + void text(const char* text); + const char* text_range(int start, int end); + char character(int pos); + const char* text_in_rectangle(int start, int end, int rectStart, int rectEnd); + void insert(int pos, const char* text); + void append(const char* text) { insert(length(), text); } + void remove(int start, int end); + void replace(int start, int end, const char *text); + void copy(Fl_Text_Buffer* fromBuf, int fromStart, int fromEnd, int toPos); + int insertfile(const char *file, int pos, int buflen = 128*1024); + int appendfile(const char *file, int buflen = 128*1024) + { return insertfile(file, length(), buflen); } + int loadfile(const char *file, int buflen = 128*1024) + { select(0, length()); remove_selection(); return appendfile(file, buflen); } + int outputfile(const char *file, int start, int end, int buflen = 128*1024); + int savefile(const char *file, int buflen = 128*1024) + { return outputfile(file, 0, length(), buflen); } + + void insert_column(int column, int startPos, const char* text, + int* charsInserted, int* charsDeleted); + + void replace_rectangular(int start, int end, int rectStart, int rectEnd, + const char* text); + + void overlay_rectangular(int startPos, int rectStart, int rectEnd, + const char* text, int* charsInserted, + int* charsDeleted); + + void remove_rectangular(int start, int end, int rectStart, int rectEnd); + void clear_rectangular(int start, int end, int rectStart, int rectEnd); + int tab_distance() { return mTabDist; } + void tab_distance(int tabDist); + void select(int start, int end); + int selected() { return mPrimary.selected(); } + void unselect(); + void select_rectangular(int start, int end, int rectStart, int rectEnd); + int selection_position(int* start, int* end); + + int selection_position(int* start, int* end, int* isRect, int* rectStart, + int* rectEnd); + + const char* selection_text(); + void remove_selection(); + void replace_selection(const char* text); + void secondary_select(int start, int end); + void secondary_unselect(); + + void secondary_select_rectangular(int start, int end, int rectStart, + int rectEnd); + + int secondary_selection_position(int* start, int* end, int* isRect, + int* rectStart, int* rectEnd); + + const char* secondary_selection_text(); + void remove_secondary_selection(); + void replace_secondary_selection(const char* text); + void highlight(int start, int end); + void unhighlight(); + void highlight_rectangular(int start, int end, int rectStart, int rectEnd); + + int highlight_position(int* start, int* end, int* isRect, int* rectStart, + int* rectEnd); + + const char* highlight_text(); + void add_modify_callback(Fl_Text_Modify_Cb bufModifiedCB, void* cbArg); + void remove_modify_callback(Fl_Text_Modify_Cb bufModifiedCB, void* cbArg); + + void call_modify_callbacks() { call_modify_callbacks(0, 0, 0, 0, 0); } + + const char* line_text(int pos); + int line_start(int pos); + int line_end(int pos); + int word_start(int pos); + int word_end(int pos); + int expand_character(int pos, int indent, char *outStr); + + static int expand_character(char c, int indent, char* outStr, int tabDist, + char nullSubsChar); + + static int character_width(char c, int indent, int tabDist, char nullSubsChar); + int count_displayed_characters(int lineStartPos, int targetPos); + int skip_displayed_characters(int lineStartPos, int nChars); + int count_lines(int startPos, int endPos); + int skip_lines(int startPos, int nLines); + int rewind_lines(int startPos, int nLines); + int findchar_forward(int startPos, char searchChar, int* foundPos); + int findchar_backward(int startPos, char searchChar, int* foundPos); + int findchars_forward(int startPos, const char* searchChars, int* foundPos); + int findchars_backward(int startPos, const char* searchChars, int* foundPos); + + int search_forward(int startPos, const char* searchString, int* foundPos, + int matchCase = 0); + + int search_backward(int startPos, const char* searchString, int* foundPos, + int matchCase = 0); + + int substitute_null_characters(char* string, int length); + void unsubstitute_null_characters(char* string); + char null_substitution_character() { return mNullSubsChar; } + Fl_Text_Selection* primary_selection() { return &mPrimary; } + Fl_Text_Selection* secondary_selection() { return &mSecondary; } + Fl_Text_Selection* highlight_selection() { return &mHighlight; } + +</BODY> +</HTML> diff --git a/documentation/Fl_XBM_Image.html b/documentation/Fl_XBM_Image.html index 010fcc73a..38a88c28d 100644 --- a/documentation/Fl_XBM_Image.html +++ b/documentation/Fl_XBM_Image.html @@ -3,49 +3,46 @@ <!-- NEW PAGE --> -<H2><A name=Fl_Bitmap>class Fl_Bitmap</A></H2> +<H2><A name="Fl_XBM_Image">class Fl_XBM_Image</A></H2> <HR> <H3>Class Hierarchy</H3> <UL><PRE> -<A href="Fl_Image.html">Fl_Image</A> +<A href="Fl_Bitmap.html">Fl_Bitmap</A> | - +----<B>Fl_Bitmap</B> - | - +----<A href="Fl_XBM_Image.html">Fl_XBM_Image</A> + +----<B>Fl_XBM_Image</B> </PRE></UL> <H3>Include Files</H3> <UL><PRE> -#include <FL/Fl_Bitmap.H> +#include <FL/Fl_XBM_Image.H> </PRE></UL> <H3>Description</H3> -<P>The <TT>Fl_Bitmap</TT> class supports caching and drawing of mono-color -(bitmap) images. Images are drawn using the current color.</P> +<P>The <TT>Fl_XBM_Image</TT> class supports loading, caching, +and drawing of X Bitmap (XBM) bitmap files.</P> <H3>Methods</H3> <UL> - <LI><A href="#Fl_Bitmap.Fl_Bitmap">Fl_Bitmap</A></LI> + <LI><A href="#Fl_XBM_Image.Fl_XBM_Image">Fl_XBM_Image</A></LI> - <LI><A href="#Fl_Bitmap.~Fl_Bitmap">~Fl_Bitmap</A></LI> + <LI><A href="#Fl_XBM_Image.~Fl_XBM_Image">~Fl_XBM_Image</A></LI> </UL> -<H4><A name="Fl_Bitmap.Fl_Bitmap">Fl_Bitmap::Fl_Bitmap(const char *array, int W, int H);<BR> -Fl_Bitmap::Fl_Bitmap(const unsigned char *array, int W, int H);</A></H4> +<H4><A name="Fl_XBM_Image.Fl_XBM_Image">Fl_XBM_Image::Fl_XBM_Image(const char *filename);</A></H4> -<P>The constructors create a new bitmap from the specified bitmap data.</P> +<P>The constructor loads the named XBM file.</P> -<H4><A name="Fl_Bitmap.~Fl_Bitmap">Fl_Bitmap::~Fl_Bitmap();</A></H4> +<H4><A name="Fl_XBM_Image.~Fl_XBM_Image">Fl_XBM_Image::~Fl_XBM_Image();</A></H4> <P>The destructor free all memory and server resources that are used by -the bitmap.</P> +the image.</P> </BODY> </HTML> diff --git a/documentation/Fl_XPM_Image.html b/documentation/Fl_XPM_Image.html index 010fcc73a..821751937 100644 --- a/documentation/Fl_XPM_Image.html +++ b/documentation/Fl_XPM_Image.html @@ -3,49 +3,46 @@ <!-- NEW PAGE --> -<H2><A name=Fl_Bitmap>class Fl_Bitmap</A></H2> +<H2><A name="Fl_XPM_Image">class Fl_XPM_Image</A></H2> <HR> <H3>Class Hierarchy</H3> <UL><PRE> -<A href="Fl_Image.html">Fl_Image</A> +<A href="Fl_Pixmap.html">Fl_Pixmap</A> | - +----<B>Fl_Bitmap</B> - | - +----<A href="Fl_XBM_Image.html">Fl_XBM_Image</A> + +----<B>Fl_XPM_Image</B> </PRE></UL> <H3>Include Files</H3> <UL><PRE> -#include <FL/Fl_Bitmap.H> +#include <FL/Fl_XPM_Image.H> </PRE></UL> <H3>Description</H3> -<P>The <TT>Fl_Bitmap</TT> class supports caching and drawing of mono-color -(bitmap) images. Images are drawn using the current color.</P> +<P>The <TT>Fl_XPM_Image</TT> class supports loading, caching, +and drawing of X Pixmap (XPM) images, including transparency.</P> <H3>Methods</H3> <UL> - <LI><A href="#Fl_Bitmap.Fl_Bitmap">Fl_Bitmap</A></LI> + <LI><A href="#Fl_XPM_Image.Fl_XPM_Image">Fl_XPM_Image</A></LI> - <LI><A href="#Fl_Bitmap.~Fl_Bitmap">~Fl_Bitmap</A></LI> + <LI><A href="#Fl_XPM_Image.~Fl_XPM_Image">~Fl_XPM_Image</A></LI> </UL> -<H4><A name="Fl_Bitmap.Fl_Bitmap">Fl_Bitmap::Fl_Bitmap(const char *array, int W, int H);<BR> -Fl_Bitmap::Fl_Bitmap(const unsigned char *array, int W, int H);</A></H4> +<H4><A name="Fl_XPM_Image.Fl_XPM_Image">Fl_XPM_Image::Fl_XPM_Image(const char *filename);</A></H4> -<P>The constructors create a new bitmap from the specified bitmap data.</P> +<P>The constructor loads the named XPM image.</P> -<H4><A name="Fl_Bitmap.~Fl_Bitmap">Fl_Bitmap::~Fl_Bitmap();</A></H4> +<H4><A name="Fl_XPM_Image.~Fl_XPM_Image">Fl_XPM_Image::~Fl_XPM_Image();</A></H4> <P>The destructor free all memory and server resources that are used by -the bitmap.</P> +the image.</P> </BODY> </HTML> diff --git a/documentation/fltk.book b/documentation/fltk.book index 33ff1c7b5..1d00e2691 100644 --- a/documentation/fltk.book +++ b/documentation/fltk.book @@ -71,6 +71,9 @@ Fl_Select_Browser.html Fl_Single_Window.html Fl_Slider.html Fl_Tabs.html +Fl_Text_Buffer.html +Fl_Text_Display.html +Fl_Text_Editor.html Fl_Tile.html Fl_Tiled_Image.html Fl_Timer.html |
