indexing
description: "EiffelVision postscript drawing area implementation."
legal: "See notice at end of class."
status: "See notice at end of class."
date: "$Date: 2006-08-26 15:51:07 -0700 (Sat, 26 Aug 2006) $"
revision: "$Revision: 63005 $"
class interface
EV_POSTSCRIPT_DRAWABLE_IMP
create
make (an_interface: EV_POSTSCRIPT_DRAWABLE)
`an_interface'
require EV_ANY_I
an_interface_not_void: an_interface /= Void
ensure EV_ANY_I
interface_assigned: interface = an_interface
base_make_called: base_make_called
feature
arc_cosine (v: REAL_32): REAL_32
`v'
SINGLE_MATH
arc_sine (v: REAL_32): REAL_32
`v'
SINGLE_MATH
arc_tangent (v: REAL_32): REAL_32
`v'
SINGLE_MATH
background_color: EV_COLOR
bottom_margin: INTEGER_32
ceiling (v: REAL_32): REAL_32
`v'
SINGLE_MATH
clip_area: EV_RECTANGLE
cosine (v: REAL_32): REAL_32
`v'
SINGLE_MATH
dashed_line_style: BOOLEAN
drawing_mode: INTEGER_32
euler: REAL_64 is 2.7182818284590452354
MATH_CONST
floor (v: REAL_32): REAL_32
`v'
SINGLE_MATH
font: EV_FONT
`Current'
foreground_color: EV_COLOR
generating_type: STRING_8
ANY
generator: STRING_8
ANY
height: INTEGER_32
landscape: BOOLEAN
left_margin: INTEGER_32
line_width: INTEGER_32
log (v: REAL_32): REAL_32
`v'
SINGLE_MATH
require SINGLE_MATH
v > 0.0
log10 (v: REAL_32): REAL_32
`v'
SINGLE_MATH
require SINGLE_MATH
v > 0.0
log_2 (v: REAL_32): REAL_32
`v'
SINGLE_MATH
require SINGLE_MATH
v > 0.0
pi: REAL_64 is 3.14159265358979323846
MATH_CONST
sine (v: REAL_32): REAL_32
`v'
SINGLE_MATH
sqrt (v: REAL_32): REAL_32
`v'
SINGLE_MATH
require SINGLE_MATH
v >= 0.0
sqrt2: REAL_64 is 1.41421356237309504880
MATH_CONST
tangent (v: REAL_32): REAL_32
`v'
SINGLE_MATH
tile: EV_PIXMAP
background_color
width: INTEGER_32
feature
frozen deep_equal (some: ANY; other: like arg #1): BOOLEAN
`some'`other'
ANY
ensure ANY
shallow_implies_deep: standard_equal (some, other) implies Result
both_or_none_void: (some = Void) implies (Result = (other = Void))
same_type: (Result and (some /= Void)) implies some.same_type (other)
symmetric: Result implies deep_equal (other, some)
frozen equal (some: ANY; other: like arg #1): BOOLEAN
`some'`other'
ANY
ensure ANY
definition: Result = (some = Void and other = Void) or else ((some /= Void and other /= Void) and then some.is_equal (other))
is_equal (other: like Current): BOOLEAN
`other'
ANY
require ANY
other_not_void: other /= Void
ensure ANY
symmetric: Result implies other.is_equal (Current)
consistent: standard_is_equal (other) implies Result
frozen standard_equal (some: ANY; other: like arg #1): BOOLEAN
`some'`other'
ANY
ensure ANY
definition: Result = (some = Void and other = Void) or else ((some /= Void and other /= Void) and then some.standard_is_equal (other))
frozen standard_is_equal (other: like Current): BOOLEAN
`other'
ANY
require ANY
other_not_void: other /= Void
ensure ANY
same_type: Result implies same_type (other)
symmetric: Result implies other.standard_is_equal (Current)
feature
conforms_to (other: ANY): BOOLEAN
`other'
ANY
require ANY
other_not_void: other /= Void
default_bottom_margin: INTEGER_32 is 20
EV_POSTSCRIPT_PAGE_CONSTANTS
default_left_margin: INTEGER_32 is 20
EV_POSTSCRIPT_PAGE_CONSTANTS
page_height (a_size: INTEGER_32; landscape: BOOLEAN): INTEGER_32
EV_POSTSCRIPT_PAGE_CONSTANTS
require EV_POSTSCRIPT_PAGE_CONSTANTS
valid_size: valid_page_size (a_size)
page_width (a_size: INTEGER_32; landscape: BOOLEAN): INTEGER_32
EV_POSTSCRIPT_PAGE_CONSTANTS
require EV_POSTSCRIPT_PAGE_CONSTANTS
valid_size: valid_page_size (a_size)
same_type (other: ANY): BOOLEAN
`other'
ANY
require ANY
other_not_void: other /= Void
ensure ANY
definition: Result = (conforms_to (other) and other.conforms_to (Current))
feature
disable_dashed_line_style
ensure EV_DRAWABLE_I
dashed_line_style_disabled: is_usable implies not interface.dashed_line_style
enable_dashed_line_style
ensure EV_DRAWABLE_I
dashed_line_style_enabled: is_usable implies interface.dashed_line_style
remove_clip_area
remove_clipping
ensure EV_DRAWABLE_I
clip_area_void: is_usable implies interface.clip_area = Void
remove_tile
ensure EV_DRAWABLE_I
tile_void: is_usable implies interface.tile = Void
set_background_color (a_color: like background_color)
`a_color'foreground_color
require EV_COLORIZABLE_I
a_color_not_void: a_color /= Void
ensure EV_COLORIZABLE_I
background_color_assigned: is_initialized implies interface.implementation.background_color.is_equal (a_color)
set_clip_area (an_area: EV_RECTANGLE)
require EV_DRAWABLE_I
an_area_not_void: an_area /= Void
ensure EV_DRAWABLE_I
clip_area_assigned: is_usable implies interface.clip_area.is_equal (an_area)
set_clip_region (a_region: EV_REGION)
require EV_DRAWABLE_I
a_region_not_void: a_region /= Void
set_default_colors
set_default_font
font
set_default_page_size
set_drawing_mode (a_mode: INTEGER_32)
`a_logical_mode'
require EV_DRAWABLE_I
a_mode_valid: valid_drawing_mode (a_mode)
ensure EV_DRAWABLE_I
drawing_mode_assigned: is_usable implies interface.drawing_mode = a_mode
set_font (a_font: EV_FONT)
`a_font'font
require EV_FONTABLE_I
a_font_not_void: a_font /= Void
ensure EV_FONTABLE_I
assigned: is_usable implies font.is_equal (a_font)
set_foreground_color (a_color: like foreground_color)
`a_color'foreground_color
require EV_COLORIZABLE_I
a_color_not_void: a_color /= Void
ensure EV_COLORIZABLE_I
foreground_color_assigned: is_initialized implies interface.implementation.foreground_color.is_equal (a_color)
set_line_width (a_width: INTEGER_32)
`a_width'line_width
require EV_DRAWABLE_I
a_width_positive_or_zero: a_width >= 0
ensure EV_DRAWABLE_I
line_width_assigned: is_usable implies interface.line_width = a_width
set_margins (a_left_margin, a_bottom_margin: INTEGER_32)
`left'`bottom'`a_left_margin'
`a_bottom_margin'
require
a_left_margin_not_negative: a_left_margin >= 0
a_bottom_margin_not_negative: a_bottom_margin >= 0
ensure
left_set: left_margin = a_left_margin
bottom_set: bottom_margin = a_bottom_margin
set_page_size (a_size: INTEGER_32; a_landscape: BOOLEAN)
`a_size'
set_size (a_width, a_height: INTEGER_32)
width`a_width'height`a_height'
require
positive: a_width >= 0 and a_height >= 0
ensure
set: width = a_width and height = a_height
set_tile (a_pixmap: EV_PIXMAP)
background_color
require EV_DRAWABLE_I
a_pixmap_not_void: a_pixmap /= Void
ensure EV_DRAWABLE_I
tile_assigned: is_usable implies interface.tile /= Void
feature
copy (other: like Current)
`other'
ANY
require ANY
other_not_void: other /= Void
type_identity: same_type (other)
ensure ANY
is_equal: is_equal (other)
frozen deep_copy (other: like Current)
copy`other'deep_twin
ANY
require ANY
other_not_void: other /= Void
ensure ANY
deep_equal: deep_equal (Current, other)
frozen deep_twin: like Current
ANY
ensure ANY
deep_equal: deep_equal (Current, Result)
frozen standard_copy (other: like Current)
`other'
ANY
require ANY
other_not_void: other /= Void
type_identity: same_type (other)
ensure ANY
is_standard_equal: standard_is_equal (other)
frozen standard_twin: like Current
`other'
ANY
ensure ANY
standard_twin_not_void: Result /= Void
equal: standard_equal (Result, Current)
sub_pixmap (area: EV_RECTANGLE): EV_PIXMAP
`Current'`area'
require EV_DRAWABLE_I
area_not_void: area /= Void
ensure EV_DRAWABLE_I
result_not_void: Result /= Void
frozen twin: like Current
`Current'
twincopycopy
ANY
ensure ANY
twin_not_void: Result /= Void
is_equal: Result.is_equal (Current)
feature
frozen default: like Current
ANY
frozen default_pointer: POINTER
`POINTER'
`p'default
`p'`POINTER'
ANY
default_rescue
ANY
frozen do_nothing
ANY
feature
clear
`Current'background_color
clear_rectangle (x1, y1, a_width, a_height: INTEGER_32)
`x'`y'
`a_width'`a_height'background_color
intersect (p, q: EV_RECTANGLE): EV_RECTANGLE
`q'`p'
ensure
result_exists: Result /= Void
redraw
`Current'
save_to_named_file (a_file_name: FILE_NAME)
`Current'`a_file_name'
require
a_file_name_not_void: a_file_name /= Void
feature
a0: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
a1: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
a2: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
a3: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
a4: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
a5: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
a6: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
a7: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
a8: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
a9: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
b0: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
b1: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
b10: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9
EV_POSTSCRIPT_PAGE_CONSTANTS
b2: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
b3: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
b4: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
b5: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
b6: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
b7: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
b8: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
b9: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B10
EV_POSTSCRIPT_PAGE_CONSTANTS
c5envelope: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
comm10envelope: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
dlenvelope: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeFolioExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
drawing_mode_and: INTEGER_32 is 3
EV_DRAWABLE_CONSTANTS
drawing_mode_copy: INTEGER_32 is 0
EV_DRAWABLE_CONSTANTS
drawing_mode_invert: INTEGER_32 is 2
EV_DRAWABLE_CONSTANTS
drawing_mode_or: INTEGER_32 is 4
EV_DRAWABLE_CONSTANTS
drawing_mode_xor: INTEGER_32 is 1
EV_DRAWABLE_CONSTANTS
executive: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
folio: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeExecutiveLetterLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
ledger: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
legal: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
letter: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLegalLedgerTabloidA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
tabloid: INTEGER_32 is unique
EV_POSTSCRIPT_PAGE_CONSTANTSComm10envelopeC5envelopeDlenvelopeFolioExecutiveLetterLegalLedgerA0A1A2A3A4A5A6A7A8A9B0B1B2B3B4B5B6B7B8B9B10
EV_POSTSCRIPT_PAGE_CONSTANTS
feature
valid_drawing_mode (a_mode: INTEGER_32): BOOLEAN
`a_mode'
EV_DRAWABLE_CONSTANTS
valid_page_size (a_size: INTEGER_32): BOOLEAN
`a_size'
EV_POSTSCRIPT_PAGE_CONSTANTS
feature
draw_arc (x, y, a_bounding_width, a_bounding_height: INTEGER_32; a_start_angle, an_aperture: REAL_32)
`x'`y'`a_bounding_width'
`a_bounding_height'
`a_start_angle'`a_start_angle'`an_aperture'
require EV_DRAWABLE_I
a_bounding_width_positive_or_zero: a_bounding_width >= 0
a_bounding_width_positive_or_zero: a_bounding_height >= 0
draw_ellipse (x, y, a_bounding_width, a_bounding_height: INTEGER_32)
`x'`y'`a_bounding_width'
`a_bounding_height'
require EV_DRAWABLE_I
a_bounding_width_positive_or_zero: a_bounding_width >= 0
a_bounding_height_positive_or_zero: a_bounding_height >= 0
draw_ellipsed_text (x, y: INTEGER_32; a_text: STRING_GENERAL; clipping_width: INTEGER_32)
`a_text'`x'`y'font
`clipping_width'
require EV_DRAWABLE_I
a_text_not_void: a_text /= Void
clipping_width_positive: clipping_width >= 0
draw_ellipsed_text_top_left (x, y: INTEGER_32; a_text: STRING_GENERAL; clipping_width: INTEGER_32)
`a_text'`x'`y'font
`clipping_width'
require EV_DRAWABLE_I
a_text_not_void: a_text /= Void
clipping_width_positive: clipping_width >= 0
draw_pie_slice (x, y, a_bounding_width, a_bounding_height: INTEGER_32; a_start_angle, an_aperture: REAL_32)
`x'`y'`a_bounding_width'
`a_bounding_height'
`a_start_angle'`a_start_angle'`an_aperture'
`x'
require EV_DRAWABLE_I
a_bounding_width_positive_or_zero: a_bounding_width >= 0
a_bounding_height_positive_or_zero: a_bounding_height >= 0
draw_pixmap (x, y: INTEGER_32; a_pixmap: EV_PIXMAP)
`a_pixmap'`x'
require EV_DRAWABLE_I
a_pixmap_not_void: a_pixmap /= Void
draw_point (x, y: INTEGER_32)
`x'
draw_polyline (points: ARRAY [EV_COORDINATE]; is_closed: BOOLEAN)
`points'`is_closed'
`points'
require EV_DRAWABLE_I
points_not_void: points /= Void
draw_rectangle (x, y, a_width, a_height: INTEGER_32)
`x'
`a_width'`a_height'
require EV_DRAWABLE_I
a_width_positive_or_zero: a_width >= 0
a_height_positive_or_zero: a_height >= 0
draw_rotated_text (x, y: INTEGER_32; angle: REAL_32; a_text: STRING_GENERAL)
`a_text'`x'`y'font
require EV_DRAWABLE_I
a_text_not_void: a_text /= Void
draw_segment (x1, y1, x2, y2: INTEGER_32)
`x1'`x2'
draw_straight_line (x1, y1, x2, y2: INTEGER_32)
`x1'`x2'
EV_DRAWABLE_I
draw_sub_pixmap (x, y: INTEGER_32; a_pixmap: EV_PIXMAP; area: EV_RECTANGLE)
`area'`a_pixmap'`x'`y'
require EV_DRAWABLE_I
a_pixmap_not_void: a_pixmap /= Void
area_not_void: area /= Void
draw_text (x, y: INTEGER_32; a_text: STRING_GENERAL)
`a_text'`x'`y'
require EV_DRAWABLE_I
a_text_not_void: a_text /= Void
draw_text_top_left (x, y: INTEGER_32; a_text: STRING_GENERAL)
`a_text'`x'`y'font
require EV_DRAWABLE_I
a_text_not_void: a_text /= Void
feature
fill_ellipse (x, y, a_bounding_width, a_bounding_height: INTEGER_32)
`x'`y'`a_bounding_width'
`a_bounding_height'
require EV_DRAWABLE_I
a_bounding_width_positive_or_zero: a_bounding_width >= 0
a_bounding_height_positive_or_zero: a_bounding_height >= 0
fill_pie_slice (x, y, a_bounding_width, a_bounding_height: INTEGER_32; a_start_angle, an_aperture: REAL_32)
`x'`y'`a_bounding_width'
`a_bounding_height'
`a_start_angle'`a_start_angle'`an_aperture'
`x'
require EV_DRAWABLE_I
a_bounding_width_positive_or_zero: a_bounding_width >= 0
a_bounding_height_positive_or_zero: a_bounding_height >= 0
fill_polygon (points: ARRAY [EV_COORDINATE])
`points'
background_color
require EV_DRAWABLE_I
points_not_void: points /= Void
fill_rectangle (x, y, a_width, a_height: INTEGER_32)
`x'
`a_width'`a_height'background_color
require EV_DRAWABLE_I
a_width_positive_or_zero: a_width >= 0
a_height_positive_or_zero: a_height >= 0
feature
io: STD_FILES
ANY
out: STRING_8
ANYtagged_out
ANY
print (some: ANY)
`some'
ANY
frozen tagged_out: STRING_8
ANYout
ANY
feature
operating_environment: OPERATING_ENVIRONMENT
ANY
invariant
EV_ANY_I
interface_coupled: is_usable implies interface /= Void and then interface.implementation = Current
base_make_called: base_make_called
ANY
reflexive_equality: standard_is_equal (Current)
reflexive_conformance: conforms_to (Current)
indexing
copyright: "Copyright (c) 1984-2006, Eiffel Software and others"
license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)"
source: "[
Eiffel Software
356 Storke Road, Goleta, CA 93117 USA
Telephone 805-685-1006, Fax 805-685-6869
Website http://www.eiffel.com
Customer support http://support.eiffel.com
]"
end EV_POSTSCRIPT_DRAWABLE_IMP