1
/*******************************************************************************
2
* Copyright (c) 2006 PalmSource, Inc.
3
* All rights reserved. This program and the accompanying materials
4
* are made available under the terms of the Eclipse Public License v1.0
5
* which accompanies this distribution, and is available at
6
* http://www.eclipse.org/legal/epl-v10.html
9
* Ewa Matejska (PalmSource)
10
*******************************************************************************/
12
package org.eclipse.cdt.launch.remote;
14
import java.util.ArrayList;
15
import java.util.List;
17
import org.eclipse.cdt.debug.core.CDebugCorePlugin;
18
import org.eclipse.cdt.debug.core.ICDebugConfiguration;
19
import org.eclipse.cdt.launch.ui.CDebuggerTab;
20
import org.eclipse.debug.core.ILaunchConfiguration;
21
import org.eclipse.swt.widgets.Composite;
22
import org.eclipse.ui.PlatformUI;
24
public class RemoteCDebuggerTab extends CDebuggerTab {
26
public void createControl(Composite parent) {
27
super.createControl(parent);
28
PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(),
29
"org.eclipse.rse.internal.remotecdt.launchgroup"); //$NON-NLS-1$
32
static final private String REMOTE_GDB_DEBUGGER_NAME = "remote gdb/mi"; //$NON-NLS-1$
34
public RemoteCDebuggerTab(boolean attachMode) {
38
protected void loadDebuggerComboBox(ILaunchConfiguration config, String selection) {
39
ICDebugConfiguration[] debugConfigs = CDebugCorePlugin.getDefault().getDebugConfigurations();
40
String defaultSelection = selection;
41
List list = new ArrayList();
42
for(int i = 0; i < debugConfigs.length; i++) {
43
ICDebugConfiguration configuration = debugConfigs[i];
44
if(configuration.getName().equals(REMOTE_GDB_DEBUGGER_NAME)) {
45
list.add(configuration);
46
// Select as default selection
47
defaultSelection = configuration.getID();
51
setInitializeDefault(defaultSelection.equals("") ? true : false); //$NON-NLS-1$
52
loadDebuggerCombo((ICDebugConfiguration[])list.toArray(
53
new ICDebugConfiguration[list.size()]), defaultSelection);