diff --git a/platform/editor-ui-api/src/com/intellij/ide/ui/UISettings.java b/platform/editor-ui-api/src/com/intellij/ide/ui/UISettings.java index 7654ef8bfdfb..f218c7a3d904 100644 --- a/platform/editor-ui-api/src/com/intellij/ide/ui/UISettings.java +++ b/platform/editor-ui-api/src/com/intellij/ide/ui/UISettings.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2014 JetBrains s.r.o. + * Copyright 2000-2015 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,17 +15,14 @@ */ package com.intellij.ide.ui; -import com.intellij.ide.IdeBundle; import com.intellij.ide.WelcomeWizardUtil; import com.intellij.openapi.Disposable; import com.intellij.openapi.application.Application; import com.intellij.openapi.application.ApplicationManager; -import com.intellij.openapi.application.PathManager; import com.intellij.openapi.components.*; import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.SimpleModificationTracker; import com.intellij.openapi.util.SystemInfo; -import com.intellij.openapi.util.registry.Registry; import com.intellij.util.EventDispatcher; import com.intellij.util.PlatformUtils; import com.intellij.util.SystemProperties; @@ -40,24 +37,20 @@ import org.jetbrains.annotations.NotNull; import javax.swing.*; import java.awt.*; -import java.io.File; import java.util.Map; import static com.intellij.util.ui.UIUtil.isValidFont; @State( name = "UISettings", - storages = { - @Storage( - file = StoragePathMacros.APP_CONFIG + "/ui.lnf.xml" - )} + storages = @Storage(file = StoragePathMacros.APP_CONFIG + "/ui.lnf.xml") ) -public class UISettings extends SimpleModificationTracker implements PersistentStateComponent, ExportableApplicationComponent { +public class UISettings extends SimpleModificationTracker implements PersistentStateComponent { /** Not tabbed pane. */ public static final int TABS_NONE = 0; public static UISettings getInstance() { - return ApplicationManager.getApplication().getComponent(UISettings.class); + return ServiceManager.getService(UISettings.class); } /** @@ -134,7 +127,9 @@ public class UISettings extends SimpleModificationTracker implements PersistentS setSystemFontFaceAndSize(); Boolean scrollToSource = WelcomeWizardUtil.getAutoScrollToSource(); - if (scrollToSource != null) DEFAULT_AUTOSCROLL_TO_SOURCE = scrollToSource; + if (scrollToSource != null) { + DEFAULT_AUTOSCROLL_TO_SOURCE = scrollToSource; + } } private void tweakPlatformDefaults() { @@ -310,29 +305,4 @@ public class UISettings extends SimpleModificationTracker implements PersistentS } return false; } - - @NotNull - @Override - public File[] getExportFiles() { - return new File[]{PathManager.getOptionsFile("ui.lnf")}; - } - - @NotNull - @Override - public String getPresentableName() { - return IdeBundle.message("ui.settings"); - } - - @NonNls - @NotNull - @Override - public String getComponentName() { - return "UISettings"; - } - - @Override - public void initComponent() { } - - @Override - public void disposeComponent() { } -} +} \ No newline at end of file diff --git a/platform/platform-impl/src/com/intellij/ide/ui/laf/LafManagerImpl.java b/platform/platform-impl/src/com/intellij/ide/ui/laf/LafManagerImpl.java index 7056dd32a27d..68d0b8913023 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/laf/LafManagerImpl.java +++ b/platform/platform-impl/src/com/intellij/ide/ui/laf/LafManagerImpl.java @@ -115,7 +115,6 @@ public final class LafManagerImpl extends LafManager implements ApplicationCompo private final UIManager.LookAndFeelInfo[] myLaFs; private UIManager.LookAndFeelInfo myCurrentLaf; private final Map> myStoredDefaults = ContainerUtil.newHashMap(); - private final UISettings myUiSettings; private String myLastWarning = null; private PropertyChangeListener myThemeChangeListener = null; private static final Map ourLafClassesAliases = ContainerUtil.newHashMap(); @@ -127,8 +126,7 @@ public final class LafManagerImpl extends LafManager implements ApplicationCompo /** * Invoked via reflection. */ - LafManagerImpl(UISettings uiSettings) { - myUiSettings = uiSettings; + LafManagerImpl() { myListenerList = new EventListenerList(); List lafList = ContainerUtil.newArrayList(); @@ -740,9 +738,10 @@ public final class LafManagerImpl extends LafManager implements ApplicationCompo // uiDefaults.put(entry.getKey(), entry.getValue()); // } //} else - if (UISettings.getInstance().OVERRIDE_NONIDEA_LAF_FONTS) { + UISettings uiSettings = UISettings.getInstance(); + if (uiSettings.OVERRIDE_NONIDEA_LAF_FONTS) { storeOriginalFontDefaults(uiDefaults); - initFontDefaults(uiDefaults, myUiSettings.FONT_FACE, myUiSettings.FONT_SIZE); + initFontDefaults(uiDefaults, uiSettings.FONT_FACE, uiSettings.FONT_SIZE); } else { restoreOriginalFontDefaults(uiDefaults); diff --git a/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorHistoryManager.java b/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorHistoryManager.java index ac684c563c8c..ed3ffcda0caa 100644 --- a/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorHistoryManager.java +++ b/platform/platform-impl/src/com/intellij/openapi/fileEditor/impl/EditorHistoryManager.java @@ -55,8 +55,10 @@ public final class EditorHistoryManager extends AbstractProjectComponent impleme */ private final List myEntriesList = Collections.synchronizedList(new ArrayList()); - /** Invoked by reflection */ - EditorHistoryManager(final Project project, final UISettings uiSettings){ + /** + * Invoked by reflection + */ + EditorHistoryManager(final Project project, final UISettings uiSettings) { super(project); uiSettings.addUISettingsListener(new MyUISettingsListener(), project); } diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeFrameImpl.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeFrameImpl.java index b4e81cdfe11c..cbb8931a2225 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeFrameImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeFrameImpl.java @@ -21,9 +21,6 @@ import com.intellij.ide.DataManager; import com.intellij.ide.impl.ProjectUtil; import com.intellij.ide.ui.UISettings; import com.intellij.ide.util.PropertiesComponent; -import com.intellij.internal.statistic.configurable.StatisticsConfigurable; -import com.intellij.internal.statistic.updater.StatisticsNotificationManager; -import com.intellij.notification.*; import com.intellij.notification.impl.IdeNotificationArea; import com.intellij.openapi.Disposable; import com.intellij.openapi.MnemonicHelper; @@ -37,7 +34,6 @@ import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.application.ex.ApplicationInfoEx; import com.intellij.openapi.application.ex.ApplicationManagerEx; -import com.intellij.openapi.options.ShowSettingsUtil; import com.intellij.openapi.project.DumbAwareRunnable; import com.intellij.openapi.project.Project; import com.intellij.openapi.project.ProjectManager; @@ -45,7 +41,6 @@ import com.intellij.openapi.util.ActionCallback; import com.intellij.openapi.util.Disposer; import com.intellij.openapi.util.Key; import com.intellij.openapi.util.SystemInfo; -import com.intellij.openapi.util.registry.Registry; import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.wm.IdeFrame; import com.intellij.openapi.wm.IdeRootPaneNorthExtension; @@ -54,7 +49,6 @@ import com.intellij.openapi.wm.WindowManager; import com.intellij.openapi.wm.ex.IdeFrameEx; import com.intellij.openapi.wm.ex.LayoutFocusTraversalPolicyExt; import com.intellij.openapi.wm.ex.StatusBarEx; -import com.intellij.openapi.wm.ex.WindowManagerEx; import com.intellij.openapi.wm.impl.status.*; import com.intellij.openapi.wm.impl.welcomeScreen.WelcomeFrame; import com.intellij.ui.*; @@ -63,10 +57,8 @@ import com.intellij.util.ui.UIUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.io.PowerSupplyKit; -import org.jetbrains.io.PowerSupplyKitCallback; import javax.swing.*; -import javax.swing.event.HyperlinkEvent; import java.awt.*; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; @@ -98,11 +90,10 @@ public class IdeFrameImpl extends JFrame implements IdeFrameEx, DataProvider { public IdeFrameImpl(ApplicationInfoEx applicationInfoEx, ActionManagerEx actionManager, - UISettings uiSettings, DataManager dataManager, Application application) { super(applicationInfoEx.getFullApplicationName()); - myRootPane = createRootPane(actionManager, uiSettings, dataManager, application); + myRootPane = createRootPane(actionManager, UISettings.getInstance(), dataManager, application); setRootPane(myRootPane); setBackground(UIUtil.getPanelBackground()); AppUIUtil.updateWindowIcon(this); diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/WindowManagerImpl.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/WindowManagerImpl.java index de1790b6dee2..b6aa7079fab6 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/WindowManagerImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/WindowManagerImpl.java @@ -20,7 +20,6 @@ import com.intellij.ide.AppLifecycleListener; import com.intellij.ide.DataManager; import com.intellij.ide.GeneralSettings; import com.intellij.ide.impl.DataManagerImpl; -import com.intellij.ide.ui.UISettings; import com.intellij.openapi.Disposable; import com.intellij.openapi.actionSystem.ex.ActionManagerEx; import com.intellij.openapi.application.Application; @@ -118,18 +117,15 @@ public final class WindowManagerImpl extends WindowManagerEx implements NamedCom private final WindowAdapter myActivationListener; private final DataManager myDataManager; private final ActionManagerEx myActionManager; - private final UISettings myUiSettings; /** * invoked by reflection */ public WindowManagerImpl(DataManager dataManager, ActionManagerEx actionManager, - UISettings uiSettings, MessageBus bus) { myDataManager = dataManager; myActionManager = actionManager; - myUiSettings = uiSettings; if (myDataManager instanceof DataManagerImpl) { ((DataManagerImpl)myDataManager).setWindowManager(this); } @@ -522,7 +518,7 @@ public final class WindowManagerImpl extends WindowManagerEx implements NamedCom public void showFrame() { final IdeFrameImpl frame = new IdeFrameImpl(ApplicationInfoEx.getInstanceEx(), - myActionManager, myUiSettings, myDataManager, + myActionManager, myDataManager, ApplicationManager.getApplication()); myProject2Frame.put(null, frame); @@ -592,7 +588,7 @@ public final class WindowManagerImpl extends WindowManagerEx implements NamedCom frame.setProject(project); } else { - frame = new IdeFrameImpl(ApplicationInfoEx.getInstanceEx(), myActionManager, myUiSettings, + frame = new IdeFrameImpl(ApplicationInfoEx.getInstanceEx(), myActionManager, myDataManager, ApplicationManager.getApplication()); final Rectangle bounds = ProjectFrameBounds.getInstance(project).getBounds(); diff --git a/platform/platform-resources-en/src/messages/IdeBundle.properties b/platform/platform-resources-en/src/messages/IdeBundle.properties index 7ff6ad4872f3..7eae2d5aae94 100644 --- a/platform/platform-resources-en/src/messages/IdeBundle.properties +++ b/platform/platform-resources-en/src/messages/IdeBundle.properties @@ -1052,7 +1052,6 @@ project.import.open.existing.openExisting=Open Existing Project project.import.open.existing.reimport=Delete Existing Project and Import code.folding.settings=Code Folding Settings -ui.settings=UI Settings share.scope.checkbox.title=Share scope bean.property=Bean Property plugin.manager.uninstalled.tooltip=Plugin was uninstalled; changes will be applied on restart diff --git a/platform/platform-resources-en/src/messages/OptionsBundle.properties b/platform/platform-resources-en/src/messages/OptionsBundle.properties index 7c2c5f77da98..cb27a90f5dd7 100644 --- a/platform/platform-resources-en/src/messages/OptionsBundle.properties +++ b/platform/platform-resources-en/src/messages/OptionsBundle.properties @@ -309,4 +309,5 @@ exportable.DuplocatorSettings.presentable.name=Duplocator exportable.MultiLanguageDuplocatorSettings.presentable.name=Duplocator exportable.CodeStyleSchemeSettings.presentable.name=Code Style exportable.InspectionProfileManager.presentable.name=Inspection profiles -exportable.TodoConfiguration.presentable.name=Todo \ No newline at end of file +exportable.TodoConfiguration.presentable.name=Todo +exportable.UISettings.presentable.name=UI Settings \ No newline at end of file diff --git a/platform/platform-resources/src/META-INF/PlatformExtensions.xml b/platform/platform-resources/src/META-INF/PlatformExtensions.xml index edf5f07ff7a3..d383db2838f0 100644 --- a/platform/platform-resources/src/META-INF/PlatformExtensions.xml +++ b/platform/platform-resources/src/META-INF/PlatformExtensions.xml @@ -162,8 +162,9 @@ serviceImplementation="com.intellij.openapi.application.impl.ApplicationInfoImpl"/> - + serviceImplementation="com.intellij.execution.impl.RunnerRegistryImpl"/> + + diff --git a/platform/platform-resources/src/componentSets/UICore.xml b/platform/platform-resources/src/componentSets/UICore.xml index ae83f3441565..33489e4187a6 100644 --- a/platform/platform-resources/src/componentSets/UICore.xml +++ b/platform/platform-resources/src/componentSets/UICore.xml @@ -22,11 +22,6 @@ com.intellij.openapi.keymap.impl.KeymapManagerImpl - - com.intellij.ide.ui.UISettings - com.intellij.ide.ui.UISettings - - com.intellij.ide.IdeTooltipManager diff --git a/python/edu/learn-python/src/com/jetbrains/python/edu/StudyInitialConfigurator.java b/python/edu/learn-python/src/com/jetbrains/python/edu/StudyInitialConfigurator.java index 0b2648c4180c..6078025e9492 100644 --- a/python/edu/learn-python/src/com/jetbrains/python/edu/StudyInitialConfigurator.java +++ b/python/edu/learn-python/src/com/jetbrains/python/edu/StudyInitialConfigurator.java @@ -2,7 +2,6 @@ package com.jetbrains.python.edu; import com.intellij.codeInsight.CodeInsightSettings; import com.intellij.ide.RecentProjectsManager; -import com.intellij.ide.ui.UISettings; import com.intellij.ide.util.PropertiesComponent; import com.intellij.openapi.application.PathManager; import com.intellij.openapi.diagnostic.Logger; @@ -27,7 +26,6 @@ public class StudyInitialConfigurator { * @noinspection UnusedParameters */ public StudyInitialConfigurator(MessageBus bus, - UISettings uiSettings, CodeInsightSettings codeInsightSettings, final PropertiesComponent propertiesComponent, FileTypeManager fileTypeManager, diff --git a/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java b/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java index 4a6dabaa035b..8920cfe550df 100644 --- a/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java +++ b/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java @@ -81,7 +81,6 @@ public class PyCharmEduInitialConfigurator { * @noinspection UnusedParameters */ public PyCharmEduInitialConfigurator(MessageBus bus, - UISettings uiSettings, CodeInsightSettings codeInsightSettings, final PropertiesComponent propertiesComponent, FileTypeManager fileTypeManager, @@ -90,7 +89,8 @@ public class PyCharmEduInitialConfigurator { if (!propertiesComponent.getBoolean(CONFIGURED, false)) { propertiesComponent.setValue(CONFIGURED, "true"); propertiesComponent.setValue("toolwindow.stripes.buttons.info.shown", "true"); - UISettings.getInstance().HIDE_TOOL_STRIPES = false; + UISettings uiSettings = UISettings.getInstance(); + uiSettings.HIDE_TOOL_STRIPES = false; uiSettings.SHOW_MEMORY_INDICATOR = false; uiSettings.SHOW_DIRECTORY_FOR_NON_UNIQUE_FILENAMES = true; uiSettings.SHOW_MAIN_TOOLBAR = false; @@ -105,8 +105,8 @@ public class PyCharmEduInitialConfigurator { final CodeStyleSettings settings = CodeStyleSettingsManager.getInstance().getCurrentSettings(); settings.ALIGN_MULTILINE_PARAMETERS_IN_CALLS = true; settings.getCommonSettings(PythonLanguage.getInstance()).ALIGN_MULTILINE_PARAMETERS_IN_CALLS = true; - UISettings.getInstance().SHOW_DIRECTORY_FOR_NON_UNIQUE_FILENAMES = true; - UISettings.getInstance().SHOW_MEMORY_INDICATOR = false; + uiSettings.SHOW_DIRECTORY_FOR_NON_UNIQUE_FILENAMES = true; + uiSettings.SHOW_MEMORY_INDICATOR = false; final String ignoredFilesList = fileTypeManager.getIgnoredFilesList(); ApplicationManager.getApplication().invokeLater(new Runnable() { @Override