DO NOT REPLY TO THIS MESSAGE. INSTEAD, POST ANY RESPONSES TO THE LINK BELOW.
[STR New]
Link: http://www.fltk.org/str.php?L2084
Version: 2.0-current
Link: http://www.fltk.org/str.php?L2084
Version: 2.0-current
#include <stdio.h>
#include <fltk/run.h>
#include <fltk/Widget.h>
#include <fltk/Button.h>
#include <fltk/Window.h>
#include <fltk/ScrollGroup.h>
#include <fltk/PackedGroup.h>
static void button_callback(fltk::Widget *widget, void *vp);
class Callback_Data
{
private:
friend void button_callback(fltk::Widget *widget, void *vp);
fltk::ScrollGroup *scroll;
fltk::PackedGroup *pack;
public:
Callback_Data(fltk::ScrollGroup *scroll, fltk::PackedGroup *pack) :
scroll(scroll), pack(pack) { }
};
static void button_callback(fltk::Widget *widget, void *vp)
{
Callback_Data *data = (Callback_Data *)vp;
data->pack->remove(widget);
data->scroll->redraw();
delete data;
delete widget;
}
int main()
{
fltk::Window *window = new fltk::Window(100,100,"Scroller");
window->begin();
fltk::ScrollGroup *scroll = new fltk::ScrollGroup(0,0,100,100);
scroll->type(fltk::ScrollGroup::VERTICAL);
scroll->begin();
fltk::PackedGroup *pack = new fltk::PackedGroup(0,0,100,100);
pack->begin();
char label[20];
for (int ii = 0; ii < 10; ii++) {
sprintf(label, "Button: %2d", ii);
fltk::Button *button = new fltk::Button(0,0,100,25);
button->copy_label(label);
button->callback(button_callback);
button->user_data(new Callback_Data(scroll, pack));
}
pack->end();
scroll->end();
window->resizable(scroll);
window->end();
window->size_range(100,100);
window->show();
fltk::run();
}
_______________________________________________
fltk-bugs mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-bugs