class Selector( val options: Options_Variable, val option_name: String,
standalone: Boolean,
batches: List[GUI.Selector.Entry[String]]*) extends GUI.Selector[String](batches: _*) with JEdit_Options.Entry {
name = option_name
tooltip = if (standalone) Word.capitalized(options.value.description(option_name)) else options.value.check_name(option_name).print_default
overrideval title: String =
options.value.check_name(option_name).title_jedit overridedef load(): Unit = { val value = options.string(option_name) for (entry <- find_value(_ == value) if selection.item != entry) {
selection.item = entry
}
} overridedef save(): Unit = for (value <- selection_value) options.string(option_name) = value
overridedef changed(): Unit = if (standalone) save()
load()
}
def logic_selector(options: Options_Variable, standalone: Boolean = false): Selector =
GUI_Thread.require { val sessions = sessions_structure(options = options.value) val all_sessions = sessions.imports_topological_order val main_sessions = all_sessions.filter(name => sessions(name).main_group)
val default_entry =
GUI.Selector.item_description("", "default (" + logic_name(options.value) + ")")
new Selector(options, jedit_logic_option, standalone,
default_entry :: main_sessions.map(GUI.Selector.item),
all_sessions.sorted.map(GUI.Selector.item))
}
def document_selector(options: Options_Variable, standalone: Boolean = false): Selector =
GUI_Thread.require { val sessions = sessions_structure(options = options.value + "document") val all_sessions =
sessions.build_topological_order.filter(name => sessions(name).documents.nonEmpty).sorted val doc_sessions = all_sessions.filter(name => sessions(name).doc_group) val unsorted_sessions = all_sessions.filter(name => sessions(name).unsorted_chapter)
val batches =
(if (unsorted_sessions.nonEmpty) List(unsorted_sessions.map(GUI.Selector.item)) else Nil) :::
List(doc_sessions.map(GUI.Selector.item), all_sessions.map(GUI.Selector.item)) new Selector(options, "editor_document_session", standalone, batches:_*)
}
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.