Automatic generation produced by ISE Eiffel
note description: "Toolbar button for SD_TOOL_BAR which popup a widget after end user pressed." legal: "See notice at end of class." status: "See notice at end of class." date: "$Date: 2017-04-14 10:05:46 -0800 (Fri, 14 Apr 2017) $" revision: "$Revision: 100203 $" class interface SD_TOOL_BAR_POPUP_BUTTON create make -- Creation method feature -- Access generating_type: TYPE [detachable SD_TOOL_BAR_POPUP_BUTTON] -- Type of current object -- (type of which it is a direct instance) -- (from ANY) ensure -- from ANY generating_type_not_void: Result /= Void generator: STRING_8 -- Name of current object's generating class -- (base class of the type of which it is a direct instance) -- (from ANY) ensure -- from ANY generator_not_void: Result /= Void generator_not_empty: not Result.is_empty feature -- Comparison frozen deep_equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void -- or attached to isomorphic object structures? -- (from ANY) ensure -- from ANY instance_free: class shallow_implies_deep: standard_equal (a, b) implies Result both_or_none_void: (a = Void) implies (Result = (b = Void)) same_type: (Result and (a /= Void)) implies (b /= Void and then a.same_type (b)) symmetric: Result implies deep_equal (b, a) frozen equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void or attached -- to objects considered equal? -- (from ANY) ensure -- from ANY instance_free: class definition: Result = (a = Void and b = Void) or else ((a /= Void and b /= Void) and then a.is_equal (b)) frozen is_deep_equal alias "≡≡≡" (other: SD_TOOL_BAR_POPUP_BUTTON): BOOLEAN -- Are Current and other attached to isomorphic object structures? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY shallow_implies_deep: standard_is_equal (other) implies Result same_type: Result implies same_type (other) symmetric: Result implies other.is_deep_equal (Current) is_equal (other: SD_TOOL_BAR_POPUP_BUTTON): BOOLEAN -- Is other attached to an object considered -- equal to current object? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY symmetric: Result implies other ~ Current consistent: standard_is_equal (other) implies Result frozen standard_equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are a and b either both void or attached to -- field-by-field identical objects of the same type? -- Always uses default object comparison criterion. -- (from ANY) ensure -- from ANY instance_free: class definition: Result = (a = Void and b = Void) or else ((a /= Void and b /= Void) and then a.standard_is_equal (b)) frozen standard_is_equal alias "≜" (other: SD_TOOL_BAR_POPUP_BUTTON): BOOLEAN -- Is other attached to an object of the same type -- as current object, and field-by-field identical to it? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY same_type: Result implies same_type (other) symmetric: Result implies other.standard_is_equal (Current) feature -- Status report conforms_to (other: ANY): BOOLEAN -- Does type of current object conform to type -- of other (as per Eiffel: The Language, chapter 13)? -- (from ANY) require -- from ANY other_not_void: other /= Void same_type (other: ANY): BOOLEAN -- Is type of current object identical to type of other? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY definition: Result = (conforms_to (other) and other.conforms_to (Current)) feature -- Duplication copy (other: SD_TOOL_BAR_POPUP_BUTTON) -- Update current object using fields of object attached -- to other, so as to yield equal objects. -- (from ANY) require -- from ANY other_not_void: other /= Void type_identity: same_type (other) ensure -- from ANY is_equal: Current ~ other frozen deep_copy (other: SD_TOOL_BAR_POPUP_BUTTON) -- Effect equivalent to that of: -- `copy` (other . `deep_twin`) -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY deep_equal: deep_equal (Current, other) frozen deep_twin: SD_TOOL_BAR_POPUP_BUTTON -- New object structure recursively duplicated from Current. -- (from ANY) ensure -- from ANY deep_twin_not_void: Result /= Void deep_equal: deep_equal (Current, Result) frozen standard_copy (other: SD_TOOL_BAR_POPUP_BUTTON) -- Copy every field of other onto corresponding field -- of current object. -- (from ANY) require -- from ANY other_not_void: other /= Void type_identity: same_type (other) ensure -- from ANY is_standard_equal: standard_is_equal (other) frozen standard_twin: SD_TOOL_BAR_POPUP_BUTTON -- New object field-by-field identical to other. -- Always uses default copying semantics. -- (from ANY) ensure -- from ANY standard_twin_not_void: Result /= Void equal: standard_equal (Result, Current) frozen twin: SD_TOOL_BAR_POPUP_BUTTON -- New object equal to Current -- `twin` calls `copy`; to change copying/twinning semantics, redefine `copy`. -- (from ANY) ensure -- from ANY twin_not_void: Result /= Void is_equal: Result ~ Current feature -- Basic operations frozen default: detachable SD_TOOL_BAR_POPUP_BUTTON -- Default value of object's type -- (from ANY) frozen default_pointer: POINTER -- Default value of type POINTER -- (Avoid the need to write p.`default` for -- some p of type POINTER.) -- (from ANY) ensure -- from ANY instance_free: class default_rescue -- Process exception for routines with no Rescue clause. -- (Default: do nothing.) -- (from ANY) frozen do_nothing -- Execute a null action. -- (from ANY) ensure -- from ANY instance_free: class perform_select -- Performs a selection require not_is_destroyed: not Is_destroyed is_displayed: is_displayed has_function: menu /= Void or menu_function /= Void or popup_widget /= Void or popup_widget_function /= Void feature -- Agents on_pointer_leave -- Handle pointer leave -- (from SD_TOOL_BAR_BUTTON) on_pointer_motion (a_relative_x, a_relative_y: INTEGER_32) -- Handle pointer motion -- (from SD_TOOL_BAR_BUTTON) on_pointer_motion_for_tooltip (a_relative_x, a_relative_y: INTEGER_32) -- Handle pointer motion for tooltip setting -- (from SD_TOOL_BAR_BUTTON) on_pointer_press (a_relative_x, a_relative_y: INTEGER_32) -- Handle pointer press -- (from SD_TOOL_BAR_BUTTON) on_pointer_press_forwarding (a_x, a_y, a_button: INTEGER_32; a_x_tilt, a_y_tilt, a_pressure: REAL_64; a_screen_x, a_screen_y: INTEGER_32) -- Pointer press actions forwarding -- (from SD_TOOL_BAR_BUTTON) on_pointer_release (a_relative_x, a_relative_y: INTEGER_32) -- Handle pointer leave -- (from SD_TOOL_BAR_BUTTON) feature -- Command disable_sensitive -- Disable sensitive -- (from SD_TOOL_BAR_BUTTON) ensure -- from SD_TOOL_BAR_BUTTON set: not is_sensitive_internal enable_sensitive -- Enable sensitive -- (from SD_TOOL_BAR_BUTTON) ensure -- from SD_TOOL_BAR_BUTTON set: is_sensitive_internal set_dropdown_pixel_buffer (a_pixel_buffer: EV_PIXEL_BUFFER) -- Set pixel_buffer_imp with a_pixel_buffer ensure set: dropdown_pixel_buffer_imp = a_pixel_buffer set_menu (a_menu: EV_MENU) -- Set `menu` with a_menu ensure set: menu = a_menu set_menu_function (a_menu_function: like menu_function) -- Set `menu_function` with a_menu_function ensure set: menu_function = a_menu_function set_popup_widget (a_widget: attached like popup_widget) -- Set `popup_widget` with a_widget require not_void: a_widget /= Void ensure popup_widget_set: popup_widget = a_widget has_if_attached: attached a_widget implies popup.has (a_widget) is_empty_if_detached: not attached a_widget implies popup.is_empty set_popup_widget_function (a_popup_widget_function: like popup_widget_function) -- Set `popup_widget_function` with a_popup_widget_function ensure set: popup_widget_function = a_popup_widget_function feature -- Internal issues has_rectangle (a_rect: EV_RECTANGLE): BOOLEAN -- If a_rect inlcude Current? -- (from SD_TOOL_BAR_BUTTON) require -- from SD_TOOL_BAR_ITEM not_void: a_rect /= Void feature -- Output Io: STD_FILES -- Handle to standard file setup -- (from ANY) ensure -- from ANY instance_free: class io_not_void: Result /= Void out: STRING_8 -- New string containing terse printable representation -- of current object -- (from ANY) ensure -- from ANY out_not_void: Result /= Void print (o: detachable ANY) -- Write terse external representation of o -- on standard output. -- (from ANY) ensure -- from ANY instance_free: class frozen tagged_out: STRING_8 -- New string containing terse printable representation -- of current object -- (from ANY) ensure -- from ANY tagged_out_not_void: Result /= Void feature -- Platform Operating_environment: OPERATING_ENVIRONMENT -- Objects available from the operating system -- (from ANY) ensure -- from ANY instance_free: class operating_environment_not_void: Result /= Void feature -- Properties data: detachable ANY -- User data -- (from SD_TOOL_BAR_ITEM) description: STRING_32 -- Description which used by toolbar customize dialog {SD_TOOL_BAR_CUSTOMIZE_DIALOG} -- In the dialog, a list item will represent current. `description` will be displayed as -- list item texts on the dialog -- (from SD_TOOL_BAR_ITEM) disable_displayed -- Disable `is_displayed` -- (from SD_TOOL_BAR_ITEM) enable_displayed -- Enable `is_displayed` -- (from SD_TOOL_BAR_ITEM) Is_destroyed: BOOLEAN = False -- There is no under native widget for Current -- So, it'll never destroyed -- (from SD_TOOL_BAR_ITEM) is_displayed: BOOLEAN -- If it is displayed on SD_TOOL_BAR_ZONE -- (from SD_TOOL_BAR_ITEM) is_wrap: BOOLEAN -- If Current is wrap state? -- If it's wrap, then Current's next button will go to next line. -- (from SD_TOOL_BAR_ITEM) name: READABLE_STRING_32 -- Name which is used for save/open docking layout configuration. -- This name should not change in all locales. -- (from SD_TOOL_BAR_ITEM) pixel_buffer: detachable EV_PIXEL_BUFFER -- Pixel buffer which is always 32bits -- It will not lose alpha datas -- (from SD_TOOL_BAR_ITEM) pixmap: detachable EV_PIXMAP -- Pixmap shown on Current -- (from SD_TOOL_BAR_ITEM) set_accept_cursor (a_cursor: EV_POINTER_STYLE) -- Set `accept_cursor` with a_cursor -- (from SD_TOOL_BAR_ITEM) ensure -- from SD_TOOL_BAR_ITEM set: accept_cursor = a_cursor set_data (a_data: ANY) -- Set `data` -- (from SD_TOOL_BAR_ITEM) ensure -- from SD_TOOL_BAR_ITEM set: data = a_data set_deny_cursor (a_cursor: EV_POINTER_STYLE) -- Set `deny_cursor` with a_cursor -- FIXIT: set_deny_cursor not working correctly. I think it's a Vision2 set deny cursor bug during PND. Larry Apr. 27 2007 -- (from SD_TOOL_BAR_ITEM) ensure -- from SD_TOOL_BAR_ITEM set: deny_cursor = a_cursor set_description (a_description: READABLE_STRING_GENERAL) -- Set `description` -- (from SD_TOOL_BAR_ITEM) require -- from SD_TOOL_BAR_ITEM not_void: a_description /= Void ensure -- from SD_TOOL_BAR_ITEM set: description.same_string_general (a_description) set_name (a_name: READABLE_STRING_GENERAL) -- Set `name` -- (from SD_TOOL_BAR_ITEM) require -- from SD_TOOL_BAR_ITEM not_void: a_name /= Void ensure -- from SD_TOOL_BAR_ITEM set: name.same_string_general (a_name) set_pebble_function (a_pebble: like pebble_function) -- Set `pebble_function` with a_pebble -- (from SD_TOOL_BAR_ITEM) ensure -- from SD_TOOL_BAR_ITEM set: pebble_function = a_pebble set_pixel_buffer (a_pixel_buffer: EV_PIXEL_BUFFER) -- Set `pixel_buffer` -- (from SD_TOOL_BAR_ITEM) ensure -- from SD_TOOL_BAR_ITEM set: pixel_buffer = a_pixel_buffer set_pixmap (a_pixmap: EV_PIXMAP) -- Set `pixmap` -- (from SD_TOOL_BAR_ITEM) ensure -- from SD_TOOL_BAR_ITEM set: pixmap = a_pixmap set_text (a_text: detachable READABLE_STRING_GENERAL) -- Set `text`, can set Void text -- (from SD_TOOL_BAR_BUTTON) ensure -- from SD_TOOL_BAR_BUTTON set: a_text /= Void implies (attached text as l_text and then l_text.same_string_general (a_text)) set_tooltip (a_tip: READABLE_STRING_GENERAL) -- Set a_tooltip with a_tip -- (from SD_TOOL_BAR_BUTTON) ensure -- from SD_TOOL_BAR_BUTTON set: a_tip /= Void implies (attached tooltip as l_tooltip and then l_tooltip.same_string_general (a_tip)) set_wrap (a_wrap: BOOLEAN) -- Set wrap -- (from SD_TOOL_BAR_ITEM) ensure -- from SD_TOOL_BAR_ITEM set: is_wrap = a_wrap text: detachable STRING_32 -- Text shown on item -- (from SD_TOOL_BAR_BUTTON) tool_bar: detachable SD_GENERIC_TOOL_BAR -- Tool bar which Current button belong to -- (from SD_TOOL_BAR_ITEM) tooltip: detachable STRING_32 -- Tooltip shown on item -- (from SD_TOOL_BAR_BUTTON) feature -- Query accept_cursor: detachable EV_POINTER_STYLE -- Accept cursor for PND, maybe void -- (from SD_TOOL_BAR_ITEM) deny_cursor: detachable EV_POINTER_STYLE -- Deny cursor for PND, maybe void -- (from SD_TOOL_BAR_ITEM) drop_actions: EV_PND_ACTION_SEQUENCE -- (from SD_TOOL_BAR_ITEM) dropdown_left: INTEGER_32 -- X position where dropdown button should be drawn dropdown_pixel_buffer: EV_PIXEL_BUFFER -- Dropdown pixel buffer ensure not_void: Result /= Void dropdrown_width: INTEGER_32 -- With of the dropdown area Gap: INTEGER_32 = 2 -- Gap size between front icon and dropdown icon height: INTEGER_32 -- Height of Current item -- (from SD_TOOL_BAR_ITEM) is_need_redraw: BOOLEAN -- (from SD_TOOL_BAR_ITEM) is_sensitive: BOOLEAN -- If Current sensitive? -- (from SD_TOOL_BAR_ITEM) menu: detachable EV_MENU -- Menu to popup after end user pressed -- Note: `menu` has priority than `popup_widget` -- It means, if `menu` and `popup_widget` both not void, -- `menu` will be used. menu_function: detachable FUNCTION [like menu] -- Function to compute the menu to popup after end user pressed. -- Note: `menu` has priority over menu_function, -- which has priority over `popup_widget`. -- It means, if `menu` or menu_function.item (Void) and `popup_widget` both not void, -- `menu` or menu_function.item (Void) will be used. pebble_function: detachable FUNCTION [detachable ANY] -- Returns data to be transported by pick and drop mechanism -- (from SD_TOOL_BAR_ITEM) pointer_button_press_actions: EV_POINTER_BUTTON_ACTION_SEQUENCE -- Actions to performed when pointer button is pressed -- (from SD_TOOL_BAR_BUTTON) popup_widget: detachable EV_WIDGET -- Widget to popup after end user pressed popup_widget_function: detachable FUNCTION [like popup_widget] -- Function to compute the popup_widget to popup after end user pressed. -- Note: `popup_widget` has priority over `popup_widget_function`, -- which has priority over `popup_widget`. -- It means, if `menu` or menu_function.item (Void) and `popup_widget` both not void, -- `menu` or menu_function.item (Void) will be used. rectangle: EV_RECTANGLE -- Button rectangle area -- (from SD_TOOL_BAR_ITEM) ensure -- from SD_TOOL_BAR_ITEM not_void: Result /= Void select_actions: EV_NOTIFY_ACTION_SEQUENCE -- Actions to performed when pointer button is pressed then released -- (from SD_TOOL_BAR_BUTTON) state: INTEGER_32 -- State to draw foritem -- One value from SD_TOOL_BAR_ITEM_STATE -- (from SD_TOOL_BAR_ITEM) text_width: INTEGER_32 -- Width of text -- (from SD_TOOL_BAR_BUTTON) width: INTEGER_32 -- Width of Current item require -- from SD_TOOL_BAR_ITEM True invariant -- from SD_TOOL_BAR_BUTTON select_actions_not_void: select_actions /= Void internal_shared_not_void: internal_shared /= Void -- from SD_TOOL_BAR_ITEM not_void: name /= Void -- from ANY reflexive_equality: standard_is_equal (Current) reflexive_conformance: conforms_to (Current) note library: "SmartDocking: Library of reusable components for Eiffel." copyright: "Copyright (c) 1984-2017, Eiffel Software and others" license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)" source: "[ Eiffel Software 5949 Hollister Ave., Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end -- class SD_TOOL_BAR_POPUP_BUTTON -- Generated by Eiffel Studio --
For more details: eiffel.org