Project 1 help session : FLTK
This page is designed to assist you in completing project 1, Impressionist.
This is the basic tutorial for using FLTK to create
the user interface.
FLTK tutorial
FLTK is a C++ graphical user interface tookit for X(Unix), OpenGL and
Microsoft Windows(Nt 4.0, 95, 98).
We won't cover much about FLTK in here because code examples are included
in the skeleton code. But it is good to learn the basics of FLTK
so that you can improve your UI later on if you choose to do so. You can
click
here to see the
complete FLTK Programming Manual.
All public symbols in FLTK start with the characters 'F' and 'L'
- Function names examples are Fl::foo() or fl_foo().
- Class and type names are capitalized: Fl_foo
- Constant enumeration: FL_FOO
- All headers start with <FL/...>
Here are links to the most common widgets that you may need to use in your
programs. Code examples for each of these widgets can be found in
ImpressionistUI.cpp.
Fl_Window
Fl_Menu_Bar
Fl_Menu_Item
Fl_Value_Slider
Fl_Choice
Fl_Button
Fl_Light_Button
Fl_Input
Fl_Int_Input
Fl_Float_Input
Everything else
Here is a simple Hello World program that I get from the FLTK Programming
Manual.
#include <FL/Fl.h>
#include <FL/Fl_Window.H>
#include <FL/Fl_Box.h>
int main(int argc, char *argv) {
FL_Window *window = new Fl_Window(300, 180);
FL_Box *box = new Fl_Box(20, 40, 260, 100, "Hello World!");
box->(FL_UP_BOX);
box->labelsize(36);
box->labelfont(FL_BOLD);
box->labeltype(FL_SHADOW_LABEL);
window->end();
window->show(argc, argv);
return Fl::run()
}
The statement "FL_Window *window = ..." will create a window with the
specified size(36). The next statement will create a box with the "Hello
World!" string in it. To format the box and string, we can use
"labelfont", "labeltype", etc.