Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Fl_Combo_Box.h

00001 #ifndef _FL_COMBO_BOX_H_
00002 #define _FL_COMBO_BOX_H_
00003 
00004 #include "Fl_Group.h"
00005 #include "Fl_ListView.h"
00006 
00007 enum Fl_Combo_Box_Buttons {
00008     FL_CBB_BROWSE  = 1,
00009     FL_CBB_INSERT  = 2,
00010     FL_CBB_EDIT    = 4,
00011     FL_CBB_DELETE  = 8,
00012     FL_CBB_REFRESH = 16
00013 };
00014 
00015 class Fl_Combo_Box_Panel;
00016 class Fl_Popup_ListView;
00017 class Fl_Button;
00018 
00019 class Fl_Combo_Box : public Fl_Group {
00020     Fl_Combo_Box_Panel  *m_panel;
00021     Fl_Popup_ListView   *m_popup;
00022     Fl_Button           *m_buttons[5];
00023 
00024     void ctor_init();
00025 protected:
00026     static void Fl_Combo_Box::cb_browse(Fl_Widget *w, void *data);
00027     static void Fl_Combo_Box::cb_button(Fl_Widget *w, void *data);
00028 public:
00029     static Fl_Named_Style* default_style;
00030 
00032     Fl_Combo_Box(int x,int y,int w,int h,const char *label=0);
00033 
00035     Fl_Combo_Box(const char* l = 0,int layout_size=30,Fl_Align layout_al=FL_ALIGN_TOP,int label_w=100);
00036 
00037     Fl_ListView *listview() const;
00038 
00040     virtual void begin() { listview()->begin(); }
00041     virtual void end() { Fl_Group::end(); }
00042 
00043     void buttons(int buttons_set=FL_CBB_BROWSE);
00044 
00046     virtual bool load_data(Fl_Data_Source *ds);
00047     virtual bool save_data(Fl_Data_Source *ds);
00048     void fill(Fl_Data_Source& ds,Fl_String user_data_column="");
00049 
00050     // Get the active item user_data, or set item by user_data
00051     int value() const;
00052     void value(int) const;
00053 
00054     virtual void preferred_size(int& w,int &h) const;
00055     virtual void reset() { value(-1); }
00056 
00057     // Get text from the active item by column
00058     Fl_String text(int column) const;
00059 };
00060 
00061 #endif

Generated on Thu Jul 31 15:33:43 2003 for eFLTK by doxygen1.2.15