note
description: "Cocoa Implementation for EV_REGION"
author: "Daniel Furrer"
date: "$Date$"
revision: "$Revision$"
class
EV_REGION_IMP
inherit
EV_REGION_I
create
make
feature {NONE} -- Initialization
old_make (an_interface: EV_REGION)
-- Creation method.
do
assign_interface (an_interface)
end
make
-- Initialize `Current'.
do
set_is_initialized (True)
end
feature -- Element Change
set_rectangle (a_rectangle: EV_RECTANGLE)
-- Set region to area a_rectangle.
do
end
offset (a_horizontal_offset, a_vertical_offset: INTEGER)
-- Move `Current' a `a_horizontal_offset' horizontally and `a_vertical_offset' vertically.
do
end
feature -- Access
intersect (a_region: EV_REGION): EV_REGION
-- Intersect `a_region' with `Current'.
do
-- NSRect NSIntersectionRect(NSRect aRect, NSRect bRect)
create Result
end
union (a_region: EV_REGION): EV_REGION
-- Create a union `a_region' with `Current'.
do
-- NSRect NSUnionRect(NSRect aRect, NSRect bRect)
create Result
end
subtract (a_region: EV_REGION): EV_REGION
-- Subtract `a_region' from `Current'.
do
create Result
end
exclusive_or (a_region: EV_REGION): EV_REGION
-- Exclusive or `a_region' with `Current'
do
create Result
end
feature -- Duplication
copy_region (other: EV_REGION)
-- Update `Current' to be the same as `other'.
do
end
feature {EV_DRAWABLE_IMP, EV_REGION_IMP} -- Access
feature {NONE} -- Implementation
is_region_equal (other: EV_REGION): BOOLEAN
-- Does `other' have the same appearance as `Current'.
do
-- BOOL NSEqualRects(NSRect aRect, NSRect bRect)
if attached other and then attached {EV_REGION_IMP} other.implementation as region_imp then
Result := is_equal (region_imp)
end
end
destroy
-- Destroy `Current'.
do
set_is_in_destroy (True)
set_is_destroyed (True)
end
end