indexing description: "Objects that represent an EV_DIALOG.% %The original version of this class was generated by EiffelBuild." author: "" date: "$Date$" revision: "$Revision$" class DOCUMENT_WIDGET inherit DOCUMENT_WIDGET_IMP SHARED_OBJECTS undefine copy, default_create, is_equal end UTILITY_FUNCTIONS undefine copy, default_create, is_equal end create make feature -- Creation make (a_document: DOCUMENT) is -- New widget based on `a_document' do document := a_document default_create end feature {NONE} -- Initialization user_initialization is -- called by `initialize'. -- Any custom user initialization that -- could not be performed in `initialize', -- (due to regeneration of implementation class) -- can be added here. do create internal_edit_widget.make (document) internal_html_widget := Shared_web_browser internal_xml_widget := Shared_web_browser edit_button.select_actions.extend (agent show_edit_widget) xml_button.select_actions.extend (agent show_xml_widget) html_button.select_actions.extend (agent show_html_widget) view_box.extend (internal_edit_widget) end feature -- Access title: STRING is -- Title to display do Result := document.short_name (document.name) end feature -- Commands show_edit_widget is -- Show editing widget do view_box.wipe_out view_box.extend (internal_edit_widget) end show_xml_widget is -- Show XML browser widget local l_filename: STRING l_xml: PLAIN_TEXT_FILE do create l_filename.make_from_string (temporary_xml_location (document.name, True)) create l_xml.make_create_read_write (l_filename) l_xml.putstring (document.text) l_xml.close internal_xml_widget.load_document_xml (document.name, l_filename) view_box.wipe_out view_box.extend (internal_xml_widget) end show_html_widget is -- Show HTML browser widget local l_generator: HTML_GENERATOR l_target_dir: DIRECTORY do create l_generator create l_target_dir.make (temporary_html_location (document.name, False)) l_generator.generate_file (document, l_target_dir) internal_html_widget.load_document_html (document.name, l_generator.last_generated_file.name) view_box.wipe_out view_box.extend (internal_html_widget) end feature {DOCUMENT_EDITOR, DOC_BUILDER_WINDOW} -- Implementation document: DOCUMENT -- Associated document internal_edit_widget: DOCUMENT_TEXT_WIDGET -- Internal editing widget internal_xml_widget: DOCUMENT_BROWSER -- Internal XML widget internal_html_widget: DOCUMENT_BROWSER -- Internal HTML Browser widget end -- class WIDGET_BUILDER_NOT_FOR_SYSTEM