package com.explodingpixels.macwidgets;
import javax.swing.JRootPane;
import com.explodingpixels.util.PlatformUtils;
/**
* A collection of utilities related to the Mac.
*/
public class MacUtils {
/**
* Makes this window a Unified window on Mac OS X Leopard or greater systems.
*
* @param rootPane
*/
public static void makeWindowLeopardStyle(JRootPane rootPane) {
// TODO figure out correct way to determine if the JRootPane has been
// TODO realized.
if (rootPane.isValid()) {
throw new IllegalArgumentException("This method only works if the" +
"given JRootPane has not yet been realized.");
}
rootPane.putClientProperty("apple.awt.brushMetalLook", Boolean.TRUE);
}
/**
* {@code true} if the Unified Tool Bar, Preference Tool Bar or Bottom Bar backgrounds should
* be manually painted in code, rather than letting Mac OS X do the painting. This will always
* return true on platforms other than Mac, and will sometimes return true on Mac's due to
* painting bugs in the Java distrobution.
*/
public static boolean shouldManuallyPaintTexturedWindowBackground() {
boolean shouldManuallyPaintOnMac = PlatformUtils.isMac();
return !PlatformUtils.isMac() || shouldManuallyPaintOnMac;
}
}