00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef WIN_SCROLLED_H
00016 #define WIN_SCROLLED_H
00017
00018 #include "win_container.h"
00019 #include "win_scrollbar.h"
00020
00021 class win_scroll : public win_container, public win_scrollbar
00022 {
00023
00024 public:
00025
00026 win_scroll();
00027
00028
00029 u_int16 amplitude(){return max_amplitude_;}
00030
00031 virtual void add(win_base *);
00032
00033 virtual void remove(win_base *);
00034
00035 virtual void remove_all();
00036
00037 void resize(u_int16 tl,u_int16 th);
00038
00039 void destroy();
00040
00041 bool draw();
00042
00043 bool update();
00044
00045 bool input_update();
00046
00047 void set_space_between_border(u_int16 );
00048
00049 void set_space_between_object(u_int16 );
00050
00051 virtual void set_pos (const u_int8 pos);
00052
00053 u_int16 cursor_y(){return cursor_y_;}
00054
00055 void set_auto_scrollbar(bool b){auto_scrollbar_=b;}
00056
00057 void set_auto_refresh(bool b){auto_refresh_=b;}
00058
00059 void set_brightness(bool b) {win_container::set_brightness(b);set_brightness_scrollbar(b);}
00060
00061 void set_trans(bool b) {win_container::set_trans(b); set_trans_scrollbar(b);}
00062
00063 const static u_int8 PAD_DEFAULT = 5;
00064
00065 protected:
00066
00067 bool up();
00068
00069 bool down();
00070
00071 void find_amplitude();
00072
00073 void update_amplitude();
00074
00075 u_int16 max_amplitude_;
00076
00077 u_int16 cur_amplitude_;
00078
00079 u_int16 index_pad_;
00080
00081 u_int16 cursor_y_;
00082
00083 bool auto_scrollbar_;
00084
00085 bool auto_refresh_;
00086 };
00087 #endif
00088
00089
00090