sub_arctic.contrib
Class simple_color_picker

java.lang.Object
  |
  +--sub_arctic.lib.min_interactor
        |
        +--sub_arctic.lib.base_interactor
              |
              +--sub_arctic.contrib.simple_color_picker

public class simple_color_picker
extends base_interactor
implements callback_object, color_picker, does_callback

simple_color_picker implements the simplest type of color choosing interactor: an array of colored buttons. By default (most of) the named colors in java.awt.Color will be used for the color buttons. You can also pass in an array of colors to be used. You can poll the interactor for the last selected color by calling last_selected_color, or you can get callbacks when a new color is selected (the callback number is COLOR_CHANGED).


Field Summary
protected  int button_border
           
protected  int button_gap
           
protected  int button_size
           
protected  button[] buttons
           
protected  callback_object cbobj
           
protected  java.awt.Color[] colors
           
protected static java.awt.Color[] default_colors
          The default set of colors to display, if none are provided.
protected  int group_size
           
protected  java.awt.Color last_color
           
static int LAYOUT_HORIZ
          These are constants for layout.
protected  int layout_mode
           
static int LAYOUT_VERT
          These are constants for layout.
 
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
simple_color_picker()
          Simplest constructor.
simple_color_picker(callback_object cbobj)
          Constructor providing only the callback object.
simple_color_picker(java.awt.Color[] colors)
          Constructor providing only the layout mode, either LAYOUT_HORIZ or LAYOUT_VERT.
simple_color_picker(java.awt.Color[] colors, int mode, int group_size, callback_object cbobj)
          This is the full constructor to create a new simple_color_picker.
 
Method Summary
 int button_border()
          Return the size of the button border.
 int button_gap()
          Retrieve the gap (spacing) between buttons.
 int button_size()
          Retrieve the size of the buttons.
 callback_object callback_obj()
          Return the current callback object.
 void callback(interactor from, event evt, int cbnum, java.lang.Object ui)
          Take callbacks from our component buttons and forward them to our callback object (if we have one).
 java.awt.Color[] colors()
          Return the current color array.
 void do_callback(event evt, int cbnum, java.lang.Object ui)
           
protected  void draw_self_local(drawable d)
           
 int first_callback_num()
           
 int last_callback_num()
           
 java.awt.Color last_selected_color()
          Poll the interactor for the last color selected.
 int layout_mode()
          Retrieve the current layout mode, either LAYOUT_HORIZ or LAYOUT_VERT.
static void main(java.lang.String[] argv)
          A simple main() routine to test with...
 void set_button_border(int bb)
          Set the size of the border of each button.
 void set_button_gap(int bg)
          Set the gap (spacing) between buttons.
 void set_button_size(int bs)
          Set the size of the color buttons.
 void set_callback_obj(callback_object cb)
          Set a new callback object.
 void set_colors(java.awt.Color[] colors)
          Set the current color array.
 void set_layout_mode(int layout_mode)
          Set the layout mode to either LAYOUT_HORIZ or LAYOUT_VERT.
 
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_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, intrinsic_constraints, 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_a, 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_a, 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_a, 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
 

Field Detail

LAYOUT_HORIZ

public static final int LAYOUT_HORIZ
These are constants for layout. LAYOUT_HORIZ means start laying out along the horizontal axis first.

LAYOUT_VERT

public static final int LAYOUT_VERT
These are constants for layout. LAYOUT_VERT means start laying out along the vertical axis first.

default_colors

protected static final java.awt.Color[] default_colors
The default set of colors to display, if none are provided.

colors

protected java.awt.Color[] colors

last_color

protected java.awt.Color last_color

buttons

protected button[] buttons

layout_mode

protected int layout_mode

cbobj

protected callback_object cbobj

button_border

protected int button_border

button_gap

protected int button_gap

button_size

protected int button_size

group_size

protected int group_size
Constructor Detail

simple_color_picker

public simple_color_picker()
Simplest constructor. Uses the default color set, vertical layout, groupsize of 4, and no callback object.

simple_color_picker

public simple_color_picker(java.awt.Color[] colors)
Constructor providing only the layout mode, either LAYOUT_HORIZ or LAYOUT_VERT. Used the default color set, groupsize of 4, and no callback object. public simple_color_picker(int mode) { this(default_colors, mode, 4, null); } /** Constructor providing only a new color array. Defaults to vertical layout, groupsize of 4, and no callback object.

simple_color_picker

public simple_color_picker(callback_object cbobj)
Constructor providing only the callback object. Defaults to the standard color set, vertical layout, groupsize of 4.

simple_color_picker

public simple_color_picker(java.awt.Color[] colors,
                           int mode,
                           int group_size,
                           callback_object cbobj)
This is the full constructor to create a new simple_color_picker.
Parameters:
Color[] - colors An array of colors to use.
int - mode Should be either LAYOUT_HORIZ or LAYOUT_VERT to indicate whether to favor horizontal or vertical layout.
int - group_size The size of a row (if LAYOUT_HORIZ) or of a column (if LAYOUT_VERT).
callback_object - cbobj Where to send our callbacks to.
Method Detail

callback_obj

public callback_object callback_obj()
Return the current callback object.
Specified by:
callback_obj in interface does_callback
Overrides:
callback_obj in class base_interactor

set_callback_obj

public void set_callback_obj(callback_object cb)
Set a new callback object.
Specified by:
set_callback_obj in interface does_callback
Overrides:
set_callback_obj in class base_interactor

set_button_size

public void set_button_size(int bs)
Set the size of the color buttons. THIS METHOD IS NOT IMPLEMENTED YET!

button_size

public int button_size()
Retrieve the size of the buttons.

set_button_border

public void set_button_border(int bb)
Set the size of the border of each button.

button_border

public int button_border()
Return the size of the button border.

set_button_gap

public void set_button_gap(int bg)
Set the gap (spacing) between buttons.

button_gap

public int button_gap()
Retrieve the gap (spacing) between buttons.

colors

public java.awt.Color[] colors()
Return the current color array.

set_colors

public void set_colors(java.awt.Color[] colors)
Set the current color array. THIS METHOD IS NOT IMPLEMENTED YET!

layout_mode

public int layout_mode()
Retrieve the current layout mode, either LAYOUT_HORIZ or LAYOUT_VERT.

set_layout_mode

public void set_layout_mode(int layout_mode)
Set the layout mode to either LAYOUT_HORIZ or LAYOUT_VERT.

draw_self_local

protected void draw_self_local(drawable d)
Overrides:
draw_self_local in class base_interactor

last_selected_color

public java.awt.Color last_selected_color()
Poll the interactor for the last color selected.
Specified by:
last_selected_color in interface color_picker

callback

public void callback(interactor from,
                     event evt,
                     int cbnum,
                     java.lang.Object ui)
Take callbacks from our component buttons and forward them to our callback object (if we have one). Send the COLOR_CHANGED callback; the user info argument is a Color instance.
Specified by:
callback in interface callback_object

do_callback

public void do_callback(event evt,
                        int cbnum,
                        java.lang.Object ui)
Specified by:
do_callback in interface does_callback
Overrides:
do_callback in class base_interactor

first_callback_num

public int first_callback_num()
Specified by:
first_callback_num in interface does_callback
Overrides:
first_callback_num in class base_interactor

last_callback_num

public int last_callback_num()
Specified by:
last_callback_num in interface does_callback
Overrides:
last_callback_num in class base_interactor

main

public static void main(java.lang.String[] argv)
A simple main() routine to test with...