# HG changeset patch # User blanchet # Date 1260358002 -3600 # Node ID b174d384293e9b77855a815b8cf7c022fb512be2 # Parent 6782e3a9169f16fcd7fbe50003de8f585972ca68# Parent bd7075c56fff2452805eb3854fd8ad444a80da3c merged diff -r bd7075c56fff -r b174d384293e Admin/makedist --- a/Admin/makedist Wed Dec 09 12:03:27 2009 +0100 +++ b/Admin/makedist Wed Dec 09 12:26:42 2009 +0100 @@ -148,8 +148,6 @@ cp doc/isabelle*.eps lib/logo -rm Isabelle Isabelle.exe - if [ -z "$RELEASE" ]; then { diff -r bd7075c56fff -r b174d384293e src/Pure/General/swing_thread.scala --- a/src/Pure/General/swing_thread.scala Wed Dec 09 12:03:27 2009 +0100 +++ b/src/Pure/General/swing_thread.scala Wed Dec 09 12:26:42 2009 +0100 @@ -10,6 +10,8 @@ import javax.swing.{SwingUtilities, Timer} import java.awt.event.{ActionListener, ActionEvent} +import scala.actors.{Future, Futures} + object Swing_Thread { @@ -21,13 +23,17 @@ /* main dispatch queue */ - def now[A](body: => A): A = { + def now[A](body: => A): A = + { var result: Option[A] = None if (SwingUtilities.isEventDispatchThread()) { result = Some(body) } else SwingUtilities.invokeAndWait(new Runnable { def run = { result = Some(body) } }) result.get } + def future[A](body: => A): Future[A] = + Futures.future(now(body)) + def later(body: => Unit) { if (SwingUtilities.isEventDispatchThread()) body else SwingUtilities.invokeLater(new Runnable { def run = body }) diff -r bd7075c56fff -r b174d384293e src/Pure/System/isabelle_system.scala --- a/src/Pure/System/isabelle_system.scala Wed Dec 09 12:03:27 2009 +0100 +++ b/src/Pure/System/isabelle_system.scala Wed Dec 09 12:26:42 2009 +0100 @@ -341,11 +341,11 @@ private def create_font(name: String) = Font.createFont(Font.TRUETYPE_FONT, platform_file(name)) - def register_fonts(): Boolean = - { + def register_fonts() { val ge = GraphicsEnvironment.getLocalGraphicsEnvironment() val ok1 = ge.registerFont(create_font("~~/lib/fonts/IsabelleText.ttf")) val ok2 = ge.registerFont(create_font("~~/lib/fonts/IsabelleTextBold.ttf")) - ok1 && ok2 + if (!(ok1 && ok2) && !ge.getAvailableFontFamilyNames.contains(font_family)) + error("Font family " + font_family + " unavailable") } }