List of usage examples for org.eclipse.jface.viewers TableViewerColumn TableViewerColumn
public TableViewerColumn(TableViewer viewer, TableColumn column)
From source file:com.android.sdkuilib.internal.repository.sdkman2.AddonSitesDialog.java
License:Apache License
/** * Create contents of the dialog./*from ww w . ja v a 2s . c om*/ */ @SuppressWarnings("unused") @Override protected void createContents() { Shell shell = getShell(); shell.setMinimumSize(new Point(450, 300)); shell.setSize(450, 300); setWindowImage(shell); GridLayout glShell = new GridLayout(); glShell.numColumns = 2; shell.setLayout(glShell); mlabel = new Label(shell, SWT.NONE); mlabel.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1)); mlabel.setText("This dialog lets you manage the URLs of external add-on sites to be used.\n" + "\n" + "Add-on sites can provide new add-ons or \"user\" packages.\n" + "They cannot provide standard Android platforms, docs or samples packages.\n" + "Adding a URL here will not allow you to clone an official Android repository."); mTableViewer = new TableViewer(shell, SWT.BORDER | SWT.FULL_SELECTION); mTableViewer.addPostSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { on_TableViewer_selectionChanged(event); } }); mTable = mTableViewer.getTable(); mTable.setLinesVisible(false); mTable.addMouseListener(new MouseAdapter() { @Override public void mouseUp(MouseEvent e) { on_Table_mouseUp(e); } }); mTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 5)); TableViewerColumn tableViewerColumn = new TableViewerColumn(mTableViewer, SWT.NONE); mColumnUrl = tableViewerColumn.getColumn(); mColumnUrl.setWidth(100); mColumnUrl.setText("New Column"); mButtonNew = new Button(shell, SWT.NONE); mButtonNew.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { newOrEdit(false /*isEdit*/); } }); mButtonNew.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1)); mButtonNew.setText("New..."); mButtonEdit = new Button(shell, SWT.NONE); mButtonEdit.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { newOrEdit(true /*isEdit*/); } }); mButtonEdit.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1)); mButtonEdit.setText("Edit..."); mButtonDelete = new Button(shell, SWT.NONE); mButtonDelete.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { on_ButtonDelete_widgetSelected(e); } }); mButtonDelete.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1)); mButtonDelete.setText("Delete..."); new Label(shell, SWT.NONE); mButtonClose = new Button(shell, SWT.NONE); mButtonClose.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { on_ButtonClose_widgetSelected(e); } }); mButtonClose.setLayoutData(new GridData(SWT.FILL, SWT.BOTTOM, false, false, 1, 1)); mButtonClose.setText("Close"); adjustColumnsWidth(mTable, mColumnUrl); }
From source file:com.android.sdkuilib.internal.repository.ui.AddonSitesDialog.java
License:Apache License
void createTabOfficialSites(TabFolder tabFolder, TabItem sitesTabItem) { Composite root = new Composite(tabFolder, SWT.NONE); sitesTabItem.setControl(root);/*w w w. j a va2s. c o m*/ GridLayoutBuilder.create(root).columns(3); Label label = new Label(root, SWT.NONE); GridDataBuilder.create(label).hGrab().vCenter().hSpan(3); label.setText("This lets select which official 3rd-party sites you want to load.\n" + "\n" + "These sites are managed by non-Android vendors to provide add-ons and extra packages.\n" + "They are by default all enabled. When you disable one, the SDK Manager will not check the site for new packages."); mSitesTableViewer = CheckboxTableViewer.newCheckList(root, SWT.BORDER | SWT.FULL_SELECTION); mSitesTableViewer.setContentProvider(new SourcesContentProvider()); Table sitesTable = mSitesTableViewer.getTable(); sitesTable.setToolTipText("Enable 3rd-Party Site"); sitesTable.setLinesVisible(true); sitesTable.setHeaderVisible(true); GridDataBuilder.create(sitesTable).fill().grab().hSpan(3); TableViewerColumn columnViewer = new TableViewerColumn(mSitesTableViewer, SWT.NONE); TableColumn column = columnViewer.getColumn(); column.setResizable(true); column.setWidth(150); column.setText("Name"); columnViewer.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof SdkSource) { String name = ((SdkSource) element).getUiName(); if (name != null) { return name; } return ((SdkSource) element).getShortDescription(); } return super.getText(element); } }); columnViewer = new TableViewerColumn(mSitesTableViewer, SWT.NONE); column = columnViewer.getColumn(); column.setResizable(true); column.setWidth(400); column.setText("URL"); columnViewer.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof SdkSource) { return ((SdkSource) element).getUrl(); } return super.getText(element); } }); mSitesTableViewer.addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(CheckStateChangedEvent event) { on_SitesTableViewer_checkStateChanged(event); } }); // "enable all" and "disable all" buttons under the table Button selectAll = new Button(root, SWT.NONE); selectAll.setText("Enable All"); GridDataBuilder.create(selectAll).hLeft(); selectAll.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent event) { on_SitesTableViewer_selectAll(); } }); // placeholder between both buttons label = new Label(root, SWT.NONE); GridDataBuilder.create(label).hFill().hGrab(); Button deselectAll = new Button(root, SWT.NONE); deselectAll.setText("Disable All"); GridDataBuilder.create(deselectAll).hRight(); deselectAll.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent event) { on_SitesTableViewer_deselectAll(); } }); }
From source file:com.android.sdkuilib.internal.repository.ui.AddonSitesDialog.java
License:Apache License
void createTabUserSites(TabFolder tabFolder, TabItem userTabItem) { Composite root = new Composite(tabFolder, SWT.NONE); userTabItem.setControl(root);/*from w ww .ja va2 s . c o m*/ GridLayoutBuilder.create(root).columns(2); Label label = new Label(root, SWT.NONE); GridDataBuilder.create(label).hLeft().vCenter().hSpan(2); label.setText("This lets you manage a list of user-contributed external add-on sites URLs.\n" + "\n" + "Add-on sites can provide new add-ons and extra packages.\n" + "They cannot provide standard Android platforms, system images or docs.\n" + "Adding a URL here will not allow you to clone an official Android repository."); mUserTableViewer = new TableViewer(root, SWT.BORDER | SWT.FULL_SELECTION); mUserTableViewer.setContentProvider(new SourcesContentProvider()); mUserTableViewer.addPostSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { on_UserTableViewer_selectionChanged(event); } }); mUserTable = mUserTableViewer.getTable(); mUserTable.setLinesVisible(true); mUserTable.addMouseListener(new MouseAdapter() { @Override public void mouseUp(MouseEvent event) { on_UserTable_mouseUp(event); } }); GridDataBuilder.create(mUserTable).fill().grab().vSpan(5); TableViewerColumn tableViewerColumn = new TableViewerColumn(mUserTableViewer, SWT.NONE); TableColumn userColumnUrl = tableViewerColumn.getColumn(); userColumnUrl.setWidth(100); // Implementation detail: set the label provider on the table viewer *after* associating // a column. This will set the label provider on the column for us. mUserTableViewer.setLabelProvider(new LabelProvider()); mUserButtonNew = new Button(root, SWT.NONE); mUserButtonNew.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { userNewOrEdit(false /*isEdit*/); } }); GridDataBuilder.create(mUserButtonNew).hFill().vCenter(); mUserButtonNew.setText("New..."); mUserButtonEdit = new Button(root, SWT.NONE); mUserButtonEdit.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { userNewOrEdit(true /*isEdit*/); } }); GridDataBuilder.create(mUserButtonEdit).hFill().vCenter(); mUserButtonEdit.setText("Edit..."); mUserButtonDelete = new Button(root, SWT.NONE); mUserButtonDelete.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { on_UserButtonDelete_widgetSelected(e); } }); GridDataBuilder.create(mUserButtonDelete).hFill().vCenter(); mUserButtonDelete.setText("Delete..."); adjustColumnsWidth(mUserTable, userColumnUrl); }
From source file:com.android.sdkuilib.internal.widgets.AvdCreationDialog.java
License:Apache License
/** * Creates the UI for the hardware properties table. * This creates the {@link Table}, and several viewers ({@link TableViewer}, * {@link TableViewerColumn}) and adds edit support for the 2nd column *//*from www.j a va 2 s.c o m*/ private void createHardwareTable(Composite parent) { final Table hardwareTable = new Table(parent, SWT.SINGLE | SWT.FULL_SELECTION); GridData gd = new GridData(GridData.FILL_HORIZONTAL | GridData.FILL_VERTICAL); gd.widthHint = 200; gd.heightHint = 100; hardwareTable.setLayoutData(gd); hardwareTable.setHeaderVisible(true); hardwareTable.setLinesVisible(true); // -- Table viewer mHardwareViewer = new TableViewer(hardwareTable); mHardwareViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { // it's a single selection mode, we can just access the selection index // from the table directly. mDeleteHardwareProp.setEnabled(hardwareTable.getSelectionIndex() != -1); } }); // only a content provider. Use viewers per column below (for editing support) mHardwareViewer.setContentProvider(new IStructuredContentProvider() { public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { // we can just ignore this. we just use mProperties directly. } public Object[] getElements(Object arg0) { return mProperties.keySet().toArray(); } public void dispose() { // pass } }); // -- column 1: prop abstract name TableColumn col1 = new TableColumn(hardwareTable, SWT.LEFT); col1.setText("Property"); col1.setWidth(150); TableViewerColumn tvc1 = new TableViewerColumn(mHardwareViewer, col1); tvc1.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { String name = cell.getElement().toString(); HardwareProperty prop = mHardwareMap.get(name); if (prop != null) { cell.setText(prop.getAbstract()); } else { cell.setText(String.format("%1$s (Unknown)", name)); } } }); // -- column 2: prop value TableColumn col2 = new TableColumn(hardwareTable, SWT.LEFT); col2.setText("Value"); col2.setWidth(50); TableViewerColumn tvc2 = new TableViewerColumn(mHardwareViewer, col2); tvc2.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { String value = mProperties.get(cell.getElement()); cell.setText(value != null ? value : ""); } }); // add editing support to the 2nd column tvc2.setEditingSupport(new EditingSupport(mHardwareViewer) { @Override protected void setValue(Object element, Object value) { String hardwareName = (String) element; HardwareProperty property = mHardwareMap.get(hardwareName); switch (property.getType()) { case INTEGER: mProperties.put((String) element, (String) value); break; case DISKSIZE: if (HardwareProperties.DISKSIZE_PATTERN.matcher((String) value).matches()) { mProperties.put((String) element, (String) value); } break; case BOOLEAN: int index = (Integer) value; mProperties.put((String) element, HardwareProperties.BOOLEAN_VALUES[index]); break; } mHardwareViewer.refresh(element); } @Override protected Object getValue(Object element) { String hardwareName = (String) element; HardwareProperty property = mHardwareMap.get(hardwareName); String value = mProperties.get(hardwareName); switch (property.getType()) { case INTEGER: // intended fall-through. case DISKSIZE: return value; case BOOLEAN: return HardwareProperties.getBooleanValueIndex(value); } return null; } @Override protected CellEditor getCellEditor(Object element) { String hardwareName = (String) element; HardwareProperty property = mHardwareMap.get(hardwareName); switch (property.getType()) { // TODO: custom TextCellEditor that restrict input. case INTEGER: // intended fall-through. case DISKSIZE: return new TextCellEditor(hardwareTable); case BOOLEAN: return new ComboBoxCellEditor(hardwareTable, HardwareProperties.BOOLEAN_VALUES, SWT.READ_ONLY | SWT.DROP_DOWN); } return null; } @Override protected boolean canEdit(Object element) { String hardwareName = (String) element; HardwareProperty property = mHardwareMap.get(hardwareName); return property != null; } }); mHardwareViewer.setInput(mProperties); }
From source file:com.android.sdkuilib.internal.widgets.LegacyAvdEditDialog.java
License:Apache License
/** * Creates the UI for the hardware properties table. * This creates the {@link Table}, and several viewers ({@link TableViewer}, * {@link TableViewerColumn}) and adds edit support for the 2nd column *//*from w ww . j a v a 2 s .c o m*/ private void createHardwareTable(Composite parent) { final Table hardwareTable = new Table(parent, SWT.SINGLE | SWT.FULL_SELECTION); GridData gd = new GridData(GridData.FILL_HORIZONTAL | GridData.FILL_VERTICAL); gd.widthHint = 200; gd.heightHint = 100; hardwareTable.setLayoutData(gd); hardwareTable.setHeaderVisible(true); hardwareTable.setLinesVisible(true); // -- Table viewer mHardwareViewer = new TableViewer(hardwareTable); mHardwareViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { // it's a single selection mode, we can just access the selection index // from the table directly. mDeleteHardwareProp.setEnabled(hardwareTable.getSelectionIndex() != -1); } }); // only a content provider. Use viewers per column below (for editing support) mHardwareViewer.setContentProvider(new IStructuredContentProvider() { @Override public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { // we can just ignore this. we just use mProperties directly. } @Override public Object[] getElements(Object arg0) { return mProperties.keySet().toArray(); } @Override public void dispose() { // pass } }); // -- column 1: prop abstract name TableColumn col1 = new TableColumn(hardwareTable, SWT.LEFT); col1.setText("Property"); col1.setWidth(150); TableViewerColumn tvc1 = new TableViewerColumn(mHardwareViewer, col1); tvc1.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { String name = cell.getElement().toString(); HardwareProperty prop = mHardwareMap.get(name); if (prop != null) { cell.setText(prop.getAbstract()); } else { cell.setText(String.format("%1$s (Unknown)", name)); } } }); // -- column 2: prop value TableColumn col2 = new TableColumn(hardwareTable, SWT.LEFT); col2.setText("Value"); col2.setWidth(50); TableViewerColumn tvc2 = new TableViewerColumn(mHardwareViewer, col2); tvc2.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { String value = mProperties.get(cell.getElement()); cell.setText(value != null ? value : ""); } }); // add editing support to the 2nd column tvc2.setEditingSupport(new EditingSupport(mHardwareViewer) { @Override protected void setValue(Object element, Object value) { String hardwareName = (String) element; HardwareProperty property = mHardwareMap.get(hardwareName); int index; switch (property.getType()) { case INTEGER: mProperties.put((String) element, (String) value); break; case DISKSIZE: if (HardwareProperties.DISKSIZE_PATTERN.matcher((String) value).matches()) { mProperties.put((String) element, (String) value); } break; case BOOLEAN: index = (Integer) value; mProperties.put((String) element, HardwareProperties.getBooleanValue(index)); break; case STRING_ENUM: case INTEGER_ENUM: // For a combo, value is the index of the enum to use. index = (Integer) value; String[] values = property.getEnum(); if (values != null && values.length > index) { mProperties.put((String) element, values[index]); } break; } mHardwareViewer.refresh(element); } @Override protected Object getValue(Object element) { String hardwareName = (String) element; HardwareProperty property = mHardwareMap.get(hardwareName); String value = mProperties.get(hardwareName); switch (property.getType()) { case INTEGER: // intended fall-through. case DISKSIZE: return value; case BOOLEAN: return HardwareProperties.getBooleanValueIndex(value); case STRING_ENUM: case INTEGER_ENUM: // For a combo, we need to return the index of the value in the enum String[] values = property.getEnum(); if (values != null) { for (int i = 0; i < values.length; i++) { if (values[i].equals(value)) { return i; } } } } return null; } @Override protected CellEditor getCellEditor(Object element) { String hardwareName = (String) element; HardwareProperty property = mHardwareMap.get(hardwareName); switch (property.getType()) { // TODO: custom TextCellEditor that restrict input. case INTEGER: // intended fall-through. case DISKSIZE: return new TextCellEditor(hardwareTable); case BOOLEAN: return new ComboBoxCellEditor(hardwareTable, new String[] { HardwareProperties.getBooleanValue(0), HardwareProperties.getBooleanValue(1), }, SWT.READ_ONLY | SWT.DROP_DOWN); case STRING_ENUM: case INTEGER_ENUM: String[] values = property.getEnum(); if (values != null && values.length > 0) { return new ComboBoxCellEditor(hardwareTable, values, SWT.READ_ONLY | SWT.DROP_DOWN); } } return null; } @Override protected boolean canEdit(Object element) { String hardwareName = (String) element; HardwareProperty property = mHardwareMap.get(hardwareName); return property != null; } }); mHardwareViewer.setInput(mProperties); }
From source file:com.android.traceview.PropertiesDialog.java
License:Apache License
@Override protected Control createDialogArea(Composite parent) { Composite container = (Composite) super.createDialogArea(parent); GridLayout gridLayout = new GridLayout(1, false); gridLayout.marginWidth = 0;//from w w w .ja v a 2s .c om gridLayout.marginHeight = 0; gridLayout.horizontalSpacing = 0; gridLayout.verticalSpacing = 0; container.setLayout(gridLayout); TableViewer tableViewer = new TableViewer(container, SWT.HIDE_SELECTION | SWT.V_SCROLL | SWT.BORDER); tableViewer.getTable().setLinesVisible(true); tableViewer.getTable().setHeaderVisible(true); TableViewerColumn propertyColumn = new TableViewerColumn(tableViewer, SWT.NONE); propertyColumn.getColumn().setText("Property"); propertyColumn.setLabelProvider(new ColumnLabelProvider() { @Override @SuppressWarnings("unchecked") public String getText(Object element) { Entry<String, String> entry = (Entry<String, String>) element; return entry.getKey(); } }); propertyColumn.getColumn().setWidth(400); TableViewerColumn valueColumn = new TableViewerColumn(tableViewer, SWT.NONE); valueColumn.getColumn().setText("Value"); valueColumn.setLabelProvider(new ColumnLabelProvider() { @Override @SuppressWarnings("unchecked") public String getText(Object element) { Entry<String, String> entry = (Entry<String, String>) element; return entry.getValue(); } }); valueColumn.getColumn().setWidth(200); tableViewer.setContentProvider(new ArrayContentProvider()); tableViewer.setInput(mProperties.entrySet().toArray()); GridData gridData = new GridData(); gridData.verticalAlignment = GridData.FILL; gridData.horizontalAlignment = GridData.FILL; gridData.grabExcessHorizontalSpace = true; gridData.grabExcessVerticalSpace = true; tableViewer.getControl().setLayoutData(gridData); return container; }
From source file:com.android.uiautomator.UiAutomatorView.java
License:Apache License
public UiAutomatorView(Composite parent, int style) { super(parent, SWT.NONE); setLayout(new FillLayout()); SashForm baseSash = new SashForm(this, SWT.HORIZONTAL); mOrginialCursor = getShell().getCursor(); mCrossCursor = new Cursor(getDisplay(), SWT.CURSOR_CROSS); mScreenshotComposite = new Composite(baseSash, SWT.BORDER); mStackLayout = new StackLayout(); mScreenshotComposite.setLayout(mStackLayout); // draw the canvas with border, so the divider area for sash form can be highlighted mScreenshotCanvas = new Canvas(mScreenshotComposite, SWT.BORDER); mStackLayout.topControl = mScreenshotCanvas; mScreenshotComposite.layout();//from ww w .j av a 2 s. c om // set cursor when enter canvas mScreenshotCanvas.addListener(SWT.MouseEnter, new Listener() { @Override public void handleEvent(Event arg0) { getShell().setCursor(mCrossCursor); } }); mScreenshotCanvas.addListener(SWT.MouseExit, new Listener() { @Override public void handleEvent(Event arg0) { getShell().setCursor(mOrginialCursor); } }); mScreenshotCanvas.addMouseListener(new MouseAdapter() { @Override public void mouseUp(MouseEvent e) { if (mModel != null) { mModel.toggleExploreMode(); redrawScreenshot(); } if (e.button == 3) { //set menus Menu menu = new Menu(mScreenshotCanvas); mScreenshotCanvas.setMenu(menu); Menu menu1 = new Menu(menu); Menu menu2 = new Menu(menu); Menu menu3 = new Menu(menu); Menu menu4 = new Menu(menu); Menu menu5 = new Menu(menu); Menu menu6 = new Menu(menu); Menu menu7 = new Menu(menu); Menu menu8 = new Menu(menu); Menu menu9 = new Menu(menu); //set items MenuItem item1 = new MenuItem(menu, SWT.CASCADE); MenuItem item2 = new MenuItem(menu, SWT.CASCADE); MenuItem item3 = new MenuItem(menu, SWT.CASCADE); MenuItem item4 = new MenuItem(menu, SWT.CASCADE); MenuItem item5 = new MenuItem(menu, SWT.CASCADE); MenuItem item6 = new MenuItem(menu, SWT.CASCADE); MenuItem item7 = new MenuItem(menu, SWT.CASCADE); MenuItem item8 = new MenuItem(menu, SWT.CASCADE); MenuItem item9 = new MenuItem(menu, SWT.CASCADE); MenuItem item43 = new MenuItem(menu, SWT.CASCADE); MenuItem item10 = new MenuItem(menu1, SWT.NONE); MenuItem item11 = new MenuItem(menu1, SWT.NONE); MenuItem item12 = new MenuItem(menu1, SWT.NONE); MenuItem item13 = new MenuItem(menu1, SWT.NONE); MenuItem item14 = new MenuItem(menu1, SWT.NONE); MenuItem item15 = new MenuItem(menu2, SWT.NONE); MenuItem item16 = new MenuItem(menu2, SWT.NONE); MenuItem item17 = new MenuItem(menu2, SWT.NONE); MenuItem item18 = new MenuItem(menu2, SWT.NONE); MenuItem item19 = new MenuItem(menu2, SWT.NONE); MenuItem item20 = new MenuItem(menu3, SWT.NONE); MenuItem item21 = new MenuItem(menu3, SWT.NONE); MenuItem item22 = new MenuItem(menu3, SWT.NONE); MenuItem item23 = new MenuItem(menu3, SWT.NONE); MenuItem item24 = new MenuItem(menu3, SWT.NONE); MenuItem item25 = new MenuItem(menu4, SWT.NONE); MenuItem item26 = new MenuItem(menu4, SWT.NONE); MenuItem item27 = new MenuItem(menu4, SWT.NONE); MenuItem item28 = new MenuItem(menu4, SWT.NONE); MenuItem item29 = new MenuItem(menu4, SWT.NONE); MenuItem item30 = new MenuItem(menu6, SWT.NONE); MenuItem item31 = new MenuItem(menu6, SWT.NONE); MenuItem item32 = new MenuItem(menu6, SWT.NONE); MenuItem item33 = new MenuItem(menu5, SWT.NONE); MenuItem item34 = new MenuItem(menu5, SWT.NONE); MenuItem item35 = new MenuItem(menu5, SWT.NONE); MenuItem item36 = new MenuItem(menu5, SWT.NONE); MenuItem item37 = new MenuItem(menu5, SWT.NONE); MenuItem item38 = new MenuItem(menu8, SWT.NONE); MenuItem item39 = new MenuItem(menu8, SWT.NONE); MenuItem item40 = new MenuItem(menu8, SWT.NONE); MenuItem item41 = new MenuItem(menu8, SWT.NONE); MenuItem item42 = new MenuItem(menu8, SWT.NONE); MenuItem item44 = new MenuItem(menu6, SWT.NONE); //set item text item1.setText("Click"); item2.setText("Click(Refresh)"); item3.setText("longClick"); item4.setText("longClick(Refresh)"); item5.setText("editText"); item6.setText("SystemCommand"); item7.setText("SystemCommand(Refresh)"); item43.setText("Sleep"); item8.setText("Check"); item9.setText("Find"); item10.setText("id"); item11.setText("text"); item12.setText("desc"); item13.setText("class"); item14.setText("xpath"); item15.setText("id"); item16.setText("text"); item17.setText("desc"); item18.setText("class"); item19.setText("xpath"); item20.setText("id"); item21.setText("text"); item22.setText("desc"); item23.setText("class"); item24.setText("xpath"); item25.setText("id"); item26.setText("text"); item27.setText("desc"); item28.setText("class"); item29.setText("xpath"); item30.setText("Home"); item31.setText("Back"); item32.setText("Power"); item33.setText("id"); item34.setText("text"); item35.setText("desc"); item36.setText("class"); item37.setText("xpath"); item38.setText("id"); item39.setText("text"); item40.setText("desc"); item41.setText("class"); item42.setText("xpath"); item44.setText("Other"); //bind menu item1.setMenu(menu1); //item2.setMenu(menu2); item3.setMenu(menu3); //item4.setMenu(menu4); item5.setMenu(menu5); item6.setMenu(menu6); //item7.setMenu(menu7); item8.setMenu(menu8); //item9.setMenu(menu9); //add item listener //click item10-14 item10.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByAction(item10.getText(), item1.getText()); chargeText(script); //scriptTextarea.setText(script); } }); item11.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByAction(item11.getText(), item1.getText()); chargeText(script); } }); item12.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByAction(item12.getText(), item1.getText()); chargeText(script); } }); item13.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByAction(item13.getText(), item1.getText()); chargeText(script); } }); item14.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByAction(item14.getText(), item1.getText()); chargeText(script); } }); //click(refresh) item15-19 item2.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { objectClick(item2.getText(), ""); UiAutomatorViewer window = UiAutomatorViewer.getInstance(); ScreenshotAction screenshot = new ScreenshotAction(window, false); screenshot.run(); } }); //longclick item20-24 item20.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByAction(item20.getText(), item3.getText()); chargeText(script); } }); item21.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByAction(item21.getText(), item3.getText()); chargeText(script); } }); item22.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByAction(item22.getText(), item3.getText()); chargeText(script); } }); item23.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByAction(item23.getText(), item3.getText()); chargeText(script); } }); item24.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByAction(item24.getText(), item3.getText()); chargeText(script); } }); //longclick(refresh) item4.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { objectClick(item4.getText(), ""); UiAutomatorViewer window = UiAutomatorViewer.getInstance(); ScreenshotAction screenshot = new ScreenshotAction(window, false); screenshot.run(); } }); //edittext item33-37 item33.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { InputDialog dialog = new InputDialog(getShell(), "please input id", "please input", null, null); if (dialog.open() == InputDialog.OK) { String script = getScriptByValue(item33.getText(), dialog.getValue()); chargeText(script); } } }); item34.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { InputDialog dialog = new InputDialog(getShell(), "please input text", "please input", null, null); if (dialog.open() == InputDialog.OK) { String script = getScriptByValue(item34.getText(), dialog.getValue()); chargeText(script); } } }); item35.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { InputDialog dialog = new InputDialog(getShell(), "please input desc", "please input", null, null); if (dialog.open() == InputDialog.OK) { String script = getScriptByValue(item35.getText(), dialog.getValue()); chargeText(script); } } }); item36.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { InputDialog dialog = new InputDialog(getShell(), "please input class", "please input", null, null); if (dialog.open() == InputDialog.OK) { String script = getScriptByValue(item36.getText(), dialog.getValue()); chargeText(script); } } }); item37.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { InputDialog dialog = new InputDialog(getShell(), "please input xpath", "please input", null, null); if (dialog.open() == InputDialog.OK) { String script = getScriptByValue(item37.getText(), dialog.getValue()); chargeText(script); } } }); //systemcommand item30.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByCommand(item30.getText(), "3"); chargeText(script); } }); item31.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByCommand(item31.getText(), "4"); chargeText(script); } }); item32.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String script = getScriptByCommand(item32.getText(), "26"); chargeText(script); } }); item44.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { InputDialog dialog = new InputDialog(getShell(), "please input text", "please input", null, null); if (dialog.open() == InputDialog.OK && dialog.getValue() != "") { String script = getScriptByCommand(item44.getText(), dialog.getValue()); chargeText(script); } else { //MessageDialog mdialog=new MessageDialog(getShell(), null, null, "please enter text", MessageDialog.WARNING, null, MessageDialog.WARNING); //mdialog.open(); dialog.open(); } } }); //systemcommand(refresh) item7.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { InputDialog dialog = new InputDialog(getShell(), "please input keyevent", "please input", null, null); if (dialog.open() == InputDialog.OK) { objectClick(item7.getText(), dialog.getValue()); UiAutomatorViewer window = UiAutomatorViewer.getInstance(); ScreenshotAction screenshot = new ScreenshotAction(window, false); screenshot.run(); } } }); } } private String getRes(String res) { String Res = ((UiNode) mModel.getSelectedNode()).getAttribute(res); return Res; } private String getScriptByAction(String id, String ac) { // TODO Auto-generated methoad stub String script = "driver"; String res = ""; switch (id) { case "id": res = getRes("resource-id"); script += ".findElementById(\"" + res + "\")."; script += chargeAction(ac); break; case "text": res = getRes("text"); script += ".findElementByText(\"" + res + "\")."; script += chargeAction(ac); break; case "class": res = getRes("class"); script += ".findElementByClassName(\"" + res + "\")."; script += chargeAction(ac); break; case "desc": res = getRes("content-desc"); script += ".findElementByContent(\"" + res + "\")."; script += chargeAction(ac); break; case "xpath": res = getRes("xpath"); script += ".findElementByXpath(\"" + res + "\")."; script += chargeAction(ac); break; } return script; } private String getScriptByCommand(String id, String value) { String script = "driver"; switch (id) { case "Home": script += ".sendKeys(\"" + value + "\")"; break; case "Back": script += ".sendKeys(\"" + value + "\")"; break; case "Power": script += ".sendKeys(\"" + value + "\")"; break; case "Other": script += ".sendKeys(\"" + value + "\")"; break; } return script; } private String getScriptByValue(String id, String value) { // TODO Auto-generated method stub String script = "driver"; String res = ""; switch (id) { case "id": res = getRes("resource-id"); script += ".findElementById(\"" + res + "\").sendKeys(\"" + value + "\")"; break; case "text": res = getRes("text"); script += ".findElementByText(\"" + res + "\").sendKeys(\"" + value + "\")"; break; case "class": res = getRes("class"); script += ".findElementByClassName(\"" + res + "\").sendKeys(\"" + value + "\")"; break; case "desc": res = getRes("content-desc"); script += ".findElementByContent(\"" + res + "\").sendKeys(\"" + value + "\")"; break; case "xpath": res = getRes("xpath"); script += ".findElementByXpath(\"" + res + "\").sendKeys(\"" + value + "\")"; break; } return script; } private String chargeAction(String ac) { String ca = ""; switch (ac) { case "Click": ca = "click();"; break; case "longClick": ca = "longclick();"; break; } return ca; } private void chargeText(String res) { if (scriptTextarea.getText().isEmpty()) { scriptTextarea.append(res); } else { scriptTextarea.append(System.getProperty("line.separator") + res); } } private void objectClick(String ac, String value) { Rectangle rect = mModel.getCurrentDrawingRect(); String adbStr = ""; switch (ac) { case "Click(Refresh)": adbStr = "adb shell input tap " + (rect.x + rect.width / 2) + " " + (rect.y + rect.height / 2); break; case "LongClick(Refresh)": adbStr = "adb shell input tap " + (rect.x + rect.width / 2) + " " + (rect.y + rect.height / 2); break; case "SystemCommand(Refresh)": adbStr = "adb shell input keyevent " + value + ""; break; } try { System.out.println(adbStr); Runtime.getRuntime().exec(adbStr); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }); mScreenshotCanvas.setBackground(getShell().getDisplay().getSystemColor(SWT.COLOR_WIDGET_BACKGROUND)); mScreenshotCanvas.addPaintListener(new PaintListener() { @Override public void paintControl(PaintEvent e) { if (mScreenshot != null) { updateScreenshotTransformation(); // shifting the image here, so that there's a border around screen shot // this makes highlighting red rectangles on the screen shot edges more visible Transform t = new Transform(e.gc.getDevice()); t.translate(mDx, mDy); t.scale(mScale, mScale); e.gc.setTransform(t); e.gc.drawImage(mScreenshot, 0, 0); // this resets the transformation to identity transform, i.e. no change // we don't use transformation here because it will cause the line pattern // and line width of highlight rect to be scaled, causing to appear to be blurry e.gc.setTransform(null); if (mModel.shouldShowNafNodes()) { // highlight the "Not Accessibility Friendly" nodes e.gc.setForeground(e.gc.getDevice().getSystemColor(SWT.COLOR_YELLOW)); e.gc.setBackground(e.gc.getDevice().getSystemColor(SWT.COLOR_YELLOW)); for (Rectangle r : mModel.getNafNodes()) { e.gc.setAlpha(50); e.gc.fillRectangle(mDx + getScaledSize(r.x), mDy + getScaledSize(r.y), getScaledSize(r.width), getScaledSize(r.height)); e.gc.setAlpha(255); e.gc.setLineStyle(SWT.LINE_SOLID); e.gc.setLineWidth(2); e.gc.drawRectangle(mDx + getScaledSize(r.x), mDy + getScaledSize(r.y), getScaledSize(r.width), getScaledSize(r.height)); } } // draw the search result rects if (mSearchResult != null) { for (BasicTreeNode result : mSearchResult) { if (result instanceof UiNode) { UiNode uiNode = (UiNode) result; Rectangle rect = new Rectangle(uiNode.x, uiNode.y, uiNode.width, uiNode.height); e.gc.setForeground(e.gc.getDevice().getSystemColor(SWT.COLOR_YELLOW)); e.gc.setLineStyle(SWT.LINE_DASH); e.gc.setLineWidth(1); e.gc.drawRectangle(mDx + getScaledSize(rect.x), mDy + getScaledSize(rect.y), getScaledSize(rect.width), getScaledSize(rect.height)); } } } // draw the mouseover rects Rectangle rect = mModel.getCurrentDrawingRect(); if (rect != null) { e.gc.setForeground(e.gc.getDevice().getSystemColor(SWT.COLOR_RED)); if (mModel.isExploreMode()) { // when we highlight nodes dynamically on mouse move, // use dashed borders e.gc.setLineStyle(SWT.LINE_DASH); e.gc.setLineWidth(1); } else { // when highlighting nodes on tree node selection, // use solid borders e.gc.setLineStyle(SWT.LINE_SOLID); e.gc.setLineWidth(2); } e.gc.drawRectangle(mDx + getScaledSize(rect.x), mDy + getScaledSize(rect.y), getScaledSize(rect.width), getScaledSize(rect.height)); } } } }); mScreenshotCanvas.addMouseMoveListener(new MouseMoveListener() { @Override public void mouseMove(MouseEvent e) { if (mModel != null) { int x = getInverseScaledSize(e.x - mDx); int y = getInverseScaledSize(e.y - mDy); // show coordinate coordinateLabel.setText(String.format("(%d,%d)", x, y)); if (mModel.isExploreMode()) { BasicTreeNode node = mModel.updateSelectionForCoordinates(x, y); if (node != null) { updateTreeSelection(node); } } } } }); mSetScreenshotComposite = new Composite(mScreenshotComposite, SWT.NONE); mSetScreenshotComposite.setLayout(new GridLayout()); final Button setScreenshotButton = new Button(mSetScreenshotComposite, SWT.PUSH); setScreenshotButton.setText("Specify Screenshot..."); setScreenshotButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent arg0) { FileDialog fd = new FileDialog(setScreenshotButton.getShell()); fd.setFilterExtensions(new String[] { "*.png" }); if (mModelFile != null) { fd.setFilterPath(mModelFile.getParent()); } String screenshotPath = fd.open(); if (screenshotPath == null) { return; } ImageData[] data; try { data = new ImageLoader().load(screenshotPath); } catch (Exception e) { return; } // "data" is an array, probably used to handle images that has multiple frames // i.e. gifs or icons, we just care if it has at least one here if (data.length < 1) { return; } mScreenshot = new Image(Display.getDefault(), data[0]); redrawScreenshot(); } }); // right sash is split into 2 parts: upper-right and lower-right // both are composites with borders, so that the horizontal divider can be highlighted by // the borders SashForm rightSash = new SashForm(baseSash, SWT.VERTICAL); // upper-right base contains the toolbar and the tree Composite upperRightBase = new Composite(rightSash, SWT.BORDER); upperRightBase.setLayout(new GridLayout(1, false)); ToolBarManager toolBarManager = new ToolBarManager(SWT.FLAT); toolBarManager.add(new ExpandAllAction(this)); toolBarManager.add(new ToggleNafAction(this)); ToolBar searchtoolbar = toolBarManager.createControl(upperRightBase); // add search box and navigation buttons for search results ToolItem itemSeparator = new ToolItem(searchtoolbar, SWT.SEPARATOR | SWT.RIGHT); searchTextarea = new Text(searchtoolbar, SWT.BORDER | SWT.SINGLE | SWT.SEARCH); searchTextarea.pack(); itemSeparator.setWidth(searchTextarea.getBounds().width); itemSeparator.setControl(searchTextarea); itemPrev = new ToolItem(searchtoolbar, SWT.SIMPLE); itemPrev.setImage(ImageHelper.loadImageDescriptorFromResource("images/prev.png").createImage()); itemNext = new ToolItem(searchtoolbar, SWT.SIMPLE); itemNext.setImage(ImageHelper.loadImageDescriptorFromResource("images/next.png").createImage()); itemDeleteAndInfo = new ToolItem(searchtoolbar, SWT.SIMPLE); itemDeleteAndInfo.setImage(ImageHelper.loadImageDescriptorFromResource("images/delete.png").createImage()); itemDeleteAndInfo.setToolTipText("Clear search results"); coordinateLabel = new ToolItem(searchtoolbar, SWT.SIMPLE); coordinateLabel.setText(""); coordinateLabel.setEnabled(false); // add search function searchTextarea.addKeyListener(new KeyListener() { @Override public void keyReleased(KeyEvent event) { if (event.keyCode == SWT.CR) { String term = searchTextarea.getText(); if (!term.isEmpty()) { if (term.equals(mLastSearchedTerm)) { nextSearchResult(); return; } clearSearchResult(); mSearchResult = mModel.searchNode(term); if (!mSearchResult.isEmpty()) { mSearchResultIndex = 0; updateSearchResultSelection(); mLastSearchedTerm = term; } } } } @Override public void keyPressed(KeyEvent event) { } }); SelectionListener l = new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent se) { if (se.getSource() == itemPrev) { prevSearchResult(); } else if (se.getSource() == itemNext) { nextSearchResult(); } else if (se.getSource() == itemDeleteAndInfo) { searchTextarea.setText(""); clearSearchResult(); } } }; itemPrev.addSelectionListener(l); itemNext.addSelectionListener(l); itemDeleteAndInfo.addSelectionListener(l); searchtoolbar.pack(); searchtoolbar.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); mTreeViewer = new TreeViewer(upperRightBase, SWT.NONE); mTreeViewer.setContentProvider(new BasicTreeNodeContentProvider()); // default LabelProvider uses toString() to generate text to display mTreeViewer.setLabelProvider(new LabelProvider()); mTreeViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { BasicTreeNode selectedNode = null; if (event.getSelection() instanceof IStructuredSelection) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); Object o = selection.getFirstElement(); if (o instanceof BasicTreeNode) { selectedNode = (BasicTreeNode) o; } } mModel.setSelectedNode(selectedNode); redrawScreenshot(); if (selectedNode != null) { loadAttributeTable(); } } }); Tree tree = mTreeViewer.getTree(); tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); // move focus so that it's not on tool bar (looks weird) tree.setFocus(); // lower-right base contains the detail group Composite lowerRightBase = new Composite(rightSash, SWT.BORDER); lowerRightBase.setLayout(new FillLayout()); Group grpNodeDetail = new Group(lowerRightBase, SWT.NONE); grpNodeDetail.setLayout(new FillLayout(SWT.HORIZONTAL)); grpNodeDetail.setText("Node Detail"); Composite tableContainer = new Composite(grpNodeDetail, SWT.NONE); TableColumnLayout columnLayout = new TableColumnLayout(); tableContainer.setLayout(columnLayout); mTableViewer = new TableViewer(tableContainer, SWT.NONE | SWT.FULL_SELECTION); Table table = mTableViewer.getTable(); table.setLinesVisible(true); // use ArrayContentProvider here, it assumes the input to the TableViewer // is an array, where each element represents a row in the table mTableViewer.setContentProvider(new ArrayContentProvider()); TableViewerColumn tableViewerColumnKey = new TableViewerColumn(mTableViewer, SWT.NONE); TableColumn tblclmnKey = tableViewerColumnKey.getColumn(); tableViewerColumnKey.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof AttributePair) { // first column, shows the attribute name return ((AttributePair) element).key; } return super.getText(element); } }); columnLayout.setColumnData(tblclmnKey, new ColumnWeightData(1, ColumnWeightData.MINIMUM_WIDTH, true)); TableViewerColumn tableViewerColumnValue = new TableViewerColumn(mTableViewer, SWT.NONE); tableViewerColumnValue.setEditingSupport(new AttributeTableEditingSupport(mTableViewer)); TableColumn tblclmnValue = tableViewerColumnValue.getColumn(); columnLayout.setColumnData(tblclmnValue, new ColumnWeightData(2, ColumnWeightData.MINIMUM_WIDTH, true)); tableViewerColumnValue.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof AttributePair) { // second column, shows the attribute value return ((AttributePair) element).value; } return super.getText(element); } }); SashForm downSash = new SashForm(baseSash, SWT.VERTICAL | SWT.BORDER); scriptTextarea = new Text(downSash, SWT.MULTI | SWT.BORDER | SWT.WRAP | SWT.V_SCROLL | SWT.READ_ONLY); downSash.setMaximizedControl(scriptTextarea); scriptTextarea.pack(); scriptTextarea.addKeyListener(new KeyListener() { @Override public void keyReleased(KeyEvent event) { if (event.keyCode == SWT.CR) { String lastterm = scriptTextarea.getText(); if (!lastterm.isEmpty()) { if (count == 0) { MessageDialog.openWarning(shell, "", ""); term = lastterm; scriptTextarea.setText(term); count++; } else { term += lastterm; scriptTextarea.setText(term); count++; } } } } @Override public void keyPressed(KeyEvent event) { } }); baseSash.setWeights(new int[] { 4, 3, 3 }); // sets the ratio of the vertical split: left 5 vs right 3 //baseSash.setWeights(new int[] {5,3}); }
From source file:com.apicloud.navigator.dialogs.AddFeatureDialog.java
License:Open Source License
private TableViewer createTable(TabFolder tabFolder, TabItem systemItem) { TableViewer tableViewer = new TableViewer(tabFolder, SWT.BORDER | SWT.FULL_SELECTION); final Table table = tableViewer.getTable(); table.addListener(SWT.MeasureItem, new Listener() { @Override/* w w w.j av a 2s . c o m*/ public void handleEvent(Event event) { event.height = 30; } }); table.addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { TableItem[] ti = table.getSelection(); Feature f = (Feature) ti[0].getData(); selectFeature = f; lblParamkey.setText(" urlScheme"); lblParamvalue.setText(" apiKey"); if (f.getName().equals("weiXin") || f.getName().equals("sinaWeiBo") || f.getName().equals("qq")) { lblParamkey.setVisible(true); text_urlScheme.setVisible(true); lblParamvalue.setVisible(true); text_apiKey.setVisible(true); } else if (f.getName().equals("baiduLocation")) { lblParamkey.setVisible(false); text_urlScheme.setVisible(false); lblParamvalue.setVisible(true); text_apiKey.setVisible(true); } else if (f.getName().equals("aliPay")) { lblParamkey.setVisible(true); text_urlScheme.setVisible(true); lblParamvalue.setVisible(false); text_apiKey.setVisible(false); } else if (f.getName().equals("baiduMap")) { lblParamkey.setText("androidAPIKey"); lblParamvalue.setText("iosAPIKey"); lblParamkey.setVisible(true); text_urlScheme.setVisible(true); lblParamvalue.setVisible(true); text_apiKey.setVisible(true); } else { lblParamkey.setVisible(false); text_urlScheme.setVisible(false); lblParamvalue.setVisible(false); text_apiKey.setVisible(false); } } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); systemItem.setControl(tableViewer.getTable()); TableViewerColumn tableViewerColumn_name = new TableViewerColumn(tableViewer, SWT.NONE); TableColumn tableColumn_name = tableViewerColumn_name.getColumn(); tableColumn_name.setWidth(150); tableViewerColumn_name.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Feature) element).getName(); } }); TableViewerColumn tableViewerColumn_desc = new TableViewerColumn(tableViewer, SWT.NONE); TableColumn tableColumn_desc = tableViewerColumn_desc.getColumn(); tableColumn_desc.setWidth(310); tableViewerColumn_desc.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Feature) element).getDesc(); } }); TableViewerColumn tableViewerColumn_ios = new TableViewerColumn(tableViewer, SWT.NONE); TableColumn tableColumn_ios = tableViewerColumn_ios.getColumn(); tableColumn_ios.setWidth(20); tableViewerColumn_ios.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return null; } @Override public Image getImage(Object element) { return ((Feature) element).isIos() ? AuthenticActivator.getImage("icons/ios.png") : super.getImage(element); } }); TableViewerColumn tableViewerColumn_android = new TableViewerColumn(tableViewer, SWT.NONE); TableColumn tableColumn_android = tableViewerColumn_android.getColumn(); tableColumn_android.setWidth(20); tableViewerColumn_android.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return null; } @Override public Image getImage(Object element) { return ((Feature) element).isAndroid() ? AuthenticActivator.getImage("icons/android.png") : super.getImage(element); } }); tableViewer.setContentProvider(new ArrayContentProvider()); return tableViewer; }
From source file:com.apicloud.navigator.ui.editors.ConfigEditor.java
License:Open Source License
@Override public void createPartControl(Composite parent) { parent.setLayout(new GridLayout(1, false)); ScrolledComposite scrolledComposite = new ScrolledComposite(parent, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); scrolledComposite.setExpandVertical(true); scrolledComposite.setExpandHorizontal(true); scrolledComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); formToolkit.adapt(scrolledComposite); formToolkit.paintBordersFor(scrolledComposite); scrolledComposite.setMinWidth(600);//from w w w . j a va2 s .co m scrolledComposite.setMinHeight(1400); scrolledComposite.getVerticalBar().setIncrement(10); Composite composite_3 = new Composite(scrolledComposite, SWT.NONE); formToolkit.adapt(composite_3); formToolkit.paintBordersFor(composite_3); composite_3.setLayout(new GridLayout(1, false)); generalSection = new GeneralSectionBuilder(formToolkit, composite_3, this); generalSection.buildUI(); generalSection.bindData(config); Section preferenceSection = formToolkit.createSection(composite_3, Section.TWISTIE | Section.TITLE_BAR); preferenceSection.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.paintBordersFor(preferenceSection); preferenceSection.setText("\u504F\u597D\u8BBE\u7F6E"); preferenceSection.setExpanded(true); Composite preferenceComposite = formToolkit.createComposite(preferenceSection, SWT.NONE); preferenceComposite.setToolTipText(""); formToolkit.paintBordersFor(preferenceComposite); preferenceSection.setClient(preferenceComposite); preferenceComposite.setLayout(new GridLayout(2, false)); Label appBackground = new Label(preferenceComposite, SWT.NONE); appBackground.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, true, false, 1, 1)); formToolkit.adapt(appBackground, true, true); appBackground.setText("appBackground:"); Composite appBackgroundComposite = new Composite(preferenceComposite, SWT.NONE); appBackgroundComposite.setLayout(new GridLayout(1, false)); appBackgroundComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(appBackgroundComposite); formToolkit.paintBordersFor(appBackgroundComposite); appBackgroundText = new Text(appBackgroundComposite, SWT.BORDER); GridData gd_appBackgroundText = new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1); gd_appBackgroundText.widthHint = 200; appBackgroundText.setLayoutData(gd_appBackgroundText); appBackgroundText.setText(getPreferenceValue("appBackground", config) == null ? "" : getPreferenceValue("appBackground", config)); appBackgroundText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { String value = appBackgroundText.getText() == null ? "" : appBackgroundText.getText(); changePreferenceValue("appBackground", value); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(appBackgroundText, true, true); Label windowBackground = new Label(preferenceComposite, SWT.NONE); windowBackground.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(windowBackground, true, true); windowBackground.setText("windowBackground:"); Composite windowBackgroundComposite = new Composite(preferenceComposite, SWT.NONE); windowBackgroundComposite.setLayout(new GridLayout(1, false)); windowBackgroundComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(windowBackgroundComposite); formToolkit.paintBordersFor(windowBackgroundComposite); windowBackgroundText = new Text(windowBackgroundComposite, SWT.BORDER); GridData gd_windowBackgroundText = new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1); gd_windowBackgroundText.widthHint = 200; windowBackgroundText.setLayoutData(gd_windowBackgroundText); windowBackgroundText.setText(getPreferenceValue("windowBackground", config) == null ? "" : getPreferenceValue("windowBackground", config)); windowBackgroundText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { String value = windowBackgroundText.getText() == null ? "" : windowBackgroundText.getText(); changePreferenceValue("windowBackground", value); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(windowBackgroundText, true, true); Label frameBackground = new Label(preferenceComposite, SWT.NONE); frameBackground.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(frameBackground, true, true); frameBackground.setText("frameBackgroundColor:"); Composite frameBackgroundComposite = new Composite(preferenceComposite, SWT.NONE); frameBackgroundComposite.setLayout(new GridLayout(6, false)); frameBackgroundComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(frameBackgroundComposite); formToolkit.paintBordersFor(frameBackgroundComposite); frameBackgroundText = new Text(frameBackgroundComposite, SWT.BORDER); GridData gd_frameBackgroundText = new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1); gd_frameBackgroundText.widthHint = 200; frameBackgroundText.setLayoutData(gd_frameBackgroundText); frameBackgroundText.setText(getPreferenceValue("frameBackgroundColor", config) == null ? "" : getPreferenceValue("frameBackgroundColor", config)); frameBackgroundText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { String value = frameBackgroundText.getText() == null ? "" : frameBackgroundText.getText(); changePreferenceValue("frameBackgroundColor", value); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(frameBackgroundText, true, true); Label lblNewLabel_4 = new Label(frameBackgroundComposite, SWT.NONE); formToolkit.adapt(lblNewLabel_4, true, true); new Label(frameBackgroundComposite, SWT.NONE); new Label(frameBackgroundComposite, SWT.NONE); new Label(frameBackgroundComposite, SWT.NONE); new Label(frameBackgroundComposite, SWT.NONE); Label pageBounce = new Label(preferenceComposite, SWT.NONE); pageBounce.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(pageBounce, true, true); pageBounce.setText("pageBounce:"); Composite pageBounceComposite = new Composite(preferenceComposite, SWT.NONE); pageBounceComposite.setLayout(new GridLayout(2, false)); pageBounceComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(pageBounceComposite); formToolkit.paintBordersFor(pageBounceComposite); pageBounceButton_ok = new Button(pageBounceComposite, SWT.RADIO | SWT.RIGHT); pageBounceButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("pageBounce", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); pageBounceButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(pageBounceButton_ok, true, true); pageBounceButton_ok.setText("true"); pageBounceButton_cancel = new Button(pageBounceComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("pageBounce", config) == null ? "false" : getPreferenceValue("pageBounce", config))) { pageBounceButton_ok.setSelection(true); changePreferenceValue("pageBounce", "true"); } else { pageBounceButton_cancel.setSelection(true); changePreferenceValue("pageBounce", "false"); } pageBounceButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("pageBounce", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(pageBounceButton_cancel, true, true); pageBounceButton_cancel.setText("false"); Label hScrollBarEnabled = new Label(preferenceComposite, SWT.NONE); hScrollBarEnabled.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(hScrollBarEnabled, true, true); hScrollBarEnabled.setText("hScrollBarEnabled:"); Composite hScrollBarEnabledComposite = new Composite(preferenceComposite, SWT.NONE); hScrollBarEnabledComposite.setLayout(new GridLayout(2, false)); hScrollBarEnabledComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(hScrollBarEnabledComposite); formToolkit.paintBordersFor(hScrollBarEnabledComposite); hScrollBarEnabledButton_ok = new Button(hScrollBarEnabledComposite, SWT.RADIO | SWT.RIGHT); hScrollBarEnabledButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("hScrollBarEnabled", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); hScrollBarEnabledButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(hScrollBarEnabledButton_ok, true, true); hScrollBarEnabledButton_ok.setText("true"); hScrollBarEnabledButton_cancel = new Button(hScrollBarEnabledComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("hScrollBarEnabled", config) == null ? "false" : getPreferenceValue("hScrollBarEnabled", config))) { hScrollBarEnabledButton_ok.setSelection(true); changePreferenceValue("hScrollBarEnabled", "true"); } else { hScrollBarEnabledButton_cancel.setSelection(true); changePreferenceValue("hScrollBarEnabled", "false"); } hScrollBarEnabledButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("hScrollBarEnabled", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(hScrollBarEnabledButton_cancel, true, true); hScrollBarEnabledButton_cancel.setText("false"); Label vScrollBarEnabled = new Label(preferenceComposite, SWT.NONE); vScrollBarEnabled.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(vScrollBarEnabled, true, true); vScrollBarEnabled.setText("vScrollBarEnabled:"); Composite vScrollBarEnabledComposite = new Composite(preferenceComposite, SWT.NONE); vScrollBarEnabledComposite.setLayout(new GridLayout(2, false)); vScrollBarEnabledComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(vScrollBarEnabledComposite); formToolkit.paintBordersFor(vScrollBarEnabledComposite); vScrollBarEnabledButton_ok = new Button(vScrollBarEnabledComposite, SWT.RADIO | SWT.RIGHT); vScrollBarEnabledButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("vScrollBarEnabled", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); vScrollBarEnabledButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(vScrollBarEnabledButton_ok, true, true); vScrollBarEnabledButton_ok.setText("true"); vScrollBarEnabledButton_cancel = new Button(vScrollBarEnabledComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("vScrollBarEnabled", config) == null ? "false" : getPreferenceValue("vScrollBarEnabled", config))) { vScrollBarEnabledButton_ok.setSelection(true); changePreferenceValue("vScrollBarEnabled", "true"); } else { vScrollBarEnabledButton_cancel.setSelection(true); changePreferenceValue("vScrollBarEnabled", "false"); } vScrollBarEnabledButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("vScrollBarEnabled", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(vScrollBarEnabledButton_cancel, true, true); vScrollBarEnabledButton_cancel.setText("false"); Label fullScreen = new Label(preferenceComposite, SWT.NONE); fullScreen.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(fullScreen, true, true); fullScreen.setText("fullScreen:"); Composite fullScreenComposite = new Composite(preferenceComposite, SWT.NONE); fullScreenComposite.setLayout(new GridLayout(2, false)); fullScreenComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(fullScreenComposite); formToolkit.paintBordersFor(fullScreenComposite); fullScreenButton_ok = new Button(fullScreenComposite, SWT.RADIO | SWT.RIGHT); fullScreenButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("fullScreen", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); fullScreenButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(fullScreenButton_ok, true, true); fullScreenButton_ok.setText("true"); fullScreenButton_cancel = new Button(fullScreenComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("fullScreen", config) == null ? "false" : getPreferenceValue("fullScreen", config))) { fullScreenButton_ok.setSelection(true); changePreferenceValue("fullScreen", "true"); } else { fullScreenButton_cancel.setSelection(true); changePreferenceValue("fullScreen", "false"); } fullScreenButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("fullScreen", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(fullScreenButton_cancel, true, true); fullScreenButton_cancel.setText("false"); Label ios7 = new Label(preferenceComposite, SWT.NONE); ios7.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(ios7, true, true); ios7.setText("IOS7StatusBarAppearance:"); Composite ios7Composite = new Composite(preferenceComposite, SWT.NONE); ios7Composite.setLayout(new GridLayout(2, false)); ios7Composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(ios7Composite); formToolkit.paintBordersFor(ios7Composite); ios7Button_ok = new Button(ios7Composite, SWT.RADIO | SWT.RIGHT); ios7Button_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("iOS7StatusBarAppearance", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); ios7Button_ok.setAlignment(SWT.LEFT); formToolkit.adapt(ios7Button_ok, true, true); ios7Button_ok.setText("true"); ios7Button_cancel = new Button(ios7Composite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("iOS7StatusBarAppearance", config) == null ? "false" : getPreferenceValue("iOS7StatusBarAppearance", config))) { ios7Button_ok.setSelection(true); changePreferenceValue("iOS7StatusBarAppearance", "true"); } else { ios7Button_cancel.setSelection(true); changePreferenceValue("iOS7StatusBarAppearance", "false"); } ios7Button_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("iOS7StatusBarAppearance", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(ios7Button_cancel, true, true); ios7Button_cancel.setText("false"); Label autoLaunch = new Label(preferenceComposite, SWT.NONE); autoLaunch.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(autoLaunch, true, true); autoLaunch.setText("autoLaunch:"); Composite autoLaunchComposite = new Composite(preferenceComposite, SWT.NONE); autoLaunchComposite.setLayout(new GridLayout(2, false)); autoLaunchComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(autoLaunchComposite); formToolkit.paintBordersFor(autoLaunchComposite); autoLaunchButton_ok = new Button(autoLaunchComposite, SWT.RADIO | SWT.RIGHT); autoLaunchButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("autoLaunch", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); autoLaunchButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(autoLaunchButton_ok, true, true); autoLaunchButton_ok.setText("true"); autoLaunchButton_cancel = new Button(autoLaunchComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("autoLaunch", config) == null ? "false" : getPreferenceValue("autoLaunch", config))) { autoLaunchButton_ok.setSelection(true); changePreferenceValue("autoLaunch", "true"); } else { autoLaunchButton_cancel.setSelection(true); changePreferenceValue("autoLaunch", "false"); } autoLaunchButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("autoLaunch", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(autoLaunchButton_cancel, true, true); autoLaunchButton_cancel.setText("false"); Label autoUpdate = new Label(preferenceComposite, SWT.NONE); autoUpdate.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(autoUpdate, true, true); autoUpdate.setText("autoUpdate:"); Composite autoUpdateComposite = new Composite(preferenceComposite, SWT.NONE); autoUpdateComposite.setLayout(new GridLayout(2, false)); autoUpdateComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(autoUpdateComposite); formToolkit.paintBordersFor(autoUpdateComposite); autoUpdateButton_ok = new Button(autoUpdateComposite, SWT.RADIO | SWT.RIGHT); autoUpdateButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("autoUpdate", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); autoUpdateButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(autoUpdateButton_ok, true, true); autoUpdateButton_ok.setText("true"); autoUpdateButton_cancel = new Button(autoUpdateComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("autoUpdate", config) == null ? "false" : getPreferenceValue("autoUpdate", config))) { autoUpdateButton_ok.setSelection(true); changePreferenceValue("autoUpdate", "true"); } else { autoUpdateButton_cancel.setSelection(true); changePreferenceValue("autoUpdate", "false"); } autoUpdateButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("autoUpdate", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(autoUpdateButton_cancel, true, true); autoUpdateButton_cancel.setText("false"); Label smartUpdate = new Label(preferenceComposite, SWT.NONE); smartUpdate.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(smartUpdate, true, true); smartUpdate.setText("smartUpdate:"); Composite smartUpdateComposite = new Composite(preferenceComposite, SWT.NONE); smartUpdateComposite.setLayout(new GridLayout(2, false)); smartUpdateComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(smartUpdateComposite); formToolkit.paintBordersFor(smartUpdateComposite); smartUpdateButton_ok = new Button(smartUpdateComposite, SWT.RADIO | SWT.RIGHT); smartUpdateButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("smartUpdate", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); smartUpdateButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(smartUpdateButton_ok, true, true); smartUpdateButton_ok.setText("true"); smartUpdateButton_cancel = new Button(smartUpdateComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("smartUpdate", config) == null ? "false" : getPreferenceValue("smartUpdate", config))) { smartUpdateButton_ok.setSelection(true); changePreferenceValue("smartUpdate", "true"); } else { smartUpdateButton_cancel.setSelection(true); changePreferenceValue("smartUpdate", "false"); } smartUpdateButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("smartUpdate", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(smartUpdateButton_cancel, true, true); smartUpdateButton_cancel.setText("false"); Section featureSection = formToolkit.createSection(composite_3, Section.TWISTIE | Section.TITLE_BAR); GridData gd_featureSection = new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1); gd_featureSection.heightHint = 112; featureSection.setLayoutData(gd_featureSection); formToolkit.paintBordersFor(featureSection); featureSection.setText(Messages.FEATURESETUP); featureSection.setExpanded(true); Composite composite_8 = new Composite(featureSection, SWT.NONE); formToolkit.adapt(composite_8); formToolkit.paintBordersFor(composite_8); featureSection.setClient(composite_8); composite_8.setLayout(new GridLayout(1, false)); Label lblNewLabel_1 = new Label(composite_8, SWT.NONE); lblNewLabel_1.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(lblNewLabel_1, true, true); lblNewLabel_1.setText(Messages.SYSTEMINFO); Composite composite = new Composite(composite_8, SWT.NONE); GridData gd_composite = new GridData(SWT.CENTER, SWT.CENTER, true, false, 1, 1); gd_composite.widthHint = 380; composite.setLayoutData(gd_composite); formToolkit.adapt(composite); formToolkit.paintBordersFor(composite); final Label addFeatureLabel = formToolkit.createLabel(composite, "", SWT.NONE); addFeatureLabel.setImage(Activator.getImage("icons/addfeature.png")); addFeatureLabel.setBounds(0, 0, 90, 26); addFeatureLabel.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { AddFeatureDialog dialog = new AddFeatureDialog(getSite().getShell(), ConfigEditor.this, treeViewer, config); dialog.open(); } }); addFeatureLabel.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseHover(MouseEvent e) { addFeatureLabel.setImage(Activator.getImage("icons/addfeaturefocus.png")); } @Override public void mouseExit(MouseEvent e) { addFeatureLabel.setImage(Activator.getImage("icons/addfeature.png")); } @Override public void mouseEnter(MouseEvent e) { addFeatureLabel.setImage(Activator.getImage("icons/addfeaturefocus.png")); } }); final Label addParamLabel = formToolkit.createLabel(composite, "", SWT.NONE); addParamLabel.setImage(Activator.getImage("icons/addParam.png")); addParamLabel.setBounds(95, 0, 90, 26); addParamLabel.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { if (config.getFeatures().size() == 0) { MessageDialog.openInformation(getSite().getShell(), Messages.PackageAppItemDialog_INFO, Messages.ADDFEATURE); return; } CreateParamDialog dialog = new CreateParamDialog(getSite().getShell(), ConfigEditor.this, treeViewer, config); dialog.open(); } }); addParamLabel.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseHover(MouseEvent e) { addParamLabel.setImage(Activator.getImage("icons/addParamfocus.png")); } @Override public void mouseExit(MouseEvent e) { addParamLabel.setImage(Activator.getImage("icons/addParam.png")); } @Override public void mouseEnter(MouseEvent e) { addParamLabel.setImage(Activator.getImage("icons/addParamfocus.png")); } }); final Label deleteNodeLabel = formToolkit.createLabel(composite, "", SWT.NONE); deleteNodeLabel.setImage(Activator.getImage("icons/deleteNode.png")); deleteNodeLabel.setBounds(290, 0, 90, 26); deleteNodeLabel.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { if (treeViewer.getSelection() == null) return; IStructuredSelection ss = (StructuredSelection) treeViewer.getSelection(); if (ss.getFirstElement() instanceof TreeNode) { TreeNode node = (TreeNode) ss.getFirstElement(); if (node.getValue() instanceof Feature) { config.getFeatures().remove((Feature) node.getValue()); } if (node.getValue() instanceof Param) { TreeNode parent = node.getParent(); Feature feature = (Feature) parent.getValue(); Param param = (Param) node.getValue(); feature.removeParams(param); } dirty = true; firePropertyChange(PROP_DIRTY); treeViewer.setInput(config.createTreeNode()); treeViewer.refresh(); } } }); deleteNodeLabel.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseHover(MouseEvent e) { deleteNodeLabel.setImage(Activator.getImage("icons/deleteNodefocus.png")); } @Override public void mouseExit(MouseEvent e) { deleteNodeLabel.setImage(Activator.getImage("icons/deleteNode.png")); } @Override public void mouseEnter(MouseEvent e) { deleteNodeLabel.setImage(Activator.getImage("icons/deleteNodefocus.png")); } }); treeViewer = new TreeViewer(composite_8, SWT.BORDER | SWT.FULL_SELECTION); Tree tree = treeViewer.getTree(); tree.setLinesVisible(true); tree.setHeaderVisible(true); GridData gd_tree = new GridData(SWT.CENTER, SWT.FILL, true, true, 1, 1); gd_tree.heightHint = 112; tree.setLayoutData(gd_tree); formToolkit.paintBordersFor(tree); this.treeViewer.setContentProvider(new TreeNodeContentProvider()); TreeViewerColumn treeViewerColumn = new TreeViewerColumn(treeViewer, SWT.NONE); TreeColumn trclmnNewColumn = treeViewerColumn.getColumn(); trclmnNewColumn.setWidth(180); trclmnNewColumn.setText("\u540D\u79F0"); treeViewerColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { TreeNode treeNode = TreeNode.class.cast(element); if (treeNode.getValue() instanceof Feature) { return ((Feature) treeNode.getValue()).getName(); } if (treeNode.getValue() instanceof Param) { return ((Param) treeNode.getValue()).getName(); } return element.toString(); } }); TreeViewerColumn treeViewerColumn_1 = new TreeViewerColumn(treeViewer, SWT.NONE); TreeColumn trclmnNewColumn_1 = treeViewerColumn_1.getColumn(); trclmnNewColumn_1.setWidth(180); trclmnNewColumn_1.setText("\u503C"); treeViewerColumn_1.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { TreeNode treeNode = TreeNode.class.cast(element); if (treeNode.getValue() instanceof Feature) { return ""; } if (treeNode.getValue() instanceof Param) { return ((Param) treeNode.getValue()).getValue(); } return element.toString(); } }); this.treeViewer.setInput(config.createTreeNode()); treeViewer.setColumnProperties(new String[] { "name", "value" }); CellEditor[] treeViewer_editors = new CellEditor[tree.getColumnCount()]; treeViewer_editors[0] = new TextCellEditor(tree); treeViewer_editors[1] = new TextCellEditor(tree); treeViewer.setCellEditors(treeViewer_editors); treeViewer.setCellModifier(new ICellModifier() { @Override public boolean canModify(Object element, String property) { TreeNode treeNode = TreeNode.class.cast(element); if (treeNode.getValue() instanceof Feature && property.equals("value")) { //$NON-NLS-1$ return false; } if (property.equals("name")) return false; return true; } @Override public Object getValue(Object element, String property) { Object value = ""; //$NON-NLS-1$ TreeNode treeNode = TreeNode.class.cast(element); if (treeNode.getValue() instanceof Feature) { Feature feautre = Feature.class.cast(treeNode.getValue()); if (property.equals("name")) { value = feautre.getName(); } } if (treeNode.getValue() instanceof Param) { Param param = Param.class.cast(treeNode.getValue()); if (property.equals("name")) { value = param.getName(); } else if (property.equals("value")) { value = param.getValue(); } } return value; } @Override public void modify(Object element, String property, Object value) { TreeItem item = (TreeItem) element; Object o = item.getData(); TreeNode treeNode = TreeNode.class.cast(o); if (treeNode.getValue() instanceof Feature) { Feature feautre = Feature.class.cast(treeNode.getValue()); if (property.equals("name")) { if ("".equals(value)) { MessageDialog.openInformation(null, Messages.AddFeatureDialog_INFORMATION, Messages.CreateFeatureDialog_FEATURE_NMAE_NOT_NULL); } else { if (!feautre.getName().equals((String) value)) { feautre.setName((String) value); dirty = true; firePropertyChange(PROP_DIRTY); treeViewer.refresh(); } } } } if (treeNode.getValue() instanceof Param) { Param param = Param.class.cast(treeNode.getValue()); if (property.equals("name")) { if ("".equals(value)) { MessageDialog.openInformation(null, Messages.PackageAppItemDialog_INFO, Messages.PARAMNAMEISNULL); } else { if (!param.getName().equals((String) value)) { param.setName((String) value); dirty = true; firePropertyChange(PROP_DIRTY); treeViewer.refresh(); } } } else if (property.equals("value")) { if ("".equals(value)) { MessageDialog.openInformation(null, Messages.PackageAppItemDialog_INFO, Messages.PARAMNAMEISNULL); } else { if (!param.getValue().equals((String) value)) { param.setValue((String) value); dirty = true; firePropertyChange(PROP_DIRTY); treeViewer.refresh(); } } } } } }); final Section sctnNewSection_1 = formToolkit.createSection(composite_3, Section.TWISTIE | Section.TITLE_BAR); GridData gd_sctnNewSection_1 = new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1); gd_sctnNewSection_1.heightHint = 73; sctnNewSection_1.setLayoutData(gd_sctnNewSection_1); formToolkit.paintBordersFor(sctnNewSection_1); sctnNewSection_1.setText(Messages.PERMISSIONSETTINGS); sctnNewSection_1.setExpanded(true); Composite composite_5 = formToolkit.createComposite(sctnNewSection_1, SWT.NONE); formToolkit.paintBordersFor(composite_5); sctnNewSection_1.setClient(composite_5); composite_5.setLayout(new GridLayout(3, false)); Label lblNewLabel_2 = new Label(composite_5, SWT.NONE); lblNewLabel_2.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, false, 3, 1)); formToolkit.adapt(lblNewLabel_2, true, true); lblNewLabel_2.setText(Messages.PERMISSIONINFO); tableViewer_1 = new TableViewer(composite_5, SWT.BORDER | SWT.FULL_SELECTION); table_1 = tableViewer_1.getTable(); table_1.setLinesVisible(true); table_1.setHeaderVisible(true); GridData gd_table_1 = new GridData(SWT.RIGHT, SWT.CENTER, true, false, 1, 1); gd_table_1.heightHint = 250; table_1.setLayoutData(gd_table_1); formToolkit.paintBordersFor(table_1); TableViewerColumn tableViewerColumn_2 = new TableViewerColumn(tableViewer_1, SWT.NONE); TableColumn tblclmnNewColumn_2 = tableViewerColumn_2.getColumn(); tblclmnNewColumn_2.setResizable(false); tblclmnNewColumn_2.setMoveable(false); tblclmnNewColumn_2.setWidth(160); tblclmnNewColumn_2.setText(Messages.STARTED); tableViewerColumn_2.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Permission) element).getName(); } }); tableViewer_1.setContentProvider(new ArrayContentProvider()); tableViewer_1.setInput(config.getPermissions()); tableViewer_1.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { StructuredSelection ss = (StructuredSelection) event.getSelection(); Permission p = (Permission) ss.getFirstElement(); config.getPermissions().remove(p); tableViewer_1.setInput(config.getPermissions()); tableViewer_3.setInput(getUnauthorized(config)); sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); dirty = true; firePropertyChange(PROP_DIRTY); } }); table_1.addFocusListener(new FocusListener() { @Override public void focusLost(FocusEvent e) { sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); } @Override public void focusGained(FocusEvent e) { sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); } }); Label lblNewLabel = new Label(composite_5, SWT.NONE); lblNewLabel.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(lblNewLabel, true, true); lblNewLabel.setText(Messages.CHANGEBUTTON); tableViewer_3 = new TableViewer(composite_5, SWT.BORDER | SWT.FULL_SELECTION); table_3 = tableViewer_3.getTable(); table_3.setLinesVisible(true); table_3.setHeaderVisible(true); table_3.setLayoutData(new GridData(SWT.LEFT, SWT.FILL, true, false, 1, 1)); formToolkit.paintBordersFor(table_3); TableViewerColumn tableViewerColumn = new TableViewerColumn(tableViewer_3, SWT.NONE); TableColumn tableColumn = tableViewerColumn.getColumn(); tableColumn.setResizable(false); tableColumn.setMoveable(false); tableColumn.setWidth(160); tableColumn.setText(Messages.UNSTARTED); tableViewerColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Permission) element).getName(); } }); tableViewer_3.setContentProvider(new ArrayContentProvider()); tableViewer_3.setInput(getUnauthorized(config)); tableViewer_3.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { StructuredSelection ss = (StructuredSelection) event.getSelection(); Permission p = (Permission) ss.getFirstElement(); config.getPermissions().add(p); tableViewer_1.setInput(config.getPermissions()); tableViewer_3.setInput(getUnauthorized(config)); sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); dirty = true; firePropertyChange(PROP_DIRTY); } }); table_3.addFocusListener(new FocusListener() { @Override public void focusLost(FocusEvent e) { sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); } @Override public void focusGained(FocusEvent e) { sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); } }); Section sctnNewSection = formToolkit.createSection(composite_3, Section.TWISTIE | Section.TITLE_BAR); sctnNewSection.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.paintBordersFor(sctnNewSection); sctnNewSection.setText(Messages.ACCESSSETTINGS); sctnNewSection.setExpanded(true); Composite composite_9 = formToolkit.createComposite(sctnNewSection, SWT.NONE); formToolkit.paintBordersFor(composite_9); sctnNewSection.setClient(composite_9); composite_9.setLayout(new GridLayout(1, false)); Label lblNewLabel_9 = new Label(composite_9, SWT.NONE); lblNewLabel_9.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(lblNewLabel_9, true, true); lblNewLabel_9.setText(Messages.ACCESSSINFO); Composite composite_2 = formToolkit.createComposite(composite_9, SWT.NONE); composite_2.setLayout(null); GridData gd_composite_2 = new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1); gd_composite_2.widthHint = 380; composite_2.setLayoutData(gd_composite_2); formToolkit.paintBordersFor(composite_2); final Label addLabel = formToolkit.createLabel(composite_2, "", SWT.NONE); addLabel.setImage(Activator.getImage("icons/add.png")); addLabel.setBounds(0, 0, 55, 26); addLabel.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { Access a = new Access(); a.setOrigin("*"); config.getAccesses().add(a); tableViewer_2.setInput(config.getAccesses()); tableViewer_2.refresh(); dirty = true; firePropertyChange(PROP_DIRTY); } }); addLabel.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseHover(MouseEvent e) { addLabel.setImage(Activator.getImage("icons/addfocus.png")); } @Override public void mouseExit(MouseEvent e) { addLabel.setImage(Activator.getImage("icons/add.png")); } @Override public void mouseEnter(MouseEvent e) { addLabel.setImage(Activator.getImage("icons/addfocus.png")); } }); final Label deleteLabel = formToolkit.createLabel(composite_2, "", SWT.NONE); deleteLabel.setImage(Activator.getImage("icons/delete.png")); deleteLabel.setBounds(60, 0, 55, 26); deleteLabel.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { StructuredSelection ss = (StructuredSelection) tableViewer_2.getSelection(); if (ss.getFirstElement() == null) { return; } Access a = (Access) ss.getFirstElement(); config.getAccesses().remove(a); tableViewer_2.refresh(); dirty = true; firePropertyChange(PROP_DIRTY); } }); deleteLabel.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseHover(MouseEvent e) { deleteLabel.setImage(Activator.getImage("icons/deletefocus.png")); } @Override public void mouseExit(MouseEvent e) { deleteLabel.setImage(Activator.getImage("icons/delete.png")); } @Override public void mouseEnter(MouseEvent e) { deleteLabel.setImage(Activator.getImage("icons/deletefocus.png")); } }); tableViewer_2 = new TableViewer(composite_9, SWT.BORDER | SWT.FULL_SELECTION); table_2 = tableViewer_2.getTable(); table_2.setLinesVisible(true); table_2.setHeaderVisible(true); GridData gd_table_2 = new GridData(SWT.CENTER, SWT.CENTER, true, false, 1, 1); gd_table_2.heightHint = 120; table_2.setLayoutData(gd_table_2); formToolkit.paintBordersFor(table_2); TableViewerColumn tableViewerColumn_3 = new TableViewerColumn(tableViewer_2, SWT.NONE); TableColumn tblclmnNewColumn_3 = tableViewerColumn_3.getColumn(); tblclmnNewColumn_3.setWidth(360); tblclmnNewColumn_3.setText(Messages.SOURCE); tableViewerColumn_3.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Access) element).getOrigin(); } }); tableViewer_2.setContentProvider(new ArrayContentProvider()); tableViewer_2.setInput(config.getAccesses()); tableViewer_2.setColumnProperties(new String[] { "origin" }); CellEditor[] tableViewer2_editor = new CellEditor[table_2.getColumnCount()]; tableViewer2_editor[0] = new TextCellEditor(table_2); tableViewer_2.setCellEditors(tableViewer2_editor); tableViewer_2.setCellModifier(new ICellModifier() { @Override public boolean canModify(Object element, String property) { return true; } @Override public Object getValue(Object element, String property) { Object value = ""; //$NON-NLS-1$ Access access = Access.class.cast(element); if (property.equals("origin")) { value = access.getOrigin(); } return value; } @Override public void modify(Object element, String property, Object value) { TableItem item = (TableItem) element; Object o = item.getData(); Access access = Access.class.cast(o); if (property.equals("origin")) { if ("".equals(value)) { MessageDialog.openInformation(null, Messages.AddFeatureDialog_INFORMATION, Messages.PERMISSIONISNULL); } else { if (!access.getOrigin().equals((String) value)) { access.setOrigin((String) value); dirty = true; firePropertyChange(PROP_DIRTY); tableViewer_2.refresh(); } } } } }); scrolledComposite.setMinSize(new Point(700, 1500)); scrolledComposite.setContent(composite_3); }
From source file:com.apicloud.navigator.ui.wizards.TempleteFarmeWizardPage.java
License:Open Source License
private TableViewer createTable(Composite tabFolder) { TableViewer tableViewer = new TableViewer(tabFolder, SWT.BORDER | SWT.FULL_SELECTION); final Table table = tableViewer.getTable(); table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); table.addListener(SWT.MeasureItem, new Listener() { @Override//from ww w.j a va 2s . co m public void handleEvent(Event event) { event.height = 30; } }); table.addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { TableItem[] ti = table.getSelection(); page = (APICloudPage) ti[0].getData(); lblNewLabel_3.setImage(AuthenticActivator.getImage(page.getReViewImage())); } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); TableViewerColumn tableViewerColumn_name = new TableViewerColumn(tableViewer, SWT.NONE); TableColumn tableColumn_name = tableViewerColumn_name.getColumn(); tableColumn_name.setWidth(300); tableViewerColumn_name.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((APICloudPage) element).getName(); } }); tableViewer.setContentProvider(new ArrayContentProvider()); return tableViewer; }