libt3widget
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions
t3_widget::mouse_target_t Class Reference
Inheritance diagram for t3_widget::mouse_target_t:
t3_widget::window_component_t t3_widget::popup_t t3_widget::widget_t t3_widget::edit_window_t::autocomplete_panel_t t3_widget::file_pane_t::search_panel_t t3_widget::text_field_t::drop_down_list_t t3_widget::attribute_test_line_t t3_widget::bullet_t t3_widget::button_t t3_widget::checkbox_t t3_widget::color_picker_base_t t3_widget::dummy_widget_t t3_widget::edit_window_t t3_widget::expander_t t3_widget::file_pane_t t3_widget::frame_t t3_widget::label_t t3_widget::list_pane_t t3_widget::menu_bar_t t3_widget::menu_item_base_t t3_widget::multi_widget_t t3_widget::scrollbar_t t3_widget::separator_t t3_widget::smart_label_t t3_widget::split_t t3_widget::text_field_t t3_widget::text_window_t t3_widget::widget_group_t

Public Member Functions

void grab_mouse (void)
 Grab all future mouse events.
virtual bool process_mouse_event (mouse_event_t event)=0
 Process a mouse event.
void register_mouse_target (t3_window_t *target)
 Register a window to receive mouse events.
void release_mouse_grab (void)
 Release a previous mouse grab.
void unregister_mouse_target (t3_window_t *target)
 Unregister a window to receive mouse events.

Static Public Member Functions

static bool handle_mouse_event (mouse_event_t event)

Protected Member Functions

 mouse_target_t (bool use_window=true)

Additional Inherited Members

- Private Types inherited from t3_widget::window_component_t
enum  focus_t {
  FOCUS_OUT, FOCUS_SET, FOCUS_IN_FWD, FOCUS_IN_BCK,
  FOCUS_REVERT
}
- Private Member Functions inherited from t3_widget::window_component_t
virtual void force_redraw (void)=0
 Request that this window_component_t be completely redrawn.
virtual t3_window_t * get_base_window (void)
 Retrieve the t3_window_t for this window_component_t.
virtual void hide (void)=0
 Hide the window_component_t.
virtual bool process_key (key_t key)=0
 Handle a key press by the user.
virtual void set_focus (focus_t focus)=0
 Set whether this window_component_t has the input focus.
virtual void set_position (optint top, optint left)=0
 Move the window_component_t to a specified position.
virtual bool set_size (optint height, optint width)=0
 Set the size of this window_component_t.
virtual void show (void)=0
 Display the window_component_t.
virtual void update_contents (void)=0
 Update the contents of the window.
 window_component_t (void)
 Base constructor.
virtual ~window_component_t (void)
 Base destructor.

Member Function Documentation

void t3_widget::mouse_target_t::grab_mouse ( void  )

Grab all future mouse events.

Ensure that all mouse events are reported to the current ::mouse_target_t, and not to the ::mouse_target_t that should normally receive them. The grab should released using release_mouse_grab.

virtual bool t3_widget::mouse_target_t::process_mouse_event ( mouse_event_t  event)
pure virtual

Process a mouse event.

Returns
A boolean indicating whether this mouse_target_t handled the mouse event.

Implemented in t3_widget::menu_bar_t, t3_widget::widget_t, t3_widget::button_t, t3_widget::scrollbar_t, t3_widget::checkbox_t, and t3_widget::color_picker_base_t.

void t3_widget::mouse_target_t::register_mouse_target ( t3_window_t *  target)

Register a window to receive mouse events.

void t3_widget::mouse_target_t::release_mouse_grab ( void  )

Release a previous mouse grab.

void t3_widget::mouse_target_t::unregister_mouse_target ( t3_window_t *  target)

Unregister a window to receive mouse events.