tuned signature;
authorwenzelm
Mon, 03 Mar 2014 10:59:33 +0100
changeset 55877 65c9968286d5
parent 55876 142139457653
child 55878 6d092a5166f1
tuned signature;
src/Tools/jEdit/src/documentation_dockable.scala
src/Tools/jEdit/src/jedit_editor.scala
src/Tools/jEdit/src/rendering.scala
src/Tools/jEdit/src/theories_dockable.scala
src/Tools/jEdit/src/timing_dockable.scala
--- a/src/Tools/jEdit/src/documentation_dockable.scala	Mon Mar 03 10:41:58 2014 +0100
+++ b/src/Tools/jEdit/src/documentation_dockable.scala	Mon Mar 03 10:59:33 2014 +0100
@@ -71,7 +71,7 @@
                         "Documentation error", GUI.scrollable_text(Exn.message(exn)))
                   })
               case Text_File(_, path) =>
-                PIDE.editor.goto(view, Isabelle_System.platform_path(path))
+                PIDE.editor.goto_file(view, Isabelle_System.platform_path(path))
               case _ =>
             }
           case _ =>
--- a/src/Tools/jEdit/src/jedit_editor.scala	Mon Mar 03 10:41:58 2014 +0100
+++ b/src/Tools/jEdit/src/jedit_editor.scala	Mon Mar 03 10:59:33 2014 +0100
@@ -109,9 +109,9 @@
     synchronized { overlays = overlays.remove(command, fn, args) }
 
 
-  /* hyperlinks */
+  /* navigation */
 
-  def goto(view: View, name: String, line: Int = 0, column: Int = 0)
+  def goto_file(view: View, name: String, line: Int = 0, column: Int = 0)
   {
     Swing_Thread.require()
 
@@ -142,6 +142,9 @@
     }
   }
 
+
+  /* hyperlinks */
+
   override def hyperlink_command(snapshot: Document.Snapshot, command: Command, raw_offset: Int = 0)
     : Option[Hyperlink] =
   {
@@ -156,7 +159,7 @@
               (if (raw_offset == 0) Iterator.empty
                else Iterator.single(command.source(Text.Range(0, command.decode(raw_offset)))))
           val (line, column) = ((1, 1) /: sources)(Symbol.advance_line_column)
-          Some(new Hyperlink { def follow(view: View) { goto(view, file_name, line, column) } })
+          Some(new Hyperlink { def follow(view: View) { goto_file(view, file_name, line, column) } })
       }
     }
   }
@@ -173,7 +176,7 @@
   }
 
   def hyperlink_file(name: String, line: Int = 0, column: Int = 0): Hyperlink =
-    new Hyperlink { def follow(view: View) = goto(view, name, line, column) }
+    new Hyperlink { def follow(view: View) = goto_file(view, name, line, column) }
 
   def hyperlink_source_file(name: String, line: Int): Option[Hyperlink] =
     if (Path.is_ok(name))
--- a/src/Tools/jEdit/src/rendering.scala	Mon Mar 03 10:41:58 2014 +0100
+++ b/src/Tools/jEdit/src/rendering.scala	Mon Mar 03 10:59:33 2014 +0100
@@ -327,6 +327,15 @@
 
   /* hyperlinks */
 
+  private def hyperlink_file(props: Properties.T): Option[PIDE.editor.Hyperlink] =
+    props match {
+      case Position.Def_Line_File(line, name) =>
+        PIDE.editor.hyperlink_source_file(name, line)
+      case Position.Def_Id_Offset(id, offset) =>
+        PIDE.editor.hyperlink_command_id(snapshot, id, offset)
+      case _ => None
+    }
+
   def hyperlink(range: Text.Range): Option[Text.Info[PIDE.editor.Hyperlink]] =
   {
     snapshot.cumulate[Vector[Text.Info[PIDE.editor.Hyperlink]]](
@@ -347,27 +356,12 @@
             { case (Markup.KIND, Markup.ML_OPEN) => true
               case (Markup.KIND, Markup.ML_STRUCTURE) => true
               case _ => false }) =>
-
-            val opt_link =
-              props match {
-                case Position.Def_Line_File(line, name) =>
-                  PIDE.editor.hyperlink_source_file(name, line)
-                case Position.Def_Id_Offset(id, offset) =>
-                  PIDE.editor.hyperlink_command_id(snapshot, id, offset)
-                case _ => None
-              }
-            opt_link.map(link => (links :+ Text.Info(snapshot.convert(info_range), link)))
+            hyperlink_file(props).map(link =>
+              (links :+ Text.Info(snapshot.convert(info_range), link)))
 
           case (links, Text.Info(info_range, XML.Elem(Markup(Markup.POSITION, props), _))) =>
-            val opt_link =
-              props match {
-                case Position.Line_File(line, name) =>
-                  PIDE.editor.hyperlink_source_file(name, line)
-                case Position.Id_Offset(id, offset) =>
-                  PIDE.editor.hyperlink_command_id(snapshot, id, offset)
-                case _ => None
-              }
-            opt_link.map(link => links :+ (Text.Info(snapshot.convert(info_range), link)))
+            hyperlink_file(props).map(link =>
+              (links :+ Text.Info(snapshot.convert(info_range), link)))
 
           case _ => None
         }) match { case Text.Info(_, _ :+ info) :: _ => Some(info) case _ => None }
--- a/src/Tools/jEdit/src/theories_dockable.scala	Mon Mar 03 10:41:58 2014 +0100
+++ b/src/Tools/jEdit/src/theories_dockable.scala	Mon Mar 03 10:59:33 2014 +0100
@@ -40,7 +40,7 @@
               } model.node_required = !model.node_required
             }
           }
-          else if (clicks == 2) PIDE.editor.goto(view, listData(index).node)
+          else if (clicks == 2) PIDE.editor.goto_file(view, listData(index).node)
         }
       case MouseMoved(_, point, _) =>
         val index = peer.locationToIndex(point)
--- a/src/Tools/jEdit/src/timing_dockable.scala	Mon Mar 03 10:41:58 2014 +0100
+++ b/src/Tools/jEdit/src/timing_dockable.scala	Mon Mar 03 10:59:33 2014 +0100
@@ -88,7 +88,7 @@
     extends Entry
   {
     def print: String = Time.print_seconds(timing) + "s theory " + quote(name.theory)
-    def follow(snapshot: Document.Snapshot) { PIDE.editor.goto(view, name.node) }
+    def follow(snapshot: Document.Snapshot) { PIDE.editor.goto_file(view, name.node) }
   }
 
   private case class Command_Entry(command: Command, timing: Double) extends Entry