class Output_Area(view: View, root_name: String = Pretty_Text_Area.search_title()) {
output_area =>
GUI_Thread.require {}
/* tree view */
val tree_cell_renderer: Tree_View.Cell_Renderer = new Tree_View.Cell_Renderer
val tree: Tree_View = new Tree_View(root = Tree_View.Node(root_name), single_selection_mode = true) { overridedef handle_selection(path: TreePath): Unit = handle_tree_selection(path)
}
privatevar search_activated = false
def handle_search(search: Pretty_Text_Area.Search_Results): Unit = { if (!search_activated && search.pattern.isDefined) {
search_activated = true
delay_shown.invoke()
}
tree.init_model {
tree.root.setUserObject(Pretty_Text_Area.search_title(lines = search.length)) for (result <- search.results) tree.root.add(Tree_View.Node(result))
}
tree.revalidate()
}
def handle_tree_selection(path: TreePath): Unit = for (result <- tree.get_selection(path, { case x: Pretty_Text_Area.Search_Result => x })) {
pretty_text_area.setCaretPosition(result.line_range.start)
JEdit_Lib.scroll_to_caret(pretty_text_area)
}
/* text area */
val pretty_text_area: Pretty_Text_Area = new Pretty_Text_Area(view) { overridedef handle_search(search: Pretty_Text_Area.Search_Results): Unit =
output_area.handle_search(search)
}
def handle_resize(): Unit = pretty_text_area.zoom() def handle_update(): Unit = ()
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.