package net.knarcraft.minecraftserverlauncher.userinterface; import javax.swing.*; public abstract class MessageHandler implements GUI { private final boolean silent; /*** * Initializes a new message handler * * @param silent

Whether to print to cli instead of showing a GUI element

*/ public MessageHandler(boolean silent) { this.silent = silent; } @Override public void showError(String title, String message) { if (silent) { System.out.println(message); } else { showJOptionPane(title, message, JOptionPane.ERROR_MESSAGE); } } @Override public void showError(String message) { showError("Error", message); } @Override public void showMessage(String title, String message) { if (silent) { System.out.println(message); } else { showJOptionPane(title, message, JOptionPane.INFORMATION_MESSAGE); } } @Override public void showMessage(String message) { showMessage("Info", message); } /** * Shows a JOptionPane * * @param title

The title of the pane

* @param message

The message of the pane

* @param paneType

The type of the pane

*/ private void showJOptionPane(String title, String message, int paneType) { JOptionPane.showMessageDialog( null, message, title, paneType ); } }