/**
* Copyright (c) 2005-2012 by Appcelerator, Inc. All Rights Reserved.
* Licensed under the terms of the Eclipse Public License (EPL).
* Please see the license.txt included with this distribution for details.
* Any modifications to this file must keep this entire header intact.
*/
package com.python.pydev.debug.ui;
import org.eclipse.jface.preference.IntegerFieldEditor;
import org.eclipse.swt.widgets.Composite;
import org.python.pydev.debug.ui.DebugPrefsPage;
import org.python.pydev.debug.ui.IDebugPreferencesPageParticipant;
import org.python.pydev.shared_ui.field_editors.ComboFieldEditor;
import com.python.pydev.debug.DebugPluginPrefsInitializer;
public class DebugPreferencesPageExt implements IDebugPreferencesPageParticipant {
private static final String[][] ENTRIES_AND_VALUES = new String[][] {
{ "Platform Default (Run/Debug Preferences)",
Integer.toString(DebugPluginPrefsInitializer.FORCE_SHOW_SHELL_ON_BREAKPOINT_MAKE_NOTHING) },
{ "Force Bring to Front (windows)",
Integer.toString(DebugPluginPrefsInitializer.FORCE_SHOW_SHELL_ON_BREAKPOINT_MAKE_ACTIVE) },
{
"Show Progress on Taskbar (windows 7) ",
Integer.toString(DebugPluginPrefsInitializer.FORCE_SHOW_SHELL_ON_BREAKPOINT_SHOW_INDETERMINATE_PROGRESS) },
};
private static final String[][] ENTRIES_AND_VALUES_DEBUGGER_STARTUP = new String[][] {
{ "Manual (Debug perspective > PyDev > Start debug server) ",
Integer.toString(DebugPluginPrefsInitializer.DEBUG_SERVER_MANUAL) },
{ "Start when the plugin is started",
Integer.toString(DebugPluginPrefsInitializer.DEBUG_SERVER_ON_WHEN_PLUGIN_STARTED) },
{ "Keep always on (restart when terminated)",
Integer.toString(DebugPluginPrefsInitializer.DEBUG_SERVER_KEEY_ALWAYS_ON) },
};
@Override
public void createFieldEditors(DebugPrefsPage page, Composite parent) {
page.addField(new IntegerFieldEditor(DebugPluginPrefsInitializer.PYDEV_REMOTE_DEBUGGER_PORT,
"Port for remote debugger:", parent, 10));
ComboFieldEditor editor = new ComboFieldEditor(DebugPluginPrefsInitializer.DEBUG_SERVER_STARTUP,
"Remote debugger server activation: ", ENTRIES_AND_VALUES_DEBUGGER_STARTUP, parent);
page.addField(editor);
editor.getLabelControl(parent)
.setToolTipText(
"This option marks if the remote debugger should be auto-activated in some situation.");
ComboFieldEditor comboEditor = new ComboFieldEditor(DebugPluginPrefsInitializer.FORCE_SHOW_SHELL_ON_BREAKPOINT,
"On breakpoint hit: ", ENTRIES_AND_VALUES, parent);
page.addField(comboEditor);
comboEditor.getLabelControl(parent)
.setToolTipText(
"Checking this option will force Eclipse to have focus when a PyDev breakpoint is hit.");
}
}