1.1 --- a/src/Tools/jEdit/src/isabelle_logic.scala Wed Dec 05 21:13:50 2012 +0100
1.2 +++ b/src/Tools/jEdit/src/isabelle_logic.scala Wed Dec 05 22:25:15 2012 +0100
1.3 @@ -35,7 +35,7 @@
1.4
1.5 val entries =
1.6 new Logic_Entry("", "default (" + default_logic() + ")") ::
1.7 - Isabelle_System.find_logics().map(name => new Logic_Entry(name, name))
1.8 + Isabelle_Logic.session_list().map(name => new Logic_Entry(name, name))
1.9
1.10 val component = new ComboBox(entries) with Option_Component {
1.11 name = option_name
1.12 @@ -56,7 +56,7 @@
1.13 component.listenTo(component.selection)
1.14 component.reactions += { case SelectionChanged(_) => component.save() }
1.15 }
1.16 - component.tooltip = PIDE.options.value.check_name(option_name).print_default
1.17 + component.tooltip = "Logic session name (change requires restart)"
1.18 component
1.19 }
1.20
1.21 @@ -71,9 +71,17 @@
1.22 modes ::: List(logic)
1.23 }
1.24
1.25 + def session_dirs(): List[Path] = Path.split(Isabelle_System.getenv("JEDIT_SESSION_DIRS"))
1.26 +
1.27 + def session_list(): List[String] =
1.28 + {
1.29 + val dirs = session_dirs().map((false, _))
1.30 + Build.find_sessions(PIDE.options.value, dirs).topological_order.map(_._1).sorted
1.31 + }
1.32 +
1.33 def session_content(inlined_files: Boolean): Build.Session_Content =
1.34 {
1.35 - val dirs = Path.split(Isabelle_System.getenv("JEDIT_SESSION_DIRS"))
1.36 + val dirs = session_dirs()
1.37 val name = session_args().last
1.38 Build.session_content(inlined_files, dirs, name).check_errors
1.39 }