19 package org.sleuthkit.autopsy.corecomponents;
21 import java.awt.Insets;
23 import java.util.TreeMap;
24 import java.util.logging.Level;
25 import javax.swing.BorderFactory;
26 import javax.swing.UIManager;
27 import javax.swing.UIManager.LookAndFeelInfo;
28 import javax.swing.UnsupportedLookAndFeelException;
29 import org.netbeans.swing.tabcontrol.plaf.DefaultTabbedContainerUI;
30 import org.openide.modules.ModuleInstall;
31 import org.openide.windows.WindowManager;
46 if (null == instance) {
60 UIManager.put(
"ViewTabDisplayerUI",
"org.sleuthkit.autopsy.corecomponents.NoTabsTabDisplayerUI");
61 UIManager.put(DefaultTabbedContainerUI.KEY_VIEW_CONTENT_BORDER, BorderFactory.createEmptyBorder());
62 UIManager.put(
"TabbedPane.contentBorderInsets",
new Insets(0, 0, 0, 0));
63 WindowManager.getDefault().invokeWhenUIReady(() -> {
74 if (System.getProperty(
"os.name").toLowerCase().contains(
"mac")) {
76 }
else if (System.getProperty(
"os.name").toLowerCase().contains(
"nux")){
88 UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
89 }
catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
90 logger.log(Level.WARNING,
"Error setting OS-X look-and-feel", ex);
94 final String[] UI_MENU_ITEM_KEYS =
new String[]{
"MenuBarUI",};
95 Map<Object, Object> uiEntries =
new TreeMap<>();
96 for (String key : UI_MENU_ITEM_KEYS) {
97 uiEntries.put(key, UIManager.get(key));
101 for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
102 if (
"Nimbus".equals(info.getName())) {
104 UIManager.setLookAndFeel(info.getClassName());
105 }
catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
106 logger.log(Level.WARNING,
"Error setting OS-X look-and-feel", ex);
113 uiEntries.entrySet().stream().forEach((entry) -> {
114 UIManager.put(entry.getKey(), entry.getValue());
129 UIManager.put(
"swing.boldMetal", Boolean.FALSE);
130 UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
132 }
catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
133 logger.log(Level.WARNING,
"Error setting crossplatform look-and-feel, setting default look-and-feel",ex);
static final long serialVersionUID
static Installer instance
void setModuleSettings(String value)
static final Logger logger
static synchronized Installer getDefault()
void setUnixLookAndFeel()
static boolean makeConfigFile(String moduleName)
static synchronized void setConfigSetting(String moduleName, String settingName, String settingVal)
static boolean configExists(String moduleName)
synchronized static Logger getLogger(String name)
static StartupWindowProvider getInstance()