private void removeTerm() { TableItem[] sel = termsTableViewer.getTable().getSelection(); if (sel.length > 0) { ITerm selTerm = (ITerm) (sel[0].getData()); ITerminoConcept tc = ControlerFactoryImpl.getTerminoOntoControler().getCurrentTerminoConcept(); ITerminoOntoAnnotation starTermAnnotation = getStarTermAnnotation(tc); if (starTermAnnotation != null) { if (starTermAnnotation.getValue().compareTo(selTerm.getId() + "") == 0) { // $NON-NLS-1$ DatabaseAdapter.deleteTCAnnotation(tc, starTermAnnotation); } } List<ITerminoConcept> tcs = new ArrayList<ITerminoConcept>(); tcs.add(tc); DatabaseAdapter.unlinkTerm(tcs, selTerm); updateInformation(); } }
@Override public void propertyChange(PropertyChangeEvent arg0) { DatabaseAdapter.deleteSentencesFromTC( ControlerFactoryImpl.getTerminoOntoControler().getCurrentTerminoConcept(), sentencesWidget.getSelection()); updateInformation(); }
public void updateInformation() { currentTerminoConcept = ControlerFactoryImpl.getTerminoOntoControler().getCurrentTerminoConcept(); if (currentTerminoConcept != null) { terminoConceptText.setText(currentTerminoConcept.getLabel()); termsTableViewer.setInput(UtilTools.setToList(currentTerminoConcept.getMappedTerms())); termsOtherLgTableViewer.setInput(getTCTranslationAnnotations(currentTerminoConcept)); sentencesWidget.setInput(getSentences()); } }
private void removeTranslatedTerm() { TableItem[] sel = termsOtherLgTableViewer.getTable().getSelection(); if (sel.length > 0) { ITerminoOntoAnnotation selAnnot = (ITerminoOntoAnnotation) (sel[0].getData()); ITerminoConcept tc = ControlerFactoryImpl.getTerminoOntoControler().getCurrentTerminoConcept(); DatabaseAdapter.deleteTCAnnotation(tc, selAnnot); updateInformation(); } }
private void addTerm() { NewTermDialog dialog = new NewTermDialog(shell, TerminologicalViewPart.this, false); dialog.open(); if (dialog.getReturnCode() == IDialogConstants.OK_ID) { if (dialog.getTerm().compareTo("") != 0) { // $NON-NLS-1$ ITerminoConcept tc = ControlerFactoryImpl.getTerminoOntoControler().getCurrentTerminoConcept(); ITerm t = org.dafoe.terminology.common.DatabaseAdapter.createTermFromLabel( dialog.getTerm(), TERMINO_OBJECT_STATE.VALIDATED, LINGUISTIC_STATUS.TERM); DatabaseAdapter.linkTCWithTerm(tc, t); updateInformation(); } } }
private void addTranslatedTerm() { NewTermDialog dialog = new NewTermDialog(shell, TerminologicalViewPart.this, true); dialog.open(); if (dialog.getReturnCode() == IDialogConstants.OK_ID) { ITerminoConcept tc = ControlerFactoryImpl.getTerminoOntoControler().getCurrentTerminoConcept(); String selLanguage = dialog.getLanguage(); String databaseAnnotation = DatabaseAdapter.LABEL_EN_ANNOTATION; if (selLanguage.compareTo(NewTermDialog.SPANISH) == 0) { databaseAnnotation = DatabaseAdapter.LABEL_SP_ANNOTATION; } else if (selLanguage.compareTo(NewTermDialog.ENGLISH) == 0) { databaseAnnotation = DatabaseAdapter.LABEL_EN_ANNOTATION; } DatabaseAdapter.createTCAnnotation(tc, databaseAnnotation, dialog.getTerm()); updateInformation(); } }
@Override public void createPartControl(Composite parent) { shell = parent.getShell(); FontRegistry fontRegistry = new FontRegistry(parent.getShell().getDisplay()); fontRegistry.put( "TC", new FontData[] {new FontData("Arial", 10, SWT.BOLD)}); // $NON-NLS-1$ //$NON-NLS-2$ final Composite comp = new Composite(parent, SWT.NONE); GridLayout layout = new GridLayout(2, true); layout.horizontalSpacing = 5; layout.verticalSpacing = 5; layout.marginHeight = 5; layout.marginWidth = 5; comp.setLayout(layout); GridData gd; terminoConceptText = new Text(comp, SWT.BORDER | SWT.CENTER | SWT.READ_ONLY); terminoConceptText.setEditable(false); terminoConceptText.setFont(fontRegistry.get("TC")); // $NON-NLS-1$ gd = new GridData(SWT.FILL, SWT.TOP, true, false, 2, 1); terminoConceptText.setLayoutData(gd); // terminologic composite Composite terminoComposite = new Composite(comp, SWT.NONE); layout = new GridLayout(1, true); gd = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1); terminoComposite.setLayout(layout); terminoComposite.setLayoutData(gd); terminoComposite.setBackground(terminologicColor); // terms in current language currentLanguageTerms = new Composite(terminoComposite, SWT.NONE); layout = new GridLayout(2, false); gd = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1); currentLanguageTerms.setLayout(layout); currentLanguageTerms.setLayoutData(gd); termsTableViewer = new TableViewer( currentLanguageTerms, SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.BORDER); GridData gridData = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1); termsTableViewer.getTable().setLayoutData(gridData); termsTableViewer.getTable().setLinesVisible(true); termsTableViewer.getTable().setHeaderVisible(true); termsTableViewer.setContentProvider(new TermContentProvider()); termsTableViewer.setSorter(new TermsTableViewerSorter()); // Columns termColumn = new TableViewerColumn(termsTableViewer, SWT.NONE, 0); termColumn.getColumn().setText(Messages.getString("TerminologicalViewPart.13")); // $NON-NLS-1$ termColumn.setLabelProvider(new TermLabelProvider()); termColumn.getColumn().setAlignment(SWT.CENTER); termColumn .getColumn() .addSelectionListener( new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { TermsTableViewerSorter sorter = new TermsTableViewerSorter(); termsTableViewer.setSorter(sorter); termsTableViewer.getTable().setSortColumn(termColumn.getColumn()); termsTableViewer.getTable().setSortDirection(directionTerm); } }); languageColumn = new TableViewerColumn(termsTableViewer, SWT.CENTER, 1); languageColumn .getColumn() .setText(Messages.getString("TerminologicalViewPart.14")); // $NON-NLS-1$ languageColumn.getColumn().setAlignment(SWT.CENTER); languageColumn.setLabelProvider(new DefaultLanguageLabelProvider()); currentLanguageTerms.addControlListener( new ControlAdapter() { public void controlResized(ControlEvent e) { Rectangle area = currentLanguageTerms.getClientArea(); Point preferredSize = termsTableViewer.getTable().computeSize(SWT.DEFAULT, SWT.DEFAULT); int width = area.width - 2 * termsTableViewer.getTable().getBorderWidth(); if (preferredSize.y > area.height + termsTableViewer.getTable().getHeaderHeight()) { Point vBarSize = termsTableViewer.getTable().getVerticalBar().getSize(); width -= vBarSize.x; } Point oldSize = termsTableViewer.getTable().getSize(); if (oldSize.x > area.width) { termColumn.getColumn().setWidth(width * 80 / 100); languageColumn.getColumn().setWidth(width * 20 / 100); termsTableViewer.getTable().setSize(area.width, area.height); } else { termsTableViewer.getTable().setSize(area.width, area.height); termColumn.getColumn().setWidth(width * 80 / 100); languageColumn.getColumn().setWidth(width * 20 / 100); } } }); Button addTermCurrentLg = new Button(currentLanguageTerms, SWT.PUSH); String imageId = org.dafoe.terminoontologiclevel.ui.Activator.NEW_IMG_ID; ImageDescriptor imgDesc = org.dafoe.terminoontologiclevel.ui.Activator.getDefault() .getImageRegistry() .getDescriptor(imageId); Image image = imgDesc.createImage(); addTermCurrentLg.setImage(image); addTermCurrentLg.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, true, false)); addTermCurrentLg.addSelectionListener( new SelectionAdapter() { public void widgetSelected(SelectionEvent event) { addTerm(); } }); Button removeTermCurrentLg = new Button(currentLanguageTerms, SWT.PUSH); imageId = org.dafoe.terminoontologiclevel.ui.Activator.REMOVE_IMG_ID; imgDesc = org.dafoe.terminoontologiclevel.ui.Activator.getDefault() .getImageRegistry() .getDescriptor(imageId); image = imgDesc.createImage(); removeTermCurrentLg.setImage(image); removeTermCurrentLg.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, true, false)); removeTermCurrentLg.addSelectionListener( new SelectionAdapter() { public void widgetSelected(SelectionEvent event) { removeTerm(); } }); // Sentences sentencesWidget = new SentenceWidget(comp, SWT.NONE); layout = new GridLayout(1, false); gd = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1); sentencesWidget.setLayout(layout); sentencesWidget.setLayoutData(gd); sentencesWidget.setDeletionEventType(TerminologicalViewPart.SENTENCE_DELETED); sentencesWidget.addPropertyChangeListener(new SentenceDeletedChangeListener()); // terms in other languages otherLanguageTerms = new Composite(terminoComposite, SWT.NONE); layout = new GridLayout(2, false); gd = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1); otherLanguageTerms.setLayout(layout); otherLanguageTerms.setLayoutData(gd); termsOtherLgTableViewer = new TableViewer( otherLanguageTerms, SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.BORDER); gridData = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1); termsOtherLgTableViewer.getTable().setLayoutData(gridData); termsOtherLgTableViewer.getTable().setLinesVisible(true); termsOtherLgTableViewer.getTable().setHeaderVisible(true); termsOtherLgTableViewer.setContentProvider(new TranslatedTermContentProvider()); // Columns termLgColumn = new TableViewerColumn(termsOtherLgTableViewer, SWT.NONE, 0); termLgColumn .getColumn() .setText(Messages.getString("TerminologicalViewPart.17")); // $NON-NLS-1$ termLgColumn.setLabelProvider(new TranslatedTermLabelProvider()); termLgColumn .getColumn() .addSelectionListener( new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { TanslatedTermsTableViewerSorter sorter = new TanslatedTermsTableViewerSorter(TanslatedTermsTableViewerSorter.TERM_SORT); termsOtherLgTableViewer.setSorter(sorter); termsOtherLgTableViewer.getTable().setSortColumn(termLgColumn.getColumn()); termsOtherLgTableViewer.getTable().setSortDirection(directionTransTerm); } }); languagesColumn = new TableViewerColumn(termsOtherLgTableViewer, SWT.NONE, 1); languagesColumn .getColumn() .setText(Messages.getString("TerminologicalViewPart.18")); // $NON-NLS-1$ languagesColumn.setLabelProvider(new OtherLanguageLabelProvider()); languagesColumn .getColumn() .addSelectionListener( new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { TanslatedTermsTableViewerSorter sorter = new TanslatedTermsTableViewerSorter(TanslatedTermsTableViewerSorter.FLAG_SORT); termsOtherLgTableViewer.setSorter(sorter); termsOtherLgTableViewer.getTable().setSortColumn(languagesColumn.getColumn()); termsOtherLgTableViewer.getTable().setSortDirection(directionTransTerm); } }); otherLanguageTerms.addControlListener( new ControlAdapter() { public void controlResized(ControlEvent e) { Rectangle area = otherLanguageTerms.getClientArea(); Point preferredSize = termsOtherLgTableViewer.getTable().computeSize(SWT.DEFAULT, SWT.DEFAULT); int width = area.width - 2 * termsOtherLgTableViewer.getTable().getBorderWidth(); if (preferredSize.y > area.height + termsOtherLgTableViewer.getTable().getHeaderHeight()) { Point vBarSize = termsOtherLgTableViewer.getTable().getVerticalBar().getSize(); width -= vBarSize.x; } Point oldSize = termsOtherLgTableViewer.getTable().getSize(); if (oldSize.x > area.width) { termLgColumn.getColumn().setWidth(width * 80 / 100); languagesColumn.getColumn().setWidth(width * 20 / 100); termsOtherLgTableViewer.getTable().setSize(area.width, area.height); } else { termsOtherLgTableViewer.getTable().setSize(area.width, area.height); termLgColumn.getColumn().setWidth(width * 80 / 100); languagesColumn.getColumn().setWidth(width * 20 / 100); } } }); Button addTermOtherLg = new Button(otherLanguageTerms, SWT.PUSH); imageId = org.dafoe.terminoontologiclevel.ui.Activator.NEW_IMG_ID; imgDesc = org.dafoe.terminoontologiclevel.ui.Activator.getDefault() .getImageRegistry() .getDescriptor(imageId); image = imgDesc.createImage(); addTermOtherLg.setImage(image); addTermOtherLg.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, true, false)); addTermOtherLg.addSelectionListener( new SelectionAdapter() { public void widgetSelected(SelectionEvent event) { addTranslatedTerm(); } }); Button removeTermOtherLg = new Button(otherLanguageTerms, SWT.PUSH); imageId = org.dafoe.terminoontologiclevel.ui.Activator.REMOVE_IMG_ID; imgDesc = org.dafoe.terminoontologiclevel.ui.Activator.getDefault() .getImageRegistry() .getDescriptor(imageId); image = imgDesc.createImage(); removeTermOtherLg.setImage(image); removeTermOtherLg.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, true, false)); removeTermOtherLg.addSelectionListener( new SelectionAdapter() { public void widgetSelected(SelectionEvent event) { removeTranslatedTerm(); } }); // ControlerFactoryImpl.getTerminoOntoControler() .addPropertyChangeListener( ControlerFactoryImpl.currentTerminoConceptEvent, new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { updateInformation(); } }); ControlerFactoryImpl.getTerminoOntoControler() .addPropertyChangeListener( ControlerFactoryImpl.renameTCEvent, new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { updateInformation(); } }); makeActions(); hookPopupMenus(); updateInformation(); }