diff options
Diffstat (limited to 'platform/xdebugger-api/src')
5 files changed, 69 insertions, 7 deletions
diff --git a/platform/xdebugger-api/src/com/intellij/xdebugger/XDebuggerBundle.java b/platform/xdebugger-api/src/com/intellij/xdebugger/XDebuggerBundle.java index a9594ca27ba7..23a262c32654 100644 --- a/platform/xdebugger-api/src/com/intellij/xdebugger/XDebuggerBundle.java +++ b/platform/xdebugger-api/src/com/intellij/xdebugger/XDebuggerBundle.java @@ -29,7 +29,6 @@ import java.util.ResourceBundle; * @author nik */ public class XDebuggerBundle { - public static String message(@NotNull @PropertyKey(resourceBundle = BUNDLE) String key, @NotNull Object... params) { return CommonBundle.message(getBundle(), key, params); } diff --git a/platform/xdebugger-api/src/com/intellij/xdebugger/breakpoints/XBreakpointType.java b/platform/xdebugger-api/src/com/intellij/xdebugger/breakpoints/XBreakpointType.java index a6857c67c8d8..4f9ff38d6583 100644 --- a/platform/xdebugger-api/src/com/intellij/xdebugger/breakpoints/XBreakpointType.java +++ b/platform/xdebugger-api/src/com/intellij/xdebugger/breakpoints/XBreakpointType.java @@ -103,6 +103,16 @@ public abstract class XBreakpointType<B extends XBreakpoint<P>, P extends XBreak return AllIcons.Debugger.Db_disabled_breakpoint; } + @NotNull + public Icon getMutedEnabledIcon() { + return AllIcons.Debugger.Db_muted_breakpoint; + } + + @NotNull + public Icon getMutedDisabledIcon() { + return AllIcons.Debugger.Db_muted_disabled_breakpoint; + } + /** * @return the icon which is shown for a dependent breakpoint until its master breakpoint is reached */ diff --git a/platform/xdebugger-api/src/com/intellij/xdebugger/evaluation/XDebuggerEvaluator.java b/platform/xdebugger-api/src/com/intellij/xdebugger/evaluation/XDebuggerEvaluator.java index 3065a2e05dba..098501af7489 100644 --- a/platform/xdebugger-api/src/com/intellij/xdebugger/evaluation/XDebuggerEvaluator.java +++ b/platform/xdebugger-api/src/com/intellij/xdebugger/evaluation/XDebuggerEvaluator.java @@ -26,6 +26,7 @@ import com.intellij.xdebugger.breakpoints.XBreakpoint; import com.intellij.xdebugger.frame.XSuspendContext; import com.intellij.xdebugger.frame.XValue; import com.intellij.xdebugger.frame.XValueCallback; +import com.intellij.xdebugger.settings.XDebuggerSettingsManager; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -167,7 +168,7 @@ public abstract class XDebuggerEvaluator { * @return delay before showing value tooltip (in ms) */ public int getValuePopupDelay() { - return 700; + return XDebuggerSettingsManager.getInstance().getDataViewSettings().getValueLookupDelay(); } public interface XEvaluationCallback extends XValueCallback { diff --git a/platform/xdebugger-api/src/com/intellij/xdebugger/settings/XDebuggerSettings.java b/platform/xdebugger-api/src/com/intellij/xdebugger/settings/XDebuggerSettings.java index e3b101d2cb9b..52049f76ae72 100644 --- a/platform/xdebugger-api/src/com/intellij/xdebugger/settings/XDebuggerSettings.java +++ b/platform/xdebugger-api/src/com/intellij/xdebugger/settings/XDebuggerSettings.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2009 JetBrains s.r.o. + * Copyright 2000-2014 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. @@ -19,8 +19,9 @@ import com.intellij.openapi.components.PersistentStateComponent; import com.intellij.openapi.extensions.ExtensionPointName; import com.intellij.openapi.options.Configurable; import com.intellij.xdebugger.XDebuggerUtil; -import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NonNls; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * Implement this class to provide settings page for debugger. Settings page will be placed under 'Debugger' node in the 'Settings' dialog. @@ -29,11 +30,16 @@ import org.jetbrains.annotations.NonNls; * <extensions defaultExtensionNs="com.intellij"><br> * <xdebugger.settings implementation="qualified-class-name"/><br> * </extensions> - * + * * @author nik */ public abstract class XDebuggerSettings<T> implements PersistentStateComponent<T> { + public enum Category { + ROOT, DATA_VIEWS, STEPPING + } + public static final ExtensionPointName<XDebuggerSettings> EXTENSION_POINT = ExtensionPointName.create("com.intellij.xdebugger.settings"); + private final String myId; protected XDebuggerSettings(final @NotNull @NonNls String id) { @@ -48,6 +54,16 @@ public abstract class XDebuggerSettings<T> implements PersistentStateComponent<T return myId; } - @NotNull - public abstract Configurable createConfigurable(); + @Nullable + public Configurable createConfigurable() { + return null; + } + + @Nullable + public Configurable createConfigurable(@NotNull Category category) { + return null; + } + + public void generalApplied(@NotNull Category category) { + } } diff --git a/platform/xdebugger-api/src/com/intellij/xdebugger/settings/XDebuggerSettingsManager.java b/platform/xdebugger-api/src/com/intellij/xdebugger/settings/XDebuggerSettingsManager.java new file mode 100644 index 000000000000..2fa473d93935 --- /dev/null +++ b/platform/xdebugger-api/src/com/intellij/xdebugger/settings/XDebuggerSettingsManager.java @@ -0,0 +1,36 @@ +/* + * Copyright 2000-2014 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.intellij.xdebugger.settings; + +import com.intellij.openapi.components.ServiceManager; +import org.jetbrains.annotations.NotNull; + +public abstract class XDebuggerSettingsManager { + public static XDebuggerSettingsManager getInstance() { + return ServiceManager.getService(XDebuggerSettingsManager.class); + } + + public interface DataViewSettings { + boolean isSortValues(); + + boolean isAutoExpressions(); + + int getValueLookupDelay(); + } + + @NotNull + public abstract DataViewSettings getDataViewSettings(); +}
\ No newline at end of file |