Commit ec35289c authored by Aaron M. Ucko's avatar Aaron M. Ucko

[svn-upgrade] Integrating new upstream version, fltk1.1 (1.1.8~r5953)

parent 3cca078e
......@@ -2,7 +2,14 @@ CHANGES IN FLTK 1.1.8
- Documentation fixes (STR #1454, STR #1455, STR #1456,
STR #1457, STR #1458, STR #1460, STR #1481, STR #1578,
STR #1639, STR #1645, STR #1644)
STR #1639, STR #1645, STR #1644, STR #1792, STR #1793,
STR #1742, STR #1777)
- Changing the window size in FLUID would not mark the
project as modified (STR #1751)
- Fixed fl_filename_isdir for "/"-path (STR #1761)
- Fixed Fl_Chart drawing (STR #1756)
- Fixed mapping of subwindows with unmapped parent
windows (STR #1706)
- Fixed rendering of grayscale images with alpha
channel (STR #1703)
- Fixed occasional incomplete refresh (STR #1681)
......
This diff is collapsed.
......@@ -618,7 +618,7 @@ event.
button is pressed. This function returns the button state at the
time of the event. During an <tt>FL_RELEASE</tt> event, the state
of the released button will be <tt>0</tt>. To find out, which button
caused an <tt>FL_RELEASE<tt> event, you can use
caused an <tt>FL_RELEASE</tt> event, you can use
<tt><a href="#Fl.event_button">Fl::event_button()</a></tt> instead.
<H4><A NAME="Fl.event_clicks">int event_clicks();<BR>
......
......@@ -376,8 +376,11 @@ callback function for the widget.
<H4><A NAME="Fl_Browser_.selection">void *Fl_Browser_::selection() const</A></H4>
<P>Returns the item currently selected, or NULL if there is no selection.
For multiple selection browsers this call returns the last item that was
selected.
<P>For multiple selection browsers this call returns the currently focused item,
even if it is not selected. To find all selected items, call
<TT><A href=Fl_Multi_Browser.html#Fl_Multi_Browser.select>
Fl_Multi_Browser::selected()</A></TT> for every item in question.
<H4><A name="Fl_Browser_.textcolor">Fl_Color Fl_Browser_::textcolor() const
......
......@@ -165,7 +165,8 @@ box are moved.
<IMG align=TOP SRC="resizebox2.gif" ALT="Resizeable groups"></P>
<P>The resizable may be set to the group itself (this is the default
value for an <TT>Fl_Group</TT>, although <TT>NULL</TT> is the default
for an <TT>Fl_Window</TT>), in which case all the contents are resized.
for <TT>Fl_Window</TT> and <TT>Fl_Pack</TT>), in which case all the
contents are resized.
If the resizable is <TT>NULL</TT> then all widgets remain a fixed size
and distance from the top-left corner. </P>
<P>It is possible to achieve any type of resize behavior by using an
......
......@@ -144,6 +144,9 @@ Text shortcuts are converted to integer shortcut by calling
<P>The return value is the index into the array that the entry was put. </P>
<P>No items must be added to a menu during a callback to the same menu.</P>
<h4>int Fl_Menu_::add(const char *)</H4>
<P>The passed string is split at any '|' characters and then
......@@ -153,11 +156,15 @@ with Forms and other GL programs. The section strings use the
same special characters as described for the long version of <a
href='#Fl_Menu_.add'><tt>add()</tt></a></p>
<P>No items must be added to a menu during a callback to the same menu.</P>
<H4><A name=Fl_Menu_.clear>void Fl_Menu_::clear()</A></H4>
Same as <tt>menu(NULL)</tt>, set the array pointer to null, indicating
a zero-length menu.
<P>Menus must no be cleared during a callback to the same menu.</P>
<H4><A name=Fl_Menu_.copy>void Fl_Menu_::copy(const
Fl_Menu_Item*, void* user_data = 0)</A></H4>
......@@ -233,6 +240,8 @@ const</a></h4>
Deletes item <TT>n</TT> from the menu. If the menu array was directly
set with menu(x) then copy() is done to make a private array.
<P>No items must be removed from a menu during a callback to the same menu.</P>
<H4><A name=Fl_Menu_.replace>void Fl_Menu_::replace(int n, const char *)</A>
</H4>
......
......@@ -38,23 +38,42 @@ methods to add and remove lines from the browser. </P>
<LI><A href=#Fl_Multi_Browser.select>select</A></LI>
<LI><A href=#Fl_Multi_Browser.value>value</A></LI>
</UL>
<H4><A name=Fl_Multi_Browser.Fl_Multi_Browser>
Fl_Multi_Browser::Fl_Multi_Browser(int x, int y, int w, int h, const
char *label = 0)</A></H4>
Creates a new <TT>Fl_Multi_Browser</TT> widget using the given
Creates a new <TT>Fl_Multi_Browser</TT> widget using the given
position, size, and label string. The default boxtype is <TT>FL_DOWN_BOX</TT>
.
<H4><A name=Fl_Multi_Browser.~Fl_Multi_Browser>virtual
Fl_Multi_Browser::~Fl_Multi_Browser()</A></H4>
The destructor <I>also deletes all the items in the list</I>.
The destructor <I>also deletes all the items in the list</I>.
<H4><A name=Fl_Multi_Browser.deselect>int Fl_Browser::deselect()</A></H4>
Deselects all lines.
<H4><A name=Fl_Multi_Browser.select>int Fl_Browser::select(int,int=1)
<BR> int Fl_Browser::selected(int) const</A></H4>
Selects one or more lines or gets the current selection state of a
line.
<H4><A name=Fl_Multi_Browser.value>int Fl_Browser::value() const
<BR> void Fl_Browser::value(int)</A></H4>
Selects a single line or gets the last toggled line. This returns zero
if no line has been toggled, so be aware that this can happen in a
callback. </BODY></HTML>
Deselects all lines.
<H4><A name=Fl_Multi_Browser.select>int Fl_Browser::select(int line_no,int v=1)
<BR> int Fl_Browser::selected(int line_no) const</A></H4>
The first version of this call selects (v=1) or deselects (v=0)
a line in the browser. The second call returns the current selection
state of a line.
<H4><A name=Fl_Multi_Browser.value>void Fl_Browser::value(int)
<BR> int Fl_Browser::value() const</A></H4>
The first version of this call selects a single line. The second version returns
the currently focused item, even if it is not selected. To find all
selected items, call
<TT><A href=Fl_Multi_Browser.html#Fl_Multi_Browser.select>
Fl_Multi_Browser::selected()</A></TT> for every item in question.
</BODY></HTML>
......@@ -23,9 +23,9 @@
<H3>Description</H3>
This widget was designed to add the functionality of compressing and
aligning widgets.
<P>If <TT>type()</TT> is <TT>FL_HORIZONTAL</TT> all the children are
<P>If <TT>type()</TT> is <TT>Fl_Pack::HORIZONTAL</TT> all the children are
resized to the height of the <TT>Fl_Pack</TT>, and are moved next to
each other horizontally. If <TT>type()</TT> is not <TT>FL_HORIZONTAL</TT>
each other horizontally. If <TT>type()</TT> is not <TT>Fl_Pack::HORIZONTAL</TT>
then the children are resized to the width and are stacked below each
other. Then the <TT>Fl_Pack</TT> resizes itself to surround the child
widgets. </P>
......@@ -36,6 +36,7 @@ widgets. </P>
<UL>
<LI><A href=#Fl_Pack.Fl_Pack>Fl_Pack</A></LI>
<LI><A href=#Fl_Pack.~Fl_Pack>~Fl_Pack</A></LI>
<LI><A href=#Fl_Pack.resizable>resizable</A></LI>
<LI><A href=#Fl_Pack.spacing>spacing</A></LI>
</UL>
<H4><A name=Fl_Pack.Fl_Pack>Fl_Pack::Fl_Pack(int x, int y, int w, int
......@@ -49,6 +50,15 @@ all the children in the user code. A kludge has been done so the <TT>
Fl_Pack</TT> and all of it's children can be automatic (local)
variables, but you must declare the <TT>Fl_Pack</TT><I>first</I>, so
that it is destroyed last.
<H4><A name=Fl_Pack.resizable>void Fl_Pack::resizable(Fl_Widget *box)
<BR> void Fl_Pack::resizable(Fl_Widget &amp;box)
<BR> Fl_Widget *Fl_Pack::resizable() const</A></H4>
<P>The resizable for <tt>Fl_Pack</tt> is set to <TT>NULL</TT> by
default.</p>
<p> See also: <A href=Fl_Group.html#Fl_Group.resizable>Fl_Group::resizable()</A></p>
<H4><A name=Fl_Pack.spacing>int Fl_Pack::spacing() const
<BR> void Fl_Pack::spacing(int)</A></H4>
Gets or sets the number of extra pixels of blank space that are added
......
......@@ -39,13 +39,13 @@ int main(int argc, char **argv) {
<!-- NEED 2in -->
<P>After including the required header files, the program then creates a
window:</P>
window. All following widgets will automatically be children of this window.</P>
<UL><PRE>
Fl_Window *window = new <A href="Fl_Window.html#Fl_Window">Fl_Window</A>(300,180);
</PRE></UL>
<P>and a box with the &quot;Hello, World!&quot; string in it:</P>
<P>Then we create a box with the &quot;Hello, World!&quot; string in it.</P>
<UL><PRE>
Fl_Box *box = new <A href="Fl_Box.html#Fl_Box">Fl_Box</A>(20,40,260,100,&quot;Hello, World!&quot;);
......@@ -60,10 +60,15 @@ box-&gt;<A href=Fl_Widget.html#Fl_Widget.labelfont>labelfont</A>(FL_BOLD+FL_ITAL
box-&gt;<A href=Fl_Widget.html#Fl_Widget.labeltype>labeltype</A>(FL_SHADOW_LABEL);
</PRE></UL>
<P>Finally, we show the window and enter the FLTK event loop:</P>
<P>We tell FLTK that we will not add any more widgets to the window.</P>
<UL><PRE>
window-&gt;<A href=Fl_Group.html#Fl_Group.end>end</A>();
</PRE></UL>
<P>Finally, we show the window and enter the FLTK event loop:</P>
<UL><PRE>
window-&gt;<A href=Fl_Window.html#Fl_Window.show>show</A>(argc, argv);
return <A href="Fl.html#Fl.run">Fl::run</A>();
</PRE></UL>
......
//
// "$Id: Fl_Window_Type.cxx 5845 2007-05-20 00:01:06Z mike $"
// "$Id: Fl_Window_Type.cxx 5949 2007-10-07 10:18:20Z matt $"
//
// Window type code for the Fast Light Tool Kit (FLTK).
//
......@@ -337,7 +337,15 @@ void Overlay_Window::draw_overlay() {
window->draw_overlay();
}
int Overlay_Window::handle(int e) {
return window->handle(e);
int ret = window->handle(e);
if (ret==0) {
switch (e) {
case FL_SHOW:
case FL_HIDE:
ret = Fl_Overlay_Window::handle(e);
}
}
return ret;
}
Fl_Type *Fl_Window_Type::make() {
......@@ -495,6 +503,7 @@ void Overlay_Window::resize(int X,int Y,int W,int H) {
Fl_Widget* t = resizable(); resizable(0);
Fl_Overlay_Window::resize(X,Y,W,H);
resizable(t);
set_modflag(1);
update_xywh();
}
......@@ -1375,7 +1384,7 @@ Fl_Widget_Class_Type *current_widget_class = 0;
Fl_Type *Fl_Widget_Class_Type::make() {
Fl_Type *p = Fl_Type::current;
while (p && !p->is_decl_block()) p = p->parent;
while (p && (!p->is_decl_block() || (p->is_widget() && p->is_class()))) p = p->parent;
Fl_Widget_Class_Type *myo = new Fl_Widget_Class_Type();
myo->name("UserInterface");
......@@ -1510,5 +1519,5 @@ void Fl_Window_Type::copy_properties() {
//
// End of "$Id: Fl_Window_Type.cxx 5845 2007-05-20 00:01:06Z mike $".
// End of "$Id: Fl_Window_Type.cxx 5949 2007-10-07 10:18:20Z matt $".
//
//
// "$Id: Fl_Browser_.cxx 5639 2007-01-24 20:32:54Z matt $"
// "$Id: Fl_Browser_.cxx 5952 2007-10-07 18:39:23Z matt $"
//
// Base Browser widget class for the Fast Light Tool Kit (FLTK).
//
......@@ -575,47 +575,51 @@ int Fl_Browser_::handle(int event) {
void* l1 = selection_;
void* l = l1; if (!l) l = top_; if (!l) l = item_first();
if (l) {
if (type()==FL_HOLD_BROWSER) switch (Fl::event_key()) {
case FL_Down:
while ((l = item_next(l)))
if (item_height(l)>0) {select_only(l, when()); break;}
return 1;
case FL_Up:
while ((l = item_prev(l))) if (item_height(l)>0) {
select_only(l, when()); break;}
return 1;
} else switch (Fl::event_key()) {
case FL_Enter:
case FL_KP_Enter:
select_only(l, when());
return 1;
case ' ':
selection_ = l;
select(l, !item_selected(l), when());
return 1;
case FL_Down:
while ((l = item_next(l))) {
if (Fl::event_state(FL_SHIFT|FL_CTRL))
select(l, l1 ? item_selected(l1) : 1, when());
if (item_height(l)>0) goto J1;
}
return 1;
case FL_Up:
while ((l = item_prev(l))) {
if (Fl::event_state(FL_SHIFT|FL_CTRL))
select(l, l1 ? item_selected(l1) : 1, when());
if (item_height(l)>0) goto J1;
}
return 1;
J1:
if (selection_) redraw_line(selection_);
selection_ = l; redraw_line(l);
display(l);
return 1;
if (type()==FL_HOLD_BROWSER) {
switch (Fl::event_key()) {
case FL_Down:
while ((l = item_next(l)))
if (item_height(l)>0) {select_only(l, when()); break;}
return 1;
case FL_Up:
while ((l = item_prev(l))) if (item_height(l)>0) {
select_only(l, when()); break;}
return 1;
}
} else {
switch (Fl::event_key()) {
case FL_Enter:
case FL_KP_Enter:
select_only(l, when());
return 1;
case ' ':
selection_ = l;
select(l, !item_selected(l), when());
return 1;
case FL_Down:
while ((l = item_next(l))) {
if (Fl::event_state(FL_SHIFT|FL_CTRL))
select(l, l1 ? item_selected(l1) : 1, when());
if (item_height(l)>0) goto J1;
}
return 1;
case FL_Up:
while ((l = item_prev(l))) {
if (Fl::event_state(FL_SHIFT|FL_CTRL))
select(l, l1 ? item_selected(l1) : 1, when());
if (item_height(l)>0) goto J1;
}
return 1;
J1:
if (selection_) redraw_line(selection_);
selection_ = l; redraw_line(l);
display(l);
return 1;
}
}
}
}
if (Fl_Group::handle(event)) return 1;
int X, Y, W, H; bbox(X, Y, W, H);
int my;
......@@ -824,5 +828,5 @@ void Fl_Browser_::item_select(void*, int) {}
int Fl_Browser_::item_selected(void* l) const {return l==selection_;}
//
// End of "$Id: Fl_Browser_.cxx 5639 2007-01-24 20:32:54Z matt $".
// End of "$Id: Fl_Browser_.cxx 5952 2007-10-07 18:39:23Z matt $".
//
//
// "$Id: Fl_Chart.cxx 5190 2006-06-09 16:16:34Z mike $"
// "$Id: Fl_Chart.cxx 5942 2007-10-06 17:33:17Z matt $"
//
// Forms-compatible chart widget for the Fast Light Tool Kit (FLTK).
//
......@@ -115,7 +115,7 @@ static void draw_horbarchart(int x,int y,int w,int h,
if (ww > 0)
fl_rectbound(zeroh,y+i*bwidth,ww+1,bwidth+1, (Fl_Color)entries[i].col);
else if (ww < 0)
fl_rectbound(zeroh+w,y+i*bwidth,-ww+1,bwidth+1,(Fl_Color)entries[i].col);
fl_rectbound(zeroh+ww,y+i*bwidth,-ww+1,bwidth+1,(Fl_Color)entries[i].col);
}
/* Draw the labels */
fl_color(textcolor);
......@@ -386,5 +386,5 @@ void Fl_Chart::maxsize(int m) {
}
//
// End of "$Id: Fl_Chart.cxx 5190 2006-06-09 16:16:34Z mike $".
// End of "$Id: Fl_Chart.cxx 5942 2007-10-06 17:33:17Z matt $".
//
//
// "$Id: Fl_Preferences.cxx 5710 2007-02-23 15:37:53Z matt $"
// "$Id: Fl_Preferences.cxx 5917 2007-06-20 13:07:23Z matt $"
//
// Preferences methods for the Fast Light Tool Kit (FLTK).
//
......@@ -116,7 +116,7 @@ Fl_Preferences::Fl_Preferences( Fl_Preferences *parent, const char *key )
*/
Fl_Preferences::~Fl_Preferences()
{
if (!node->parent()) delete rootNode;
if (node && !node->parent()) delete rootNode;
// DO NOT delete nodes! The root node will do that after writing the preferences
// zero all pointer to avoid memory errors, event though
// Valgrind does not complain (Cygwind does though)
......@@ -757,7 +757,7 @@ Fl_Preferences::RootNode::~RootNode()
application_ = 0L;
}
delete prefs_->node;
prefs_ = 0L;
prefs_->node = 0L;
}
// read a preferences file and construct the group tree and with all entry leafs
......@@ -1175,5 +1175,5 @@ char Fl_Preferences::Node::remove()
//
// End of "$Id: Fl_Preferences.cxx 5710 2007-02-23 15:37:53Z matt $".
// End of "$Id: Fl_Preferences.cxx 5917 2007-06-20 13:07:23Z matt $".
//
//
// "$Id: Fl_lock.cxx 5749 2007-03-20 10:41:14Z matt $"
// "$Id: Fl_lock.cxx 5950 2007-10-07 10:44:28Z matt $"
//
// Multi-threading support code for the Fast Light Tool Kit (FLTK).
//
......@@ -348,8 +348,11 @@ void unlock_ring() {
void lock_ring() {
}
void Fl::awake(void*) {
}
#endif // WIN32
//
// End of "$Id: Fl_lock.cxx 5749 2007-03-20 10:41:14Z matt $".
// End of "$Id: Fl_lock.cxx 5950 2007-10-07 10:44:28Z matt $".
//
//
// "$Id: Fl_win32.cxx 5836 2007-05-16 12:47:49Z matt $"
// "$Id: Fl_win32.cxx 5914 2007-06-18 13:08:57Z matt $"
//
// WIN32-specific code for the Fast Light Tool Kit (FLTK).
//
......@@ -1188,6 +1188,14 @@ int fl_disable_transient_for; // secret method of removing TRANSIENT_FOR
Fl_X* Fl_X::make(Fl_Window* w) {
Fl_Group::current(0); // get rid of very common user bug: forgot end()
// if the window is a subwindow and our parent is not mapped yet, we
// mark this window visible, so that mapping the parent at a later
// point in time will call this function again to finally map the subwindow.
if (w->parent() && !Fl_X::i(w->window())) {
w->set_visible();
return 0L;
}
static NameList class_name_list;
static const char *first_class_name = 0L;
const char *class_name = w->xclass();
......@@ -1673,5 +1681,5 @@ void fl_cleanup_dc_list(void) { // clean up the list
//
// End of "$Id: Fl_win32.cxx 5836 2007-05-16 12:47:49Z matt $".
// End of "$Id: Fl_win32.cxx 5914 2007-06-18 13:08:57Z matt $".
//
//
// "$Id: Fl_x.cxx 5657 2007-02-02 19:37:30Z mike $"
// "$Id: Fl_x.cxx 5914 2007-06-18 13:08:57Z matt $"
//
// X specific code for the Fast Light Tool Kit (FLTK).
//
......@@ -1134,6 +1134,14 @@ void Fl_X::make_xid(Fl_Window* win, XVisualInfo *visual, Colormap colormap)
if (Y < scr_y) Y = scr_y;
}
// if the window is a subwindow and our parent is not mapped yet, we
// mark this window visible, so that mapping the parent at a later
// point in time will call this function again to finally map the subwindow.
if (win->parent() && !Fl_X::i(win->window())) {
win->set_visible();
return;
}
ulong root = win->parent() ?
fl_xid(win->window()) : RootWindow(fl_display, fl_screen);
......@@ -1401,5 +1409,5 @@ void Fl_Window::make_current() {
#endif
//
// End of "$Id: Fl_x.cxx 5657 2007-02-02 19:37:30Z mike $".
// End of "$Id: Fl_x.cxx 5914 2007-06-18 13:08:57Z matt $".
//
//
// "$Id: filename_isdir.cxx 5635 2007-01-23 15:02:00Z mike $"
// "$Id: filename_isdir.cxx 5948 2007-10-07 10:12:32Z matt $"
//
// Directory detection routines for the Fast Light Tool Kit (FLTK).
//
......@@ -75,7 +75,7 @@ int fl_filename_isdir(const char* n) {
// Matt: Just in case, we strip the slash for other operating
// systems as well, avoid bugs by sloppy implementations
// of "stat".
if (length > 0 && isdirsep(n[length - 1])) {
if (length > 1 && isdirsep(n[length - 1])) {
length --;
memcpy(fn, n, length);
fn[length] = '\0';
......@@ -87,5 +87,5 @@ int fl_filename_isdir(const char* n) {
}
//
// End of "$Id: filename_isdir.cxx 5635 2007-01-23 15:02:00Z mike $".
// End of "$Id: filename_isdir.cxx 5948 2007-10-07 10:12:32Z matt $".
//
//
// "$Id: fl_encoding_mac_roman.cxx 5190 2006-06-09 16:16:34Z mike $"
// "$Id: fl_encoding_mac_roman.cxx 5913 2007-06-18 13:03:39Z matt $"
//
// Convert Mac Roman encoded text to the local encoding.
//
......@@ -59,7 +59,7 @@ const char *fl_local_to_mac_roman(const char *t, int)
#else
// This table converts MSWindows-1252/Latin 1 into MacRoman encoding
static uchar latin2roman[256] = {
static uchar latin2roman[128] = {
0xdb, 0xc0, 0xe2, 0xc4, 0xe3, 0xc9, 0xa0, 0xe0, 0xf6, 0xe4, 0xc0, 0xdc, 0xce, 0xc0, 0xc0, 0xc0,
0xc0, 0xd4, 0xd5, 0xd2, 0xd3, 0xa5, 0xd0, 0xd1, 0xf7, 0xaa, 0xc0, 0xdd, 0xcf, 0xc0, 0xc0, 0xd9,
0xca, 0xc1, 0xa2, 0xa3, 0xc0, 0xb4, 0xc0, 0xa4, 0xac, 0xa9, 0xbb, 0xc7, 0xc2, 0xc0, 0xa8, 0xf8,
......@@ -71,7 +71,7 @@ static uchar latin2roman[256] = {
};
// This table converts MacRoman into MSWindows-1252/Latin 1
static uchar roman2latin[256] = {
static uchar roman2latin[128] = {
0xc4, 0xc5, 0xc7, 0xc9, 0xd1, 0xd6, 0xdc, 0xe1, 0xe0, 0xe2, 0xe4, 0xe3, 0xe5, 0xe7, 0xe9, 0xe8,
0xea, 0xeb, 0xed, 0xec, 0xee, 0xef, 0xf1, 0xf3, 0xf2, 0xf4, 0xf6, 0xf5, 0xfa, 0xf9, 0xfb, 0xfc,
0x86, 0xb0, 0xa2, 0xa3, 0xa7, 0x95, 0xb6, 0xdf, 0xae, 0xa9, 0x99, 0xb4, 0xa8, 0xbf, 0xc6, 0xd8,
......@@ -130,5 +130,5 @@ const char *fl_mac_roman_to_local(const char *t, int n)
#endif
//
// End of "$Id: fl_encoding_mac_roman.cxx 5190 2006-06-09 16:16:34Z mike $".
// End of "$Id: fl_encoding_mac_roman.cxx 5913 2007-06-18 13:03:39Z matt $".
//
//
// "$Id: hello.cxx 5614 2007-01-18 15:25:09Z matt $"
// "$Id: hello.cxx 5947 2007-10-07 10:04:01Z matt $"
//
// Hello, World! program for the Fast Light Tool Kit (FLTK).
//
......@@ -44,5 +44,5 @@ int main(int argc, char **argv) {
}
//
// End of "$Id: hello.cxx 5614 2007-01-18 15:25:09Z matt $".
// End of "$Id: hello.cxx 5947 2007-10-07 10:04:01Z matt $".
//
//
// "$Id: tile.cxx 5519 2006-10-11 03:12:15Z mike $"
// "$Id: tile.cxx 5912 2007-06-18 09:35:42Z matt $"
//
// Tile test program for the Fast Light Tool Kit (FLTK).
//
......@@ -82,11 +82,11 @@ int main(int argc, char** argv) {
tile.end();
window.end();
window.show(argc,argv);
w1.show();
window.show(argc,argv);
return Fl::run();
}
//
// End of "$Id: tile.cxx 5519 2006-10-11 03:12:15Z mike $".
// End of "$Id: tile.cxx 5912 2007-06-18 09:35:42Z matt $".
//
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment