equal
deleted
inserted
replaced
7 package isabelle.jedit |
7 package isabelle.jedit |
8 |
8 |
9 |
9 |
10 import isabelle._ |
10 import isabelle._ |
11 |
11 |
12 import javax.swing.{SwingUtilities, JComponent} |
12 import javax.swing.JComponent |
13 import java.awt.Point |
13 import java.awt.Point |
14 import java.awt.event.{WindowFocusListener, WindowEvent} |
14 import java.awt.event.{WindowFocusListener, WindowEvent} |
15 |
15 |
16 import org.gjt.sp.jedit.View |
16 import org.gjt.sp.jedit.View |
17 |
17 |
64 override def make_tooltip(parent: JComponent, x: Int, y: Int, body: XML.Body): String = |
64 override def make_tooltip(parent: JComponent, x: Int, y: Int, body: XML.Body): String = |
65 { |
65 { |
66 Pretty_Tooltip.invoke(() => |
66 Pretty_Tooltip.invoke(() => |
67 { |
67 { |
68 val rendering = Rendering(snapshot, PIDE.options.value) |
68 val rendering = Rendering(snapshot, PIDE.options.value) |
69 val screen_point = new Point(x, y) |
|
70 SwingUtilities.convertPointToScreen(screen_point, parent) |
|
71 val info = Text.Info(Text.Range(~1), body) |
69 val info = Text.Info(Text.Range(~1), body) |
72 Pretty_Tooltip(view, parent, rendering, screen_point, Command.Results.empty, info) |
70 Pretty_Tooltip(view, parent, new Point(x, y), rendering, Command.Results.empty, info) |
73 }) |
71 }) |
74 null |
72 null |
75 } |
73 } |
76 } |
74 } |
77 case Exn.Exn(exn) => new TextArea(Exn.message(exn)) |
75 case Exn.Exn(exn) => new TextArea(Exn.message(exn)) |