1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-03-28 14:56:28 +01:00

Bug 579666: Improve dark theme on Windows

On Windows, the TabFolder and TabItem classes does not follow the
themeing in Eclipse. As a result, the tab selectors will be drawn with
the light theme while the rest of the Eclipse UI is in dark theme.

Contributed by STMicroelectronics

Change-Id: I9169c9e01f8c9a3af7b6bb6d1c673a043735e7e9
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
This commit is contained in:
Torbjörn Svensson 2022-04-11 18:12:49 +02:00
parent cc2a904883
commit a2e6ef61c9
13 changed files with 100 additions and 91 deletions

View file

@ -30,6 +30,8 @@ import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.graphics.Color;
@ -41,8 +43,6 @@ import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.model.WorkbenchViewerComparator;
@ -259,21 +259,22 @@ public class AutoconfEditorPreferencePage extends AbstractEditorPreferencePage {
getOverlayStore().load();
getOverlayStore().start();
TabFolder folder = new TabFolder(parent, SWT.NONE);
CTabFolder folder = new CTabFolder(parent, SWT.NONE);
folder.setLayout(new TabFolderLayout());
folder.setLayoutData(new GridData(GridData.FILL_BOTH));
TabItem item = new TabItem(folder, SWT.NONE);
CTabItem item = new CTabItem(folder, SWT.NONE);
folder.setSelection(0);
item.setText(AutotoolsPreferencesMessages.getString("AutomakeEditorPreferencePage.syntax")); //$NON-NLS-1$
item.setControl(createSyntaxPage(folder));
item = new TabItem(folder, SWT.NONE);
item = new CTabItem(folder, SWT.NONE);
item.setText(AutotoolsPreferencesMessages.getString("AutoconfEditorPreferencePage.folding")); //$NON-NLS-1$
item.setControl(createFoldingTabContent(folder));
// Allow end-user to select which version of autoconf to use for hover help
// and syntax checking of macros.
item = new TabItem(folder, SWT.NONE);
item = new CTabItem(folder, SWT.NONE);
item.setText(AutotoolsPreferencesMessages.getString("AutoconfEditorPreferencePage.version")); //$NON-NLS-1$
item.setControl(createVersionTabContent(folder));
@ -447,7 +448,7 @@ public class AutoconfEditorPreferencePage extends AbstractEditorPreferencePage {
return colorComposite;
}
private Composite createFoldingTabContent(TabFolder folder) {
private Composite createFoldingTabContent(CTabFolder folder) {
Composite composite = new Composite(folder, SWT.NULL);
// assume parent page uses griddata
GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_CENTER | GridData.VERTICAL_ALIGN_FILL);
@ -474,7 +475,7 @@ public class AutoconfEditorPreferencePage extends AbstractEditorPreferencePage {
return composite;
}
private Composite createVersionTabContent(TabFolder folder) {
private Composite createVersionTabContent(CTabFolder folder) {
Composite composite = new Composite(folder, SWT.NULL);
// assume parent page uses griddata
GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_CENTER | GridData.VERTICAL_ALIGN_FILL);

View file

@ -30,6 +30,8 @@ import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.graphics.Color;
@ -40,8 +42,6 @@ import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.model.WorkbenchViewerComparator;
@ -238,15 +238,16 @@ public class AutomakeEditorPreferencePage extends AbstractEditorPreferencePage {
getOverlayStore().load();
getOverlayStore().start();
TabFolder folder = new TabFolder(parent, SWT.NONE);
CTabFolder folder = new CTabFolder(parent, SWT.NONE);
folder.setLayout(new TabFolderLayout());
folder.setLayoutData(new GridData(GridData.FILL_BOTH));
TabItem item = new TabItem(folder, SWT.NONE);
CTabItem item = new CTabItem(folder, SWT.NONE);
folder.setSelection(0);
item.setText(AutotoolsPreferencesMessages.getString("AutomakeEditorPreferencePage.syntax")); //$NON-NLS-1$
item.setControl(createSyntaxPage(folder));
item = new TabItem(folder, SWT.NONE);
item = new CTabItem(folder, SWT.NONE);
item.setText(AutotoolsPreferencesMessages.getString("AutomakeEditorPreferencePage.folding")); //$NON-NLS-1$
item.setControl(createFoldingTabContent(folder));
@ -380,7 +381,7 @@ public class AutomakeEditorPreferencePage extends AbstractEditorPreferencePage {
return colorComposite;
}
private Composite createFoldingTabContent(TabFolder folder) {
private Composite createFoldingTabContent(CTabFolder folder) {
Composite composite = new Composite(folder, SWT.NULL);
// assume parent page uses griddata
GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_CENTER | GridData.VERTICAL_ALIGN_FILL);

View file

@ -36,6 +36,8 @@ import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.graphics.Color;
@ -46,8 +48,6 @@ import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.model.WorkbenchViewerComparator;
@ -246,15 +246,16 @@ public class MakefileEditorPreferencePage extends AbstractMakefileEditorPreferen
getOverlayStore().load();
getOverlayStore().start();
TabFolder folder = new TabFolder(parent, SWT.NONE);
CTabFolder folder = new CTabFolder(parent, SWT.NONE);
folder.setLayout(new TabFolderLayout());
folder.setLayoutData(new GridData(GridData.FILL_BOTH));
TabItem item = new TabItem(folder, SWT.NONE);
CTabItem item = new CTabItem(folder, SWT.NONE);
folder.setSelection(0);
item.setText(MakefilePreferencesMessages.getString("MakefileEditorPreferencePage.syntax")); //$NON-NLS-1$
item.setControl(createSyntaxPage(folder));
item = new TabItem(folder, SWT.NONE);
item = new CTabItem(folder, SWT.NONE);
item.setText(MakefilePreferencesMessages.getString("MakefileEditorPreferencePage.folding")); //$NON-NLS-1$
item.setControl(createFoldingTabContent(folder));
@ -406,7 +407,7 @@ public class MakefileEditorPreferencePage extends AbstractMakefileEditorPreferen
return colorComposite;
}
private Composite createFoldingTabContent(TabFolder folder) {
private Composite createFoldingTabContent(CTabFolder folder) {
Composite composite = new Composite(folder, SWT.NULL);
// assume parent page uses griddata
GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_CENTER | GridData.VERTICAL_ALIGN_FILL);

View file

@ -18,11 +18,11 @@ import org.eclipse.cdt.codan.core.model.IProblemWorkingCopy;
import org.eclipse.cdt.codan.internal.ui.CodanUIMessages;
import org.eclipse.core.resources.IResource;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
/**
* Composite for problem customisable parameters
@ -47,12 +47,13 @@ public class CustomizeProblemComposite extends Composite {
this.setLayout(new GridLayout(1, false));
this.problem = selectedProblem;
this.resource = resource;
final TabFolder tabFolder = new TabFolder(this, SWT.TOP);
final CTabFolder tabFolder = new CTabFolder(this, SWT.TOP);
tabFolder.setLayoutData(new GridData(GridData.FILL_BOTH));
// createMainTab(tabFolder);
createParamtersTab(tabFolder, combined);
createScopeTab(tabFolder);
createLaunchingTab(tabFolder);
tabFolder.setSelection(0);
}
public void save(IProblemWorkingCopy problem) {
@ -64,8 +65,8 @@ public class CustomizeProblemComposite extends Composite {
/**
* @param tabFolder
*/
private void createParamtersTab(TabFolder tabFolder, boolean combined) {
TabItem tabItem1 = new TabItem(tabFolder, SWT.NULL);
private void createParamtersTab(CTabFolder tabFolder, boolean combined) {
CTabItem tabItem1 = new CTabItem(tabFolder, SWT.NULL);
tabItem1.setText(CodanUIMessages.CustomizeProblemComposite_TabParameters);
parametersTab = new Composite(tabFolder, SWT.NONE);
tabItem1.setControl(parametersTab);
@ -77,8 +78,8 @@ public class CustomizeProblemComposite extends Composite {
/**
* @param tabFolder
*/
private void createScopeTab(TabFolder tabFolder) {
TabItem tabItem1 = new TabItem(tabFolder, SWT.NULL);
private void createScopeTab(CTabFolder tabFolder) {
CTabItem tabItem1 = new CTabItem(tabFolder, SWT.NULL);
tabItem1.setText(CodanUIMessages.CustomizeProblemComposite_TabScope);
Composite comp = new Composite(tabFolder, SWT.NONE);
tabItem1.setControl(comp);
@ -87,8 +88,8 @@ public class CustomizeProblemComposite extends Composite {
scopeComposite.setLayoutData(new GridData(SWT.BEGINNING, SWT.BEGINNING, true, false));
}
private void createLaunchingTab(TabFolder tabFolder) {
TabItem tabItem1 = new TabItem(tabFolder, SWT.NULL);
private void createLaunchingTab(CTabFolder tabFolder) {
CTabItem tabItem1 = new CTabItem(tabFolder, SWT.NULL);
tabItem1.setText(CodanUIMessages.CustomizeProblemComposite_LaunchingTab);
Composite comp = new Composite(tabFolder, SWT.NONE);
tabItem1.setControl(comp);

View file

@ -24,14 +24,14 @@ import org.eclipse.core.runtime.Status;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.layout.PixelConverter;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
import org.eclipse.ui.preferences.IWorkbenchPreferenceContainer;
/**
@ -75,12 +75,12 @@ public class TabConfigurationBlock extends OptionsConfigurationBlock {
@Override
protected Control createContents(Composite parent) {
PixelConverter pixelConverter = new PixelConverter(parent);
final TabFolder folder = new TabFolder(parent, SWT.NONE);
final CTabFolder folder = new CTabFolder(parent, SWT.NONE);
folder.setLayout(new TabFolderLayout());
folder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
for (int i = 0; i < fTabs.length; i++) {
TabItem item = new TabItem(folder, SWT.NONE);
CTabItem item = new CTabItem(folder, SWT.NONE);
item.setText(fTabLabels[i]);
Composite composite = new Composite(folder, SWT.NONE);
FillLayout layout = new FillLayout();
@ -91,6 +91,7 @@ public class TabConfigurationBlock extends OptionsConfigurationBlock {
item.setData(fTabs[i]);
fTabs[i].createContents(composite);
}
folder.setSelection(0);
Dialog.applyDialogFont(folder);
folder.addSelectionListener(new SelectionListener() {
@Override

View file

@ -42,6 +42,8 @@ import org.eclipse.jface.dialogs.IDialogSettings;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.dialogs.StatusDialog;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.graphics.Point;
@ -54,8 +56,6 @@ import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
public abstract class ModifyDialog extends StatusDialog implements IModifyDialogTabPage.IModificationListener {
@ -88,7 +88,7 @@ public abstract class ModifyDialog extends StatusDialog implements IModifyDialog
private final Map<String, String> fWorkingValues;
private final List<IModifyDialogTabPage> fTabPages;
private final IDialogSettings fDialogSettings;
private TabFolder fTabFolder;
private CTabFolder fTabFolder;
private final ProfileManager fProfileManager;
private Button fApplyButton;
private Button fSaveButton;
@ -137,7 +137,7 @@ public abstract class ModifyDialog extends StatusDialog implements IModifyDialog
if (!fNewProfile) {
fTabFolder.setSelection(lastFocusNr);
((IModifyDialogTabPage) fTabFolder.getSelection()[0].getData()).setInitialFocus();
((IModifyDialogTabPage) fTabFolder.getSelection().getData()).setInitialFocus();
}
}
@ -165,11 +165,14 @@ public abstract class ModifyDialog extends StatusDialog implements IModifyDialog
fSaveButton = createButton(nameComposite, SAVE_BUTTON_ID, FormatterMessages.ModifyDialog_Export_Button, false);
fTabFolder = new TabFolder(composite, SWT.NONE);
fTabFolder = new CTabFolder(composite, SWT.NONE);
fTabFolder.setFont(composite.getFont());
fTabFolder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
addPages(fWorkingValues);
if (fTabFolder.getSelection() == null) {
fTabFolder.setSelection(0);
}
applyDialogFont(composite);
@ -180,7 +183,7 @@ public abstract class ModifyDialog extends StatusDialog implements IModifyDialog
@Override
public void widgetSelected(SelectionEvent e) {
final TabItem tabItem = (TabItem) e.item;
final CTabItem tabItem = (CTabItem) e.item;
final IModifyDialogTabPage page = (IModifyDialogTabPage) tabItem.getData();
// page.fSashForm.setWeights();
fDialogSettings.put(fKeyLastFocus, fTabPages.indexOf(page));
@ -330,7 +333,7 @@ public abstract class ModifyDialog extends StatusDialog implements IModifyDialog
}
protected final void addTabPage(String title, IModifyDialogTabPage tabPage) {
final TabItem tabItem = new TabItem(fTabFolder, SWT.NONE);
final CTabItem tabItem = new CTabItem(fTabFolder, SWT.NONE);
applyDialogFont(tabItem.getControl());
tabItem.setText(title);
tabItem.setData(tabPage);

View file

@ -25,6 +25,8 @@ import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.SubMonitor;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.graphics.Image;
@ -33,7 +35,6 @@ import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
public abstract class TabFolderOptionBlock {
@ -49,7 +50,7 @@ public abstract class TabFolderOptionBlock {
protected ICOptionContainer fParent;
private ICOptionPage fCurrentPage;
private TabFolder fFolder;
private CTabFolder fFolder;
public TabFolderOptionBlock(boolean showMessageArea) {
bShowMessageArea = showMessageArea;
@ -116,7 +117,7 @@ public abstract class TabFolderOptionBlock {
}
protected void createFolder(Composite parent) {
fFolder = new TabFolder(parent, SWT.NONE);
fFolder = new CTabFolder(parent, SWT.NONE);
fFolder.setLayoutData(new GridData(GridData.FILL_BOTH));
fFolder.setLayout(new TabFolderLayout());
@ -133,7 +134,7 @@ public abstract class TabFolderOptionBlock {
}
protected void addTab(ICOptionPage tab) {
TabItem item = new TabItem(fFolder, SWT.NONE);
CTabItem item = new CTabItem(fFolder, SWT.NONE);
item.setText(tab.getTitle());
Image img = tab.getImage();
if (img != null)
@ -143,6 +144,9 @@ public abstract class TabFolderOptionBlock {
tab.createControl(item.getParent());
item.setControl(tab.getControl());
addOptionPage(tab);
if (fFolder.getSelection() == null) {
fFolder.setSelection(item);
}
}
abstract protected void addTabs();

View file

@ -26,6 +26,8 @@ import org.eclipse.core.runtime.CoreException;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
@ -35,8 +37,6 @@ import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
import org.eclipse.swt.widgets.Text;
public class RemoteDSFGDBDebuggerPage extends GdbDebuggerPage {
@ -145,8 +145,8 @@ public class RemoteDSFGDBDebuggerPage extends GdbDebuggerPage {
configuration.setAttribute(IGDBLaunchConfigurationConstants.ATTR_DEBUGGER_REMOTE_TIMEOUT_VALUE, str);
}
protected void createGdbserverSettingsTab(TabFolder tabFolder) {
TabItem tabItem = new TabItem(tabFolder, SWT.NONE);
protected void createGdbserverSettingsTab(CTabFolder tabFolder) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(Messages.Gdbserver_Settings_Tab_Name);
Composite comp = new Composite(tabFolder, SWT.NULL);
@ -239,11 +239,8 @@ public class RemoteDSFGDBDebuggerPage extends GdbDebuggerPage {
fRemoteTimeoutValueText.setEnabled(fRemoteTimeoutEnabledCheckbox.getSelection());
}
/* (non-Javadoc)
* @see org.eclipse.cdt.debug.mi.internal.ui.GDBDebuggerPage#createTabs(org.eclipse.swt.widgets.TabFolder)
*/
@Override
public void createTabs(TabFolder tabFolder) {
public void createTabs(CTabFolder tabFolder) {
super.createTabs(tabFolder);
createGdbserverSettingsTab(tabFolder);
}

View file

@ -27,6 +27,8 @@ import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
@ -38,8 +40,6 @@ import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
import org.eclipse.swt.widgets.Text;
/**
@ -49,7 +49,7 @@ import org.eclipse.swt.widgets.Text;
* @since 2.0
*/
public class GdbCoreDebuggerPage extends AbstractCDebuggerPage implements Observer {
protected TabFolder fTabFolder;
protected CTabFolder fTabFolder;
protected Text fGDBCommandText;
protected Text fGDBInitText;
@ -61,7 +61,7 @@ public class GdbCoreDebuggerPage extends AbstractCDebuggerPage implements Observ
Composite comp = new Composite(parent, SWT.NONE);
comp.setLayout(new GridLayout());
comp.setLayoutData(new GridData(GridData.FILL_BOTH));
fTabFolder = new TabFolder(comp, SWT.NONE);
fTabFolder = new CTabFolder(comp, SWT.NONE);
fTabFolder.setLayoutData(new GridData(GridData.FILL_BOTH | GridData.GRAB_VERTICAL));
createTabs(fTabFolder);
fTabFolder.setSelection(0);
@ -163,13 +163,13 @@ public class GdbCoreDebuggerPage extends AbstractCDebuggerPage implements Observ
return block;
}
public void createTabs(TabFolder tabFolder) {
public void createTabs(CTabFolder tabFolder) {
createMainTab(tabFolder);
createSolibTab(tabFolder);
}
public void createMainTab(TabFolder tabFolder) {
TabItem tabItem = new TabItem(tabFolder, SWT.NONE);
public void createMainTab(CTabFolder tabFolder) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(LaunchUIMessages.getString("GDBDebuggerPage.main_tab_name")); //$NON-NLS-1$
Composite comp = ControlFactory.createCompositeEx(tabFolder, 1, GridData.FILL_BOTH);
((GridLayout) comp.getLayout()).makeColumnsEqualWidth = false;
@ -269,8 +269,8 @@ public class GdbCoreDebuggerPage extends AbstractCDebuggerPage implements Observ
label.setLayoutData(gd);
}
public void createSolibTab(TabFolder tabFolder) {
TabItem tabItem = new TabItem(tabFolder, SWT.NONE);
public void createSolibTab(CTabFolder tabFolder) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(LaunchUIMessages.getString("GDBDebuggerPage.shared_libraries")); //$NON-NLS-1$
Composite comp = ControlFactory.createCompositeEx(fTabFolder, 1, GridData.FILL_BOTH);
comp.setFont(tabFolder.getFont());

View file

@ -33,6 +33,8 @@ import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
@ -45,8 +47,6 @@ import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.PlatformUI;
@ -54,7 +54,7 @@ import org.eclipse.ui.PlatformUI;
* The dynamic tab for gdb-based debugger implementations.
*/
public class GdbDebuggerPage extends AbstractCDebuggerPage implements Observer {
protected TabFolder fTabFolder;
protected CTabFolder fTabFolder;
protected Text fGDBCommandText;
protected Text fGDBInitText;
protected Button fNonStopCheckBox;
@ -95,7 +95,7 @@ public class GdbDebuggerPage extends AbstractCDebuggerPage implements Observer {
Composite comp = new Composite(parent, SWT.NONE);
comp.setLayout(new GridLayout());
comp.setLayoutData(new GridData(GridData.FILL_BOTH));
fTabFolder = new TabFolder(comp, SWT.NONE);
fTabFolder = new CTabFolder(comp, SWT.NONE);
fTabFolder.setLayoutData(new GridData(GridData.FILL_BOTH | GridData.GRAB_VERTICAL));
createTabs(fTabFolder);
fTabFolder.setSelection(0);
@ -373,7 +373,7 @@ public class GdbDebuggerPage extends AbstractCDebuggerPage implements Observer {
return block;
}
public void createTabs(TabFolder tabFolder) {
public void createTabs(CTabFolder tabFolder) {
createMainTab(tabFolder);
createSolibTab(tabFolder);
if (System.getenv("FLATPAK_SANDBOX_DIR") != null) { //$NON-NLS-1$
@ -381,8 +381,8 @@ public class GdbDebuggerPage extends AbstractCDebuggerPage implements Observer {
}
}
public void createFlatpakTab(TabFolder tabFolder) {
TabItem tabItem = new TabItem(tabFolder, SWT.NONE);
public void createFlatpakTab(CTabFolder tabFolder) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(LaunchUIMessages.getString("GDBDebuggerPage.flatpak_tab_name")); //$NON-NLS-1$
Composite comp = ControlFactory.createCompositeEx(tabFolder, 1, GridData.FILL_BOTH);
((GridLayout) comp.getLayout()).makeColumnsEqualWidth = false;
@ -459,8 +459,8 @@ public class GdbDebuggerPage extends AbstractCDebuggerPage implements Observer {
fRemoteTimeoutValueText.setEnabled(fRemoteTimeoutEnabledCheckbox.getSelection());
}
public void createMainTab(TabFolder tabFolder) {
TabItem tabItem = new TabItem(tabFolder, SWT.NONE);
public void createMainTab(CTabFolder tabFolder) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(LaunchUIMessages.getString("GDBDebuggerPage.main_tab_name")); //$NON-NLS-1$
Composite comp = ControlFactory.createCompositeEx(tabFolder, 1, GridData.FILL_BOTH);
((GridLayout) comp.getLayout()).makeColumnsEqualWidth = false;
@ -622,8 +622,8 @@ public class GdbDebuggerPage extends AbstractCDebuggerPage implements Observer {
fReverseDebugMode.select(0);
}
public void createSolibTab(TabFolder tabFolder) {
TabItem tabItem = new TabItem(tabFolder, SWT.NONE);
public void createSolibTab(CTabFolder tabFolder) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(LaunchUIMessages.getString("GDBDebuggerPage.shared_libraries")); //$NON-NLS-1$
Composite comp = ControlFactory.createCompositeEx(fTabFolder, 1, GridData.FILL_BOTH);
comp.setFont(tabFolder.getFont());

View file

@ -29,12 +29,12 @@ import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
import org.eclipse.jface.layout.PixelConverter;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.custom.StackLayout;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
/**
* The dynamic debugger tab for remote launches using gdb server.
@ -71,8 +71,8 @@ public class GdbServerDebuggerPage extends GdbDebuggerPage {
createRemoteTimeoutFields();
}
protected void createConnectionTab(TabFolder tabFolder) {
TabItem tabItem = new TabItem(tabFolder, SWT.NONE);
protected void createConnectionTab(CTabFolder tabFolder) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(LaunchUIMessages.getString("GDBServerDebuggerPage.10")); //$NON-NLS-1$
Composite comp1 = ControlFactory.createCompositeEx(tabFolder, 1, GridData.FILL_BOTH);
((GridLayout) comp1.getLayout()).makeColumnsEqualWidth = false;
@ -260,7 +260,7 @@ public class GdbServerDebuggerPage extends GdbDebuggerPage {
}
@Override
public void createTabs(TabFolder tabFolder) {
public void createTabs(CTabFolder tabFolder) {
super.createTabs(tabFolder);
createConnectionTab(tabFolder);
}

View file

@ -31,6 +31,8 @@ import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
@ -44,8 +46,6 @@ import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.PlatformUI;
@ -53,7 +53,7 @@ import org.eclipse.ui.PlatformUI;
* The dynamic tab for gdb-based debugger implementations.
*/
public class GdbDebuggerPage extends AbstractCDebuggerPage implements Observer {
protected TabFolder fTabFolder;
protected CTabFolder fTabFolder;
protected Text fGDBCommandText;
protected Text fGDBInitText;
protected Button fNonStopCheckBox;
@ -77,7 +77,7 @@ public class GdbDebuggerPage extends AbstractCDebuggerPage implements Observer {
Composite comp = new Composite(parent, SWT.NONE);
comp.setLayout(new GridLayout());
comp.setLayoutData(new GridData(GridData.FILL_BOTH));
fTabFolder = new TabFolder(comp, SWT.NONE);
fTabFolder = new CTabFolder(comp, SWT.NONE);
fTabFolder.setLayoutData(new GridData(GridData.FILL_BOTH | GridData.GRAB_VERTICAL));
createTabs(fTabFolder);
fTabFolder.setSelection(0);
@ -261,13 +261,13 @@ public class GdbDebuggerPage extends AbstractCDebuggerPage implements Observer {
return block;
}
public void createTabs(TabFolder tabFolder) {
public void createTabs(CTabFolder tabFolder) {
createMainTab(tabFolder);
createSolibTab(tabFolder);
}
public void createMainTab(TabFolder tabFolder) {
TabItem tabItem = new TabItem(tabFolder, SWT.NONE);
public void createMainTab(CTabFolder tabFolder) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(Messages.GDBDebuggerPage_main_tab_name);
Composite comp = ControlFactory.createCompositeEx(tabFolder, 1, GridData.FILL_BOTH);
((GridLayout) comp.getLayout()).makeColumnsEqualWidth = false;
@ -423,8 +423,8 @@ public class GdbDebuggerPage extends AbstractCDebuggerPage implements Observer {
fTracepointModeCombo.select(0);
}
public void createSolibTab(TabFolder tabFolder) {
TabItem tabItem = new TabItem(tabFolder, SWT.NONE);
public void createSolibTab(CTabFolder tabFolder) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(Messages.GDBDebuggerPage10);
Composite comp = ControlFactory.createCompositeEx(fTabFolder, 1, GridData.FILL_BOTH);
comp.setFont(tabFolder.getFont());

View file

@ -24,6 +24,8 @@ import org.eclipse.core.runtime.CoreException;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
@ -33,8 +35,6 @@ import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.TabFolder;
import org.eclipse.swt.widgets.TabItem;
import org.eclipse.swt.widgets.Text;
/**
@ -121,8 +121,8 @@ public class RemoteDebuggerPage extends GdbDebuggerPage {
configuration.setAttribute(IGDBLaunchConfigurationConstants.ATTR_DEBUGGER_REMOTE_TIMEOUT_VALUE, str);
}
protected void createGdbserverSettingsTab(TabFolder tabFolder) {
TabItem tabItem = new TabItem(tabFolder, SWT.NONE);
protected void createGdbserverSettingsTab(CTabFolder tabFolder) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(Messages.Gdbserver_Settings_Tab_Name);
Composite comp = new Composite(tabFolder, SWT.NULL);
@ -201,7 +201,7 @@ public class RemoteDebuggerPage extends GdbDebuggerPage {
}
@Override
public void createTabs(TabFolder tabFolder) {
public void createTabs(CTabFolder tabFolder) {
super.createTabs(tabFolder);
createGdbserverSettingsTab(tabFolder);
}