INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES

indexing

title: "This control is analogous to the dividers in a notebook ", "or the labels in a file cabinet. By using a tab control, an ", "application can define multiple pages for the same area of ", "a window or dialog box. Each page consists of a set of ", "information or a group of controls that the application ", "displays when the user selects the corresponding tab. A ", "special type of tab control displays tabs that look like ", "buttons. Clicking a button should immediately perform a ", "command instead of displaying a page. ", "note: The common controls dll (WEL_COMMON_CONTROLS_DLL) ", "needs to be loaded to use this control. ", "WEL: library of reusable components for Eiffel. ", "Based on WEL library for ISE Eiffel, used with permission. "
project: "Windows Eiffel Library"
copyright: "(c) 1986-1997 Interactive Software Engineering Inc. ", "Modifications and extensions: ", "(c) 1997-2001 Object Tools ", "All rights reserved. Duplication and distribution prohibited", "May be used only with Visual Eiffel under terms of user ", "license "
cluster: wel
class WEL_TAB_CONTROL
inherit

WEL_CONTROL
end

WEL_TCM_CONSTANTS
export
{NONE}
all
end

WEL_TCS_CONSTANTS
export
{NONE}
all
end
creation

make,
make_by_id
feature {NONE}-- Initialization

make (a_parent: WEL_WINDOW; a_x, a_y, a_width, a_height, an_id: INTEGER)
-- Make a tab control.
require
a_parent_not_void: a_parent /= void
ensure
exists: exists
parent_set: parent = a_parent
id_set: id = an_id
feature -- Access

count: INTEGER
-- Number of tabs in the tab control
require
exists: exists
ensure
positive_result: Result >= 0
feature -- Element change

insert_item (index: INTEGER; an_item: WEL_TAB_CONTROL_ITEM)
-- Insert `an_item' at the zero-based `index'.
require
exists: exists
an_item_not_void: an_item /= void
index_large_enough: index >= 0
index_small_enough: index <= count
ensure
count_increased: count = count + 1

delete_item (index: INTEGER)
-- Delete the item at the zero-based `index'.
require
exists: exists
index_large_enough: index >= 0
index_small_enough: index < count
ensure
count_decreased: count = count - 1

delete_all_items
-- Delete all items.
require
exists: exists
ensure
empty: count = 0
feature -- Status report

current_selection: INTEGER
-- Selected zero-based tab
require
exists: exists
ensure
consistent_result: Result >= 0 and Result < count
feature -- Status setting

set_current_selection (index: INTEGER)
-- Set the zero-based tab `index'.
require
exists: exists
index_large_enough: index >= 0
index_small_enough: index < count
ensure
current_selection_set: current_selection = index
end -- class WEL_TAB_CONTROL

INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES