List of usage examples for org.eclipse.jface.viewers IStructuredContentProvider IStructuredContentProvider
IStructuredContentProvider
From source file:at.rc.tacos.client.editors.SickPersonEditor.java
License:Open Source License
/** * Creates the section containing the job details * /* ww w . j a v a 2 s . com*/ * @param parent * the parent composite */ private void createDetailSection(Composite parent) { Composite client = createSection(parent, "Patienten-Details"); // label and the text field final Label labelLastname = toolkit.createLabel(client, "Nachname"); lastname = toolkit.createText(client, ""); lastname.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelFirstname = toolkit.createLabel(client, "Vorname"); firstname = toolkit.createText(client, ""); firstname.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); // the sex combo final Label labelSex = toolkit.createLabel(client, "Geschlecht"); Combo sexCombo = new Combo(client, SWT.READ_ONLY); sexComboViewer = new ComboViewer(sexCombo); sexComboViewer.setContentProvider(new IStructuredContentProvider() { @Override public Object[] getElements(Object arg0) { return SickPerson.SICKPERSON; } @Override public void dispose() { } @Override public void inputChanged(Viewer arg0, Object arg1, Object arg2) { } }); sexComboViewer.setInput(new String[] { StaffMember.STAFF_MALE, StaffMember.STAFF_FEMALE }); sexCombo.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelSVNR = toolkit.createLabel(client, "Sozialversicherungsnummer"); svnr = toolkit.createText(client, ""); svnr.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); // the kind of transport combo final Label labelKindOfTransport = toolkit.createLabel(client, "Transportart"); Combo kindOfTransportCombo = new Combo(client, SWT.READ_ONLY); kindOfTransportComboViewer = new ComboViewer(kindOfTransportCombo); kindOfTransportComboViewer.setContentProvider(new IStructuredContentProvider() { @Override public Object[] getElements(Object arg0) { return IKindOfTransport.KINDS; } @Override public void dispose() { } @Override public void inputChanged(Viewer arg0, Object arg1, Object arg2) { } }); kindOfTransportComboViewer.setInput( new String[] { IKindOfTransport.TRANSPORT_KIND_GEHEND, IKindOfTransport.TRANSPORT_KIND_TRAGSESSEL, IKindOfTransport.TRANSPORT_KIND_KRANKENTRAGE, IKindOfTransport.TRANSPORT_KIND_ROLLSTUHL }); kindOfTransportCombo.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelStreet = toolkit.createLabel(client, "Strae"); street = toolkit.createText(client, ""); street.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelCity = toolkit.createLabel(client, "Stadt"); city = toolkit.createText(client, ""); city.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); // the notes section final Label labelNotes = toolkit.createLabel(client, "Notizen zum Patienten"); notesViewer = new TextViewer(client, SWT.BORDER | SWT.FLAT | SWT.MULTI | SWT.WRAP | SWT.V_SCROLL); notesViewer.setDocument(new Document()); notesViewer.getControl().setData(FormToolkit.KEY_DRAW_BORDER, FormToolkit.TEXT_BORDER); notesViewer.setEditable(true); notesViewer.addTextListener(new ITextListener() { @Override public void textChanged(TextEvent te) { inputChanged(); } }); // set the layout for the composites GridData data = new GridData(); data.widthHint = 150; labelLastname.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelFirstname.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelSex.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelSVNR.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelStreet.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelCity.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelKindOfTransport.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelNotes.setLayoutData(data); // layout for the text fields GridData data2 = new GridData(GridData.FILL_HORIZONTAL); lastname.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); street.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); firstname.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); svnr.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); city.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); kindOfTransportComboViewer.getCombo().setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); sexComboViewer.getCombo().setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); data2.heightHint = 100; notesViewer.getTextWidget().setLayoutData(data2); }
From source file:at.rc.tacos.client.editors.StaffMemberEditor.java
License:Open Source License
/** * Creates the general section/*from w w w . j a va 2s . c o m*/ */ private Composite createGeneralSection(Composite parent) { Composite client = createSection(parent, "Allgemeine Daten"); // create the label and the input field final Label labelStaffId = toolkit.createLabel(client, "Personalnummer"); staffId = toolkit.createText(client, ""); staffId.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelFName = toolkit.createLabel(client, "Vorname"); fName = toolkit.createText(client, ""); fName.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelLName = toolkit.createLabel(client, "Nachname"); lName = toolkit.createText(client, ""); lName.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelPhone1 = toolkit.createLabel(client, "Telefon 1"); phone1 = toolkit.createText(client, ""); phone1.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelPhone2 = toolkit.createLabel(client, "Telefon 2"); phone2 = toolkit.createText(client, ""); phone2.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelDateOfBirth = toolkit.createLabel(client, "Geburtsdatum"); dateOfBirth = toolkit.createText(client, ""); dateOfBirth.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelSex = toolkit.createLabel(client, "Geschlecht"); Combo sexCombo = new Combo(client, SWT.READ_ONLY); sexComboViewer = new ComboViewer(sexCombo); sexComboViewer.setContentProvider(new IStructuredContentProvider() { @Override public Object[] getElements(Object arg0) { return StaffMember.STAFF; } @Override public void dispose() { } @Override public void inputChanged(Viewer arg0, Object arg1, Object arg2) { } }); sexComboViewer.setInput(new String[] { StaffMember.STAFF_MALE, StaffMember.STAFF_FEMALE }); sexCombo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { inputChanged(); } }); // set the layout for the composites GridData data = new GridData(); data.widthHint = 150; labelStaffId.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelFName.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelLName.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelPhone1.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelPhone2.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelDateOfBirth.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelSex.setLayoutData(data); // layout for the text fields GridData data2 = new GridData(GridData.FILL_HORIZONTAL); data2.widthHint = 150; staffId.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); data2.widthHint = 150; fName.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); data2.widthHint = 150; lName.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); data2.widthHint = 150; dateOfBirth.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); sexComboViewer.getCombo().setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); data2.widthHint = 150; phone1.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); data2.widthHint = 150; phone2.setLayoutData(data2); return client; }
From source file:at.rc.tacos.client.editors.StaffMemberEditor.java
License:Open Source License
/** * Creates the service section//from w ww . j a va 2 s . co m */ private Composite createServiceSection(Composite parent) { Composite client = createSection(parent, "Ausbildung und Dienststelle"); // create the label and the dropdown field final Label locationLabel = toolkit.createLabel(client, "Dienststelle"); Combo stationCombo = new Combo(client, SWT.READ_ONLY); primaryLocationComboViewer = new ComboViewer(stationCombo); primaryLocationComboViewer.setContentProvider(new StationContentProvider()); primaryLocationComboViewer.setLabelProvider(new StationLabelProvider()); primaryLocationComboViewer.setInput(ModelFactory.getInstance().getLocationManager()); stationCombo.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); // phone list final Label labelCompetence = toolkit.createLabel(client, "Verfgbare Kompetenzen: "); // make a subcomposite holding the Hyperlinks and the viewer Composite compManage = makeComposite(client, 3); Combo comboVerw = new Combo(compManage, SWT.READ_ONLY); competenceComboViewer = new ComboViewer(comboVerw); competenceComboViewer.setContentProvider(new CompetenceContentProvider()); competenceComboViewer.setLabelProvider(new CompetenceLabelProvider()); competenceComboViewer.setInput(ModelFactory.getInstance().getCompetenceManager().toArray()); addCompetence = toolkit.createHyperlink(compManage, "hinzufgen", SWT.NONE); addCompetence.setToolTipText("Die gewhlte Kompetenz dem Mitarbeiter zuweisen."); addCompetence.addHyperlinkListener(new HyperlinkAdapter() { @Override public void linkActivated(HyperlinkEvent e) { form.setMessage(null, IMessageProvider.NONE); // get the selected item int index = competenceComboViewer.getCombo().getSelectionIndex(); Competence comp = (Competence) competenceComboViewer.getElementAt(index); if (compList.contains(comp)) { form.getShell().getDisplay().beep(); form.setMessage("Dem Mitarbeiter wurde diese Kompetenz bereits zugewiesen.", IMessageProvider.ERROR); } else { compList.add(comp); competenceViewer.refresh(); inputChanged(); } } }); // hyperlink to remove a competence removeCompetence = toolkit.createHyperlink(compManage, "entfernen", SWT.NONE); removeCompetence.setToolTipText("Die selektierte Kompetenz dem Mitarbeiter wieder entziehen."); removeCompetence.addHyperlinkListener(new HyperlinkAdapter() { @Override public void linkActivated(HyperlinkEvent e) { form.setMessage(null, IMessageProvider.NONE); // get the selected element ISelection selection = competenceViewer.getSelection(); if (!selection.isEmpty()) { // get the selected object Object selectedCompetence = ((IStructuredSelection) selection).getFirstElement(); compList.remove(selectedCompetence); competenceViewer.refresh(true); inputChanged(); } else { form.getShell().getDisplay().beep(); form.setMessage("Bitte whlen sie eine Kompetenz aus die entfernt werden soll", IMessageProvider.ERROR); } } }); final Label labelManage = toolkit.createLabel(client, "Kompetenzen des Mitarbeiters: "); // create the table holding the competences competenceViewer = new TableViewer(client, SWT.BORDER); competenceViewer.setLabelProvider(new CompetenceLabelProvider()); // set this staff members competences as content provider competenceViewer.setContentProvider(new IStructuredContentProvider() { @Override public Object[] getElements(Object arg0) { return compList.toArray(); } @Override public void dispose() { } @Override public void inputChanged(Viewer arg0, Object arg1, Object arg2) { } }); competenceViewer.setInput(compList); // layout the composites GridData data = new GridData(); data.widthHint = 150; locationLabel.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelCompetence.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelManage.setLayoutData(data); // layout for the input fields GridData data2 = new GridData(GridData.FILL_BOTH | GridData.BEGINNING); primaryLocationComboViewer.getCombo().setLayoutData(data2); // Layout the combo data2 = new GridData(GridData.FILL_BOTH | GridData.BEGINNING | GridData.HORIZONTAL_ALIGN_BEGINNING); competenceComboViewer.getCombo().setLayoutData(data2); // layout the table competenceViewer.getTable().setLayout(new GridLayout()); data2 = new GridData(GridData.FILL_BOTH | GridData.BEGINNING); data2.heightHint = 50; competenceViewer.getTable().setLayoutData(data2); return client; }
From source file:at.rc.tacos.client.editors.StaffMemberEditor.java
License:Open Source License
/** * Creates the login section// w w w . j a va2 s.co m */ private Composite createLoginSection(Composite parent) { Composite client = createSection(parent, "Daten zum Anmelden am System und Online-Dienstplan"); // create the label and the input field final Label labelUsername = toolkit.createLabel(client, "Username: "); uName = toolkit.createText(client, ""); uName.setToolTipText( "Der Benutzername mit dem sich der Mitarbeiter am OnlineDienstplan und am Client anmelden kann"); uName.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelPwd = toolkit.createLabel(client, "Passwort: "); pwd = toolkit.createText(client, ""); pwd.setEchoChar('*'); pwd.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); final Label labelPwdRetype = toolkit.createLabel(client, "Passwort (wiederholen): "); pwdRetype = toolkit.createText(client, ""); pwdRetype.setEchoChar('*'); pwdRetype.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent me) { inputChanged(); } }); locked = toolkit.createButton(client, "Benutzer sperren: ", SWT.CHECK); locked.setToolTipText( "Wenn der Benutzer gesperrt ist, kann er sich nit mehr am Client und am OnlineDienstplan anmelden"); locked.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent arg0) { inputChanged(); } }); final Label labelAuth = toolkit.createLabel(client, "Authorisierung :"); Combo authCombo = new Combo(client, SWT.READ_ONLY); authorisationComboViewer = new ComboViewer(authCombo); authorisationComboViewer.setContentProvider(new IStructuredContentProvider() { @Override public Object[] getElements(Object arg0) { return Login.AUTHORIZATION; } @Override public void dispose() { } @Override public void inputChanged(Viewer arg0, Object arg1, Object arg2) { } }); authorisationComboViewer.setInput(Login.AUTHORIZATION); authCombo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { inputChanged(); } }); // set the layout for the composites GridData data = new GridData(); data.widthHint = 150; labelUsername.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelPwd.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelPwdRetype.setLayoutData(data); data = new GridData(); data.widthHint = 150; labelAuth.setLayoutData(data); // layout for the input fields GridData data2 = new GridData(GridData.FILL_HORIZONTAL); uName.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); pwd.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); pwdRetype.setLayoutData(data2); data2 = new GridData(GridData.FILL_HORIZONTAL); authorisationComboViewer.getCombo().setLayoutData(data2); data2 = new GridData(GridData.FILL_BOTH); data2.horizontalSpan = 2; locked.setLayoutData(data2); return client; }
From source file:at.spardat.xma.gui.mapper.WidgetCreationWizPProps.java
License:Open Source License
/** * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite) *///from w ww . ja v a 2 s. co m public void createControl(Composite cmp) { Composite myComposite = new Composite(cmp, SWT.NULL); myComposite.setLayoutData(new GridData(GridData.FILL_BOTH)); myComposite.setLayout(new FormLayout()); wiz_ = (WidgetCreationWiz) getWizard(); attrs_ = wiz_.getAttributes(); Table table_ = new Table(myComposite, SWT.SINGLE | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.HIDE_SELECTION); table_.setLinesVisible(true); table_.setHeaderVisible(true); FormData fd = new FormData(); fd.top = new FormAttachment(0, 0); fd.left = new FormAttachment(0, 0); fd.right = new FormAttachment(100, 0); fd.bottom = new FormAttachment(100, 0); table_.setLayoutData(fd); tableViewer_ = new TableViewer(table_); TableProvider tP = new TableProvider(tableViewer_); tP.add(new Column("Instance Name", 100, true, SWT.LEFT) { public CellEditor getEditor() { return new TextCellEditor(getTable()); } public Object getValue(Object row) { return ((MdlAttribute.WidgetInitData) row).getInstanceName(); } public void setValue(Object row, Object cell) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; if (wi.isValidInstanceName((String) cell)) wi.setInstanceName((String) cell); } public Image getImage(Object row) { return MapperPlugin.getImage("method.gif"); } }); tP.add(new Column("Type", 70, false, SWT.LEFT) { public CellEditor getEditor() { return new TextCellEditor(getTable()); } public Object getValue(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; return wi.getAttribute().getTypeName(); } }); if (!createTableCols_) { // widget type may be selected if we do not create table columns tP.add(new Column("Widget Type", 100, true, SWT.LEFT) { public CellEditor getEditor() { return new ComboBoxCellEditor(getTable(), MdlAttribute.widgetNames, SWT.READ_ONLY); } public Object getValue(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; return new Integer(wi.getWType()); } public void setValue(Object row, Object cell) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; int val = ((Integer) cell).intValue(); if (wi.isValidWType(val)) wi.setWType(val); } public String getText(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; return MdlAttribute.widgetNames[wi.getWType()]; } public Image getImage(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; String imageName = "unknownWidget.gif"; switch (wi.getWType()) { case MdlAttribute.WIDG_CHECK: imageName = "check.gif"; break; case MdlAttribute.WIDG_COMBO: imageName = "combo.gif"; break; case MdlAttribute.WIDG_TEXT: imageName = "text.gif"; break; case MdlAttribute.WIDG_PICKER: imageName = "DatePicker.gif"; break; } return MapperPlugin.getImage(imageName); } }); } tP.add(new Column(createTableCols_ ? "Column Header" : "Label", 100, true, SWT.LEFT) { public CellEditor getEditor() { return new TextCellEditor(getTable()); } public Object getValue(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; return wi.getLabel(); } public void setValue(Object row, Object cell) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; wi.setLabel((String) cell); } }); tP.add(new Column("Alignment", 70, true, SWT.LEFT) { public CellEditor getEditor() { return new ComboBoxCellEditor(getTable(), MdlAttribute.alignmentNames, SWT.READ_ONLY); } public Object getValue(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; return new Integer(wi.getAlignment()); } public String getText(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; return MdlAttribute.alignmentNames[wi.getAlignment()]; } public void setValue(Object row, Object cell) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; int val = ((Integer) cell).intValue(); wi.setAlignment(val); } public boolean canModify(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; return wi.getWType() != MdlAttribute.WIDG_COMBO; } }); if (createTableCols_) { // width of column only if we are creating table columns tP.add(new Column("Width", 60, true, SWT.RIGHT) { public CellEditor getEditor() { return new TextCellEditor(getTable()); } public Object getValue(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; return String.valueOf(wi.getWidth()); } public void setValue(Object row, Object cell) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; try { wi.setWidth(Integer.parseInt((String) cell)); } catch (Exception ex) { } } }); } if (!createTableCols_) { // // not supported yet since this would require to add a validator to the model // // Mandatory property with Texts and Combos // tP.add(new BooleanColumn ("Mandatory", 70, true, SWT.CENTER) { // public boolean getBooleanValue (Object row) { // MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData)row; // return wi.isMandatory(); // } // public boolean canModify (Object row) { // MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData)row; // return wi.getWType() == MdlAttribute.WIDG_TEXT || wi.getWType() == MdlAttribute.WIDG_COMBO; // } // public void setBooleanValue (Object row, boolean value) { // MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData)row; // wi.setMandatory(value); // } // }); // Readonly property with Texts tP.add(new BooleanColumn("Editable", 70, true, SWT.CENTER) { public boolean getBooleanValue(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; return wi.isEditable(); } public boolean canModify(Object row) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; //return wi.getWType() == MdlAttribute.WIDG_TEXT; return true; } public void setBooleanValue(Object row, boolean value) { MdlAttribute.WidgetInitData wi = (MdlAttribute.WidgetInitData) row; wi.setEditable(value); } }); } tP.createSWTColumns(); tP.setCellEditors(); tableViewer_.setUseHashlookup(true); tableViewer_.setColumnProperties(tP.getColumnNames()); tableViewer_.setCellModifier(tP); tableViewer_.setLabelProvider(tP); tableViewer_.setContentProvider(new IStructuredContentProvider() { public Object[] getElements(Object inputElement) { MdlAttribute.WidgetInitData[] data = new MdlAttribute.WidgetInitData[attrs_.length]; for (int i = 0; i < data.length; i++) { data[i] = attrs_[i].getWidgetInitData(createTableCols_); } return data; } public void dispose() { } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); tableViewer_.setInput(tP); // does not really matter setControl(myComposite); }
From source file:au.gov.ga.earthsci.bookmark.ui.editor.LayersPropertyEditor.java
License:Apache License
@Override public Control createControl(Composite parent) { container = new Composite(parent, SWT.NONE); container.setLayoutData(new GridData(GridData.FILL_BOTH)); container.setLayout(new GridLayout(1, false)); Label l = new Label(container, SWT.TITLE); l.setText(Messages.LayersPropertyEditor_LayerStateLabel); Table table = new Table(container, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.CHECK); tableColumns = new ArrayList<TableViewerColumn>(); colToName = new ConcurrentHashMap<Integer, String>(); colToName.put(0, "id"); colToName.put(1, "opacity"); layerTable = new CheckboxTableViewer(table); layerTable.getTable().setLayoutData(new GridData(GridData.FILL_BOTH)); layerTable.setContentProvider(new IStructuredContentProvider() { @Override//from w w w. ja v a2 s . c o m public void inputChanged(Viewer arg0, Object oldItem, Object newItem) { for (TableViewerColumn col : tableColumns) { col.getColumn().dispose(); } tableColumns.clear(); colToName.clear(); if (newItem != null) { Collection<String> cols = null; if (newItem instanceof Map) { cols = getColumnsNeeded((Map) newItem); } for (String s : cols) { if (!s.equals("id")) { createTableColumn(s, s.equals(LayersPropertyPersister.OPACITY_ATTRIBUTE_NAME)); } } createTableColumn("id", false); } } @Override public void dispose() { } @Override public Object[] getElements(Object element) { List items = new ArrayList(); Map<String, Map<String, String>> stateinfo = (Map<String, Map<String, String>>) element; for (Entry<String, Map<String, String>> entry : stateinfo.entrySet()) { items.add(entry); } return items.toArray(new Object[0]); } }); layerTable.getTable().setHeaderVisible(true); layerTable.getTable().setLinesVisible(true); labelProv = new CellLabelProvider() { @Override public void update(ViewerCell cell) { @SuppressWarnings("unchecked") Entry<String, Map<String, String>> entry = (Entry<String, Map<String, String>>) cell.getElement(); int index = cell.getColumnIndex(); String colName = colToName.get(index); cell.setText(colName.equals("id") ? entry.getKey() : entry.getValue().get(colName)); } }; fillFieldsFromProperty(getProperty()); return container; }
From source file:ch.elexis.core.ui.dialogs.DocumentSelectDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { Composite ret = new Composite(parent, SWT.NONE); ret.setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); ret.setLayout(new GridLayout()); if ((type & TEMPLATE) != 0) { new Label(ret, SWT.NONE).setText(Messages.DocumentSelectDialog_subject); //$NON-NLS-1$ tBetreff = SWTHelper.createText(ret, 1, SWT.NONE); new Label(ret, SWT.SEPARATOR | SWT.HORIZONTAL); }// w w w. j a v a 2s. com tv = new TableViewer(ret, SWT.V_SCROLL); tv.setContentProvider(new IStructuredContentProvider() { public Object[] getElements(Object inputElement) { Query<Brief> qbe = new Query<Brief>(Brief.class); if (type == TYPE_LOAD_DOCUMENT) { qbe.add(Brief.FLD_TYPE, Query.NOT_EQUAL, Brief.TEMPLATE); } else { String sys = type == TYPE_LOAD_SYSTEMPLATE ? Query.EQUALS : Query.NOT_EQUAL; qbe.add(Brief.FLD_TYPE, Query.EQUALS, Brief.TEMPLATE); qbe.add(Brief.FLD_KONSULTATION_ID, sys, "SYS"); //$NON-NLS-1$ qbe.startGroup(); qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, CoreHub.actMandant.getId()); qbe.or(); qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, StringTool.leer); qbe.endGroup(); } qbe.and(); qbe.add("deleted", Query.NOT_EQUAL, StringConstants.ONE); //$NON-NLS-1$ if (type != TYPE_LOAD_DOCUMENT) { qbe.orderBy(false, Brief.FLD_SUBJECT); } else { qbe.orderBy(false, Brief.FLD_DATE); } List<Brief> l = qbe.execute(); return l.toArray(); } public void dispose() { } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); tv.setLabelProvider(new MyLabelProvider()); makeActions(); menu = new MenuManager(); menu.setRemoveAllWhenShown(true); menu.addMenuListener(new IMenuListener() { public void menuAboutToShow(IMenuManager manager) { menu.add(editNameAction); if (type == TYPE_LOAD_TEMPLATE) { // only show in load template dialog Brief sel = (Brief) ((IStructuredSelection) tv.getSelection()).getFirstElement(); if (getDontAskForAddresseeForThisTemplate(sel)) { menu.add(editDontAskForAddressee); editDontAskForAddressee.setChecked(false); } else { menu.add(editDontAskForAddressee); editDontAskForAddressee.setChecked(true); } } menu.add((type & TEMPLATE) != 0 ? deleteTemplateAction : deleteTextAction); } }); tv.getControl().setMenu(menu.createContextMenu(tv.getControl())); tv.getControl().setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); tv.setInput(this); tv.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { okPressed(); } }); return ret; }
From source file:ch.elexis.core.ui.dialogs.KontaktSelektor.java
License:Open Source License
@Override protected Control createDialogArea(final Composite parent) { // SashForm ret=new SashForm(parent,SWT.NONE); Composite ret = new Composite(parent, SWT.NONE); ret.setLayout(new GridLayout()); ret.setLayoutData(SWTHelper.getFillGridData(1, true, 1, true)); if (showBezugsKontakt) { new Label(ret, SWT.NONE).setText("Bezugskontakte"); bezugsKontaktViewer = new ListViewer(ret, SWT.SINGLE); bezugsKontaktViewer.getControl().setLayoutData(SWTHelper.getFillGridData(1, true, 1, false)); bezugsKontaktViewer.setContentProvider(new IStructuredContentProvider() { public Object[] getElements(Object inputElement) { Patient patient = ElexisEventDispatcher.getSelectedPatient(); if (patient != null) { ArrayList<PersistentObject> elements = new ArrayList<PersistentObject>(); ArrayList<String> addedKontakte = new ArrayList<String>(); // add the patient itself elements.add(patient); addedKontakte.add(patient.getId()); List<BezugsKontakt> bezugsKontakte = patient.getBezugsKontakte(); if (bezugsKontakte != null) { for (BezugsKontakt bezugsKontakt : bezugsKontakte) { elements.add(bezugsKontakt); addedKontakte.add(bezugsKontakt.get("otherID")); }/*from w w w . j a va 2 s . c o m*/ } // required contacts of biling system Fall[] faelle = patient.getFaelle(); for (Fall fall : faelle) { String reqs = fall.getRequirements(); if (reqs != null) { for (String req : reqs.split(";")) { final String[] r = req.split(":"); // no valid entry if (r.length < 2) { continue; } // only consider contacts if (r[1].equals("K")) { String kontaktID = fall.getInfoString(r[0]); if (!kontaktID.startsWith("**ERROR")) { Kontakt kontakt = Kontakt.load(kontaktID); if (kontakt.isValid()) { elements.add(kontakt); addedKontakte.add(kontakt.getId()); } } } } } } return elements.toArray(); } return new Object[] {}; } public void dispose() { // nothing to do } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { // nothing to do } }); bezugsKontaktViewer.setLabelProvider(new KontaktSelektorLabelProvider()); bezugsKontaktViewer.setInput(this); bezugsKontaktViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { if (isSelecting) { return; } IStructuredSelection sel = (IStructuredSelection) cv.getViewerWidget().getSelection(); if (sel.size() > 0) { isSelecting = true; cv.getViewerWidget().setSelection(new StructuredSelection(), false); isSelecting = false; } } }); } else { bezugsKontaktViewer = null; } if (showBezugsKontakt) { new Label(ret, SWT.NONE).setText("Andere Kontakte"); } if (extraText != null) { new Label(ret, SWT.WRAP).setText(extraText); } vc = new ViewerConfigurer( // new LazyContentProvider(cv,dataloader, null), kl, new KontaktSelektorLabelProvider(), new DefaultControlFieldProvider(cv, new String[] { Messages.KontaktSelector_abbreviation, Messages.KontaktSelector_expression1, Messages.KontaktSelector_birthDate }), new ViewerConfigurer.ButtonProvider() { public Button createButton(final Composite parent) { Button ret = new Button(parent, SWT.PUSH); ret.setText("Neu erstellen..."); ret.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (hints == null) { hints = new String[3]; hints[0] = vc.getControlFieldProvider().getValues()[1]; } KontaktErfassenDialog ked = new KontaktErfassenDialog(parent.getShell(), hints); ked.open(); selection = ked.getResult(); okPressed(); // cv.getViewerWidget().refresh(); // cv.getViewerWidget().setSelection(new // StructuredSelection(kr), true); } }); return ret; } public boolean isAlwaysEnabled() { return false; } }, new SimpleWidgetProvider(SimpleWidgetProvider.TYPE_LAZYLIST, SWT.NONE, cv)); Composite types = new Composite(ret, SWT.BORDER); types.setLayout(new FillLayout()); types.setLayoutData(SWTHelper.getFillGridData(1, true, 1, false)); bAll = new Button(types, SWT.RADIO); bPersons = new Button(types, SWT.RADIO); bOrgs = new Button(types, SWT.RADIO); bAll.setText("Alle"); bPersons.setText("Personen"); bOrgs.setText("Organisationen"); bAll.addSelectionListener(fba); bPersons.addSelectionListener(fba); bOrgs.addSelectionListener(fba); initContactTypeSelection(); cv.create(vc, ret, SWT.NONE, "1"); GridData gd = SWTHelper.getFillGridData(1, true, 1, true); gd.heightHint = 100; cv.getViewerWidget().getControl().setLayoutData(gd); setTitle(title); setMessage(message); vc.getContentProvider().startListening(); cv.addDoubleClickListener(this); // cv.getViewerWidget().addFilter(filter); kl.addQueryFilter(fp); if (showBezugsKontakt) { cv.getViewerWidget().addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { if (isSelecting) { return; } if (bezugsKontaktViewer != null) { IStructuredSelection sel = (IStructuredSelection) bezugsKontaktViewer.getSelection(); if (sel.size() > 0) { isSelecting = true; bezugsKontaktViewer.setSelection(new StructuredSelection(), false); isSelecting = false; } } } }); } return ret; }
From source file:ch.elexis.core.ui.laboratory.preferences.LaborPrefs.java
License:Open Source License
protected Control createContents(Composite parn) { noDefaultAndApplyButton();//w ww.j ava 2 s . c om 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; EditLabItemUi.executeWithParams(li); 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 1: 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) { try { Integer no1 = Integer.parseInt(li1.getPrio()); Integer no2 = Integer.parseInt(li2.getPrio()); return no1.compareTo(no2); } catch (NumberFormatException nfe) { return li1.getPrio().compareToIgnoreCase(li2.getPrio()); } } return res; } }); int operations = DND.DROP_COPY; Transfer[] transferTypes = new Transfer[] { TextTransfer.getInstance() }; tableViewer.addDragSupport(operations, transferTypes, new DragSourceAdapter() { @Override public void dragSetData(DragSourceEvent event) { IStructuredSelection selection = (IStructuredSelection) tableViewer.getSelection(); LabItem labItem = (LabItem) selection.getFirstElement(); if (TextTransfer.getInstance().isSupportedType(event.dataType)) { event.data = labItem.getKuerzel() + "," + labItem.getName() + "," + labItem.getId(); } } }); tableViewer.setInput(this); return tableComposite; }
From source file:ch.elexis.core.ui.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(ExtensionPointConstantsUi.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(ExtensionPointConstantsUi.VERRECHNUNGSCODE_CSF); 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 w w .j a v a 2 s .c om } } } CTabItem ci = new CTabItem(ctab, SWT.NONE); Composite c = new Composite(ctab, SWT.NONE); c.setLayout(new GridLayout()); ci.setControl(c); ci.setText(Messages.ArtikelSelector_stockArticles); 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) { return CoreHub.getStockService().getAllStockEntries().toArray(); } public void dispose() { } public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) { } }); tv.setLabelProvider(new StockEntryLabelProvider() { @Override public String getColumnText(Object element, int columnIndex) { StockEntry se = (StockEntry) element; String ret = se.getArticle().getName(); Integer amount = CoreHub.getStockService().getCumulatedStockForArticle(se.getArticle()); if (amount != null) { ret += " (" + Integer.toString(amount) + ")"; //$NON-NLS-1$ //$NON-NLS-2$ } return ret; } }); tv.setInput(this); }