mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
Replace deprecated ViewerObservables with ViewerProperties (#76)
- fix ContainerTab and ContainerPropertyTab - fixes #73
This commit is contained in:
parent
e47a150db8
commit
e5fde4ad58
2 changed files with 12 additions and 8 deletions
|
@ -1,5 +1,5 @@
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Copyright (c) 2017 Red Hat Inc. and others.
|
* Copyright (c) 2017, 2022 Red Hat Inc. and others.
|
||||||
*
|
*
|
||||||
* This program and the accompanying materials
|
* This program and the accompanying materials
|
||||||
* are made available under the terms of the Eclipse Public License 2.0
|
* are made available under the terms of the Eclipse Public License 2.0
|
||||||
|
@ -53,7 +53,7 @@ import org.eclipse.core.runtime.CoreException;
|
||||||
import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;
|
import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;
|
||||||
import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;
|
import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;
|
||||||
import org.eclipse.jface.databinding.viewers.ViewerSupport;
|
import org.eclipse.jface.databinding.viewers.ViewerSupport;
|
||||||
import org.eclipse.jface.databinding.viewers.ViewersObservables;
|
import org.eclipse.jface.databinding.viewers.typed.ViewerProperties;
|
||||||
import org.eclipse.jface.dialogs.IDialogConstants;
|
import org.eclipse.jface.dialogs.IDialogConstants;
|
||||||
import org.eclipse.jface.layout.GridDataFactory;
|
import org.eclipse.jface.layout.GridDataFactory;
|
||||||
import org.eclipse.jface.layout.GridLayoutFactory;
|
import org.eclipse.jface.layout.GridLayoutFactory;
|
||||||
|
@ -63,6 +63,7 @@ import org.eclipse.jface.viewers.IStructuredSelection;
|
||||||
import org.eclipse.jface.viewers.StructuredViewer;
|
import org.eclipse.jface.viewers.StructuredViewer;
|
||||||
import org.eclipse.jface.viewers.TableViewer;
|
import org.eclipse.jface.viewers.TableViewer;
|
||||||
import org.eclipse.jface.viewers.TableViewerColumn;
|
import org.eclipse.jface.viewers.TableViewerColumn;
|
||||||
|
import org.eclipse.jface.viewers.Viewer;
|
||||||
import org.eclipse.linuxtools.docker.core.DockerConnectionManager;
|
import org.eclipse.linuxtools.docker.core.DockerConnectionManager;
|
||||||
import org.eclipse.linuxtools.docker.core.IDockerConnection;
|
import org.eclipse.linuxtools.docker.core.IDockerConnection;
|
||||||
import org.eclipse.linuxtools.docker.core.IDockerConnectionManagerListener;
|
import org.eclipse.linuxtools.docker.core.IDockerConnectionManagerListener;
|
||||||
|
@ -384,7 +385,7 @@ public class ContainerPropertyTab extends AbstractCBuildPropertyTab
|
||||||
// update table content when selected image changes
|
// update table content when selected image changes
|
||||||
bind(dataVolumesTableViewer, model.getDataVolumes(), BeanProperties.values(DataVolumeModel.class,
|
bind(dataVolumesTableViewer, model.getDataVolumes(), BeanProperties.values(DataVolumeModel.class,
|
||||||
DataVolumeModel.CONTAINER_PATH, DataVolumeModel.MOUNT, DataVolumeModel.READ_ONLY_VOLUME));
|
DataVolumeModel.CONTAINER_PATH, DataVolumeModel.MOUNT, DataVolumeModel.READ_ONLY_VOLUME));
|
||||||
dbc.bindSet(ViewersObservables.observeCheckedElements(dataVolumesTableViewer, DataVolumeModel.class),
|
dbc.bindSet(ViewerProperties.checkedElements(DataVolumeModel.class).observe((Viewer) dataVolumesTableViewer),
|
||||||
BeanProperties.set(ContainerPropertyVolumesModel.SELECTED_DATA_VOLUMES).observe(model));
|
BeanProperties.set(ContainerPropertyVolumesModel.SELECTED_DATA_VOLUMES).observe(model));
|
||||||
// disable the edit and removeButton if the table is empty
|
// disable the edit and removeButton if the table is empty
|
||||||
dataVolumesTableViewer.addSelectionChangedListener(onSelectionChanged(editButton, removeButton));
|
dataVolumesTableViewer.addSelectionChangedListener(onSelectionChanged(editButton, removeButton));
|
||||||
|
@ -401,6 +402,7 @@ public class ContainerPropertyTab extends AbstractCBuildPropertyTab
|
||||||
* @param input
|
* @param input
|
||||||
* @param labelProperties
|
* @param labelProperties
|
||||||
*/
|
*/
|
||||||
|
@SuppressWarnings({ "rawtypes", "unchecked" })
|
||||||
private void bind(final StructuredViewer viewer, final IObservableList input,
|
private void bind(final StructuredViewer viewer, final IObservableList input,
|
||||||
final IBeanValueProperty[] labelProperties) {
|
final IBeanValueProperty[] labelProperties) {
|
||||||
final ObservableListContentProvider contentProvider = new ObservableListContentProvider();
|
final ObservableListContentProvider contentProvider = new ObservableListContentProvider();
|
||||||
|
@ -493,7 +495,7 @@ public class ContainerPropertyTab extends AbstractCBuildPropertyTab
|
||||||
final CheckboxTableViewer tableViewer = new CheckboxTableViewer(table);
|
final CheckboxTableViewer tableViewer = new CheckboxTableViewer(table);
|
||||||
table.setHeaderVisible(true);
|
table.setHeaderVisible(true);
|
||||||
table.setLinesVisible(true);
|
table.setLinesVisible(true);
|
||||||
dbc.bindSet(ViewersObservables.observeCheckedElements(tableViewer, DataVolumeModel.class),
|
dbc.bindSet(ViewerProperties.checkedElements(DataVolumeModel.class).observe((Viewer) tableViewer),
|
||||||
BeanProperties.set(ContainerPropertyVolumesModel.SELECTED_DATA_VOLUMES).observe(model));
|
BeanProperties.set(ContainerPropertyVolumesModel.SELECTED_DATA_VOLUMES).observe(model));
|
||||||
addTableViewerColumn(tableViewer, WizardMessages.getString("ImageRunResourceVolVarPage.containerPathColumn"), //$NON-NLS-1$
|
addTableViewerColumn(tableViewer, WizardMessages.getString("ImageRunResourceVolVarPage.containerPathColumn"), //$NON-NLS-1$
|
||||||
180);
|
180);
|
||||||
|
@ -520,6 +522,7 @@ public class ContainerPropertyTab extends AbstractCBuildPropertyTab
|
||||||
private Image FOLDER_CLOSED_IMAGE = SWTImagesFactory.DESC_FOLDER_CLOSED.createImage();
|
private Image FOLDER_CLOSED_IMAGE = SWTImagesFactory.DESC_FOLDER_CLOSED.createImage();
|
||||||
private Image FILE_IMAGE = SWTImagesFactory.DESC_FILE.createImage();
|
private Image FILE_IMAGE = SWTImagesFactory.DESC_FILE.createImage();
|
||||||
|
|
||||||
|
@SuppressWarnings("rawtypes")
|
||||||
public DataVolumesLabelProvider(final IObservableMap[] attributeMaps) {
|
public DataVolumesLabelProvider(final IObservableMap[] attributeMaps) {
|
||||||
super(attributeMaps);
|
super(attributeMaps);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Copyright (c) 2015, 2016 Red Hat and others.
|
* Copyright (c) 2015, 2022 Red Hat and others.
|
||||||
*
|
*
|
||||||
* This program and the accompanying materials
|
* This program and the accompanying materials
|
||||||
* are made available under the terms of the Eclipse Public License 2.0
|
* are made available under the terms of the Eclipse Public License 2.0
|
||||||
|
@ -29,7 +29,7 @@ import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
|
||||||
import org.eclipse.debug.ui.AbstractLaunchConfigurationTab;
|
import org.eclipse.debug.ui.AbstractLaunchConfigurationTab;
|
||||||
import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;
|
import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;
|
||||||
import org.eclipse.jface.databinding.viewers.ViewerSupport;
|
import org.eclipse.jface.databinding.viewers.ViewerSupport;
|
||||||
import org.eclipse.jface.databinding.viewers.ViewersObservables;
|
import org.eclipse.jface.databinding.viewers.typed.ViewerProperties;
|
||||||
import org.eclipse.jface.dialogs.IDialogConstants;
|
import org.eclipse.jface.dialogs.IDialogConstants;
|
||||||
import org.eclipse.jface.layout.GridDataFactory;
|
import org.eclipse.jface.layout.GridDataFactory;
|
||||||
import org.eclipse.jface.layout.GridLayoutFactory;
|
import org.eclipse.jface.layout.GridLayoutFactory;
|
||||||
|
@ -40,6 +40,7 @@ import org.eclipse.jface.viewers.ISelectionChangedListener;
|
||||||
import org.eclipse.jface.viewers.IStructuredSelection;
|
import org.eclipse.jface.viewers.IStructuredSelection;
|
||||||
import org.eclipse.jface.viewers.TableViewer;
|
import org.eclipse.jface.viewers.TableViewer;
|
||||||
import org.eclipse.jface.viewers.TableViewerColumn;
|
import org.eclipse.jface.viewers.TableViewerColumn;
|
||||||
|
import org.eclipse.jface.viewers.Viewer;
|
||||||
import org.eclipse.linuxtools.docker.core.DockerConnectionManager;
|
import org.eclipse.linuxtools.docker.core.DockerConnectionManager;
|
||||||
import org.eclipse.linuxtools.docker.core.IDockerConnection;
|
import org.eclipse.linuxtools.docker.core.IDockerConnection;
|
||||||
import org.eclipse.linuxtools.docker.core.IDockerConnectionManagerListener;
|
import org.eclipse.linuxtools.docker.core.IDockerConnectionManagerListener;
|
||||||
|
@ -242,7 +243,6 @@ public class ContainerTab extends AbstractLaunchConfigurationTab
|
||||||
removeButton.setEnabled(false);
|
removeButton.setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
|
||||||
private void createPortSettingsSection(final Composite parent) {
|
private void createPortSettingsSection(final Composite parent) {
|
||||||
Font font = parent.getFont();
|
Font font = parent.getFont();
|
||||||
Composite comp = createComposite(parent, 1, 2, GridData.FILL_BOTH);
|
Composite comp = createComposite(parent, 1, 2, GridData.FILL_BOTH);
|
||||||
|
@ -289,7 +289,7 @@ public class ContainerTab extends AbstractLaunchConfigurationTab
|
||||||
ViewerSupport.bind(exposedPortsTableViewer, model.getExposedPorts(),
|
ViewerSupport.bind(exposedPortsTableViewer, model.getExposedPorts(),
|
||||||
BeanProperties.values(ExposedPortModel.class, ExposedPortModel.CONTAINER_PORT,
|
BeanProperties.values(ExposedPortModel.class, ExposedPortModel.CONTAINER_PORT,
|
||||||
ExposedPortModel.PORT_TYPE, ExposedPortModel.HOST_ADDRESS, ExposedPortModel.HOST_PORT));
|
ExposedPortModel.PORT_TYPE, ExposedPortModel.HOST_ADDRESS, ExposedPortModel.HOST_PORT));
|
||||||
dbc.bindSet(ViewersObservables.observeCheckedElements(exposedPortsTableViewer, ExposedPortModel.class),
|
dbc.bindSet(ViewerProperties.checkedElements(ExposedPortModel.class).observe((Viewer) exposedPortsTableViewer),
|
||||||
BeanProperties.set(ContainerTabModel.SELECTED_PORTS).observe(model));
|
BeanProperties.set(ContainerTabModel.SELECTED_PORTS).observe(model));
|
||||||
checkAllElements(exposedPortsTableViewer);
|
checkAllElements(exposedPortsTableViewer);
|
||||||
|
|
||||||
|
@ -371,6 +371,7 @@ public class ContainerTab extends AbstractLaunchConfigurationTab
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("rawtypes")
|
||||||
private CheckboxTableViewer createPortSettingsTable(final Composite container) {
|
private CheckboxTableViewer createPortSettingsTable(final Composite container) {
|
||||||
final Table table = new Table(container,
|
final Table table = new Table(container,
|
||||||
SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL | SWT.H_SCROLL | SWT.CHECK);
|
SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL | SWT.H_SCROLL | SWT.CHECK);
|
||||||
|
|
Loading…
Add table
Reference in a new issue