1999-01-13 22:28:54 +03:00
|
|
|
<HTML><BODY>
|
2001-11-28 21:00:17 +03:00
|
|
|
<!-- NEW PAGE -->
|
1999-01-13 22:28:54 +03:00
|
|
|
<H2><A name=Fl_Tile>class Fl_Tile</A></H2>
|
|
|
|
<HR>
|
|
|
|
<H3>Class Hierarchy</H3>
|
|
|
|
<UL>
|
|
|
|
<PRE>
|
2000-03-15 21:57:07 +03:00
|
|
|
<A href=Fl_Group.html#Fl_Group>Fl_Group</A>
|
1998-12-29 17:21:17 +03:00
|
|
|
|
|
1999-01-13 22:28:54 +03:00
|
|
|
+----<B>Fl_Tile</B>
|
|
|
|
</PRE>
|
|
|
|
</UL>
|
|
|
|
<H3>Include Files</H3>
|
|
|
|
<UL>
|
|
|
|
<PRE>
|
|
|
|
#include <FL/Fl_Tile.H>
|
|
|
|
</PRE>
|
|
|
|
</UL>
|
|
|
|
<H3>Description</H3>
|
2001-11-29 22:24:00 +03:00
|
|
|
The <TT>Fl_Tile</TT> class lets you resize the children by dragging
|
|
|
|
the border between them:
|
2001-05-06 20:25:05 +04:00
|
|
|
<P ALIGN=CENTER><IMG src="Fl_Tile.gif" ALT="Fl_Tile widget."></P>
|
2001-11-29 22:24:00 +03:00
|
|
|
<P><TT>Fl_Tile</TT> allows objects to be resized to zero dimensions.
|
|
|
|
To prevent this you can use the <TT>resizable()</TT> to limit where
|
1999-01-13 22:28:54 +03:00
|
|
|
corners can be dragged to. </P>
|
2001-11-29 22:24:00 +03:00
|
|
|
<P>Even though objects can be resized to zero sizes, they must
|
|
|
|
initially have non-zero sizes so the <TT>Fl_Tile</TT> can figure out
|
|
|
|
their layout. If desired, call <TT>position()</TT> after creating the
|
|
|
|
children but before displaying the window to set the borders where you
|
1999-01-13 22:28:54 +03:00
|
|
|
want. </P>
|
1999-01-27 11:45:11 +03:00
|
|
|
<P>The "borders" are part of the children, an
|
2001-11-29 22:24:00 +03:00
|
|
|
<TT>Fl_Tile</TT> does not
|
|
|
|
draw any graphics of it's own. In the above example all the final
|
|
|
|
children have <TT>FL_DOWN_BOX</TT> types, and the "ridges" you see are
|
1999-01-15 01:14:01 +03:00
|
|
|
two adjacent <TT>FL_DOWN_BOX</TT>'s drawn next to each other. </P>
|
1999-01-13 22:28:54 +03:00
|
|
|
<H3>Methods</H3>
|
|
|
|
<UL>
|
|
|
|
<LI><A href=#Fl_Tile.Fl_Tile>Fl_Tile</A></LI>
|
|
|
|
<LI><A href=#Fl_Tile.~Fl_Tile>~Fl_Tile</A></LI>
|
|
|
|
<LI><A href=#Fl_Tile.position>position</A></LI>
|
|
|
|
<LI><A href=#Fl_Tile.resizeable>resizeable</A></LI>
|
|
|
|
</UL>
|
2001-11-29 22:24:00 +03:00
|
|
|
<H4><A name=Fl_Tile.Fl_Tile>Fl_Tile::Fl_Tile(int x, int y, int w, int
|
1999-01-13 22:28:54 +03:00
|
|
|
h, const char *label = 0)</A></H4>
|
2001-11-29 22:24:00 +03:00
|
|
|
Creates a new <TT>Fl_Tile</TT> widget using the given position, size,
|
|
|
|
and label string. The default boxtype is <TT>FL_NO_BOX</TT>.
|
1999-01-13 22:28:54 +03:00
|
|
|
<H4><A name=Fl_Tile.~Fl_Tile>virtual Fl_Tile::~Fl_Tile()</A></H4>
|
2001-11-29 22:24:00 +03:00
|
|
|
The destructor <I>also deletes all the children</I>. This allows a
|
|
|
|
whole tree to be deleted at once, without having to keep a pointer to
|
1999-01-13 22:28:54 +03:00
|
|
|
all the children in the user code. A kludge has been done so the <TT>
|
2001-11-29 22:24:00 +03:00
|
|
|
Fl_Tile</TT> and all of it's children can be automatic (local)
|
|
|
|
variables, but you must declare the <TT>Fl_Tile</TT> <I>first</I>, so
|
|
|
|
that it is destroyed last.
|
|
|
|
<H4><A name=Fl_Tile.position>void Fl_Tile::position(from_x, from_y,
|
1999-01-13 22:28:54 +03:00
|
|
|
to_x, to_y)</A></H4>
|
2001-11-29 22:24:00 +03:00
|
|
|
Drag the intersection at <TT>from_x,from_y</TT> to <TT>to_x,to_y</TT>.
|
|
|
|
This redraws all the necessary children.
|
1999-01-15 01:14:01 +03:00
|
|
|
<H4><A name=Fl_Tile.resizeable>void Fl_Tile::resizable(Fl_Widget &w)<BR>
|
|
|
|
void Fl_Tile::resizable(Fl_Widget *w)</A></H4>
|
2001-11-29 22:24:00 +03:00
|
|
|
The "resizable" child widget (which should be invisible) limits where the
|
|
|
|
border can be dragged to. If you don't set it, it will be possible to
|
|
|
|
drag the borders right to the edge, and thus resize objects on the edge
|
|
|
|
to zero width or height. The <TT>resizable()</TT> widget is not
|
1999-01-15 01:14:01 +03:00
|
|
|
resized by dragging any borders.
|
|
|
|
</BODY></HTML>
|