22#ifndef NUVIE_GUI_GUI_SCROLLBAR_H
23#define NUVIE_GUI_GUI_SCROLLBAR_H
27#include "ultima/nuvie/gui/widgets/gui_widget.h"
28#include "ultima/nuvie/screen/screen.h"
33#define GUI_DIALOG_MOVABLE true
35#define SCROLLBAR_WIDTH 14
39#define SCROLLBAR_CB_DOWN_BUTTON 0x1
40#define SCROLLBAR_CB_UP_BUTTON 0x2
41#define SCROLLBAR_CB_SLIDER_MOVED 0x3
42#define SCROLLBAR_CB_PAGE_DOWN 0x4
43#define SCROLLBAR_CB_PAGE_UP 0x5
56 uint32 slider_highlight_c;
57 uint32 slider_shadow_c;
59 uint32 track_border_c;
65 uint16 slider_click_offset;
71 void set_slider_length(
float percentage);
72 void set_slider_position(
float percentage);
75 void SetDisplay(
Screen *s)
override;
78 void Display(
bool full_redraw)
override;
81 GUI_status MouseDown(
int x,
int y, Events::MouseButton button)
override;
82 GUI_status MouseUp(
int x,
int y, Events::MouseButton button)
override;
83 GUI_status MouseMotion(
int x,
int y, uint8 state)
override;
84 GUI_status MouseWheel(sint32 x, sint32 y)
override;
90 void send_slider_moved_msg();
91 bool move_slider(
int new_slider_y);
92 GUI_status callback(uint16 msg,
GUI_CallBack *caller,
void *data)
override;
94 void send_up_button_msg();
95 void send_down_button_msg();
Definition: gui_callback.h:31