List of usage examples for org.eclipse.jface.viewers IStructuredSelection getFirstElement
public Object getFirstElement();
null
if the selection is empty. From source file:ch.elexis.impfplan.view.ImpfplanPreferences.java
License:Open Source License
private void makeActions() { removeAction = new Action(Messages.ImpfplanPreferences_removeVaccination) { {//from w w w . ja va2 s.c o m setImageDescriptor(Images.IMG_DELETE.getImageDescriptor()); setToolTipText(Messages.ImpfplanPreferences_removeVaccWarning); } @Override public void run() { IStructuredSelection sel = (IStructuredSelection) tv.getSelection(); if (!sel.isEmpty()) { VaccinationType t = (VaccinationType) sel.getFirstElement(); if (t.delete()) { tv.remove(sel.getFirstElement()); } } } }; }
From source file:ch.elexis.impfplan.view.ImpfplanView.java
License:Open Source License
private void makeActions() { addVacination = new Action(Messages.ImpfplanView_vaccinateActionTitle) { {// w w w . ja v a 2 s . c o m setToolTipText(Messages.ImpfplanView_vaccinateActionTooltip); setImageDescriptor(Images.IMG_ADDITEM.getImageDescriptor()); } @Override public void run() { AddVaccinationDialog dlg = new AddVaccinationDialog(getViewSite().getShell()); if (dlg.open() == Dialog.OK) { new Vaccination(dlg.result, ElexisEventDispatcher.getSelectedPatient(), new TimeTool(dlg.date), dlg.bUnexact); tvVaccsDone.refresh(); tvVaccsRecommended.refresh(); } } }; printVaccinations = new Action(Messages.ImpfplanView_printActionTitle) { { setToolTipText(Messages.ImpfplanView_printActionTooltip); setImageDescriptor(Images.IMG_PRINTER.getImageDescriptor()); } @Override public void run() { ImpfplanPrinter ipr = new ImpfplanPrinter(getSite().getShell()); ipr.open(); } }; removeVaccination = new Action(Messages.ImpfplanView_removeActionTitle) { { setToolTipText(Messages.ImpfplanView_removeActionTooltip); setImageDescriptor(Images.IMG_DELETE.getImageDescriptor()); } @Override public void run() { IStructuredSelection sel = (IStructuredSelection) tvVaccsDone.getSelection(); if (!sel.isEmpty()) { Vaccination v = (Vaccination) sel.getFirstElement(); if (v.delete()) { tvVaccsDone.remove(v); } } } }; }
From source file:ch.elexis.omnivore.ui.views.OmnivoreView.java
License:Open Source License
/** * This is a callback that will allow us to create the viewer and initialize it. *//* www .j a va 2 s.com*/ public void createPartControl(Composite parent) { parent.setLayout(new GridLayout(4, false)); // Title search field Label lSearchTitle = new Label(parent, SWT.NONE); lSearchTitle.setText(Messages.OmnivoreView_searchTitleLabel); lSearchTitle.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false)); final Text tSearchTitle = new Text(parent, SWT.SINGLE); tSearchTitle.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); // Keyword search field Label lSearchKW = new Label(parent, SWT.NONE); lSearchKW.setText(Messages.OmnivoreView_searchKeywordsLabel); lSearchKW.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false)); final Text tSearchKW = new Text(parent, SWT.SINGLE); tSearchKW.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); // Add search listener ModifyListener searchListener = new ModifyListener() { public void modifyText(ModifyEvent e) { searchKW = tSearchKW.getText(); searchTitle = tSearchTitle.getText(); refresh(); } }; tSearchTitle.addModifyListener(searchListener); tSearchKW.addModifyListener(searchListener); // Table to display documents table = new Tree(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION); TreeColumn[] cols = new TreeColumn[colLabels.length]; for (int i = 0; i < colLabels.length; i++) { cols[i] = new TreeColumn(table, SWT.NONE); cols[i].setText(colLabels[i]); cols[i].setData(new Integer(i)); } applyUsersColumnWidthSetting(); table.setHeaderVisible(true); table.setLinesVisible(true); table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 4, 1)); viewer = new TreeViewer(table); viewer.setContentProvider(new ViewContentProvider()); viewer.setLabelProvider(new ViewLabelProvider()); viewer.setUseHashlookup(true); makeActions(); ovComparator = new OmnivoreViewerComparator(); viewer.setComparator(ovComparator); TreeColumn[] treeCols = viewer.getTree().getColumns(); for (int i = 0; i < treeCols.length; i++) { TreeColumn tc = treeCols[i]; tc.addSelectionListener(getSelectionAdapter(tc, i)); } applySortDirection(); hookContextMenu(); hookDoubleClickAction(); contributeToActionBars(); final Transfer[] dropTransferTypes = new Transfer[] { FileTransfer.getInstance() }; viewer.addDropSupport(DND.DROP_COPY, dropTransferTypes, new DropTargetAdapter() { @Override public void dragEnter(DropTargetEvent event) { event.detail = DND.DROP_COPY; } @Override public void drop(DropTargetEvent event) { if (dropTransferTypes[0].isSupportedType(event.currentDataType)) { String[] files = (String[]) event.data; String category = null; if (event.item != null && event.item.getData() instanceof DocHandle) { DocHandle dh = (DocHandle) event.item.getData(); category = dh.getCategory(); } for (String file : files) { final DocHandle handle = DocHandle.assimilate(file, category); if (handle != null) { AcquireLockBlockingUi.aquireAndRun(handle, new ILockHandler() { @Override public void lockFailed() { handle.delete(); } @Override public void lockAcquired() { // do nothing } }); } viewer.refresh(); } } } }); final Transfer[] dragTransferTypes = new Transfer[] { FileTransfer.getInstance(), TextTransfer.getInstance() }; viewer.addDragSupport(DND.DROP_COPY, dragTransferTypes, new DragSourceAdapter() { @Override public void dragStart(DragSourceEvent event) { IStructuredSelection selection = (IStructuredSelection) viewer.getSelection(); DocHandle dh = (DocHandle) selection.getFirstElement(); if (dh.isCategory()) { event.doit = false; } } @Override public void dragSetData(DragSourceEvent event) { IStructuredSelection selection = (IStructuredSelection) viewer.getSelection(); DocHandle dh = (DocHandle) selection.getFirstElement(); if (FileTransfer.getInstance().isSupportedType(event.dataType)) { String title = dh.getTitle(); int end = dh.getTitle().lastIndexOf("."); if (end != -1) { title = (dh.getTitle()).substring(0, end); } File file = dh.createTemporaryFile(title); event.data = new String[] { file.getAbsolutePath() }; } else { StringBuilder sb = new StringBuilder(); sb.append(((PersistentObject) dh).storeToString()).append(","); //$NON-NLS-1$ event.data = sb.toString().replace(",$", ""); //$NON-NLS-1$ //$NON-NLS-2$ } } }); GlobalEventDispatcher.addActivationListener(this, this); eeli_user.catchElexisEvent(ElexisEvent.createUserEvent()); viewer.setInput(getViewSite()); }
From source file:ch.elexis.omnivore.views.OmnivoreView.java
License:Open Source License
/** * This is a callback that will allow us to create the viewer and initialize it. *//* w ww. j av a 2s . c o m*/ public void createPartControl(Composite parent) { parent.setLayout(new GridLayout(4, false)); // Title search field Label lSearchTitle = new Label(parent, SWT.NONE); lSearchTitle.setText(Messages.OmnivoreView_searchTitleLabel); lSearchTitle.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false)); final Text tSearchTitle = new Text(parent, SWT.SINGLE); tSearchTitle.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); // Keyword search field Label lSearchKW = new Label(parent, SWT.NONE); lSearchKW.setText(Messages.OmnivoreView_searchKeywordsLabel); lSearchKW.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false)); final Text tSearchKW = new Text(parent, SWT.SINGLE); tSearchKW.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false)); // Add search listener ModifyListener searchListener = new ModifyListener() { public void modifyText(ModifyEvent e) { searchKW = tSearchKW.getText(); searchTitle = tSearchTitle.getText(); refresh(); } }; tSearchTitle.addModifyListener(searchListener); tSearchKW.addModifyListener(searchListener); // Table to display documents table = new Tree(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION); SortListener sortListener = new SortListener(); TreeColumn[] cols = new TreeColumn[colLabels.length]; for (int i = 0; i < colLabels.length; i++) { cols[i] = new TreeColumn(table, SWT.NONE); cols[i].setWidth(colWidth[i]); cols[i].setText(colLabels[i]); cols[i].setData(new Integer(i)); cols[i].addSelectionListener(sortListener); } table.setHeaderVisible(true); table.setLinesVisible(true); table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 4, 1)); viewer = new TreeViewer(table); viewer.setContentProvider(new ViewContentProvider()); viewer.setLabelProvider(new ViewLabelProvider()); viewer.setSorter(new Sorter()); viewer.setUseHashlookup(true); makeActions(); hookContextMenu(); hookDoubleClickAction(); contributeToActionBars(); final Transfer[] transferTypes = new Transfer[] { FileTransfer.getInstance() }; viewer.addDropSupport(DND.DROP_COPY, transferTypes, new DropTargetAdapter() { @Override public void dragEnter(DropTargetEvent event) { event.detail = DND.DROP_COPY; } @Override public void drop(DropTargetEvent event) { if (transferTypes[0].isSupportedType(event.currentDataType)) { String[] files = (String[]) event.data; String category = null; if (event.item != null && event.item.getData() instanceof DocHandle) { DocHandle dh = (DocHandle) event.item.getData(); category = dh.getCategory(); } for (String file : files) { DocHandle.assimilate(file, category); viewer.refresh(); } } } }); viewer.addDragSupport(DND.DROP_COPY, transferTypes, new DragSourceAdapter() { @Override public void dragSetData(DragSourceEvent event) { IStructuredSelection selection = (IStructuredSelection) viewer.getSelection(); DocHandle dh = (DocHandle) selection.getFirstElement(); if (FileTransfer.getInstance().isSupportedType(event.dataType)) { int end = dh.getTitle().lastIndexOf("."); String titel = (dh.getTitle()).substring(0, end); File file = dh.createTemporaryFile(titel); event.data = new String[] { file.getAbsolutePath() }; } } }); GlobalEventDispatcher.addActivationListener(this, this); eeli_user.catchElexisEvent(ElexisEvent.createUserEvent()); viewer.setInput(getViewSite()); }
From source file:ch.elexis.preferences.inputs.ACLPreferenceTree.java
License:Open Source License
public ACLPreferenceTree(Composite parent, ACE... acl) { super(parent, SWT.NONE); acls = new Tree<ACE>(null, null); for (ACE s : acl) { Tree<ACE> mine = acls.find(s, true); if (mine == null) { Tree<ACE> parentTree = findParent(s); if (parentTree != null) { new Tree<ACE>(parentTree, s); } else { Hub.log.log("Could not find parent ACE " + s.getName(), Log.ERRORS); }/* w ww. java 2s. c o m*/ } } setLayout(new GridLayout()); setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); tv = new TreeViewer(this); tv.setContentProvider(new ITreeContentProvider() { public Object[] getChildren(Object parentElement) { Tree tree = (Tree) parentElement; return tree.getChildren().toArray(); } public Object getParent(Object element) { return ((Tree) element).getParent(); } public boolean hasChildren(Object element) { Tree tree = (Tree) element; return tree.hasChildren(); } public Object[] getElements(Object inputElement) { return acls.getChildren().toArray(); } public void dispose() { // TODO Auto-generated method stub } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { // TODO Auto-generated method stub } }); tv.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { return (String) ((Tree<ACE>) element).contents.getLocalizedName(); } }); tv.getControl().setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); Composite cBottom = new Composite(this, SWT.NONE); cBottom.setLayoutData(SWTHelper.getFillGridData(1, true, 1, false)); cBottom.setLayout(new GridLayout(2, true)); new Label(cBottom, SWT.NONE).setText(StringConstants.ROLES_DEFAULT); new Label(cBottom, SWT.NONE).setText(StringConstants.ROLE_USERS); lbGroups = new org.eclipse.swt.widgets.List(cBottom, SWT.MULTI | SWT.V_SCROLL); lbUsers = new org.eclipse.swt.widgets.List(cBottom, SWT.MULTI | SWT.V_SCROLL); lbUsers.setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); lbGroups.setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); lUsers = Hub.getUserList(); for (Anwender an : lUsers) { lbUsers.add(an.getLabel()); } List<String> lGroups = Hub.acl.getGroups(); for (String s : lGroups) { lbGroups.add(s); } tv.addSelectionChangedListener(new ISelectionChangedListener() { /** * if the user selects an ACL from the TreeViewer, we want to select users and groups * that are granted this acl in the lbGroups and lbUsers ListBoxes */ public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection sel = (IStructuredSelection) event.getSelection(); lbGroups.deselectAll(); lbUsers.deselectAll(); if (!sel.isEmpty()) { Tree<ACE> acl = (Tree<ACE>) sel.getFirstElement(); ACE right = acl.contents; List<String> grps = Hub.acl.groupsForGrant(right); List<Anwender> users = Hub.acl.usersForGrant(right); for (String g : grps) { int idx = StringTool.getIndex(lbGroups.getItems(), g); if (idx != -1) { lbGroups.select(idx); } } for (Anwender an : users) { int idx = StringTool.getIndex(lbUsers.getItems(), an.getLabel()); if (idx != -1) { lbUsers.select(idx); } } } } }); lbGroups.addSelectionListener(new SelectionAdapter() { @SuppressWarnings("unchecked") public void widgetSelected(SelectionEvent arg0) { IStructuredSelection sel = (IStructuredSelection) tv.getSelection(); if (!sel.isEmpty()) { Tree<ACE> acl = (Tree<ACE>) sel.getFirstElement(); ACE right = acl.contents; String[] gsel = lbGroups.getSelection(); for (String g : lbGroups.getItems()) { Hub.acl.revoke(g, right); } for (String g : gsel) { Hub.acl.grant(g, right); } } } }); lbUsers.addSelectionListener(new SelectionAdapter() { @SuppressWarnings("unchecked") public void widgetSelected(SelectionEvent arg0) { IStructuredSelection sel = (IStructuredSelection) tv.getSelection(); if (!sel.isEmpty()) { Tree<ACE> acl = (Tree<ACE>) sel.getFirstElement(); ACE right = acl.contents; int[] uSel = lbUsers.getSelectionIndices(); for (Anwender an : lUsers) { Hub.acl.revoke(an, right); } for (int i : uSel) { Hub.acl.grant(lUsers.get(i), right); } } } }); tv.setSorter(new ViewerSorter() { @SuppressWarnings("unchecked") @Override public int compare(Viewer viewer, Object e1, Object e2) { Tree<ACE> t1 = (Tree<ACE>) e1; Tree<ACE> t2 = (Tree<ACE>) e2; return t1.contents.getLocalizedName().compareToIgnoreCase(t2.contents.getLocalizedName()); } }); tv.setInput(this); }
From source file:ch.elexis.preferences.LabGroupPrefs.java
License:Open Source License
protected Control createContents(Composite parent) { Composite composite = new Composite(parent, SWT.NONE); composite.setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); composite.setLayout(new GridLayout(1, false)); Label label;/*from www.j a va 2 s .c o m*/ GridLayout layout; Composite topArea = new Composite(composite, SWT.NONE); topArea.setLayoutData(SWTHelper.getFillGridData(1, true, 1, false)); layout = new GridLayout(3, false); layout.verticalSpacing = 20; topArea.setLayout(layout); label = new Label(topArea, SWT.NONE); label.setText(Messages.LabGroupPrefs_ExplanationsLine1 + Messages.LabGroupPrefs_ExplanationsLine2 + Messages.LabGroupPrefs_ExplanationsLine3); label.setLayoutData(SWTHelper.getFillGridData(3, true, 1, false)); GridData gd; label = new Label(topArea, SWT.NONE); label.setText(Messages.LabGroupPrefs_group); gd = SWTHelper.getFillGridData(1, false, 1, false); gd.verticalAlignment = GridData.BEGINNING; label.setLayoutData(gd); groupsViewer = new ComboViewer(topArea, SWT.READ_ONLY); gd = SWTHelper.getFillGridData(1, true, 1, false); gd.verticalAlignment = GridData.BEGINNING; groupsViewer.getControl().setLayoutData(gd); groupsViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection sel = (IStructuredSelection) groupsViewer.getSelection(); Object element = sel.getFirstElement(); if (element instanceof LabGroup) { actGroup = (LabGroup) element; itemsViewer.refresh(); } updateButtonsState(); } }); groupsViewer.setContentProvider(new GroupsContentProvider()); groupsViewer.setLabelProvider(new DefaultLabelProvider()); groupsViewer.setInput(this); Composite groupButtonArea = new Composite(topArea, SWT.PUSH); layout = new GridLayout(1, false); layout.marginHeight = 0; groupButtonArea.setLayout(layout); newButton = new Button(groupButtonArea, SWT.PUSH); newButton.setText(Messages.LabGroupPrefs_new); newButton.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { InputDialog dialog = new InputDialog( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), Messages.LabGroupPrefs_newLabGroup, Messages.LabGroupPrefs_selectNameForLabGroup, "", null); //$NON-NLS-1$ int rc = dialog.open(); if (rc == Window.OK) { String name = dialog.getValue(); LabGroup group = new LabGroup(name, null); groupsViewer.refresh(); groupsViewer.setSelection(new StructuredSelection(group)); } } public void widgetDefaultSelected(SelectionEvent e) { widgetSelected(e); } }); removeButton = new Button(groupButtonArea, SWT.PUSH); removeButton.setText(Messages.LabGroupPrefs_delete); removeButton.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { if (actGroup != null) { if (SWTHelper.askYesNo(Messages.LabGroupPrefs_deleteGroup, MessageFormat.format(Messages.LabGroupPrefs_reallyDeleteGroup, actGroup.getLabel()))) ; { actGroup.delete(); actGroup = null; groupsViewer.refresh(); itemsViewer.refresh(); selectFirstGroup(); } } } public void widgetDefaultSelected(SelectionEvent e) { widgetSelected(e); } }); Composite bottomArea = new Composite(composite, SWT.NONE); bottomArea.setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); bottomArea.setLayout(new GridLayout(1, false)); label = new Label(bottomArea, SWT.NONE); label.setText(Messages.LabGroupPrefs_containingLabItems); itemsViewer = new ListViewer(bottomArea, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); itemsViewer.getControl().setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); itemsViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { updateItemButtonsState(); } }); itemsViewer.setContentProvider(new GroupItemsContentProvider()); itemsViewer.setLabelProvider(new ItemsLabelProvider()); itemsViewer.setInput(this); Composite buttonArea = new Composite(bottomArea, SWT.NONE); buttonArea.setLayoutData(SWTHelper.getFillGridData(1, false, 1, false)); buttonArea.setLayout(new GridLayout(2, true)); addItemButton = new Button(buttonArea, SWT.PUSH); addItemButton.setText(Messages.LabGroupPrefs_add); addItemButton.setLayoutData(SWTHelper.getFillGridData(1, true, 1, false)); removeItemButton = new Button(buttonArea, SWT.PUSH); removeItemButton.setText(Messages.LabGroupPrefs_remove); removeItemButton.setLayoutData(SWTHelper.getFillGridData(1, true, 1, false)); addItemButton.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { if (actGroup != null) { ItemsSelectionDialog dialog = new ItemsSelectionDialog( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), actGroup); if (dialog.open() == ItemsSelectionDialog.OK) { itemsViewer.refresh(); } } } public void widgetDefaultSelected(SelectionEvent e) { widgetSelected(e); } }); removeItemButton.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { if (actGroup != null) { IStructuredSelection sel = (IStructuredSelection) itemsViewer.getSelection(); for (Object obj : sel.toList()) { if (obj instanceof LabItem) { LabItem item = (LabItem) obj; actGroup.removeItem(item); } } itemsViewer.refresh(); } } public void widgetDefaultSelected(SelectionEvent e) { widgetSelected(e); } }); selectFirstGroup(); return composite; }
From source file:ch.elexis.preferences.LaborPrefs.java
License:Open Source License
protected Control createContents(Composite parn) { noDefaultAndApplyButton();//from ww w . ja va 2s .c o m Composite tableComposite = new Composite(parn, SWT.NONE); GridData gd = new GridData(); tableComposite.setLayoutData(gd); TableColumnLayout tableColumnLayout = new TableColumnLayout(); tableComposite.setLayout(tableColumnLayout); tableViewer = new TableViewer(tableComposite, SWT.BORDER | SWT.FULL_SELECTION); table = tableViewer.getTable(); for (int i = 0; i < headers.length; i++) { TableColumn tc = new TableColumn(table, SWT.LEFT); tc.setText(headers[i]); tableColumnLayout.setColumnData(tc, new ColumnWeightData(colwidth[i], true)); tc.setData(i); tc.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { sortC = (Integer) ((TableColumn) e.getSource()).getData(); tableViewer.refresh(true); } }); } table.setHeaderVisible(true); table.setLinesVisible(true); table.setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); tableViewer.setContentProvider(new IStructuredContentProvider() { public Object[] getElements(Object inputElement) { return LabItem.getLabItems().toArray(); } public void dispose() { } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); tableViewer.setLabelProvider(new LabListLabelProvider()); tableViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { IStructuredSelection sel = (IStructuredSelection) tableViewer.getSelection(); Object o = sel.getFirstElement(); if (o instanceof LabItem) { LabItem li = (LabItem) o; EditLabItem eli = new EditLabItem(getShell(), li); eli.create(); if (eli.open() == Dialog.OK) { tableViewer.refresh(); } } } }); tableViewer.setSorter(new ViewerSorter() { @Override public int compare(Viewer viewer, Object e1, Object e2) { LabItem li1 = (LabItem) e1; LabItem li2 = (LabItem) e2; String s1 = "", s2 = ""; //$NON-NLS-1$ //$NON-NLS-2$ switch (sortC) { case 0: s1 = li1.getLabor().getLabel(); s2 = li2.getLabor().getLabel(); break; case 2: s1 = li1.getKuerzel(); s2 = li2.getKuerzel(); break; case 3: s1 = li1.getTyp().toString(); s2 = li2.getTyp().toString(); break; case 7: s1 = li1.getGroup(); s2 = li2.getGroup(); break; default: s1 = li1.getName(); s2 = li2.getName(); } int res = s1.compareToIgnoreCase(s2); if (res == 0) { return li1.getPrio().compareToIgnoreCase(li2.getPrio()); } return res; } }); tableViewer.setInput(this); return tableComposite; }
From source file:ch.elexis.preferences.LaborPrefs.java
License:Open Source License
@Override protected void contributeButtons(Composite parent) { ((GridLayout) parent.getLayout()).numColumns++; Button bNewItem = new Button(parent, SWT.PUSH); bNewItem.setText(Messages.LaborPrefs_labValue); bNewItem.addSelectionListener(new SelectionAdapter() { @Override/*from w w w.j a v a 2 s . c o m*/ public void widgetSelected(SelectionEvent e) { EditLabItem eli = new EditLabItem(getShell(), null); eli.create(); if (eli.open() == Dialog.OK) { tableViewer.refresh(); } } }); ((GridLayout) parent.getLayout()).numColumns++; Button bDelItem = new Button(parent, SWT.PUSH); bDelItem.setText(Messages.LaborPrefs_deleteItem); bDelItem.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { IStructuredSelection sel = (IStructuredSelection) tableViewer.getSelection(); Object o = sel.getFirstElement(); if (o instanceof LabItem) { LabItem li = (LabItem) o; Query<LabResult> qbe = new Query<LabResult>(LabResult.class); qbe.add("ItemID", "=", li.getId()); //$NON-NLS-1$ //$NON-NLS-2$ List<LabResult> list = qbe.execute(); for (LabResult po : list) { po.delete(); } li.delete(); tableViewer.remove(o); } } }); ((GridLayout) parent.getLayout()).numColumns++; Button bDelAllItems = new Button(parent, SWT.PUSH); bDelAllItems.setText(Messages.LaborPrefs_deleteAllItems); bDelAllItems.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { if (SWTHelper.askYesNo(Messages.LaborPrefs_deleteReallyAllItems, Messages.LaborPrefs_deleteAllExplain)) { Query<LabItem> qbli = new Query<LabItem>(LabItem.class); List<LabItem> items = qbli.execute(); for (LabItem li : items) { Query<LabResult> qbe = new Query<LabResult>(LabResult.class); qbe.add("ItemID", "=", li.getId()); //$NON-NLS-1$ //$NON-NLS-2$ List<LabResult> list = qbe.execute(); for (LabResult po : list) { po.delete(); } li.delete(); } tableViewer.refresh(); } } }); if (Hub.acl.request(AccessControlDefaults.DELETE_LABITEMS) == false) { bDelAllItems.setEnabled(false); } }
From source file:ch.elexis.util.viewers.CommonViewer.java
License:Open Source License
public void doubleClick(DoubleClickEvent event) { if (dlListeners != null) { Iterator<DoubleClickListener> it = dlListeners.iterator(); while (it.hasNext()) { DoubleClickListener dl = it.next(); IStructuredSelection sel = (IStructuredSelection) event.getSelection(); if ((sel != null) && (!sel.isEmpty())) { Object element = sel.getFirstElement(); PersistentObject po;/*w w w .j av a2s .c om*/ if (element instanceof Tree<?>) { po = (PersistentObject) ((Tree<?>) element).contents; } else { po = (PersistentObject) element; } dl.doubleClicked(po, this); } } } }
From source file:ch.elexis.views.artikel.ArtikelSelektor.java
License:Open Source License
@Override public void createPartControl(final Composite parent) { parent.setLayout(new GridLayout()); ctab = new CTabFolder(parent, SWT.NONE); ctab.setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); java.util.List<IConfigurationElement> list = Extensions.getExtensions("ch.elexis.Verrechnungscode"); //$NON-NLS-1$ ctab.addSelectionListener(new TabSelectionListener()); for (IConfigurationElement ice : list) { if ("Artikel".equals(ice.getName())) { //$NON-NLS-1$ try { CodeSelectorFactory cs = (CodeSelectorFactory) ice .createExecutableExtension("CodeSelectorFactory"); //$NON-NLS-1$ CTabItem ci = new CTabItem(ctab, SWT.NONE); ci.setText(cs.getCodeSystemName()); ci.setData("csf", cs); //$NON-NLS-1$ } catch (Exception ex) { ExHandler.handle(ex);/*from w ww . jav a 2s.co m*/ } } } CTabItem ci = new CTabItem(ctab, SWT.NONE); Composite c = new Composite(ctab, SWT.NONE); c.setLayout(new GridLayout()); ci.setControl(c); ci.setText("Lagerartikel"); //$NON-NLS-1$ Table table = new Table(c, SWT.SIMPLE | SWT.V_SCROLL); table.setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); tv = new TableViewer(table); tv.setContentProvider(new IStructuredContentProvider() { public Object[] getElements(final Object inputElement) { List<Artikel> lLager = Artikel.getLagerartikel(); if (lLager != null) { return lLager.toArray(); } else { return new Object[0]; } } public void dispose() { } public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) { } }); // tv.setLabelProvider(new LagerLabelProvider()); tv.setLabelProvider(new ArtikelLabelProvider()); tv.addDragSupport(DND.DROP_COPY, new Transfer[] { TextTransfer.getInstance() }, new DragSourceAdapter() { @Override public void dragStart(final DragSourceEvent event) { IStructuredSelection sel = (IStructuredSelection) tv.getSelection(); if ((sel == null) || sel.isEmpty()) { event.doit = false; } Object s = sel.getFirstElement(); if (s instanceof PersistentObject) { PersistentObject po = (PersistentObject) s; event.doit = po.isDragOK(); } else { event.doit = false; } } @Override public void dragSetData(final DragSourceEvent event) { IStructuredSelection isel = (IStructuredSelection) tv.getSelection(); StringBuilder sb = new StringBuilder(); Object[] sel = isel.toArray(); for (Object s : sel) { if (s instanceof PersistentObject) { sb.append(((PersistentObject) s).storeToString()).append(","); //$NON-NLS-1$ } else { sb.append("error").append(","); //$NON-NLS-1$ //$NON-NLS-2$ } } event.data = sb.toString().replace(",$", ""); //$NON-NLS-1$ //$NON-NLS-2$ } }); tv.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(final DoubleClickEvent event) { IStructuredSelection sel = (IStructuredSelection) tv.getSelection(); if ((sel != null) && (!sel.isEmpty())) { Artikel art = (Artikel) sel.getFirstElement(); EditEigenartikelUi.executeWithParams(art); } } }); tv.setInput(this); }