use of org.eclipse.jface.viewers.IStructuredContentProvider in project archi by archimatetool.
the class ConnectionsPreferencePage method createRelationsTable.
private CheckboxTableViewer createRelationsTable(Composite parent) {
final CheckboxTableViewer viewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER);
GridData gd = new GridData(GridData.FILL_HORIZONTAL);
gd.heightHint = 80;
viewer.getTable().setLayoutData(gd);
viewer.setLabelProvider(new LabelProvider() {
@Override
public String getText(Object element) {
return ArchiLabelProvider.INSTANCE.getDefaultName((EClass) element);
}
@Override
public Image getImage(Object element) {
return ArchiLabelProvider.INSTANCE.getImage(element);
}
});
viewer.setContentProvider(new IStructuredContentProvider() {
@Override
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
@Override
public void dispose() {
}
@Override
public Object[] getElements(Object inputElement) {
return ConnectionPreferences.RELATION_KEYMAP.keySet().toArray();
}
});
viewer.setCheckStateProvider(new ICheckStateProvider() {
@Override
public boolean isGrayed(Object element) {
return false;
}
@Override
public boolean isChecked(Object element) {
int value = (Integer) viewer.getInput();
return (value & ConnectionPreferences.RELATION_KEYMAP.get(element)) != 0;
}
});
return viewer;
}
use of org.eclipse.jface.viewers.IStructuredContentProvider in project archi by archimatetool.
the class DiagramFiguresPreferenceTab method createTable.
private void createTable(Composite parent) {
fTableViewer = new TableViewer(parent, SWT.BORDER | SWT.FULL_SELECTION);
TableColumnLayout layout = (TableColumnLayout) parent.getLayout();
TableViewerColumn column = new TableViewerColumn(fTableViewer, SWT.NONE);
layout.setColumnData(column.getColumn(), new ColumnWeightData(100, false));
// Fix row height
// This is definitely needed on some Linux versions where the row height is stuck at 17 for some reason
fTableViewer.getTable().addListener(SWT.MeasureItem, new Listener() {
public void handleEvent(Event event) {
event.height = itemHeight;
}
});
fTableViewer.getTable().addListener(SWT.PaintItem, new Listener() {
public void handleEvent(Event event) {
TableItem item = (TableItem) event.item;
int row = fTableViewer.getTable().indexOf(item);
ImageChoice ic = fChoices.get(row);
Image image1 = ic.getImage(0);
int x = (itemWidth / 2) - (image1.getBounds().width / 2);
event.gc.setAlpha(ic.chosenType == 0 ? 255 : 70);
event.gc.drawImage(image1, event.x + x, event.y + (itemHeight - image1.getBounds().height) / 2);
Image image2 = ic.getImage(1);
x = itemWidth + ((itemWidth / 2) - (image2.getBounds().width / 2));
event.gc.setAlpha(ic.chosenType == 1 ? 255 : 70);
event.gc.drawImage(image2, event.x + x, event.y + (itemHeight - image2.getBounds().height) / 2);
// Highlight rectangle
// int highlight_x = ic.chosenType == 0 ? 20 : itemWidth + 20;
// event.gc.setForeground(ColorConstants.gray);
// event.gc.setLineWidth(2);
// event.gc.drawRectangle(event.x + highlight_x, event.y + 2, event.x + itemWidth - 39, itemHeight - 3);
}
});
fTableViewer.getTable().addListener(SWT.EraseItem, new Listener() {
@Override
public void handleEvent(Event event) {
// No selection highlighting
event.detail &= ~SWT.SELECTED;
event.detail &= ~SWT.HOT;
}
});
fTableViewer.getTable().addListener(SWT.MouseDown, new Listener() {
@Override
public void handleEvent(Event event) {
TableItem item = fTableViewer.getTable().getItem(new Point(event.x, event.y));
int row = fTableViewer.getTable().indexOf(item);
ImageChoice ic = fChoices.get(row);
if (event.x < itemWidth) {
ic.chosenType = 0;
} else {
ic.chosenType = 1;
}
fTableViewer.refresh(ic);
}
});
fTableViewer.setContentProvider(new IStructuredContentProvider() {
@Override
public void dispose() {
}
@Override
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
@Override
public Object[] getElements(Object inputElement) {
return ((List<?>) inputElement).toArray();
}
});
fTableViewer.setLabelProvider(new LabelProvider() {
@Override
public String getText(Object element) {
return null;
}
});
}
use of org.eclipse.jface.viewers.IStructuredContentProvider in project archi by archimatetool.
the class GeneralPreferencePage method createContents.
@Override
protected Control createContents(Composite parent) {
// Help
PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, HELP_ID);
Composite client = new Composite(parent, SWT.NULL);
client.setLayout(new GridLayout());
GridData gd;
Group fileGroup = new Group(client, SWT.NULL);
fileGroup.setText(Messages.GeneralPreferencePage_0);
fileGroup.setLayout(new GridLayout(2, false));
fileGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
// Automatically open views when opening a model file
fOpenDiagramsOnLoadButton = new Button(fileGroup, SWT.CHECK);
fOpenDiagramsOnLoadButton.setText(Messages.GeneralPreferencePage_1);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
fOpenDiagramsOnLoadButton.setLayoutData(gd);
// Backup file on save
fBackupOnSaveButton = new Button(fileGroup, SWT.CHECK);
fBackupOnSaveButton.setText(Messages.GeneralPreferencePage_5);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
fBackupOnSaveButton.setLayoutData(gd);
// Size of recently opened file list
Label label = new Label(fileGroup, SWT.NULL);
label.setText(Messages.GeneralPreferencePage_2);
fMRUSizeSpinner = new Spinner(fileGroup, SWT.BORDER);
fMRUSizeSpinner.setMinimum(3);
fMRUSizeSpinner.setMaximum(15);
// Appearance
Group appearanceGroup = new Group(client, SWT.NULL);
appearanceGroup.setText(Messages.GeneralPreferencePage_3);
appearanceGroup.setLayout(new GridLayout(2, false));
appearanceGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
// Themes
label = new Label(appearanceGroup, SWT.NULL);
label.setText(Messages.GeneralPreferencePage_4);
fThemeComboViewer = new ComboViewer(appearanceGroup, SWT.READ_ONLY);
gd = new GridData(GridData.FILL_HORIZONTAL);
fThemeComboViewer.getCombo().setLayoutData(gd);
fThemeComboViewer.setContentProvider(new IStructuredContentProvider() {
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
public void dispose() {
}
public Object[] getElements(Object inputElement) {
return (Object[]) inputElement;
}
});
fThemeComboViewer.setLabelProvider(new LabelProvider() {
@Override
public String getText(Object element) {
return ((ITheme) element).getLabel();
}
});
fThemeComboViewer.setComparator(new ViewerComparator());
// Show Status Line
fShowStatusLineButton = new Button(appearanceGroup, SWT.CHECK);
fShowStatusLineButton.setText(Messages.GeneralPreferencePage_9);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
fShowStatusLineButton.setLayoutData(gd);
label = new Label(appearanceGroup, SWT.NULL);
label.setText(Messages.GeneralPreferencePage_8);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
label.setLayoutData(gd);
// Model Tree
Group modelTreeGroup = new Group(client, SWT.NULL);
modelTreeGroup.setText(Messages.GeneralPreferencePage_10);
modelTreeGroup.setLayout(new GridLayout(2, false));
modelTreeGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
fShowUnusedElementsInModelTreeButton = new Button(modelTreeGroup, SWT.CHECK);
fShowUnusedElementsInModelTreeButton.setText(Messages.GeneralPreferencePage_11);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
fShowUnusedElementsInModelTreeButton.setLayoutData(gd);
// Visualiser
Group visualiserGroup = new Group(client, SWT.NULL);
visualiserGroup.setText(Messages.GeneralPreferencePage_6);
visualiserGroup.setLayout(new GridLayout(2, false));
visualiserGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
fAnimateVisualiserNodesButton = new Button(visualiserGroup, SWT.CHECK);
fAnimateVisualiserNodesButton.setText(Messages.GeneralPreferencePage_7);
gd = new GridData(GridData.FILL_HORIZONTAL);
gd.horizontalSpan = 2;
fAnimateVisualiserNodesButton.setLayoutData(gd);
fAnimateVisualiserNodesButton.setEnabled(AnimationUtil.supportsAnimation());
setValues();
fThemeComboViewer.addSelectionChangedListener(new ISelectionChangedListener() {
public void selectionChanged(SelectionChangedEvent event) {
ITheme theme = (ITheme) ((IStructuredSelection) fThemeComboViewer.getSelection()).getFirstElement();
if (theme != null && theme != fThemeEngine.getActiveTheme()) {
setTheme(theme, false);
}
}
});
return client;
}
use of org.eclipse.jface.viewers.IStructuredContentProvider in project archi by archimatetool.
the class ExportAsImagePage method createFormatComboViewer.
/**
* Create tghe Format Combo Viewer
*/
private ComboViewer createFormatComboViewer(Composite parent) {
ComboViewer viewer = new ComboViewer(new Combo(parent, SWT.READ_ONLY | SWT.BORDER));
viewer.setContentProvider(new IStructuredContentProvider() {
@Override
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
@Override
public void dispose() {
}
@Override
public Object[] getElements(Object inputElement) {
return fImageProviders.toArray();
}
});
viewer.setLabelProvider(new LabelProvider() {
@Override
public String getText(Object element) {
return ((ImageExportProviderInfo) element).getLabel();
}
});
viewer.addSelectionChangedListener(new ISelectionChangedListener() {
@Override
public void selectionChanged(SelectionChangedEvent event) {
ImageExportProviderInfo provider = (ImageExportProviderInfo) ((IStructuredSelection) event.getSelection()).getFirstElement();
providerChanged(provider);
}
});
// $NON-NLS-1$
viewer.setInput("");
return viewer;
}
use of org.eclipse.jface.viewers.IStructuredContentProvider in project archi by archimatetool.
the class ExportJasperReportsWizardPage2 method createControl.
@Override
public void createControl(Composite parent) {
Composite container = new Composite(parent, SWT.NULL);
container.setLayout(new GridLayout());
setControl(container);
PlatformUI.getWorkbench().getHelpSystem().setHelp(container, HELP_ID);
Composite fieldContainer = new Composite(container, SWT.NULL);
fieldContainer.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
fieldContainer.setLayout(new GridLayout(2, false));
// Template Combo
Label label = new Label(fieldContainer, SWT.NONE);
label.setText(Messages.ExportJasperReportsWizardPage2_4);
fComboTemplateViewer = new ComboViewer(new Combo(fieldContainer, SWT.READ_ONLY | SWT.BORDER));
fComboTemplateViewer.getControl().setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
fComboTemplateViewer.addSelectionChangedListener(new ISelectionChangedListener() {
@Override
public void selectionChanged(SelectionChangedEvent event) {
Template template = (Template) ((IStructuredSelection) event.getSelection()).getFirstElement();
if (template.location == null) {
// Custom...
handleCustomDialog();
} else {
fLastSelectedTemplate = template;
}
}
});
fComboTemplateViewer.setContentProvider(new IStructuredContentProvider() {
@Override
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
@Override
public void dispose() {
}
@Override
public Object[] getElements(Object inputElement) {
return fTemplates.toArray();
}
});
fComboTemplateViewer.setLabelProvider(new LabelProvider() {
@Override
public String getText(Object element) {
return ((Template) element).name;
}
});
// $NON-NLS-1$
fComboTemplateViewer.setInput("");
fComboTemplateViewer.setSelection(new StructuredSelection(fTemplates.get(0)));
// Locale Combo
label = new Label(fieldContainer, SWT.NONE);
label.setText(Messages.ExportJasperReportsWizardPage2_6);
fComboLocale = new ComboViewer(new Combo(fieldContainer, SWT.READ_ONLY | SWT.BORDER));
fComboLocale.getControl().setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
fComboLocale.addSelectionChangedListener(new ISelectionChangedListener() {
@Override
public void selectionChanged(SelectionChangedEvent event) {
Locale locale = (Locale) ((IStructuredSelection) event.getSelection()).getFirstElement();
fSelectedLocale = locale;
}
});
fComboLocale.setContentProvider(new IStructuredContentProvider() {
@Override
public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
}
@Override
public void dispose() {
}
@Override
public Object[] getElements(Object inputElement) {
Locale[] locales = Locale.getAvailableLocales();
Comparator<Locale> localeComparator = new Comparator<Locale>() {
public int compare(Locale locale1, Locale locale2) {
return locale1.toString().compareTo(locale2.toString());
}
};
Arrays.sort(locales, localeComparator);
return locales;
}
});
fComboLocale.setLabelProvider(new LabelProvider() {
@Override
public String getText(Object element) {
return ((Locale) element).toLanguageTag();
}
});
// $NON-NLS-1$
fComboLocale.setInput("");
fComboLocale.setSelection(new StructuredSelection(fSelectedLocale));
}
Aggregations