FLTK C++ Gui Toolkit
Penulis : hameedAnda butuh toolkit GUI C++ yang cepat, ringan dan lintas platform? cobalah FLTK (Fast Light Toolkit). FLTK dikembangkan dari proyek XForms oleh Bill Spitzak dan saat ini telah mencapai rilis 2.0 (Pengembangannya agak lama). Walapun ringan dan “minimalis” bukan berarti FLTK miskin fitur, hampir semua fitur GUI Toolkit lainnya dimiliki juga oleh FLTK. Salah satu aplikasi yang dikembangkan dengan FLTK adalah ede,
Fitur
Apa saja kelebihan FLTK ini?, Berikut fitur-fitur “plus” yang dimilikinya:
- Cepat dan ringan.
- Memungkinkan kita untuk melakukan linking statis (sehingga kita tidak memerlukan library tsb ketika menjalankan hasil kompilasi).
- Dilengkapi dengan kemampuan OpenGL/Mesa.
- Kemampuan drawing 2-D, yang membungkus fungsi-fungsi drawing pada library X11 dan Win32 sehingga menjadi lebih mudah digunakan.
- Dilengkapi sebuah RAD (Rapid Application Development), FLUID. Dengan FLUID, waktu pengerjaan program bisa menjadi lebih singkat.
- Dokumentasi cukup lengkap.
- Tersedia binding ke bahasa permrograman lain; perl, python, ruby.
Dan masih banyak fitur-fitur lainnya.
Lisensi
Bagaimana dengan lisensinya? FLTK dirilis menggunakan LGPL (Lesser GNU Public License), jadi kita tidak perlu khawatir jika men-develop aplikasi komersil menggunakan FLTK. Hehe apalagi aplikasi berlisensi GPL…malah dianjurkan
.
Instalasi
Seperti biasa pada umumnya instalasi di lingkungan GNU/Linux:
- Ekstrak source fltk. source fltk dapat diunduh dari http://fltk.org.
tar jzxvf fltk-x.x.x./configure && make && /bin/su -c "make install"Hello World
Tiba saatnya mencoba FLTK yang telah kita install. Buat file HaloJogxer.h, HaloJogxer.cpp, main.cpp dengan editor favorit kita, bisa Vi, Joe, Emacs atau apapun asal text editor.
// HaloJogxer.h
#ifndef __HALOJOGXER_H__
#define __HALOJOGXER_H__
#include "FL/Fl_Window.h"
class HaloJogxer : public Fl_Window
{
public:
HaloJogxer(int lebar, int tinggi, const char *judul);
virtual ~HaloJogxer();
};
#endif
//HaloJogxer.cpp
#include "FL/Fl_Box.h"
#include "HaloJogxer.h"
HaloJogxer::HaloJogxer(int lebar, int tinggi, const char *judul)
: Fl_Window(lebar, tinggi, judul)
{
Fl_Box *box = new Fl_Box(20, 40, 260, 100, "Halo JogXer");
box->box(FL_UP_BOX);
box->labelsize(24);
box->labelfont(FL_BOLD+FL_ITALIC);
box->labeltype(FL_SHADOW_LABEL);
}
HaloJogxer::~HaloJogxer()
{
}
//main.cpp
#include "FL/Fl.h"
#include "HaloJogxer.h"
int main(int argc, char *argv[])
{
HaloJogxer *halo = new HaloJogxer(300, 180, "Sapa JogXer");
halo->show();
return Fl::run();
}
Lakukan Kompilasi:
g++ -o halo HaloJogxer.cpp main.cpp `fltk-config --cxxflags --libs --ldflags`dan coba jalankan:
./halo![]()
Semoga bermanfaat…
Referensi:


