package org.reprap.gui; import java.awt.Dimension; import java.awt.Rectangle; import java.awt.Toolkit; import java.awt.Window; import javax.swing.JFrame; import org.reprap.Preferences; public class Utility { public static void centerWindowOnScreen(Window w) { Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); w.setLocation((screenSize.width - w.getSize().width) / 2, (screenSize.height - w.getSize().height) / 2); } public static Dimension getDefaultAppSize() { try { Preferences prefs = Preferences.getGlobalPreferences(); if (prefs.loadBool("RememberWindowPosition")) { int width = prefs.loadInt("MainWindowWidth"); int height = prefs.loadInt("MainWindowHeight"); return new Dimension(width, height); } } catch (Exception ex) { // Ignore exception and continue with defaults } Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); return new Dimension(4 * screenSize.width / 5, 4 * screenSize.height / 5); } public static void positionWindowOnScreen(Window w) { try { Preferences prefs = Preferences.getGlobalPreferences(); if (prefs.loadBool("RememberWindowPosition")) { int left = prefs.loadInt("MainWindowLeft"); int top = prefs.loadInt("MainWindowTop"); w.setLocation(left, top); return; } } catch (Exception ex) { // Ignore exception and continue with defaults } centerWindowOnScreen(w); } public static void centerWindowOnParent(Window w, JFrame parent) { Rectangle bounds = parent.getBounds(); int cx = bounds.x + bounds.width / 2; int cy = bounds.y + bounds.height / 2; Dimension mySize = w.getSize(); w.setLocation(cx - mySize.width / 2, cy - mySize.height / 2); } }