39 #include "Fl_Scrollbar.H"
42 #define FL_NORMAL_BROWSER 0
43 #define FL_SELECT_BROWSER 1
44 #define FL_HOLD_BROWSER 2
45 #define FL_MULTI_BROWSER 3
47 #define FL_SORT_ASCENDING 0
48 #define FL_SORT_DESCENDING 1
67 class FL_EXPORT Fl_Browser_ : public Fl_Group {
80 void *redraw1,*redraw2;
94 virtual void *item_first()
const = 0;
100 virtual void *item_next(
void *item)
const = 0;
106 virtual void *item_prev(
void *item)
const = 0;
121 virtual int item_height(
void *item)
const = 0;
129 virtual int item_width(
void *item)
const = 0;
130 virtual int item_quick_height(
void *item)
const ;
135 virtual void item_draw(
void *item,
int X,
int Y,
int W,
int H)
const = 0;
141 virtual const char *
item_text(
void *item)
const { (void)item;
return 0L; }
147 virtual void item_swap(
void *a,
void *b) { (void)a; (void)b; }
154 virtual void *
item_at(
int index)
const { (void)index;
return 0L; }
156 virtual int full_width()
const ;
157 virtual int full_height()
const ;
158 virtual int incr_height()
const ;
160 virtual void item_select(
void *item,
int val=1);
161 virtual int item_selected(
void *item)
const ;
167 void *
top()
const {
return top_; }
177 void deleting(
void *item);
178 void replacing(
void *a,
void *b);
179 void swapping(
void *a,
void *b);
180 void inserting(
void *a,
void *b);
181 int displayed(
void *item)
const ;
182 void redraw_line(
void *item);
188 void bbox(
int &X,
int &Y,
int &W,
int &H)
const;
189 int leftedge()
const;
190 void *find_item(
int ypos);
193 Fl_Browser_(
int X,
int Y,
int W,
int H,
const char *L=0);
206 int handle(
int event);
207 void resize(
int X,
int Y,
int W,
int H);
209 int select(
void *item,
int val=1,
int docallbacks=0);
210 int select_only(
void *item,
int docallbacks=0);
211 int deselect(
int docallbacks=0);
220 void position(
int pos);
230 void display(
void *item);
246 HORIZONTAL_ALWAYS = 5,
316 return(scrollbar_size_);
338 scrollbar_size_ = size;
371 void sort(
int flags=0);