The great heading change - now use standard LGPL header with CVS tags.

git-svn-id: file:///fltk/svn/fltk/trunk@19 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Michael R Sweet 1998-10-19 20:46:58 +00:00
parent 512332670a
commit 1a86a0ede0
126 changed files with 3614 additions and 377 deletions

View File

@ -1,47 +1,63 @@
// Fl.C
// fltk (Fast Light Tool Kit) version 0.99
// Copyright (C) 1998 Bill Spitzak
//
// "$Id"
//
// Main event handling code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
// Written by Bill Spitzak spitzak@d2.com
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include <FL/x.H>
#include <ctype.h>
int Fl::damage_;
Fl_Widget *Fl::belowmouse_;
Fl_Widget *Fl::pushed_;
Fl_Widget *Fl::focus_;
Fl_Widget *Fl::selection_owner_;
int Fl::e_x, Fl::e_y, Fl::e_x_root, Fl::e_y_root;
int Fl::e_state;
int Fl::e_clicks;
int Fl::e_is_click;
int Fl::e_keysym;
char *Fl::e_text;
int Fl::e_length;
//
// Globals...
//
Fl_Widget *Fl::belowmouse_,
*Fl::pushed_,
*Fl::focus_,
*Fl::selection_owner_;
int Fl::damage_,
Fl::e_x,
Fl::e_y,
Fl::e_x_root,
Fl::e_y_root,
Fl::e_state,
Fl::e_clicks,
Fl::e_is_click,
Fl::e_keysym;
char *Fl::e_text;
int Fl::e_length;
//
// 'Fl:event_inside()' - Return whether or not the mouse event is inside
// the given rectangle.
//
int Fl::event_inside(int x,int y,int w,int h) /*const*/ {
int mx = event_x();
int my = event_y();
return (mx >= x && mx < x+w && my >= y && my < y+h);
int mx = event_x() - x;
int my = event_y() - y;
return (mx >= 0 && mx < w && my >= 0 && my < h);
}
int Fl::event_inside(const Fl_Widget *o) /*const*/ {
@ -63,7 +79,7 @@ static int numtimeouts;
void Fl::add_timeout(double t, void (*cb)(void *), void *v) {
int i;
if (numtimeouts<MAXTIMEOUT) numtimeouts++;
for (i=0; i<numtimeouts-1; i++) {
for (i=0; i<(numtimeouts-1); i++) {
if (timeout[i].time > t) {
for (int j=numtimeouts-1; j>i; j--) timeout[j] = timeout[j-1];
break;
@ -128,7 +144,7 @@ static int initclock; // if false we didn't call fl_elapsed() last time
// fl_elapsed must return the amount of time since the last time it was
// called. To reduce the number of system calls the to get the
// current time, the "initclock" symbol is turned on by an indefinate
// current time, the "initclock" symbol is turned on by an indefinite
// wait. This should then reset the measured-from time and return zero
static double fl_elapsed() {
@ -145,7 +161,7 @@ static double fl_elapsed() {
static struct timeval prevclock;
struct timeval newclock;
gettimeofday(&newclock, 0);
gettimeofday(&newclock, NULL);
if (!initclock) {
prevclock.tv_sec = newclock.tv_sec;
prevclock.tv_usec = newclock.tv_usec;
@ -567,4 +583,6 @@ void fl_throw_focus(Fl_Widget *o) {
if (fix) fl_fix_focus();
}
// End of Fl.C //
//
// End of "$Id: Fl.cxx,v 1.4 1998/10/19 20:45:34 mike Exp $".
//

View File

@ -1,6 +1,28 @@
// Fl_Adjuster.C
//
// "$Id"
//
// Adjuster widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Fltk widget for drag-adjusting a floating point value.
#include <FL/Fl.H>
#include <FL/Fl_Adjuster.H>
@ -57,14 +79,14 @@ int Fl_Adjuster::handle(int event) {
delta = x()+(drag-1)*w()/3; // left edge of button
if (mx < delta)
delta = mx-delta;
else if (mx > delta+w()/3) // right edge of button
else if (mx > (delta+w()/3)) // right edge of button
delta = mx-delta-w()/3;
else
delta = 0;
} else {
if (mx < x())
delta = mx-x();
else if (mx > x()+w())
else if (mx > (x()+w()))
delta = mx-x()-w();
else
delta = 0;
@ -103,3 +125,7 @@ Fl_Adjuster::Fl_Adjuster(int x, int y, int w, int h, const char* l)
drag = 0;
soft_ = 1;
}
//
// End of "$Id: Fl_Adjuster.cxx,v 1.2 1998/10/19 20:45:35 mike Exp $".
//

View File

@ -1,8 +1,27 @@
/* Fl_Bitmap.C
Draw a bitmap in a box.
*/
//
// "$Id"
//
// Bitmap drawing routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/x.H>
@ -17,10 +36,10 @@ void Fl_Bitmap::draw(int XP, int YP, int WP, int HP, int cx, int cy) {
cx += X-XP; cy += Y-YP;
// clip the box down to the size of image, quit if empty:
if (cx < 0) {W += cx; X -= cx; cx = 0;}
if (cx+W > w) W = w-cx;
if ((cx+W) > w) W = w-cx;
if (W <= 0) return;
if (cy < 0) {H += cy; Y -= cy; cy = 0;}
if (cy+H > h) H = h-cy;
if ((cy+H) > h) H = h-cy;
if (H <= 0) return;
#ifdef WIN32
if (!id) {
@ -31,19 +50,13 @@ void Fl_Bitmap::draw(int XP, int YP, int WP, int HP, int cx, int cy) {
uchar* newarray = new uchar[w2*h];
const uchar* src = array;
uchar* dest = newarray;
static uchar reverse[16] = /* Bit reversal lookup table */
{ 0x00, 0x88, 0x44, 0xcc, 0x22, 0xaa, 0x66, 0xee,
0x11, 0x99, 0x55, 0xdd, 0x22, 0xbb, 0x77, 0xff };
for (int y=0; y < h; y++) {
for (int n = 0; n < w1; n++) {
*dest++ =
((*src&0x01) << 7) +
((*src&0x02) << 5) +
((*src&0x04) << 3) +
((*src&0x08) << 1) +
((*src&0x10) >> 1) +
((*src&0x20) >> 3) +
((*src&0x40) >> 5) +
((*src&0x80) >> 7);
src++;
}
for (int n = 0; n < w1; n++, src++)
*dest++ = (reverse[*src & 0x0f] & 0xf0) |
(reverse[(*src >> 4) & 0x0f] & 0x0f);
dest += w2-w1;
}
id = (ulong)CreateBitmap(w, h, 1, 1, newarray);
@ -110,3 +123,7 @@ void Fl_Bitmap::label(Fl_Menu_Item* o) {
Fl::set_labeltype(_FL_BITMAP_LABEL, bitmap_labeltype, bitmap_measure);
o->label(_FL_BITMAP_LABEL, (const char*)this);
}
//
// End of "$Id: Fl_Bitmap.cxx,v 1.3 1998/10/19 20:45:36 mike Exp $".
//

View File

@ -1,11 +1,38 @@
// Fl_Box.C
// The box widget. An almost non-functional subclass of Fl_Widget.
//
// "$Id"
//
// Box widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl_Widget.H>
#include <FL/Fl_Box.H>
// MRS - shouldn't we inline this?
void Fl_Box::draw() {
draw_box();
draw_label();
}
//
// End of "$Id: Fl_Box.cxx,v 1.2 1998/10/19 20:45:37 mike Exp $".
//

View File

@ -1,7 +1,35 @@
// Fl_Browser.C
//
// "$Id"
//
// Browser widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Forms-compatable browser. Probably useful for other lists of
// textual data.
#include <FL/Fl.H>
#include <FL/Fl_Browser.H>
#include <FL/fl_draw.H>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <FL/Fl_Input_.H> // for default_font
// I modified this from the original Forms data to use a linked list
// so that the number of items in the browser and size of those items
@ -13,14 +41,6 @@
// Also added the ability to "hide" a line. This set's it's height to
// zero, so the Fl_Browser_ cannot pick it.
#include <FL/Fl.H>
#include <FL/Fl_Browser.H>
#include <FL/fl_draw.H>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <FL/Fl_Input_.H> // for default_font
#define SELECTED 1
#define NOTDISPLAYED 2
@ -50,9 +70,9 @@ void Fl_Browser::item_select(void* l, int v) {
FL_BLINE* Fl_Browser::find_line(int line) const {
int n; FL_BLINE* l;
if (line == cacheline) return cache;
if (cacheline && line > cacheline/2 && line < (cacheline+lines)/2) {
if (cacheline && line > (cacheline/2) && line < ((cacheline+lines)/2)) {
n = cacheline; l = cache;
} else if (line <= lines/2) {
} else if (line <= (lines/2)) {
n = 1; l = first;
} else {
n = lines; l = last;
@ -214,6 +234,8 @@ int Fl_Browser::item_width(void* v) const {
Fl_Font font = textfont();
int done = 0;
// MRS - might this cause problems on some platforms - order of operations?
while (*str == format_char_ && *++str && *str != format_char_) {
switch (*str++) {
case 'l': case 'L': size = 24; break;
@ -418,4 +440,6 @@ int Fl_Browser::value() const {
return lineno(selection());
}
// end of Fl_Browser.C
//
// End of "$Id: Fl_Browser.cxx,v 1.2 1998/10/19 20:45:37 mike Exp $".
//

View File

@ -1,4 +1,33 @@
// Fl_Browser_.C
//
// "$Id"
//
// Base Browser widget class for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Widget.H>
#include <FL/Fl_Browser_.H>
#include <FL/fl_draw.H>
#include <FL/Fl_Input_.H> // for default_font
// This is the base class for browsers. To be useful it must be
// subclassed and several virtual functions defined. The
@ -19,12 +48,6 @@
// to see if the file is a directory, which can be annoyingly slow
// over the network.
#include <FL/Fl.H>
#include <FL/Fl_Widget.H>
#include <FL/Fl_Browser_.H>
#include <FL/fl_draw.H>
#include <FL/Fl_Input_.H> // for default_font
/* redraw bits:
1 = redraw children (the scrollbar)
2 = redraw one or two items
@ -85,7 +108,7 @@ void Fl_Browser_::update_top() {
int ly;
int y = position_;
// start from either head or current position, whichever is closer:
if (!top_ || y <= real_position_/2) {
if (!top_ || y <= (real_position_/2)) {
l = item_first();
ly = 0;
} else {
@ -106,7 +129,7 @@ void Fl_Browser_::update_top() {
h = item_quick_height(l);
ly -= h;
}
while (ly+h <= y) {
while ((ly+h) <= y) {
void* l1 = item_next(l);
if (!l1) {y = ly+h-1; break;}
l = l1;
@ -116,7 +139,7 @@ void Fl_Browser_::update_top() {
// top item must *really* be visible, use slow height:
for (;;) {
h = item_height(l);
if (ly+h > y) break; // it is big enough to see
if ((ly+h) > y) break; // it is big enough to see
// go up to top of previous item:
void* l1 = item_prev(l);
if (!l1) {ly = y = 0; break;} // hit the top
@ -191,7 +214,7 @@ void Fl_Browser_::display(void* x) {
int h1 = item_quick_height(l);
Y -= h1;
if (l == x) {
if (Y + h1 >= 0) position(real_position_+Y);
if ((Y + h1) >= 0) position(real_position_+Y);
else position(real_position_+Y-(H-h1)/2);
return;
}
@ -358,7 +381,7 @@ void* Fl_Browser_::find_item(int my) {
for (l = top_; l; l = item_next(l)) {
int hh = item_height(l); if (hh <= 0) continue;
yy += hh;
if (my <= yy || yy>=Y+H) return l;
if (my <= yy || yy>=(Y+H)) return l;
}
return 0;
}
@ -503,7 +526,7 @@ int Fl_Browser_::handle(int event) {
int p = real_position_+my-Y;
if (p<0) p = 0;
position(p);
} else if (my > Y+H && my > py) {
} else if (my > (Y+H) && my > py) {
int p = real_position_+my-(Y+H);
int h = full_height()-H; if (p > h) p = h;
if (p<0) p = 0;
@ -603,4 +626,6 @@ void Fl_Browser_::item_select(void*, int) {}
int Fl_Browser_::item_selected(void* l) const {return l==selection_;}
// end of Fl_Browser_.C
//
// End of "$Id: Fl_Browser_.cxx,v 1.3 1998/10/19 20:45:38 mike Exp $".
//

View File

@ -1,5 +1,27 @@
// Fl_Browser_load.C
// this should be moved to another source file, since it links stdio?
//
// "$Id"
//
// File loading routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Browser.H>
@ -17,7 +39,7 @@ int Fl_Browser::load(const char *filename) {
i = 0;
do {
c = getc(fl);
if (c == '\n' || c <= 0 || i>=MAXFL_BLINE-1) {
if (c == '\n' || c <= 0 || i>=(MAXFL_BLINE-1)) {
newtext[i] = 0;
add(newtext);
i = 0;
@ -27,3 +49,7 @@ int Fl_Browser::load(const char *filename) {
fclose(fl);
return 1;
}
//
// End of "$Id: Fl_Browser_load.cxx,v 1.2 1998/10/19 20:45:39 mike Exp $".
//

View File

@ -1,13 +1,36 @@
// Fl_Button.C
// There are a lot of subclasses, named Fl_*_Button. Some of
// them are implemented by setting the type() value and testing it
// here. This includes Fl_Radio_Button and Fl_Toggle_Button
//
// "$Id"
//
// Button widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Button.H>
#include <FL/Fl_Group.H>
// There are a lot of subclasses, named Fl_*_Button. Some of
// them are implemented by setting the type() value and testing it
// here. This includes Fl_Radio_Button and Fl_Toggle_Button
int Fl_Button::value(int v) {
v = v ? 1 : 0;
oldval = v;
@ -90,3 +113,7 @@ Fl_Button::Fl_Button(int x,int y,int w,int h, const char *l)
shortcut_ = 0;
set_flag(SHORTCUT_LABEL);
}
//
// End of "$Id: Fl_Button.cxx,v 1.2 1998/10/19 20:45:39 mike Exp $".
//

View File

@ -1,9 +1,27 @@
// Fl_Chart.C
// Emulation of the Forms Chart widget.
// I did not try to improve this much, as I doubt it is used.
// display code Written by: Mark Overmars
//
// "$Id"
//
// Forms-compatible chart widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/math.h>
#include <FL/Fl.H>
@ -28,7 +46,7 @@ static void draw_barchart(int x,int y,int w,int h,
double incr = h/(max-min);
int zeroh;
double lh = fl_height();
if ( -min*incr < lh) {
if ( (-min*incr) < lh) {
incr = (h - lh + min*incr)/(max-min);
zeroh = int(y+h-lh);
} else {
@ -73,7 +91,7 @@ static void draw_horbarchart(int x,int y,int w,int h,
if (lw > 0.0) lw += 4.0;
double incr = w/(max-min);
int zeroh;
if ( -min*incr < lw) {
if ( (-min*incr) < lw) {
incr = (w - lw + min*incr)/(max-min);
zeroh = x+int(lw+.5);
} else {
@ -342,3 +360,7 @@ void Fl_Chart::maxsize(int m) {
redraw();
}
}
//
// End of "$Id: Fl_Chart.cxx,v 1.2 1998/10/19 20:45:40 mike Exp $".
//

View File

@ -1,12 +1,35 @@
// Fl_Check_Button.C
//
// "$Id"
//
// Check button widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Check_Button.H>
// A subclass of Fl_Button that always draws as a diamond box. This
// diamond is smaller than the widget size and can be surchecked by
// another box type, for compatability with Forms.
#include <FL/Fl.H>
#include <FL/Fl_Check_Button.H>
Fl_Check_Button::Fl_Check_Button(int x, int y, int w, int h, const char *l)
: Fl_Light_Button(x, y, w, h, l) {
box(FL_NO_BOX);

View File

@ -1,13 +1,36 @@
// Fl_Choice.C
// Emulates the Forms choice widget. This is almost exactly the same
// as an Fl_Menu_Button. The only difference is the appearance of the
// button: it draws the text of the current pick and a down-arrow.
//
// "$Id"
//
// Choice widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Choice.H>
#include <FL/fl_draw.H>
// Emulates the Forms choice widget. This is almost exactly the same
// as an Fl_Menu_Button. The only difference is the appearance of the
// button: it draws the text of the current pick and a down-arrow.
extern char fl_draw_shortcut;
void Fl_Choice::draw() {
@ -60,4 +83,6 @@ int Fl_Choice::handle(int e) {
}
}
// end of Fl_Choice.C
//
// End of "$Id: Fl_Choice.cxx,v 1.2 1998/10/19 20:45:41 mike Exp $".
//

View File

@ -1,4 +1,33 @@
// Fl_Clock.C
//
// "$Id"
//
// Clock widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Clock.H>
#include <FL/fl_draw.H>
#include <math.h>
#include <time.h>
// There really should be a way to make this display something other
// than the current time...
@ -7,12 +36,6 @@
// Modifications by Mark Overmars for Forms
// Further changes by Bill Spitzak for fltk
#include <FL/Fl.H>
#include <FL/Fl_Clock.H>
#include <FL/fl_draw.H>
#include <math.h>
#include <time.h>
const float hourhand[4][2] = {{-0.5f, 0}, {0, 1.5f}, {0.5f, 0}, {0, -7.0f}};
const float minhand[4][2] = {{-0.5f, 0}, {0, 1.5f}, {0.5f, 0}, {0, -11.5f}};
const float sechand[4][2] = {{-0.1f, 0}, {0, 2.0f}, {0.1f, 0}, {0, -11.5f}};
@ -134,3 +157,7 @@ int Fl_Clock::handle(int event) {
}
return 0;
}
//
// End of "$Id: Fl_Clock.cxx,v 1.2 1998/10/19 20:45:42 mike Exp $".
//

View File

@ -1,4 +1,33 @@
// Fl_Color_Chooser.C
//
// "$Id"
//
// Color chooser for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Color_Chooser.H>
#include <FL/fl_draw.H>
#include <FL/math.h>
#include <stdio.h>
// Besides being a useful object on it's own, the Fl_Color_Chooser was
// an attempt to make a complex composite object that could be easily
@ -9,12 +38,6 @@
// chooser and a few buttons and current-color indicators. It is an
// easier interface for simple programs that just need a color.
#include <FL/Fl.H>
#include <FL/Fl_Color_Chooser.H>
#include <FL/fl_draw.H>
#include <FL/math.h>
#include <stdio.h>
// The "hue box" can be a circle or rectilinear.
// You get a circle by defining this:
// #define CIRCLE 1
@ -229,7 +252,7 @@ int Flcc_ValueBox::handle(int e) {
case FL_DRAG: {
double Yf;
Yf = 1-(Fl::event_y()-y()-Fl::box_dy(box()))/double(h()-Fl::box_dh(box()));
if (fabs(Yf-iv)<3*1.0/h()) Yf = iv;
if (fabs(Yf-iv)<(3*1.0/h())) Yf = iv;
if (c->hsv(c->hue(),c->saturation(),Yf)) c->do_callback();
} return 1;
default:
@ -401,3 +424,7 @@ int fl_color_chooser(const char* name, uchar& r, uchar& g, uchar& b) {
}
return 0;
}
//
// End of "$Id: Fl_Color_Chooser.cxx,v 1.3 1998/10/19 20:45:42 mike Exp $".
//

View File

@ -1,6 +1,27 @@
// Fl_Counter.H
// A numerical value with up/down step buttons. From Forms.
//
// "$Id"
//
// Counter widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Counter.H>
@ -138,3 +159,7 @@ Fl_Counter::Fl_Counter(int x, int y, int w, int h, const char* l)
textsize_ = FL_NORMAL_SIZE;
textcolor_ = FL_BLACK;
}
//
// End of "$Id: Fl_Counter.cxx,v 1.3 1998/10/19 20:45:43 mike Exp $".
//

View File

@ -1,6 +1,27 @@
// Fl_Dial.C
// A circular dial control, like xv uses. From Forms.
//
// "$Id"
//
// Circular dial widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Dial.H>
@ -89,7 +110,7 @@ int Fl_Dial::handle(int event, int x, int y, int w, int h) {
if (my<0) angle = 0.75*M_PI + angle;
else angle = -0.25*M_PI + angle;
}
if (angle<-0.25*M_PI) angle += 2.0*M_PI;
if (angle<(-0.25*M_PI)) angle += 2.0*M_PI;
val = minimum() + (maximum()-minimum())*angle/(1.5*M_PI);
if (fabs(val-value()) < (maximum()-minimum())/2.0)
handle_drag(clamp(round(val)));
@ -111,3 +132,7 @@ Fl_Dial::Fl_Dial(int x, int y, int w, int h, const char* l)
box(FL_OVAL_BOX);
selection_color(FL_INACTIVE_COLOR); // was 37
}
//
// End of "$Id: Fl_Dial.cxx,v 1.3 1998/10/19 20:45:44 mike Exp $".
//

View File

@ -1,11 +1,27 @@
// Fl_Double_Window.C
// A double-buffered window. This is achieved by using the Xdbe extension,
// or a pixmap if that is not available.
// On systems that support double buffering "naturally" the base
// Fl_Window class will probably do double-buffer and this subclass
// does nothing.
//
// "$Id"
//
// Double-buffered window code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <config.h>
#include <FL/Fl.H>
@ -13,6 +29,10 @@
#include <FL/x.H>
#include <FL/fl_draw.H>
// On systems that support double buffering "naturally" the base
// Fl_Window class will probably do double-buffer and this subclass
// does nothing.
#if USE_XDBE
#include <X11/extensions/Xdbe.h>
@ -164,3 +184,7 @@ void Fl_Double_Window::hide() {
Fl_Double_Window::~Fl_Double_Window() {
hide();
}
//
// End of "$Id: Fl_Double_Window.cxx,v 1.7 1998/10/19 20:45:44 mike Exp $".
//

View File

@ -1,11 +1,34 @@
// Fl_Font.H
//
// "$Id"
//
// Font definitions for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Two internal fltk data structures:
//
// Fl_Fontdesc: an entry into the fl_font() table. This entry may contain
// several "fonts" according to the system, for instance under X all the
// sizes are different X fonts, but only one fl_font.
//
// Fl_XFont: a structure for an actual system font, with junk to help
// choose it and info on character sizes. Each Fl_Font has a linked
// list of these. These are created the first time each system font
@ -61,3 +84,7 @@ void fl_draw(const char *, int x, int y, int w, int h, Fl_Align,
void (*callthis)(const char *, int n, int x, int y));
#endif
//
// End of "$Id: Fl_Font.H,v 1.2 1998/10/19 20:45:45 mike Exp $".
//

View File

@ -1,5 +1,30 @@
// Internal interface to set up OpenGL.
//
// "$Id"
//
// OpenGL definitions for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Internal interface to set up OpenGL.
//
// A "Fl_Gl_Choice" is used to cache results of calling the
// OpenGL code for system-specific information needed to
// implement a "mode".
@ -55,3 +80,7 @@ HDC fl_private_dc(Fl_Window*, int, Fl_Gl_Choice **gp);
#endif
#endif
//
// End of "$Id: Fl_Gl_Choice.H,v 1.2 1998/10/19 20:45:46 mike Exp $".
//

View File

@ -1,5 +1,27 @@
// Internal interface to select glX visuals
// Called by Fl_Gl_Window.C and by gl_visual() (in gl_start.C)
//
// "$Id"
//
// OpenGL visual selection code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <config.h>
#if HAVE_GL
@ -155,3 +177,7 @@ HDC fl_private_dc(Fl_Window* w, int mode, Fl_Gl_Choice **gp) {
#endif
#endif
//
// End of "$Id: Fl_Gl_Choice.cxx,v 1.2 1998/10/19 20:45:45 mike Exp $".
//

View File

@ -1,4 +1,40 @@
// Fl_Gl_Overlay.C
//
// "$Id"
//
// OpenGL overlay code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <config.h>
#if HAVE_GL
#include <FL/Fl.H>
#include <FL/Fl_Gl_Window.H>
#include <FL/x.H>
#include "Fl_Gl_Choice.H"
#include <stdlib.h>
#if HAVE_GL_OVERLAY
#ifndef WIN32
// Methods on Fl_Gl_Window that create an overlay window. Because
// many programs don't need the overlay, this is seperated into this
@ -15,19 +51,6 @@
// "faked" by drawing into the main layers. This is indicated by
// setting overlay == this.
#include <config.h>
#if HAVE_GL
#include <FL/Fl.H>
#include <FL/Fl_Gl_Window.H>
#include <FL/x.H>
#include "Fl_Gl_Choice.H"
#include <stdlib.h>
#if HAVE_GL_OVERLAY
#ifndef WIN32
extern XVisualInfo *fl_find_overlay_visual();
extern XVisualInfo *fl_overlay_visual;
extern Colormap fl_overlay_colormap;
@ -173,3 +196,7 @@ void Fl_Gl_Window::hide_overlay() {
}
#endif
//
// End of "$Id: Fl_Gl_Overlay.cxx,v 1.3 1998/10/19 20:45:47 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Gl_Window.C
//
// "$Id"
//
// OpenGL window code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <config.h>
#if HAVE_GL
@ -285,3 +308,7 @@ void Fl_Gl_Window::init() {
void Fl_Gl_Window::draw_overlay() {}
#endif
//
// End of "$Id: Fl_Gl_Window.cxx,v 1.6 1998/10/19 20:45:47 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Group.C
//
// "$Id"
//
// Group widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// The Fl_Group is the only defined container type in fltk.
@ -441,3 +464,6 @@ void Fl_Group::draw_outside_label(const Fl_Widget& w) const {
w.draw_label(X,Y,W,H,(Fl_Align)align);
}
//
// End of "$Id: Fl_Group.cxx,v 1.3 1998/10/19 20:45:48 mike Exp $".
//

View File

@ -1,6 +1,27 @@
// Fl_Image.C
// Draw a image in a box.
//
// "$Id"
//
// Image drawing code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/fl_draw.H>
@ -63,3 +84,7 @@ void Fl_Image::label(Fl_Menu_Item* o) {
Fl::set_labeltype(_FL_IMAGE_LABEL, image_labeltype, image_measure);
o->label(_FL_IMAGE_LABEL, (const char*)this);
}
//
// End of "$Id: Fl_Image.cxx,v 1.3 1998/10/19 20:45:49 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Input.C
//
// "$Id"
//
// Input widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// This is the "user interface", it decodes user actions into what to
// do to the text. See also Fl_Input_.C, where the text is actually
@ -297,3 +320,7 @@ int Fl_Input::handle(int event) {
Fl_Input::Fl_Input(int x, int y, int w, int h, const char *l)
: Fl_Input_(x, y, w, h, l) {}
//
// End of "$Id: Fl_Input.cxx,v 1.3 1998/10/19 20:45:49 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Input_.C
//
// "$Id"
//
// Common input widget routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// This is the base class for Fl_Input. You can use it directly
// if you are one of those people who like to define their own
@ -701,4 +724,6 @@ Fl_Input_::~Fl_Input_() {
if (bufsize) free((void*)buffer);
}
// end of Fl_Input_.C
//
// End of "$Id: Fl_Input_.cxx,v 1.3 1998/10/19 20:45:50 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Light_Button.C
//
// "$Id"
//
// Lighted button widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Subclass of Fl_Button where the "box" indicates whether it is
// pushed or not, and the "down box" is drawn small and square on
@ -45,3 +68,7 @@ Fl_Light_Button::Fl_Light_Button(int x, int y, int w, int h, const char* l)
selection_color(FL_YELLOW);
align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
}
//
// End of "$Id: Fl_Light_Button.cxx,v 1.2 1998/10/19 20:45:51 mike Exp $".
//

View File

@ -1,7 +1,27 @@
// Fl_Menu.C
// fltk (Fast Light Tool Kit) version 0.99
// Copyright (C) 1998 Bill Spitzak
//
// "$Id"
//
// Menu code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Warning: this menu code is quite a mess!
@ -691,4 +711,6 @@ const Fl_Menu_Item* Fl_Menu_Item::test_shortcut() const {
return ret;
}
// end of Fl_Menu.C
//
// End of "$Id: Fl_Menu.cxx,v 1.3 1998/10/19 20:45:51 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Menu_.C
//
// "$Id"
//
// Common menu code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// This is a base class for all items that have a menu:
// Fl_Menu_Bar, Fl_Menu_Button, Fl_Choice
@ -93,4 +116,6 @@ Fl_Menu_::~Fl_Menu_() {
// if (alloc) clear();
}
// end of Fl_Menu_.C
//
// End of "$Id: Fl_Menu_.cxx,v 1.2 1998/10/19 20:45:52 mike Exp $".
//

View File

@ -1,3 +1,28 @@
//
// "$Id"
//
// Menu bar widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Menu_Bar.H>
@ -31,3 +56,6 @@ int Fl_Menu_Bar::handle(int event) {
return 0;
}
//
// End of "$Id: Fl_Menu_Bar.cxx,v 1.2 1998/10/19 20:45:53 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Menu_Button.C
//
// "$Id"
//
// Menu button widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Menu_Button.H>
@ -54,4 +77,6 @@ Fl_Menu_Button::Fl_Menu_Button(int X,int Y,int W,int H,const char *l)
down_box(FL_NO_BOX);
}
// end of Fl_Menu_Button.C
//
// End of "$Id: Fl_Menu_Button.cxx,v 1.2 1998/10/19 20:45:53 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Menu_Window.H
//
// "$Id"
//
// Menu window code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// This is the window type used by Fl_Menu to make the pop-ups.
// It draws in the overlay planes if possible.
@ -131,4 +154,6 @@ void Fl::release() {
return;
}
// end of Fl_Menu_Window.C
//
// End of "$Id: Fl_Menu_Window.cxx,v 1.3 1998/10/19 20:45:54 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Menu_add.C
//
// "$Id"
//
// Menu utilities for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Methods to alter the menu in an Fl_Menu_ widget.
// This code is seperated so that it is not linked in if not used.
@ -148,4 +171,6 @@ void Fl_Menu_::clear() {
}
}
// end of Fl_Menu_.C
//
// End of "$Id: Fl_Menu_add.cxx,v 1.2 1998/10/19 20:45:54 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Menu_global.C
//
// "$Id"
//
// Global menu shortcut code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Make all the shortcuts in this menu global.
// Currently only one menu at a time and you cannot destruct the menu,
@ -18,3 +41,7 @@ void Fl_Menu_::global() {
if (!the_widget) Fl::add_handler(handler);
the_widget = this;
}
//
// End of "$Id: Fl_Menu_global.cxx,v 1.2 1998/10/19 20:45:55 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Multi_Label.C
//
// "$Id"
//
// Multi-label widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Allows two labels to be used on a widget (by having one of them
// be one of these it allows an infinte number!)
@ -49,3 +72,7 @@ void Fl_Multi_Label::label(Fl_Menu_Item* o) {
Fl::set_labeltype(_FL_MULTI_LABEL, multi_labeltype, multi_measure);
o->label(_FL_MULTI_LABEL, (const char*)this);
}
//
// End of "$Id: Fl_Multi_Label.cxx,v 1.2 1998/10/19 20:45:56 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Output.C
//
// "$Id"
//
// Output widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// This subclass of Fl_Input_ does not allow user to edit the output.
// Used to display output.
@ -21,3 +44,7 @@ int Fl_Output::handle(int event) {
x()+Fl::box_dx(b)+3, y()+Fl::box_dy(b),
w()-Fl::box_dw(b)-6, h()-Fl::box_dh(b));
}
//
// End of "$Id: Fl_Output.cxx,v 1.3 1998/10/19 20:45:56 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Overlay_Window.C
//
// "$Id"
//
// Overlay window code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// A window using double-buffering and able to draw an overlay
// on top of that. Uses the hardware to draw the overlay if
@ -115,4 +138,6 @@ void Fl_Overlay_Window::redraw_overlay() {
#endif
// End of Fl_Overlay_Window.C
//
// End of "$Id: Fl_Overlay_Window.cxx,v 1.4 1998/10/19 20:45:57 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Pack.C
//
// "$Id"
//
// Packing widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Based on code by Curtis Edwards
// Group that compresses all it's children together and resizes to surround
@ -76,3 +99,7 @@ void Fl_Pack::draw() {
if (tw != w() || th != h()) {Fl_Widget::resize(x(),y(),tw,th); d = FL_DAMAGE_ALL;}
if (d&FL_DAMAGE_ALL) draw_box();
}
//
// End of "$Id: Fl_Pack.cxx,v 1.3 1998/10/19 20:45:57 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Pixmap.C
//
// "$Id"
//
// Pixmap drawing code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Draws X pixmap data, keeping it stashed in a server pixmap so it
// redraws fast.
@ -115,3 +138,7 @@ void Fl_Pixmap::label(Fl_Menu_Item* o) {
Fl::set_labeltype(_FL_PIXMAP_LABEL, pixmap_labeltype, pixmap_measure);
o->label(_FL_PIXMAP_LABEL, (const char*)this);
}
//
// End of "$Id: Fl_Pixmap.cxx,v 1.3 1998/10/19 20:45:58 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Positioner.C
//
// "$Id"
//
// Positioner widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// The positioner widget from Forms, gives 2D input
// Written by: Mark Overmars
@ -104,3 +127,7 @@ void Fl_Positioner::ybounds(double a, double b) {
redraw();
}
}
//
// End of "$Id: Fl_Positioner.cxx,v 1.2 1998/10/19 20:45:59 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Repeat_Button.C
//
// "$Id"
//
// Repeat button widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Repeat_Button.H>
@ -34,3 +57,7 @@ int Fl_Repeat_Button::handle(int event) {
return Fl_Button::handle(event);
}
}
//
// End of "$Id: Fl_Repeat_Button.cxx,v 1.2 1998/10/19 20:45:59 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Return_Button.C
//
// "$Id"
//
// Return button widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Return_Button.H>
@ -40,3 +63,7 @@ int Fl_Return_Button::handle(int event) {
} else
return Fl_Button::handle(event);
}
//
// End of "$Id: Fl_Return_Button.cxx,v 1.2 1998/10/19 20:46:00 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Roller.C
//
// "$Id"
//
// Roller widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Rapid-App style knob
@ -108,4 +131,6 @@ Fl_Roller::Fl_Roller(int X,int Y,int W,int H,const char* L)
step(1,1000);
}
// end of Fl_Roller.C
//
// End of "$Id: Fl_Roller.cxx,v 1.3 1998/10/19 20:46:00 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Round_Button.C
//
// "$Id"
//
// Round button for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// A subclass of Fl_Button that always draws as a round circle. This
// circle is smaller than the widget size and can be surrounded by
@ -13,3 +36,7 @@ Fl_Round_Button::Fl_Round_Button(int x,int y,int w,int h, const char *l)
down_box(FL_ROUND_DOWN_BOX);
selection_color(FL_RED);
}
//
// End of "$Id: Fl_Round_Button.cxx,v 1.2 1998/10/19 20:46:01 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Scroll.C
//
// "$Id"
//
// Scroll widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Scroll.H>
@ -207,4 +230,6 @@ int Fl_Scroll::handle(int event) {
return Fl_Group::handle(event);
}
// end of Fl_Scroll.C
//
// End of "$Id: Fl_Scroll.cxx,v 1.3 1998/10/19 20:46:02 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Scrollbar.C
//
// "$Id"
//
// Scroll bar widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Scrollbar.H>
@ -156,3 +179,7 @@ Fl_Scrollbar::Fl_Scrollbar(int X, int Y, int W, int H, const char* L)
pushed_ = 0;
step(1);
}
//
// End of "$Id: Fl_Scrollbar.cxx,v 1.3 1998/10/19 20:46:02 mike Exp $".
//

View File

@ -1,14 +1,39 @@
/* Fl_Single_Window.H
//
// "$Id"
//
// Single-buffered window for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
A window with a single-buffered context
This is provided for systems where the base class is double
buffered. You can turn it off using this subclass in case
your display looks better without it.
*/
// A window with a single-buffered context
//
// This is provided for systems where the base class is double
// buffered. You can turn it off using this subclass in case
// your display looks better without it.
#include <FL/Fl_Single_Window.H>
void Fl_Single_Window::show() {Fl_Window::show();}
void Fl_Single_Window::flush() {Fl_Window::flush();}
//
// End of "$Id: Fl_Single_Window.cxx,v 1.2 1998/10/19 20:46:03 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Slider.C
//
// "$Id"
//
// Slider widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Slider.H>
@ -203,4 +226,6 @@ int Fl_Slider::handle(int event) {
return handle(event, x(), y(), w(), h());
}
// End of Fl_Slider.C
//
// End of "$Id: Fl_Slider.cxx,v 1.3 1998/10/19 20:46:03 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Tabs.C
//
// "$Id"
//
// Tab widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// This is the "file card tabs" interface to allow you to put lots and lots
// of buttons and switches in a panel, as popularized by many toolkits.
@ -232,3 +255,7 @@ Fl_Tabs::Fl_Tabs(int X,int Y,int W, int H, const char *l) :
box(FL_THIN_UP_BOX);
value_ = push_ = 0;
}
//
// End of "$Id: Fl_Tabs.cxx,v 1.3 1998/10/19 20:46:04 mike Exp $".
//

View File

@ -1,5 +1,29 @@
// Fl_Tile.C - Group of 2 or 4 "tiles" that can be resized by dragging border
//
// "$Id"
//
// Tile widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Group of 2 or 4 "tiles" that can be resized by dragging border
// The size of the first child determines where the resize border is.
// The resizebox is used to limit where the border can be dragged to.
@ -170,4 +194,6 @@ int Fl_Tile::handle(int event) {
return Fl_Group::handle(event);
}
// end of Fl_Tile.C
//
// End of "$Id: Fl_Tile.cxx,v 1.2 1998/10/19 20:46:05 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Valuator.C
//
// "$Id"
//
// Valuator widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Base class for sliders and all other one-value "knobs"
@ -98,3 +121,7 @@ int Fl_Valuator::format(char* buffer) {
if (x == B) i--;
return sprintf(buffer, "%.*f", i, v);
}
//
// End of "$Id: Fl_Valuator.cxx,v 1.3 1998/10/19 20:46:05 mike Exp $".
//

View File

@ -1,7 +1,29 @@
// Fl_Value_Input.C
//
// "$Id"
//
// Value input widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Fltk widget for drag-adjusting a floating point value.
// Warning: this works by making a child Fl_Input object, even
// though this object is *not* an Fl_Group. May be a kludge?
@ -98,3 +120,7 @@ Fl_Value_Input::Fl_Value_Input(int x, int y, int w, int h, const char* l)
align(FL_ALIGN_LEFT);
value_damage();
}
//
// End of "$Id: Fl_Value_Input.cxx,v 1.3 1998/10/19 20:46:06 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Value_Output.C
//
// "$Id"
//
// Value output widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Fltk widget for drag-adjusting a floating point value.
// This is much lighter than Fl_Value_Input because it has no text editor
@ -71,3 +94,7 @@ Fl_Value_Output::Fl_Value_Output(int x,int y,int w,int h,const char *l)
textcolor_ = FL_BLACK;
soft_ = 0;
}
//
// End of "$Id: Fl_Value_Output.cxx,v 1.3 1998/10/19 20:46:07 mike Exp $".
//

View File

@ -1,4 +1,27 @@
/* Fl_Value_Slider.C */
//
// "$Id"
//
// Value slider widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Value_Slider.H>
@ -42,4 +65,6 @@ int Fl_Value_Slider::handle(int event) {
return Fl_Slider::handle(event,sxx,syy,sww,shh);
}
// End of Fl_Value_Slider.C
//
// End of "$Id: Fl_Value_Slider.cxx,v 1.2 1998/10/19 20:46:07 mike Exp $".
//

View File

@ -1,7 +1,27 @@
// Fl_Widget.C
// fltk (Fast Light Tool Kit) version 0.99
// Copyright (C) 1998 Bill Spitzak
//
// "$Id"
//
// Base widget class for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Widget.H>
@ -162,3 +182,7 @@ int Fl_Widget::contains(const Fl_Widget *o) const {
for (; o; o = o->parent_) if (o == this) return 1;
return 0;
}
//
// End of "$Id: Fl_Widget.cxx,v 1.2 1998/10/19 20:46:08 mike Exp $".
//

View File

@ -1,7 +1,27 @@
// Fl_Window.C
// fltk (Fast Light Tool Kit) version 0.99
// Copyright (C) 1998 Bill Spitzak
//
// "$Id"
//
// Window widget class for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// The Fl_Window is a window in the fltk library.
// This is the system-independent portions. The huge amount of
@ -80,4 +100,6 @@ void Fl_Window::default_callback(Fl_Window* window, void* v) {
Fl::atclose(window, v);
}
// End of Fl_Window.C
//
// End of "$Id: Fl_Window.cxx,v 1.2 1998/10/19 20:46:09 mike Exp $".
//

View File

@ -1,3 +1,28 @@
//
// "$Id"
//
// Fullscreen window support for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Turning the border on/off by changing the motif_wm_hints property
// works on Irix 4DWM. Does not appear to work for any other window
// manager. Fullscreen still works on some window managers (fvwm is one)
@ -44,3 +69,6 @@ void Fl_Window::fullscreen_off(int X,int Y,int W,int H) {
#endif
}
//
// End of "$Id: Fl_Window_fullscreen.cxx,v 1.2 1998/10/19 20:46:09 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_Window_hotspot.C
//
// "$Id"
//
// Common hotspot routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/Fl_Window.H>
@ -25,3 +48,7 @@ void Fl_Window::hotspot(const Fl_Widget *o, int offscreen) {
}
hotspot(X,Y,offscreen);
}
//
// End of "$Id: Fl_Window_hotspot.cxx,v 1.2 1998/10/19 20:46:10 mike Exp $".
//

View File

@ -1,5 +1,27 @@
// X-specific code that is not called by all programs, so it is put
// here in it's own source file to make programs smaller.
//
// "$Id"
//
// Window minification code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/x.H>
@ -17,3 +39,7 @@ void Fl_Window::iconize() {
#endif
}
}
//
// End of "$Id: Fl_Window_iconize.cxx,v 1.3 1998/10/19 20:46:11 mike Exp $".
//

View File

@ -1,5 +1,27 @@
// X-specific structure for storing allocated colors. Used by fl_color.C,
// fl_draw_image.C, fl_set_color.C.
//
// "$Id"
//
// X-specific color definitions for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <config.h>
@ -16,3 +38,6 @@ extern Fl_XColor fl_xmap[/*overlay*/][256];
extern unsigned char fl_redmask, fl_greenmask, fl_bluemask;
extern int fl_redshift, fl_greenshift, fl_blueshift, fl_extrashift;
//
// End of "$Id: Fl_XColor.H,v 1.2 1998/10/19 20:46:11 mike Exp $".
//

View File

@ -1,3 +1,28 @@
//
// "$Id"
//
// Warning/error message code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// This method is in it's own source file so that stdlib and stdio
// do not need to be included in Fl.C:
// You can also override this by redefining all of these.
@ -25,22 +50,29 @@ static void error(const char *format, ...) {
va_end(args);
fputc('\n', stderr);
fflush(stderr);
//abort(); // this produces a core dump, probably not desirable?
::exit(1);
}
#else
// windows version is currently lame as vsprintf() is missing?
#include <windows.h>
static void warning(const char *format, ...) {
MessageBox(0,format,"Fltk warning",MB_ICONEXCLAMATION|MB_OK);
va_list args;
char buf[1024];
va_start(args, format);
vsprintf(buf, format, args);
va_end(args);
MessageBox(0,buf,"Warning",MB_ICONEXCLAMATION|MB_OK);
}
static void error(const char *format, ...) {
MessageBox(0,format,"Fltk error",MB_ICONSTOP|MB_SYSTEMMODAL);
va_list args;
char buf[1024];
va_start(args, format);
vsprintf(buf, format, args);
va_end(args);
MessageBox(0,buf,"Error",MB_ICONSTOP|MB_SYSTEMMODAL);
::exit(1);
}
@ -49,3 +81,7 @@ static void error(const char *format, ...) {
void (*Fl::warning)(const char* format, ...) = ::warning;
void (*Fl::error)(const char* format, ...) = ::error;
void (*Fl::fatal)(const char* format, ...) = ::error;
//
// End of "$Id: Fl_abort.cxx,v 1.2 1998/10/19 20:46:12 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_add_idle.C
//
// "$Id"
//
// Idle routine support for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Allows you to manage an arbitrary set of idle() callbacks.
// Replaces the older set_idle() call (which is used to implement this)
@ -60,3 +83,7 @@ void Fl::remove_idle(void (*cb)(void*), void* data) {
p->next = freelist;
freelist = p;
}
//
// End of "$Id: Fl_add_idle.cxx,v 1.2 1998/10/19 20:46:13 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_arg.C
//
// "$Id"
//
// Optional argument initialization code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// OPTIONAL initialization code for a program using fltk.
// You do not need to call this! Feel free to make up your own switches.
@ -23,7 +46,7 @@ int XParseGeometry(const char*, int*, int*, unsigned int*, unsigned int*);
#define YNegative 0x0020
#endif
static int match(const char *a, const char *match, int atleast = 1) {
static int match(const char *a, const char *match, int atleast = 2) {
const char *b = match;
while (*a && (*a == *b || tolower(*a) == *b)) {a++; b++;}
return !*a && b >= match+atleast;
@ -52,11 +75,7 @@ int Fl::arg(int argc, char **argv, int &i) {
// a program. Return 0 to indicate that we don't understand the
// word, but set a flag (return_i) so that args() will return at
// that point:
if (s[0] != '-' || !s[1]) {return_i = 1; return 0;}
if (s[1] == '-') {
if (!s[2]) {i++; return_i = 1; return 0;}
s++; // make "--word" work the same as "-word" for Gnu compatability
}
if (s[0] != '-' || s[1] == '-' || !s[1]) {return_i = 1; return 0;}
s++; // point after the dash
if (match(s, "iconic")) {
@ -221,11 +240,11 @@ void Fl_Window::show(int argc, char **argv) {
static const char * const helpmsg =
"options are:\n"
" -display host:n.n\n"
" -geometry WxH+X+Y\n"
" -title windowtitle\n"
" -name classname\n"
" -iconic\n"
" -di[splay] host:n.n\n"
" -ge[ometry] WxH+X+Y\n"
" -ti[tle] windowtitle\n"
" -na[me] classname\n"
" -ic[onic]\n"
" -fg color\n"
" -bg color\n"
" -bg2 color";
@ -374,4 +393,6 @@ int XParseGeometry(const char* string, int* x, int* y,
#endif // ifdef WIN32
// end of Fl_Window_arg.C
//
// End of "$Id: Fl_arg.cxx,v 1.2 1998/10/19 20:46:13 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_cutpaste.C
//
// "$Id"
//
// Cut/paste code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Implementation of cut and paste.
@ -124,4 +147,7 @@ void Fl::selection(Fl_Widget &owner, const char *stuff, int len) {
}
#endif
// end of Fl_cutpaste.C
//
// End of "$Id: Fl_cutpaste.cxx,v 1.2 1998/10/19 20:46:14 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_cutpaste_win32.C
//
// "$Id"
//
// WIN32 cut/paste for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Implementation of cut and paste.
@ -104,3 +127,7 @@ void Fl::paste(Fl_Widget &receiver) {
CloseClipboard();
}
}
//
// End of "$Id: Fl_cutpaste_win32.cxx,v 1.2 1998/10/19 20:46:15 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_display.C
//
// "$Id"
//
// Display function for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Startup method to set what display to use.
// Using setenv makes programs that are exec'd use the same display.
@ -14,3 +37,7 @@ void Fl::display(const char *d) {
for (char *c = e+8; *c!=':'; c++) if (!*c) {strcpy(c,":0.0"); break;}
putenv(e);
}
//
// End of "$Id: Fl_display.cxx,v 1.2 1998/10/19 20:46:15 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_get_key.C
//
// "$Id"
//
// Keyboard state routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#ifdef WIN32
#include "Fl_get_key_win32.C"
@ -35,3 +58,7 @@ int Fl::get_key(int k) {
}
#endif
//
// End of "$Id: Fl_get_key.cxx,v 1.2 1998/10/19 20:46:16 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_get_key_win32.C
//
// "$Id"
//
// WIN32 keyboard state routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Return the current state of a key. Keys are named by fltk symbols,
// which are actually X keysyms. So this has to translate to MSWindows
@ -106,3 +129,7 @@ int Fl::get_key(int k) {
GetKeyboardState(foo);
return foo[fltk2ms(k)]&~1;
}
//
// End of "$Id: Fl_get_key_win32.cxx,v 1.2 1998/10/19 20:46:17 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_get_system_colors.C
//
// "$Id"
//
// System color support for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <FL/Fl.H>
#include <FL/x.H>
@ -64,3 +87,7 @@ void Fl::get_system_colors()
}
#endif
//
// End of "$Id: Fl_get_system_colors.cxx,v 1.2 1998/10/19 20:46:17 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// Fl_own_colormap.C
//
// "$Id"
//
// Private colormap support for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Using the default system colormap can be a bad idea on PseudoColor
// visuals, since typically every application uses the default colormap and
@ -48,3 +71,7 @@ void Fl::own_colormap() {
}
#endif
//
// End of "$Id: Fl_own_colormap.cxx,v 1.2 1998/10/19 20:46:18 mike Exp $".
//

View File

@ -1,5 +1,28 @@
// Fl_visual.C
//
// "$Id"
//
// Visual support for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Set the default visual according to passed switches:
#include <config.h>
@ -77,3 +100,7 @@ int Fl::visual(int flags) {
}
#endif
//
// End of "$Id: Fl_visual.cxx,v 1.4 1998/10/19 20:46:19 mike Exp $".
//

View File

@ -1,24 +1,27 @@
// Fl_win32.C
// fltk (Fast Light Tool Kit) version 0.99
// Copyright (C) 1998 Bill Spitzak
//
// "$Id"
//
// WIN32-specific code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
// Written by Bill Spitzak spitzak@d2.com
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// This file contains win32-specific code for fltk which is always linked
// in. Search other files for "WIN32" or filenames ending in _win32.C
@ -733,4 +736,6 @@ void Fl_Window::flush() {
draw();
}
// End of Fl_win32.C //
//
// End of "$Id: Fl_win32.cxx,v 1.8 1998/10/19 20:46:19 mike Exp $".
//

View File

@ -1,24 +1,27 @@
// Fl_x.C
// fltk (Fast Light Tool Kit) version 0.99
// Copyright (C) 1998 Bill Spitzak
//
// "$Id"
//
// X specific code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
// Written by Bill Spitzak spitzak@d2.com
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#ifdef WIN32
#include "Fl_win32.C"
@ -799,4 +802,7 @@ void Fl_Window::flush() {
}
#endif
// End of Fl_x.C
//
// End of "$Id: Fl_x.cxx,v 1.5 1998/10/19 20:46:20 mike Exp $".
//

View File

@ -1,3 +1,28 @@
//
// "$Id"
//
// Colormap generation program for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// This program produces the contents of "fl_cmap.h" as stdout
// #include <gl/gl.h>
@ -118,3 +143,7 @@ int main() {
printf("\n");
return 0;
}
//
// End of "$Id: cmap.cxx,v 1.2 1998/10/19 20:46:21 mike Exp $".
//

View File

@ -1,3 +1,28 @@
//
// "$Id"
//
// Filename expansion routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
/* expand a file name by prepending current directory, deleting . and
.. (not really correct for symbolic links) between the prepended
current directory. Use $PWD if it exists.
@ -65,3 +90,7 @@ int filename_absolute(char *to,const char *from) {
return 1;
}
//
// End of "$Id: filename_absolute.cxx,v 1.2 1998/10/19 20:46:22 mike Exp $".
//

View File

@ -1,3 +1,28 @@
//
// "$Id"
//
// Filename expansion routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
/* expand a file name by substuting environment variables and
home directories. Returns true if any changes were made.
to & from may be the same buffer.
@ -70,3 +95,7 @@ int filename_expand(char *to,const char *from) {
strcpy(to,start);
return ret;
}
//
// End of "$Id: filename_expand.cxx,v 1.2 1998/10/19 20:46:22 mike Exp $".
//

View File

@ -1,3 +1,28 @@
//
// "$Id"
//
// Filename extension routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// returns pointer to the last '.' or to the null if none:
#include <FL/filename.H>
@ -15,3 +40,6 @@ const char *filename_ext(const char *buf) {
return q ? q : p;
}
//
// End of "$Id: filename_ext.cxx,v 1.2 1998/10/19 20:46:23 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// filename_isdir.C
//
// "$Id"
//
// Directory detection routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Used by fl_file_chooser
@ -10,3 +33,7 @@ int filename_isdir(const char* n) {
struct stat s;
return !stat(n, &s) && (s.st_mode&0170000)==0040000;
}
//
// End of "$Id: filename_isdir.cxx,v 1.2 1998/10/19 20:46:24 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// filename_list.C
//
// "$Id"
//
// Filename list routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Wrapper for scandir with const-correct function prototypes.
@ -24,9 +47,13 @@ int filename_list(const char *d, dirent ***list) {
return scandir(d, list, 0, (int(*)(const void*,const void*))numericsort);
#else
#if HAVE_SCANDIR
return scandir(d, list, 0, (int(*)(dirent**,dirent**))numericsort);
return scandir(d, list, 0, (int(*)(const dirent**,const dirent**))numericsort);
#else // built-in scandir is const-correct:
return scandir(d, list, 0, numericsort);
#endif
#endif
}
//
// End of "$Id: filename_list.cxx,v 1.3 1998/10/19 20:46:24 mike Exp $".
//

View File

@ -1,4 +1,28 @@
/*------------------- Pattern matching --------------------------*/
//
// "$Id"
//
// Pattern matching routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
/* Adapted from Rich Salz. */
#include <FL/filename.H>
@ -72,3 +96,7 @@ int filename_match(const char *s, const char *p) {
}
}
}
//
// End of "$Id: filename_match.cxx,v 1.2 1998/10/19 20:46:25 mike Exp $".
//

View File

@ -1,3 +1,28 @@
//
// "$Id"
//
// Filename extension routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Replace .ext with new extension
// If no . in name, append new extension
// If new extension is null, act like it is ""
@ -10,3 +35,7 @@ char *filename_setext(char *buf, const char *ext) {
if (ext) strcpy(q,ext); else *q = 0;
return(buf);
}
//
// End of "$Id: filename_setext.cxx,v 1.2 1998/10/19 20:46:26 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_arc.C
//
// "$Id"
//
// Arc functions for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Utility for drawing arcs and circles. They are added to
// the current fl_begin/fl_vertex/fl_end path.
@ -48,3 +71,7 @@ void fl_circle(double x,double y,double r) {
_fl_arc(x, y, r, r, 0, 360);
}
#endif
//
// End of "$Id: fl_arc.cxx,v 1.2 1998/10/19 20:46:26 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_arci.C
//
// "$Id"
//
// Arc (integer) drawing functions for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// "integer" circle drawing functions. These draw the limited
// circle types provided by X and NT graphics. The advantage of
@ -43,3 +66,7 @@ void fl_pie(int x,int y,int w,int h,double a1,double a2) {
XFillArc(fl_display, fl_window, fl_gc, x,y,w,h, int(a1*64),int((a2-a1)*64));
#endif
}
//
// End of "$Id: fl_arci.cxx,v 1.2 1998/10/19 20:46:27 mike Exp $".
//

View File

@ -1,7 +1,29 @@
// fl_ask.C
//
// "$Id"
//
// Standard dialog functions for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Implementation of fl_message, fl_ask, fl_choice, fl_input
// The three-message fl_show_x functions are for forms compatibility
// mostly. In most cases it is easier to get a multi-line message
// by putting newlines in the message.
@ -162,4 +184,6 @@ char *fl_show_simple_input(const char *str1, const char *defstr) {
return (char *)(r ? r : defstr);
}
// end of fl_ask.C
//
// End of "$Id: fl_ask.cxx,v 1.2 1998/10/19 20:46:28 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_boxtype.c
//
// "$Id"
//
// Box drawing code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Box drawing code for the common box types and the table of
// boxtypes. Other box types are in seperate files so they are not
@ -257,3 +280,7 @@ const {
fl_box_table[b].f(x, y, w, h, c);
draw_it_active = 1;
}
//
// End of "$Id: fl_boxtype.cxx,v 1.3 1998/10/19 20:46:28 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_color.C
//
// "$Id"
//
// Color functions for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Implementation of fl_color(i), fl_color(r,g,b).
@ -306,4 +329,7 @@ void Fl::get_color(Fl_Color i, uchar &red, uchar &green, uchar &blue) {
}
#endif
// end of fl_color.C
//
// End of "$Id: fl_color.cxx,v 1.2 1998/10/19 20:46:29 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_color_win32.C
//
// "$Id"
//
// WIN32 color functions for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// The fltk "colormap". This allows ui colors to be stored in 8-bit
// locations, and provides a level of indirection so that global color
@ -201,4 +224,6 @@ fl_select_palette(void)
#endif
// end of fl_color_win32.C
//
// End of "$Id: fl_color_win32.cxx,v 1.2 1998/10/19 20:46:30 mike Exp $".
//

View File

@ -1,7 +1,29 @@
// fl_cursor.C
//
// "$Id"
//
// Mouse cursor support for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Change the current cursor.
// Under X the cursor is attached to the X window. I tried to hide
// this and pretend that changing the cursor is a drawing function.
// This avoids a field in the Fl_Window, and I suspect is more
@ -143,3 +165,7 @@ void Fl_Window::cursor(Fl_Cursor c, Fl_Color fg, Fl_Color bg) {
}
#endif
//
// End of "$Id: fl_cursor.cxx,v 1.3 1998/10/19 20:46:31 mike Exp $".
//

View File

@ -1,8 +1,30 @@
// fl_curve.C
//
// "$Id"
//
// Bezier curve functions for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Utility for drawing Bezier curves, adding the points to
// the current fl_begin/fl_vertex/fl_end path.
// Incremental math implementation:
// I very much doubt this is optimal! From Foley/vanDam page 511.
// If anybody has a better algorithim, please send it!
@ -71,3 +93,7 @@ void fl_curve(double X0, double Y0,
// draw point n:
fl_transformed_vertex(x3,y3);
}
//
// End of "$Id: fl_curve.cxx,v 1.2 1998/10/19 20:46:31 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_diamond_box.C
//
// "$Id"
//
// Diamond box code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Box drawing code for an obscure box type.
// These box types are in seperate files so they are not linked
@ -49,3 +72,7 @@ Fl_Boxtype define_FL_DIAMOND_BOX() {
fl_internal_boxtype(_FL_DIAMOND_UP_BOX,fl_diamond_up_box);
return _FL_DIAMOND_UP_BOX;
}
//
// End of "$Id: fl_diamond_box.cxx,v 1.3 1998/10/19 20:46:32 mike Exp $".
//

View File

@ -1,9 +1,30 @@
// fl_draw.C
//
// "$Id"
//
// Label drawing code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Implementation of fl_draw(const char*,int,int,int,int,Fl_Align)
// Used to draw all the labels and text, this routine:
// Word wraps the labels to fit into their bounding box.
// Breaks them into lines at the newlines.
// Expands all unprintable characters to ^X or \nnn notation
@ -173,3 +194,7 @@ void fl_measure(const char* str, int& w, int& h) {
w = W;
h = lines*h;
}
//
// End of "$Id: fl_draw.cxx,v 1.2 1998/10/19 20:46:33 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_draw_image.C
//
// "$Id"
//
// Image drawing routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// I hope a simple and portable method of drawing color and monochrome
// images. To keep this simple, only a single storage type is
@ -602,4 +625,7 @@ void fl_rectf(int x, int y, int w, int h, uchar r, uchar g, uchar b) {
}
#endif
// End of fl_draw_image.C
//
// End of "$Id: fl_draw_image.cxx,v 1.2 1998/10/19 20:46:33 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_draw_image_win32.C
//
// "$Id"
//
// WIN32 image drawing code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// I hope a simple and portable method of drawing color and monochrome
// images. To keep this simple, only a single storage type is
@ -234,4 +257,6 @@ void fl_rectf(int x, int y, int w, int h, uchar r, uchar g, uchar b) {
fl_rectf(x,y,w,h);
}
// End of fl_draw_image_win32.C
//
// End of "$Id: fl_draw_image_win32.cxx,v 1.2 1998/10/19 20:46:34 mike Exp $".
//

View File

@ -1,13 +1,34 @@
// fl_draw_pixmap.C
//
// "$Id"
//
// Pixmap drawing code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Implemented without using the xpm library (which I can't use because
// it interferes with the color cube used by fl_draw_image).
// Current implementation is cheap and slow, and works best on a full-color
// display. Transparency is not handled, and colors are dithered to
// the color cube. Color index is achieved by adding the id
// characters together! Also mallocs a lot of temporary memory!
// Notice that there is no pixmap file interface. This is on purpose,
// as I want to discourage programs that require support files to work.
// All data needed by a program ui should be compiled in!!!
@ -222,3 +243,6 @@ int fl_draw_pixmap(/*const*/char*const* data, int x, int y, Fl_Color bg) {
return 1;
}
//
// End of "$Id: fl_draw_pixmap.cxx,v 1.2 1998/10/19 20:46:35 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_engraved_label.C
//
// "$Id"
//
// Engraved label drawing routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Drawing code for XForms style engraved & embossed labels
@ -62,3 +85,7 @@ Fl_Labeltype define_FL_EMBOSSED_LABEL() {
Fl::set_labeltype(_FL_EMBOSSED_LABEL, fl_embossed_label, 0);
return _FL_EMBOSSED_LABEL;
}
//
// End of "$Id: fl_engraved_label.cxx,v 1.2 1998/10/19 20:46:36 mike Exp $".
//

View File

@ -1,12 +1,27 @@
// fl_file_chooser.c
// fltk (Fast Light Tool Kit) version 0.99
// Copyright (C) 1998 Bill Spitzak
// The "completion" file chooser for fltk
// Designed and implemented by Bill Spitzak 12/17/93
// Rewritten for fltk 4/29/96
// Rewritten to use scandir() 1/7/97
//
// "$Id"
//
// File chooser widget for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <config.h>
#include <FL/fl_file_chooser.H>
@ -597,4 +612,6 @@ char* fl_file_chooser(const char* message, const char* pat, const char* fname)
return (char*)r;
}
// end of fl_file_chooser.C
//
// End of "$Id: fl_file_chooser.cxx,v 1.2 1998/10/19 20:46:37 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_font.C
//
// "$Id"
//
// Font selection code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Select fonts from the fltk font table.
@ -280,4 +303,7 @@ void fl_draw(const char *str, int x, int y) {
}
#endif
// end of fl_font.C
//
// End of "$Id: fl_font.cxx,v 1.2 1998/10/19 20:46:37 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_font_win32.C
//
// "$Id"
//
// WIN32 font selection routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
#include <config.h>
#include <FL/Fl.H>
@ -156,4 +179,6 @@ void fl_draw(const char *str, int x, int y) {
fl_draw(str, strlen(str), x, y);
}
// end of fl_font_win32.C
//
// End of "$Id: fl_font_win32.cxx,v 1.4 1998/10/19 20:46:38 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_labeltype.C
//
// "$Id"
//
// Label drawing routines for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Drawing code for the (one) common label types.
// Other label types (symbols) are in their own source files
@ -102,3 +125,6 @@ Fl_Boxtype Fl_Input_::default_box_ = FL_DOWN_BOX;
Fl_Font Fl_Input_::default_font_;
int Fl_Input_::default_size_;
//
// End of "$Id: fl_labeltype.cxx,v 1.2 1998/10/19 20:46:39 mike Exp $".
//

View File

@ -1,9 +1,31 @@
/* fl_oval_box.C
//
// "$Id"
//
// Oval box drawing code for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
Less-used box types are in seperate files so they are not linked
in if not used.
*/
// Less-used box types are in seperate files so they are not linked
// in if not used.
#include <FL/Fl.H>
#include <FL/fl_draw.H>
@ -36,3 +58,7 @@ Fl_Boxtype define_FL_OVAL_BOX() {
fl_internal_boxtype(_FL_OVAL_BOX,fl_oval_box);
return _FL_OVAL_BOX;
}
//
// End of "$Id: fl_oval_box.cxx,v 1.2 1998/10/19 20:46:39 mike Exp $".
//

View File

@ -1,4 +1,27 @@
// fl_overlay.C
//
// "$Id"
//
// Overlay support for the Fast Light Tool Kit (FLTK).
//
// Copyright 1998 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
// License as published by the Free Software Foundation; either
// version 2 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Library General Public License for more details.
//
// You should have received a copy of the GNU Library General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA.
//
// Please report all bugs and problems to "fltk-bugs@easysw.com".
//
// Extremely limited "overlay" support. You can use this to drag out
// a rectangle in response to mouse events. It is your responsibility
@ -37,3 +60,7 @@ void fl_overlay_rect(int x, int y, int w, int h) {
px = x; py = y; pw = w; ph = h;
draw_current_rect();
}
//
// End of "$Id: fl_overlay.cxx,v 1.2 1998/10/19 20:46:40 mike Exp $".
//

Some files were not shown because too many files have changed in this diff Show More