Automatic generation produced by ISE Eiffel

Classes Clusters Cluster hierarchy Chart Relations Flat contracts Go to:
note description: "A content which has client programmer's widgets managed by docking library." legal: "See notice at end of class." status: "See notice at end of class." date: "$Date: 2021-10-28 06:51:09 -0800 (Thu, 28 Oct 2021) $" revision: "$Revision: 105908 $" class interface SD_CONTENT create make_with_widget (a_widget: EV_WIDGET; a_unique_title: READABLE_STRING_32; a_docking_manager: SD_DOCKING_MANAGER) -- Creation method -- a_widget is the main widget displayed in Current -- a_unique_title is the unique title for Current require a_widget_not_void: a_widget /= Void ensure internal_type = {SD_ENUMERATION}.tool make_with_widget_title_pixmap (a_widget: EV_WIDGET; a_pixmap: EV_PIXMAP; a_unique_title: READABLE_STRING_32; a_docking_manager: SD_DOCKING_MANAGER) -- Creation method -- a_widget is the main widget displayed in Current -- a_pixmap is the icon displayed in auto hide tab, notebook tab -- a_unique_title is the unique title for Current require a_widget_not_void: a_widget /= Void a_pixmap_not_void: a_pixmap /= Void a_unique_title_not_void: a_unique_title /= Void ensure a_widget_set: a_widget = user_widget a_title_set: internal_unique_title /= Void a_pixmap_set: a_pixmap = pixmap state_not_void: is_state_set a_unique_title_set: internal_unique_title = a_unique_title long_title_not_void: long_title /= Void short_title_not_void: short_title /= Void create {SD_DOCKING_MANAGER_ZONES} make_placeholder_with_original_widget (a_widget: EV_WIDGET; a_unique_title: READABLE_STRING_32; a_docking_manager: SD_DOCKING_MANAGER) require a_widget_not_void: a_widget /= Void ensure internal_type = {SD_ENUMERATION}.place_holder feature -- Access description: detachable STRING_32 -- When show zone navigation dialog (by ctrl+tab), we use this description string if exists detail: detachable STRING_32 -- When show zone navigation dialog, we use this detail string if exists floating_height: INTEGER_32 -- If Current floating, the height of the floating window which contain Current floating_width: INTEGER_32 -- If Current floating, the width of the floating window which contain Current generating_type: TYPE [detachable SD_CONTENT] -- 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 has_focus: BOOLEAN -- If Current content has keyboard focus? hash_code: INTEGER_32 -- Hash code ensure -- from HASHABLE good_hash_value: Result >= 0 is_floating: BOOLEAN -- If Current floating? -- Note: Maybe Current not visible but floating (hide in floating window) is_title_unique_except_current (a_title: READABLE_STRING_GENERAL): BOOLEAN -- If a_title unique in all docking manager's contents' titles? is_visible: BOOLEAN -- If Current visible? -- Note: if current is in auto hide statues (`user_widget` NOT dispalyed, only a tab stub is displayed), the value is True. long_title: STRING_32 -- Client programmer's widget's long title -- The long title is used in all title bars where are enough spaces mini_toolbar: like internal_mini_toolbar -- Mini toolbar shown in the top right bar of Current ensure result_valid: Result = internal_mini_toolbar pixel_buffer: like internal_pixel_buffer -- Client programmer's widget's pixel buffer -- The icon showing on content notebook tab and auto hide tab if Gdi+ available on Windows ensure result_valid: Result = internal_pixel_buffer pixmap: EV_PIXMAP -- Client programmer's widget's pixmap. -- The icon showing on content notebook tab and auto hide tab if Gdi+ not available on Windows. short_title: STRING_32 -- Client programmer's widget's short title -- The short title is used in all tabs where are not enough spaces state_value: INTEGER_32 -- Current state -- Note, its possible result is {SD_ENUMERATION}.auto_hide, but `is_visible` return False. See bug#13339. ensure valid: (create {SD_ENUMERATION} end).is_state_valid (Result) tab_tooltip: detachable STRING_32 -- Tool tip displayed on notebook tab type: INTEGER_32 -- Type of Current -- One value from {SD_ENUMERATION} unique_title: READABLE_STRING_32 -- Client programmer's widget's unique_title -- Using for save/open docking layouts, normally it should not be changed after set ensure result_valid: Result = internal_unique_title user_widget: EV_WIDGET -- Client programmer's widget -- This is the main widget in Current for client programmers require set: is_user_widget_set ensure not_void: Result /= Void result_valid: Result = internal_user_widget 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_CONTENT): 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_CONTENT): 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_CONTENT): 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 debug_output: STRING_32 -- String that should be displayed in debugger to represent Current. ensure -- from DEBUG_OUTPUT result_not_void: Result /= Void is_hashable: BOOLEAN -- May current object be hashed? -- (True by default.) -- (from HASHABLE) 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_CONTENT) -- 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_CONTENT) -- 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_CONTENT -- 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_CONTENT) -- 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_CONTENT -- 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_CONTENT -- 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_CONTENT -- 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 feature set_docking_manager (a_docking_manager: SD_DOCKING_MANAGER) -- Set `docking_manager` with a_docking_manager -- If {SD_DOCKING_MANAGER}.contents has Current, internl_docking_manager will be set require -- from SD_DOCKING_MANAGER_HOLDER not_void: a_docking_manager /= Void ensure -- from SD_DOCKING_MANAGER_HOLDER set: is_docking_manager_attached feature -- Actions close_request_actions: SD_NOTIFY_ACTION_SEQUENCE -- Actions to perfrom when close requested ensure not_void: Result /= Void drop_actions: SD_CONTENT_PND_ACTION_SEQUENCE -- Drop actions to performed when user drop a pebble on notebook tab ensure not_void: Result /= Void focus_in_actions: SD_NOTIFY_ACTION_SEQUENCE -- Actions to be performed when keyboard focus just gained ensure not_void: Result /= Void focus_out_actions: SD_NOTIFY_ACTION_SEQUENCE -- Actions to be performed when keyboard focus just lost ensure not_void: Result /= Void show_actions: SD_NOTIFY_ACTION_SEQUENCE -- Actions to perform when `user_widget` just shown ensure not_void: Result /= Void tab_bar_right_blank_area_double_click_actions: SD_NOTIFY_ACTION_SEQUENCE -- Actions to perform when user double click on notebook tab bar right side blank area -- Only work for up-side notebook tab bar ensure not_void: Result /= Void feature -- Command clear_docking_manager -- Clear `docking_manager`. -- (from SD_DOCKING_MANAGER_HOLDER) close -- Destroy Current, only destroy zone. And prune Current from SD_DOCKING_MANAGER require not_destroyed: not is_destroyed destroy -- Clear all resources and all references -- When a SD_DOCKING_MANAGER destroy, all SD_CONTENTs belong to it will be destroyed ensure destroyed: is_destroyed hide -- Hide zone which contains Current require not_destroyed: not is_destroyed docking_manager_attached: is_docking_manager_attached minimize -- Minimize current zone if possible require not_destroyed: not is_destroyed docking_manager_attached: is_docking_manager_attached show -- Show zone which contains Current require not_destroyed: not is_destroyed docking_manager_attached: is_docking_manager_attached update_mini_tool_bar_size -- Update mini tool bar size require not_destroyed: not is_destroyed docking_manager_attached: is_docking_manager_attached 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 -- Query docking_manager: SD_DOCKING_MANAGER -- Docking manager instance. -- (from SD_DOCKING_MANAGER_HOLDER) is_docking_manager_attached: BOOLEAN -- If `docking_manager` has been set? -- (from SD_DOCKING_MANAGER_HOLDER) feature -- Set Position set_auto_hide (a_direction: INTEGER_32) -- Dock Current at main container's (in main window) auto hide bar at a_direction require docking_manager_attached: is_docking_manager_attached manager_has_content: manager_has_content (Current) a_direction_valid: four_direction (a_direction) not_destroyed: not is_destroyed set_default_editor_position -- Dock editor to default editor position -- Default editor position means the position of editor place holder area -- Do not call this feature if editor place holder area not available require docking_manager_attached: is_docking_manager_attached manager_has_content: manager_has_content (Current) editor_place_holder_in: manager_has_place_holder is_editor: type = {SD_ENUMERATION}.editor not_destroyed: not is_destroyed ensure no_place_holder: not manager_has_place_holder set_floating (a_screen_x, a_screen_y: INTEGER_32) -- Float Current at position a_screen_x, a_screen_y require docking_manager_attached: is_docking_manager_attached manager_has_content: manager_has_content (Current) not_destroyed: not is_destroyed set_relative (a_relative: SD_CONTENT; a_direction: INTEGER_32) -- Dock Current at a_direction side of a_relative content require a_relative_not_void: a_relative /= Void a_relative_zone_not_void: is_content_zone_set (a_relative) docking_manager_attached: is_docking_manager_attached manager_has_content: manager_has_content (Current) manager_has_content: manager_has_content (a_relative) a_direction_valid: four_direction (a_direction) not_auto_hide: a_relative.state_value /= {SD_ENUMERATION}.auto_hide not_destroyed: not is_destroyed set_split_proportion (a_proportion: REAL_32) -- If current content is docked or tabbed (in notebook), set parent splitter proportion to a_proportion require docking_manager_attached: is_docking_manager_attached valid: 0.to_real <= a_proportion and a_proportion <= 1.to_real not_destroyed: not is_destroyed set_tab_with (a_content: SD_CONTENT; a_left: BOOLEAN) -- Dock Current with a_content in a notebook -- If a_left then put new tab at left, otherwise put new tab at right require docking_manager_attached: is_docking_manager_attached manager_has_current_content: manager_has_content (Current) manager_has_a_content: manager_has_content (a_content) target_content_zone_parent_exist: target_content_zone_parent_exist (a_content) not_destroyed: not is_destroyed set_top (a_direction: INTEGER_32) -- Dock Current at top level of a main docking area (in main window) at a_direction side require docking_manager_attached: is_docking_manager_attached manager_has_content: manager_has_content (Current) a_direction_valid: four_direction (a_direction) not_destroyed: not is_destroyed feature -- Settings set_description (a_description: like description) -- Set `description` with a_description require a_description_not_void: a_description /= Void ensure a_description_set: description = a_description set_detail (a_detail: like detail) -- Set `detail` with a_detail require a_detail_not_void: a_detail /= Void ensure a_detail_set: detail = a_detail set_floating_height (a_height: INTEGER_32) -- Set `floating_height` with a_height require vaild: a_height >= 0 ensure set: floating_height = a_height set_floating_width (a_width: INTEGER_32) -- Set `floating_width` with a_width require valid: a_width >= 0 ensure set: floating_width = a_width set_focus -- Set focus to Current require visible: is_visible not_destroyed: not is_destroyed docking_attached: is_docking_manager_attached set_focus_no_maximized (a_zone: EV_WIDGET) -- Same as `set_focus`, but only do things when no maximized zone in dock area which contains a_zone require not_destroyed: not is_destroyed docking_manager_attached: is_docking_manager_attached set_long_title (a_long_title: READABLE_STRING_GENERAL) -- Set `long_title` require a_long_title_not_void: a_long_title /= Void ensure set: long_title.same_string_general (a_long_title) set_mini_toolbar (a_bar: attached like internal_mini_toolbar) -- Set mini toolbar with a_bar require a_bar_not_void: a_bar /= Void ensure a_bar_set: a_bar = internal_mini_toolbar set_pixel_buffer (a_buffer: like internal_pixel_buffer) -- Set `internal_pixel_buffer` with a_buffer require a_buffer_not_void: a_buffer /= Void ensure a_buffer_set: a_buffer = internal_pixel_buffer set_pixmap (a_pixmap: like pixmap) -- Set the pixmap which shown on auto hide tab stub or notebook tab require a_pixmap_not_void: a_pixmap /= Void ensure a_pixmap_set: a_pixmap = pixmap set_short_title (a_short_title: READABLE_STRING_GENERAL) -- Set `short_title` require a_short_title_not_void: a_short_title /= Void not_too_long: a_short_title.count < 1000 ensure set: short_title.same_string_general (a_short_title) set_tab_tooltip (a_text: like tab_tooltip) -- Set `tab_tooltip` with a_text ensure set: tab_tooltip = a_text set_type (a_type: INTEGER_32) -- Set `internal_type` with a_type require a_type_valid: (create {SD_ENUMERATION} end).is_type_valid (a_type) set_unique_title (a_unique_title: READABLE_STRING_GENERAL) -- Set `unique_title` require a_unique_title_not_void: a_unique_title /= Void title_valid: is_title_unique_except_current (a_unique_title) ensure set: unique_title.same_string_general (a_unique_title) set_user_widget (a_widget: EV_WIDGET) -- Set `user_widget` with a_widget require not_void: a_widget /= Void feature -- States report four_direction (a_direction: INTEGER_32): BOOLEAN -- If a_direction is one value of four directions' values? is_content_zone_set (a_content: SD_CONTENT): BOOLEAN -- If a_content has a {SD_ZONE} (which contain current's `user_widget`) ? is_destroyed: BOOLEAN -- Is Current destroyed? Not useable anymore? is_state_set: BOOLEAN -- If `internal_state` has been set? is_user_widget_set: BOOLEAN -- If `internal_user_widget` has been set? manager_has_content (a_content: SD_CONTENT): BOOLEAN -- If docking manager has a_content require a_content_not_void: a_content /= Void docking_manager_attached: is_docking_manager_attached manager_has_place_holder: BOOLEAN -- If docking manager has editor place holder? require docking_manager_attached: is_docking_manager_attached target_content_shown (a_target_content: SD_CONTENT): BOOLEAN -- If a_target_content shown ? target_content_zone_parent_exist (a_target_content: SD_CONTENT): BOOLEAN -- Is a_target_content's zone parent not void and exists ? invariant internal_shared_not_void: internal_shared /= 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-2021, 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_CONTENT
Classes Clusters Cluster hierarchy Chart Relations Flat contracts Go to:

-- Generated by Eiffel Studio --
For more details: eiffel.org