indexing
	description: "Implemented `IFont' Interface."
	note: "Automatically generated by the EiffelCOM Wizard."

class interface
	IFONT_IMPL_PROXY

create 

	make_from_other (other: ECOM_INTERFACE)
			-- Make from other Queriable.
			-- (from ECOM_QUERIABLE)
		require -- from ECOM_QUERIABLE
			non_void_other: other /= void
		ensure -- from ECOM_QUERIABLE
			valid_initializer: initializer /= default_pointer
			exists: exists

	make_from_pointer (cpp_obj: POINTER)
			-- Make from pointer
		require -- from ECOM_QUERIABLE
			non_default_pointer: a_pointer /= default_pointer
		ensure -- from ECOM_QUERIABLE
			valid_initializer: initializer /= default_pointer
			exists: exists

feature -- Access

	bold: BOOLEAN
			-- No description available.
		require -- from IFONT_INTERFACE
			bold_user_precondition: bold_user_precondition

	charset: INTEGER
			-- No description available.
		require -- from IFONT_INTERFACE
			charset_user_precondition: charset_user_precondition

	exists: BOOLEAN
			-- Is wrapped structure initialized?
			-- (from ECOM_QUERIABLE)

	h_font: INTEGER
			-- No description available.
		require -- from IFONT_INTERFACE
			h_font_user_precondition: h_font_user_precondition

	italic: BOOLEAN
			-- No description available.
		require -- from IFONT_INTERFACE
			italic_user_precondition: italic_user_precondition

	item: POINTER
			-- Pointer to COM object wrapper.
			-- (from ECOM_QUERIABLE)

	name: STRING
			-- No description available.
		require -- from IFONT_INTERFACE
			name_user_precondition: name_user_precondition
		ensure -- from IFONT_INTERFACE
			non_void_name: Result /= void

	size: ECOM_CURRENCY
			-- No description available.
		require -- from IFONT_INTERFACE
			size_user_precondition: size_user_precondition
		ensure -- from IFONT_INTERFACE
			non_void_size: Result /= void
			valid_size: Result.item /= default_pointer

	strikethrough: BOOLEAN
			-- No description available.
		require -- from IFONT_INTERFACE
			strikethrough_user_precondition: strikethrough_user_precondition

	underline: BOOLEAN
			-- No description available.
		require -- from IFONT_INTERFACE
			underline_user_precondition: underline_user_precondition

	weight: INTEGER
			-- No description available.
		require -- from IFONT_INTERFACE
			weight_user_precondition: weight_user_precondition
	
feature -- Basic Operations

	add_ref_hfont (a_h_font: INTEGER)
			-- No description available.
			-- a_h_font [in].
		require -- from IFONT_INTERFACE
			add_ref_hfont_user_precondition: add_ref_hfont_user_precondition (a_h_font)

	clone1 (ppfont: CELL [IFONT_INTERFACE])
			-- No description available.
			-- ppfont [out].
		require -- from IFONT_INTERFACE
			non_void_ppfont: ppfont /= void
			clone1_user_precondition: clone1_user_precondition (ppfont)
		ensure -- from IFONT_INTERFACE
			valid_ppfont: ppfont.item /= void

	is_equal1 (pfont_other: IFONT_INTERFACE)
			-- No description available.
			-- pfont_other [in].
		require -- from IFONT_INTERFACE
			non_void_pfont_other: pfont_other /= void
			valid_pfont_other: pfont_other.item /= default_pointer
			is_equal1_user_precondition: is_equal1_user_precondition (pfont_other)

	release_hfont (a_h_font: INTEGER)
			-- No description available.
			-- a_h_font [in].
		require -- from IFONT_INTERFACE
			release_hfont_user_precondition: release_hfont_user_precondition (a_h_font)

	set_bold (pbold: BOOLEAN)
			-- No description available.
			-- pbold [in].
		require -- from IFONT_INTERFACE
			set_bold_user_precondition: set_bold_user_precondition (pbold)

	set_charset (pcharset: INTEGER)
			-- No description available.
			-- pcharset [in].
		require -- from IFONT_INTERFACE
			set_charset_user_precondition: set_charset_user_precondition (pcharset)

	set_italic (pitalic: BOOLEAN)
			-- No description available.
			-- pitalic [in].
		require -- from IFONT_INTERFACE
			set_italic_user_precondition: set_italic_user_precondition (pitalic)

	set_name (pname: STRING)
			-- No description available.
			-- pname [in].
		require -- from IFONT_INTERFACE
			set_name_user_precondition: set_name_user_precondition (pname)

	set_ratio (cy_logical: INTEGER; cy_himetric: INTEGER)
			-- No description available.
			-- cy_logical [in].
			-- cy_himetric [in].
		require -- from IFONT_INTERFACE
			set_ratio_user_precondition: set_ratio_user_precondition (cy_logical, cy_himetric)

	set_size (psize: ECOM_CURRENCY)
			-- No description available.
			-- psize [in].
		require -- from IFONT_INTERFACE
			non_void_psize: psize /= void
			valid_psize: psize.item /= default_pointer
			set_size_user_precondition: set_size_user_precondition (psize)

	set_strikethrough (pstrikethrough: BOOLEAN)
			-- No description available.
			-- pstrikethrough [in].
		require -- from IFONT_INTERFACE
			set_strikethrough_user_precondition: set_strikethrough_user_precondition (pstrikethrough)

	set_underline (punderline: BOOLEAN)
			-- No description available.
			-- punderline [in].
		require -- from IFONT_INTERFACE
			set_underline_user_precondition: set_underline_user_precondition (punderline)

	set_weight (pweight: INTEGER)
			-- No description available.
			-- pweight [in].
		require -- from IFONT_INTERFACE
			set_weight_user_precondition: set_weight_user_precondition (pweight)
	
feature -- Status Report

	add_ref_hfont_user_precondition (a_h_font: INTEGER): BOOLEAN
			-- User-defined preconditions for add_ref_hfont.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	bold_user_precondition: BOOLEAN
			-- User-defined preconditions for bold.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	charset_user_precondition: BOOLEAN
			-- User-defined preconditions for charset.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	clone1_user_precondition (ppfont: CELL [IFONT_INTERFACE]): BOOLEAN
			-- User-defined preconditions for clone1.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	h_font_user_precondition: BOOLEAN
			-- User-defined preconditions for h_font.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	is_equal1_user_precondition (pfont_other: IFONT_INTERFACE): BOOLEAN
			-- User-defined preconditions for is_equal1.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	italic_user_precondition: BOOLEAN
			-- User-defined preconditions for italic.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	name_user_precondition: BOOLEAN
			-- User-defined preconditions for name.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	release_hfont_user_precondition (a_h_font: INTEGER): BOOLEAN
			-- User-defined preconditions for release_hfont.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	set_bold_user_precondition (pbold: BOOLEAN): BOOLEAN
			-- User-defined preconditions for set_bold.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	set_charset_user_precondition (pcharset: INTEGER): BOOLEAN
			-- User-defined preconditions for set_charset.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	set_italic_user_precondition (pitalic: BOOLEAN): BOOLEAN
			-- User-defined preconditions for set_italic.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	set_name_user_precondition (pname: STRING): BOOLEAN
			-- User-defined preconditions for set_name.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	set_ratio_user_precondition (cy_logical: INTEGER; cy_himetric: INTEGER): BOOLEAN
			-- User-defined preconditions for set_ratio.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	set_size_user_precondition (psize: ECOM_CURRENCY): BOOLEAN
			-- User-defined preconditions for set_size.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	set_strikethrough_user_precondition (pstrikethrough: BOOLEAN): BOOLEAN
			-- User-defined preconditions for set_strikethrough.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	set_underline_user_precondition (punderline: BOOLEAN): BOOLEAN
			-- User-defined preconditions for set_underline.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	set_weight_user_precondition (pweight: INTEGER): BOOLEAN
			-- User-defined preconditions for set_weight.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	size_user_precondition: BOOLEAN
			-- User-defined preconditions for size.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	strikethrough_user_precondition: BOOLEAN
			-- User-defined preconditions for strikethrough.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	underline_user_precondition: BOOLEAN
			-- User-defined preconditions for underline.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)

	weight_user_precondition: BOOLEAN
			-- User-defined preconditions for weight.
			-- Redefine in descendants if needed.
			-- (from IFONT_INTERFACE)
	
invariant

		-- from ANY
	reflexive_equality: standard_is_equal (Current)
	reflexive_conformance: conforms_to (Current)
		-- from ECOM_QUERIABLE
	queriable_invariant: initializer /= default_pointer and then exists

end -- class IFONT_IMPL_PROXY