org.eclipse.nebula.widgets.tablecombo.TableCombo Java Examples
The following examples show how to use
org.eclipse.nebula.widgets.tablecombo.TableCombo.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: AbstractComboViewer.java From olca-app with Mozilla Public License 2.0 | 6 votes |
@Override protected TableComboViewer createViewer(Composite parent) { TableCombo combo = new TableCombo(parent, SWT.READ_ONLY | SWT.BORDER | SWT.VIRTUAL); UI.gridData(combo, true, false).widthHint = 350; if (useColumnHeaders()) { if (useColumnBounds()) combo.defineColumns(getColumnHeaders(), getColumnBounds()); else combo.defineColumns(getColumnHeaders()); combo.setShowTableHeader(true); combo.setShowTableLines(true); } combo.setDisplayColumnIndex(getDisplayColumn()); TableComboViewer viewer = new TableComboViewer(combo); viewer.setContentProvider(ArrayContentProvider.getInstance()); viewer.setLabelProvider(getLabelProvider()); viewer.setComparator(getComparator()); return viewer; }
Example #2
Source File: ProjectSettingLanguagePage.java From tmxeditor8 with GNU General Public License v2.0 | 5 votes |
/** * Create contents of the preference page. * @param parent */ @Override public Control createContents(Composite parent) { Composite container = new Composite(parent, SWT.NULL); container.setLayout(new GridLayout(1, false)); // source language control Group sourceLanguageGrp = new Group(container, SWT.NONE); sourceLanguageGrp.setLayout(new GridLayout(1, false)); sourceLanguageGrp.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); sourceLanguageGrp.setText(Messages.getString("projectsetting.ProjectSettingLanguagePage.sourceLanguageGrp")); srcLangComboViewer = new TableComboViewer(sourceLanguageGrp, SWT.READ_ONLY | SWT.BORDER); TableCombo tableCombo = srcLangComboViewer.getTableCombo(); // set options. tableCombo.setShowTableLines(false); tableCombo.setShowTableHeader(false); tableCombo.setDisplayColumnIndex(-1); tableCombo.setShowImageWithinSelection(true); tableCombo.setShowColorWithinSelection(false); tableCombo.setShowFontWithinSelection(false); tableCombo.setVisibleItemCount(20); srcLangComboViewer.getTableCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); srcLangComboViewer.setLabelProvider(new LanguageLabelProvider()); srcLangComboViewer.setContentProvider(new ArrayContentProvider()); srcLangComboViewer.setInput(languages); srcLangComboViewer.setComparer(elementComparer); initDataBindings(); // end source language // target language control Group targetLanguageGrp = new Group(container, SWT.NONE); targetLanguageGrp.setLayout(new GridLayout(3, false)); targetLanguageGrp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true, 1, 1)); targetLanguageGrp.setText(Messages.getString("projectsetting.ProjectSettingLanguagePage.targetLanguageGrp")); targetLangControl.createControl(targetLanguageGrp); parent.computeSize(SWT.DEFAULT, SWT.DEFAULT); return container; }
Example #3
Source File: AllocationCombo.java From olca-app with Mozilla Public License 2.0 | 5 votes |
@Override public void select(AllocationMethod value) { if (value == null) if (isNullable()) ((TableCombo) getViewer().getControl()).select(0); else super.select(AllocationMethod.NONE); else super.select(value); }
Example #4
Source File: QAInstalPage.java From tmxeditor8 with GNU General Public License v2.0 | 5 votes |
private void createTableCombo(TableComboViewer tCmbViewer){ TableCombo tableCombo = tCmbViewer.getTableCombo(); tableCombo.setShowTableLines(false); tableCombo.setShowTableHeader(false); tableCombo.setDisplayColumnIndex(-1); tableCombo.setShowImageWithinSelection(true); tableCombo.setShowColorWithinSelection(false); tableCombo.setShowFontWithinSelection(false); tableCombo.setVisibleItemCount(2); GridDataFactory.swtDefaults().hint(100, SWT.DEFAULT).applyTo(tableCombo); tCmbViewer.setLabelProvider(new QATipsLabelProvider()); tCmbViewer.setContentProvider(new ArrayContentProvider()); tCmbViewer.setInput(CONSTANT_COMBOVALUE); }
Example #5
Source File: TableComboExampleTab.java From nebula with Eclipse Public License 2.0 | 5 votes |
/** * {@inheritDoc} */ public Control createControl(Composite parent) { // set the style. int style = SWT.BORDER | SWT.READ_ONLY; if ( borderStyle.getSelection() ) { style |= SWT.BORDER; } if ( readOnlyStyle.getSelection() ) { style |= SWT.READ_ONLY; } if ( flatStyle.getSelection() ) { style |= SWT.FLAT; } // create table combo instance. tableCombo = new TableCombo(parent, style); // set options. tableCombo.setShowTableLines(showGrid.getSelection()); tableCombo.setShowTableHeader(showHeader.getSelection()); tableCombo.setDisplayColumnIndex(columnIndexToDisplayWhenSelected.getSelection() - 1); tableCombo.setShowImageWithinSelection(showImageInSelection.getSelection()); tableCombo.setShowColorWithinSelection(showCustomFontInSelection.getSelection()); tableCombo.setShowFontWithinSelection(showCustomFontInSelection.getSelection()); tableCombo.setClosePopupAfterSelection(closePopupAfterSelection.getSelection()); tableCombo.setTableWidthPercentage(tableWidthPct.getSelection()); tableCombo.setVisibleItemCount(numOfRowsDisplayed.getSelection()); // load the model and data. loadData(loadModel(), tableCombo); return tableCombo; }
Example #6
Source File: QAInstalPage.java From translationstudio8 with GNU General Public License v2.0 | 5 votes |
private void createTableCombo(TableComboViewer tCmbViewer){ TableCombo tableCombo = tCmbViewer.getTableCombo(); tableCombo.setShowTableLines(false); tableCombo.setShowTableHeader(false); tableCombo.setDisplayColumnIndex(-1); tableCombo.setShowImageWithinSelection(true); tableCombo.setShowColorWithinSelection(false); tableCombo.setShowFontWithinSelection(false); tableCombo.setVisibleItemCount(2); GridDataFactory.swtDefaults().hint(100, SWT.DEFAULT).applyTo(tableCombo); tCmbViewer.setLabelProvider(new QATipsLabelProvider()); tCmbViewer.setContentProvider(new ArrayContentProvider()); tCmbViewer.setInput(CONSTANT_COMBOVALUE); }
Example #7
Source File: ProjectSettingLanguagePage.java From translationstudio8 with GNU General Public License v2.0 | 5 votes |
/** * Create contents of the preference page. * @param parent */ @Override public Control createContents(Composite parent) { Composite container = new Composite(parent, SWT.NULL); container.setLayout(new GridLayout(1, false)); // source language control Group sourceLanguageGrp = new Group(container, SWT.NONE); sourceLanguageGrp.setLayout(new GridLayout(1, false)); sourceLanguageGrp.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); sourceLanguageGrp.setText(Messages.getString("projectsetting.ProjectSettingLanguagePage.sourceLanguageGrp")); srcLangComboViewer = new TableComboViewer(sourceLanguageGrp, SWT.READ_ONLY | SWT.BORDER); TableCombo tableCombo = srcLangComboViewer.getTableCombo(); // set options. tableCombo.setShowTableLines(false); tableCombo.setShowTableHeader(false); tableCombo.setDisplayColumnIndex(-1); tableCombo.setShowImageWithinSelection(true); tableCombo.setShowColorWithinSelection(false); tableCombo.setShowFontWithinSelection(false); tableCombo.setVisibleItemCount(20); srcLangComboViewer.getTableCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); srcLangComboViewer.setLabelProvider(new LanguageLabelProvider()); srcLangComboViewer.setContentProvider(new ArrayContentProvider()); srcLangComboViewer.setInput(languages); srcLangComboViewer.setComparer(elementComparer); initDataBindings(); // end source language // target language control Group targetLanguageGrp = new Group(container, SWT.NONE); targetLanguageGrp.setLayout(new GridLayout(3, false)); targetLanguageGrp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true, 1, 1)); targetLanguageGrp.setText(Messages.getString("projectsetting.ProjectSettingLanguagePage.targetLanguageGrp")); targetLangControl.createControl(targetLanguageGrp); parent.computeSize(SWT.DEFAULT, SWT.DEFAULT); return container; }
Example #8
Source File: SWTNebulaBot.java From bonita-studio with GNU General Public License v2.0 | 4 votes |
public SWTBotTableCombo tableComboInGroup(String inGroup, int index) { Matcher matcher = allOf(widgetOfType(TableCombo.class), inGroup(inGroup)); return new SWTBotTableCombo((TableCombo) widget(matcher, index), matcher); }
Example #9
Source File: TableComboSnippet1.java From nebula with Eclipse Public License 2.0 | 4 votes |
public ItemSelected(TableCombo tc, String text) { this.tc = tc; this.text = text; }
Example #10
Source File: SWTBotTableCombo.java From bonita-studio with GNU General Public License v2.0 | 4 votes |
public SWTBotTableCombo(TableCombo widget, SelfDescribing description){ super(widget,description); }
Example #11
Source File: SWTNebulaBot.java From bonita-studio with GNU General Public License v2.0 | 4 votes |
public SWTBotTableCombo tableCombo(int index) { Matcher matcher = allOf(widgetOfType(TableCombo.class)); return new SWTBotTableCombo((TableCombo) widget(matcher, index), matcher); }
Example #12
Source File: SWTNebulaBot.java From bonita-studio with GNU General Public License v2.0 | 4 votes |
public SWTBotTableCombo tableCombo(String mnemonicText, int index) { Matcher matcher = allOf(widgetOfType(TableCombo.class), withMnemonic(mnemonicText)); return new SWTBotTableCombo((TableCombo) widget(matcher, index), matcher); }
Example #13
Source File: NewProjectWizardLanguagePage.java From tmxeditor8 with GNU General Public License v2.0 | 4 votes |
/** * Create contents of the wizard. * @param parent */ public void createControl(Composite parent) { Composite container = new Composite(parent, SWT.NULL); container.setLayout(new GridLayout(1, false)); // source language control Group sourceLanguageGrp = new Group(container, SWT.NONE); sourceLanguageGrp.setLayout(new GridLayout(1, false)); sourceLanguageGrp.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); sourceLanguageGrp.setText(Messages.getString("wizard.NewProjectWizardLanguagePage.sourceLanguageGrp")); srcLangComboViewer = new TableComboViewer(sourceLanguageGrp, SWT.READ_ONLY | SWT.BORDER); TableCombo tableCombo = srcLangComboViewer.getTableCombo(); // set options. tableCombo.setShowTableLines(false); tableCombo.setShowTableHeader(false); tableCombo.setDisplayColumnIndex(-1); tableCombo.setShowImageWithinSelection(true); tableCombo.setShowColorWithinSelection(false); tableCombo.setShowFontWithinSelection(false); tableCombo.setVisibleItemCount(20); srcLangComboViewer.getTableCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); srcLangComboViewer.setLabelProvider(new LanguageLabelProvider()); srcLangComboViewer.setContentProvider(new ArrayContentProvider()); srcLangComboViewer.setInput(languages); srcLangComboViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); srcLanguage = (Language) selection.getFirstElement(); validator.update(); } }); // initialization remember value String rmSrcLangCode = ps.getString(IPreferenceConstants.NEW_PROJECT_SRC_LANG); if (rmSrcLangCode != null && !rmSrcLangCode.equals("")) { for (Language srcLang : languages) { if (srcLang.getCode().equals(rmSrcLangCode)) { srcLangComboViewer.setSelection(new StructuredSelection(srcLang)); break; } } } // end source language // target language control Group targetLanguageGrp = new Group(container, SWT.NONE); targetLanguageGrp.setLayout(new GridLayout(3, false)); targetLanguageGrp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true, 1, 1)); targetLanguageGrp.setText(Messages.getString("wizard.NewProjectWizardLanguagePage.targetLanguageGrp")); targetLangControl.createControl(targetLanguageGrp); // end Target language setControl(container); validator.update(); }
Example #14
Source File: SWTNebulaBot.java From bonita-studio with GNU General Public License v2.0 | 4 votes |
public SWTBotTableCombo tableComboWithId(String value, int index) { Matcher matcher = allOf(widgetOfType(TableCombo.class), withId(value)); return new SWTBotTableCombo((TableCombo) widget(matcher, index), matcher); }
Example #15
Source File: SWTNebulaBot.java From bonita-studio with GNU General Public License v2.0 | 4 votes |
/** * @param label the label on the widget. * @param index the index of the widget. * @return a {@link SWTBotTableCombo} with the specified <code>label</code>. */ @SuppressWarnings({ "unchecked", "rawtypes" }) public SWTBotTableCombo tableComboWithLabel(String label, int index) { Matcher matcher = allOf(widgetOfType(TableCombo.class), withLabel(label)); return new SWTBotTableCombo((TableCombo) widget(matcher, index), matcher); }
Example #16
Source File: PatientAddressPage.java From elexis-3-core with Eclipse Public License 1.0 | 4 votes |
@Override protected Control createContents(Composite parent){ init(); Composite comp = new Composite(parent, SWT.None); comp.setLayout(new GridLayout(2, false)); Label lblNewLabel = new Label(comp, SWT.NONE); lblNewLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); lblNewLabel.setText("Strasse"); textStrasse = new Text(comp, SWT.BORDER); textStrasse.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); textStrasse.setTextLimit(80); Label lblPostleitzahl = new Label(comp, SWT.NONE); lblPostleitzahl.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); lblPostleitzahl.setText("Postleitzahl"); textPostleitzahl = new Text(comp, SWT.BORDER); textPostleitzahl.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); textPostleitzahl.setTextLimit(6); Label lblOrtschaft = new Label(comp, SWT.NONE); lblOrtschaft.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); lblOrtschaft.setText("Ortschaft"); textOrtschaft = new Text(comp, SWT.BORDER); textOrtschaft.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); textOrtschaft.setTextLimit(50); Label lblLand = new Label(comp, SWT.NONE); lblLand.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); lblLand.setText("Land"); countryComboViewer = new TableComboViewer(comp); TableCombo tableCombo = countryComboViewer.getTableCombo(); tableCombo.setTableWidthPercentage(90); tableCombo.setShowFontWithinSelection(false); tableCombo.setShowColorWithinSelection(false); tableCombo.setShowTableLines(false); tableCombo.setShowTableHeader(false); tableCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); countryComboViewer.setLabelProvider(new CountryComboLabelProvider()); countryComboViewer.setContentProvider(new ArrayContentProvider()); Country[] items = new Country[] { Country.CH, Country.LI, Country.AT, Country.DE, Country.FR, Country.IT }; countryComboViewer.setInput(items); super.setTitle(pat.getLabel()); textStrasse.setText(pat.getStreet()); textPostleitzahl.setText(pat.getZip()); textOrtschaft.setText(pat.getCity()); countryComboViewer.setSelection(new StructuredSelection(pat.getCountry())); setUnlocked(LocalLockServiceHolder.get().isLocked(pat)); return comp; }
Example #17
Source File: Controls.java From olca-app with Mozilla Public License 2.0 | 4 votes |
public static void onSelect(TableCombo combo, Consumer<SelectionEvent> fn) { combo.addSelectionListener(selectionListener(fn)); }
Example #18
Source File: SamplePart.java From nebula with Eclipse Public License 2.0 | 4 votes |
public ItemSelected(final TableCombo tc, final String text) { this.tc = tc; this.text = text; }
Example #19
Source File: TableComboElementProvider.java From nebula with Eclipse Public License 2.0 | 4 votes |
@Override public Element getElement(final Object element, final CSSEngine engine) { return new TableComboElement((TableCombo) element, engine); }
Example #20
Source File: TableComboElement.java From nebula with Eclipse Public License 2.0 | 4 votes |
public TableComboElement(final TableCombo composite, final CSSEngine engine) { super(composite, engine); }
Example #21
Source File: TableComboExampleTab.java From nebula with Eclipse Public License 2.0 | 4 votes |
/** * @param modelList * @param tc * @return */ private void loadData(List modelList, TableCombo tc) { // get the number of columns to build in the table int numCols = numOfColumnsToDisplaySpinner.getSelection(); // define the columns if (numCols == 1) { tc.defineColumns(new String[] {"Id"}); } else if (numCols == 2) { tc.defineColumns(new String[] {"Id", "Description"}); } else { tc.defineColumns(new String[] {"Id", "Description", "Computed"}); } int total = (modelList == null ? 0 : modelList.size()); // now create the table items for (int index=0; index < total; index++) { TableItem ti = new TableItem(tc.getTable(), SWT.NONE); Model model = (Model)modelList.get(index); // set the column text if (numCols == 1) { ti.setText(0, model.getDescription()); } else { ti.setText(0, String.valueOf(model.getId())); } if (numCols >= 2) { ti.setText(1, model.getDescription()); } if (numCols == 3) { ti.setText(2, model.getId() + " - " + model.getDescription()); } // add images if needed. if (showImageInCombo.getSelection()) { if (index == 1 || index == 7 || index == 13 || index == 19) { ti.setImage(0, testImage); } else if (index == 3 || index == 9 || index == 15) { ti.setImage(0, test2Image); } else if (index == 5 || index == 11 || index == 17) { ti.setImage(0, test3Image); } } if (showCustomFontInCombo.getSelection()) { if (index == 0 || index == 14) { ti.setForeground(darkRed); ti.setFont(boldFont); } else if (index == 4 || index == 19) { ti.setForeground(darkBlue); ti.setFont(boldFont); } else if (index == 9) { ti.setForeground(darkGreen); ti.setFont(boldFont); } } } }
Example #22
Source File: NewProjectWizardLanguagePage.java From translationstudio8 with GNU General Public License v2.0 | 4 votes |
/** * Create contents of the wizard. * @param parent */ public void createControl(Composite parent) { Composite container = new Composite(parent, SWT.NULL); container.setLayout(new GridLayout(1, false)); // source language control Group sourceLanguageGrp = new Group(container, SWT.NONE); sourceLanguageGrp.setLayout(new GridLayout(1, false)); sourceLanguageGrp.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); sourceLanguageGrp.setText(Messages.getString("wizard.NewProjectWizardLanguagePage.sourceLanguageGrp")); srcLangComboViewer = new TableComboViewer(sourceLanguageGrp, SWT.READ_ONLY | SWT.BORDER); TableCombo tableCombo = srcLangComboViewer.getTableCombo(); // set options. tableCombo.setShowTableLines(false); tableCombo.setShowTableHeader(false); tableCombo.setDisplayColumnIndex(-1); tableCombo.setShowImageWithinSelection(true); tableCombo.setShowColorWithinSelection(false); tableCombo.setShowFontWithinSelection(false); tableCombo.setVisibleItemCount(20); srcLangComboViewer.getTableCombo().setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); srcLangComboViewer.setLabelProvider(new LanguageLabelProvider()); srcLangComboViewer.setContentProvider(new ArrayContentProvider()); srcLangComboViewer.setInput(languages); srcLangComboViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); srcLanguage = (Language) selection.getFirstElement(); validator.update(); } }); // initialization remember value String rmSrcLangCode = ps.getString(IPreferenceConstants.NEW_PROJECT_SRC_LANG); if (rmSrcLangCode != null && !rmSrcLangCode.equals("")) { for (Language srcLang : languages) { if (srcLang.getCode().equals(rmSrcLangCode)) { srcLangComboViewer.setSelection(new StructuredSelection(srcLang)); break; } } } // end source language // target language control Group targetLanguageGrp = new Group(container, SWT.NONE); targetLanguageGrp.setLayout(new GridLayout(3, false)); targetLanguageGrp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true, 1, 1)); targetLanguageGrp.setText(Messages.getString("wizard.NewProjectWizardLanguagePage.targetLanguageGrp")); targetLangControl.createControl(targetLanguageGrp); // end Target language setControl(container); validator.update(); }
Example #23
Source File: TableComboViewer.java From translationstudio8 with GNU General Public License v2.0 | 2 votes |
/** * Creates a table viewer on the given table control. The viewer has no input, no content provider, a default label * provider, no sorter, and no filters. * @param table * the table control */ public TableComboViewer(TableCombo tableCombo) { this.tableCombo = tableCombo; hookControl(tableCombo); }
Example #24
Source File: TableComboViewer.java From translationstudio8 with GNU General Public License v2.0 | 2 votes |
/** * Creates a table viewer on a newly-created table control under the given parent. The table control is created * using the given style bits. The viewer has no input, no content provider, a default label provider, no sorter, * and no filters. The table has no columns. * @param parent * the parent control * @param style * SWT style bits */ public TableComboViewer(Composite parent, int style) { this(new TableCombo(parent, style)); }
Example #25
Source File: SWTBotTableCombo.java From bonita-studio with GNU General Public License v2.0 | 2 votes |
public SWTBotTableCombo(TableCombo w) throws WidgetNotFoundException { super(w); }
Example #26
Source File: TableComboViewer.java From translationstudio8 with GNU General Public License v2.0 | 2 votes |
/** * returns the TableCombo reference. * @return */ public TableCombo getTableCombo() { return tableCombo; }
Example #27
Source File: TableComboViewer.java From tmxeditor8 with GNU General Public License v2.0 | 2 votes |
/** * returns the TableCombo reference. * @return */ public TableCombo getTableCombo() { return tableCombo; }
Example #28
Source File: SWTNebulaBot.java From bonita-studio with GNU General Public License v2.0 | 2 votes |
/** * @param key the key set on the widget. * @param value the value for the key. * @param index the index of the widget. * @return a {@link SWTBotTableCombo} with the specified <code>key/value</code>. */ @SuppressWarnings({ "unchecked", "rawtypes" }) public SWTBotTableCombo tableComboWithId(String key, String value, int index) { Matcher matcher = allOf(widgetOfType(TableCombo.class), withId(key, value)); return new SWTBotTableCombo((TableCombo) widget(matcher, index), matcher); }
Example #29
Source File: TableComboViewer.java From nebula with Eclipse Public License 2.0 | 2 votes |
/** * returns the TableCombo reference. * * @return */ public TableCombo getTableCombo() { return tableCombo; }
Example #30
Source File: SWTNebulaBot.java From bonita-studio with GNU General Public License v2.0 | 2 votes |
/** * @param label the label on the widget. * @param inGroup the inGroup on the widget. * @param index the index of the widget. * @return a {@link SWTBotTableCombo} with the specified <code>label</code> with the specified <code>inGroup</code>. */ @SuppressWarnings({ "unchecked", "rawtypes" }) public SWTBotTableCombo tableComboWithLabelInGroup(String label, String inGroup, int index) { Matcher matcher = allOf(widgetOfType(TableCombo.class), withLabel(label), inGroup(inGroup)); return new SWTBotTableCombo((TableCombo) widget(matcher, index), matcher); }