sub_arctic.lib
Class palette_button

java.lang.Object
  |
  +--sub_arctic.lib.min_interactor
        |
        +--sub_arctic.lib.base_interactor
              |
              +--sub_arctic.lib.multi_button
                    |
                    +--sub_arctic.lib.palette_button

public class palette_button
extends multi_button
implements inout_draggable, pressable

A button which acts on the downward mouse button press. This is suitable for a situation such as a palette where you need to create an object and drag it away from the point of first interaction in one motion.


Fields inherited from class sub_arctic.lib.multi_button
_callback_obj, _cur_state, _in_transition, _state_looks, _transition_looks, BUTTON_ACTION_CALLBACK
 
Fields inherited from class sub_arctic.lib.base_interactor
_child_index, _child_list, _clip_bounds, _constraint_flags, _enabled_constraint, _flags, _h, _h_constraint, _parent, _part_a_constraint, _part_b_constraint, _user_data, _visible_constraint, _w, _w_constraint, _x, _x_constraint, _y, _y_constraint, default_child_hint
 
Constructor Summary
palette_button(int x, int y, loaded_image[] st_looks, loaded_image[] trans_looks, callback_object call_obj)
          Full constructor.
 
Method Summary
 boolean press(event evt, java.lang.Object user_info)
          Handle mouse presses in our bounds.
 
Methods inherited from class sub_arctic.lib.multi_button
calc_size, callback_obj, cur_state, do_action, do_callback, draw_self_local, first_callback_num, get_state_look, get_transition_look, inout_drag_end, inout_drag_enter, inout_drag_exit, inout_drag_start, intrinsic_constraints, last_callback_num, next_state, part_a, release, set_callback_obj, set_cur_state, set_looks, set_part_a, set_raw_part_a, set_state_look, set_transition_look, state_looks, transition_looks
 
Methods inherited from class sub_arctic.lib.base_interactor
active_constraints, add_child, add_user_datum, attach_dependent, bound, child_index, child, clear_child_list, clear_constraint_flag_bit, clear_flag_bit, configure, constraint_flag_is_set, constraint_flag_string, constraint_on, custom_fun1, custom_fun2, damage_fixed, damage_from_child, damage_self, damage_self, damage_self, damage_self, damage_self, detach_dependent, do_action, do_callback, drag_feature_point, draw_children, draw_self, enabled_constraint, enabled, enter_local_coordinates, eval_enabled, eval_h, eval_part_a, eval_part_b, eval_visible, eval_w, eval_x, eval_y, eval, exit_local_coords, feature_point_enabled, feature_point, filter_pt, find_child, fixed_children, flag_is_set, flag_string, focus_set_enter, focus_set_exit, get_awt_component, get_external_constraint, get_part, get_top_level, get_value, global_to_local, global_to_local, h_constraint, h, handle_cycle, inform_ood, insert_child, inside_bounds, into_local, into_local, into_parent, into_parent, is_constrained, local_to_global, local_to_global, mark_all_ood, mark_enabled_ood, mark_h_ood, mark_ood, mark_part_a_ood, mark_part_b_ood, mark_reparented_ood, mark_visible_ood, mark_w_ood, mark_x_ood, mark_y_ood, marked_ood, move_child_downward, move_child_downward, move_child_to_bottom, move_child_to_bottom, move_child_to_top, move_child_to_top, move_child_upward, move_child_upward, move_downward, move_to_bottom, move_to_top, move_upward, new_look_configure, next_sibling, num_actions, num_children, num_feature_points, ood_inform_all, parent, part_a_constraint, part_b_constraint, part_b, pick_within_children, pick, picked_by, pos, prev_sibling, register_resource_names, remove_child, remove_child, remove_user_datum, restyle_look_resources, restyle, set_child_index, set_child, set_constraint_flag_bit, set_constraint_flag_bit, set_constraint, set_constraint, set_enabled_constraint, set_enabled_constraint, set_enabled_constraint, set_enabled, set_flag_bit, set_flag_bit, set_h_constraint, set_h_constraint, set_h_constraint, set_h, set_intrinsic_h, set_intrinsic_size, set_intrinsic_w, set_parent, set_part_a_constraint, set_part_a_constraint, set_part_a_constraint, set_part_b_constraint, set_part_b_constraint, set_part_b_constraint, set_part_b, set_pos, set_pos, set_raw_enabled, set_raw_h, set_raw_part_b, set_raw_visible, set_raw_w, set_raw_x, set_raw_y, set_size, set_style_lock, set_user_info, set_visible_constraint, set_visible_constraint, set_visible_constraint, set_visible, set_w_constraint, set_w_constraint, set_w_constraint, set_w, set_x_constraint, set_x_constraint, set_x_constraint, set_x, set_y_constraint, set_y_constraint, set_y_constraint, set_y, setup_for_children, setup_for_children, setup_for_fixed_children, size, style_change_local, style_change, supports_children, tag_str, toString, traverse_and_collect_children, traverse_and_collect_parent, traverse_and_collect, trivial_reject, trivial_reject, user_data, user_info, value_ood, visible_constraint, visible, w_constraint, w, x_constraint, x_into_local, x_into_parent, x, y_constraint, y_into_local, y_into_parent, y
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

palette_button

public palette_button(int x,
                      int y,
                      loaded_image[] st_looks,
                      loaded_image[] trans_looks,
                      callback_object call_obj)
Full constructor. The two image sets provided give normal appearance for each state of the button, and a transition appearance out of each state of the button. The transition set may be coded as null in which case the next state image is used when a transition is needed. Otherwise the two image sets must be the same size. For this subclass the transition appearance will never show up since we just straight to the new state on mouse down.
Parameters:
int - x x position of the interactor.
int - y y position of the interactor.
loaded_image[] - st_looks images for normal look of button in various states.
loaded_image[] - trans_looks images for looks during transitions between states (typically null since transition appearance does not show up in this subclass).
callback_object - call_obj the callback object that gets notified when this button changes state.
Method Detail

press

public boolean press(event evt,
                     java.lang.Object user_info)
Handle mouse presses in our bounds. For a palette button we act on the press itself (so the button is still down and we can immediately take up a drag action). To do that we fake the end of the inout_drag that a multi_button normally does and let the superclass do the normal end of input actions.
Specified by:
press in interface pressable
Parameters:
event - evt the mouse down event.
Object - user_info information associated with this object at pick time.
Overrides:
press in class multi_button