src/Pure/GUI/gui.scala
changeset 82626 e840461d5370
parent 82568 f35e82124b33
--- a/src/Pure/GUI/gui.scala	Thu May 15 22:55:29 2025 +0200
+++ b/src/Pure/GUI/gui.scala	Fri May 16 12:10:49 2025 +0200
@@ -7,8 +7,8 @@
 package isabelle
 
 import java.util.{Map => JMap}
-import java.awt.{Component, Container, Font, Image, Insets, KeyboardFocusManager, Window, Point,
-  Rectangle, Dimension, GraphicsEnvironment, MouseInfo, Toolkit}
+import java.awt.{Color, Component, Container, Font, Image, Insets, KeyboardFocusManager, Window,
+  Point, Rectangle, Dimension, GraphicsEnvironment, MouseInfo, Toolkit}
 import java.awt.event.{KeyAdapter, KeyEvent}
 import java.awt.font.{FontRenderContext, LineMetrics, TextAttribute, TransformAttribute}
 import java.awt.geom.AffineTransform
@@ -32,6 +32,10 @@
 
   def is_dark_laf(): Boolean = FlatLaf.isLafDark()
 
+  def default_foreground_color(): Color = if (is_dark_laf()) Color.BLACK else Color.WHITE
+  def default_background_color(): Color = if (is_dark_laf()) Color.WHITE else Color.BLACK
+  def default_intermediate_color(): Color = if (is_dark_laf()) Color.LIGHT_GRAY else Color.GRAY
+
   class Look_And_Feel(laf: LookAndFeel) extends Isabelle_System.Service {
     def info: UIManager.LookAndFeelInfo =
       new UIManager.LookAndFeelInfo(laf.getName, laf.getClass.getName)