indexing description: "[ processor for closeup nodes ]" author: "Steiner Fabrizio" date: "$Date$" revision: "$Revision$" class CLOSEUP_NODE_PROCESSOR inherit NODE_PROCESSOR create make feature -- Access name: STRING is "closeup" Mandatory_attributes: ARRAY [STRING] is -- Table of mandatory attributes once Result := << "name" >> Result.compare_objects end feature -- Basic operations process is -- Process node. local item: ITEM area: AREA closeup: CLOSEUP do item ?= target area ?= target if item = void and area = void then set_error(Invalid_parent_node, << "before a tag " + name >>) end if not has_error then closeup := pool.get_closeup(attribute("name")) if has_attribute("image") then closeup.set_image_path(pool.get_directory + attribute("image")) end if has_attribute("description") then closeup.set_description (attribute("description")) end if item /= void then item.add_closeup (closeup) end set_target(closeup) if has_subnodes then process_subnodes end end end end