build documents in Isabelle/Scala, based on generated tex files as session exports;
reworked "isabelle document" for quasi-offline document builds: similar functionality included in "isabelle build -o document=pdf";
/* Title: Pure/GUI/popup.scala
Author: Makarius
Popup within layered pane.
*/
package isabelle
import java.awt.{Point, Dimension}
import javax.swing.{JLayeredPane, JComponent}
class Popup(
layered: JLayeredPane,
component: JComponent,
location: Point,
size: Dimension)
{
def show
{
component.setLocation(location)
component.setSize(size)
component.setPreferredSize(size)
component.setOpaque(true)
layered.add(component, JLayeredPane.DEFAULT_LAYER)
layered.moveToFront(component)
layered.repaint(component.getBounds())
}
def hide
{
val bounds = component.getBounds()
layered.remove(component)
layered.repaint(bounds)
}
}