taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/preference/LanguagePreferencePage.java -text
taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/preference/MatchingPreferences.java -text
taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/preference/NomenclaturalCodePreferences.java -text
+taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/preference/PreferencePropertyTester.java -text
taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/preference/PreferencesUtil.java -text
taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/preference/Resources.java -text
taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/preference/TaxonomicEditorGeneralPreferences.java -text
import org.eclipse.ui.PartInitException;
import eu.etaxonomy.taxeditor.editor.view.AbstractCdmEditorViewPart;
+import eu.etaxonomy.taxeditor.editor.view.concept.ConceptViewPart;
import eu.etaxonomy.taxeditor.editor.view.descriptive.DescriptiveViewPart;
import eu.etaxonomy.taxeditor.editor.view.media.MediaViewPart;
import eu.etaxonomy.taxeditor.model.ContextListenerAdapter;
/** {@inheritDoc} */
@Override
public void contextStop(IMemento memento, IProgressMonitor monitor) {
+ EditorUtil.closeAll();
resetConstantViews();
}
private void resetConstantViews() {
AbstractCdmEditorViewPart descriptiveView = (AbstractCdmEditorViewPart) EditorUtil.getView(DescriptiveViewPart.ID, false);
AbstractCdmEditorViewPart mediaView = (AbstractCdmEditorViewPart) EditorUtil.getView(MediaViewPart.ID, false);
+ AbstractCdmEditorViewPart conceptView = (AbstractCdmEditorViewPart) EditorUtil.getView(ConceptViewPart.ID, false);
if(descriptiveView != null){
descriptiveView.showEmptyPage();
}
-
if(mediaView != null){
mediaView.showEmptyPage();
}
+ if(conceptView != null){
+ conceptView.showEmptyPage();
+ }
}
/* (non-Javadoc)
public class EditorUtil extends AbstractUtility{
private static boolean isSaving = false;
-
- /**
- * <p>closeAll</p>
- *
- * @return a boolean.
- */
- public static boolean closeAll() {
- for (IEditorPart editor : getOpenEditors()) {
- if (!getActivePage().closeEditor(editor, true)) {
- return false;
- }
- }
- return true;
- }
-
- /**
- * Close the given editor.
- *
- * @param editor The <tt>MultipageTaxonEditor</tt> to close.
- * @return <tt>true</tt> on success
- */
- public static boolean close(MultiPageTaxonEditor editor) {
- return getActivePage().closeEditor(editor, true);
- }
/**
* Opens a new editor window with the given input
* @throws org.eclipse.ui.PartInitException if any.
*/
public static void open(TaxonEditorInput input) throws PartInitException{
- IEditorPart editor = open(input, MultiPageTaxonEditor.ID);
+ open(input, MultiPageTaxonEditor.ID);
}
public static void open(PolytomousKeyEditorInput input) throws PartInitException{
return false;
}
- editor.doSave(null);
+ editor.doSave(EditorUtil.getMonitor());
}
return true;
}
for (IEditorPart editor : EditorUtil.getOpenEditors()) {
if (editor.isDirty()) {
- editor.doSave(null);
+ editor.doSave(EditorUtil.getMonitor());
}
}
// Redraw existing editor
((IPostOperationEnabled) editor).postOperation(null);
- editor.doSave(null);
+ editor.doSave(EditorUtil.getMonitor());
if (objectAffectedByOperation instanceof TaxonNode) {
*/
package eu.etaxonomy.taxeditor.section.supplemental;
+import org.eclipse.swt.events.FocusAdapter;
+import org.eclipse.swt.events.FocusEvent;
import org.eclipse.swt.events.SelectionListener;
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
/** {@inheritDoc} */
@Override
public void createControls(ICdmFormElement element, int style) {
- text_title = formFactory.createLanguageStringWithLabelElement(element, "Title", null, style);
+ text_title = formFactory.createLanguageStringWithLabelElement(element, "Title", null, style);
selection_artist = (AgentSelectionElement) formFactory.createSelectionElement(SelectionType.AGENT, getConversationHolder(), element, "Artist", null, style);
text_description = formFactory.createLanguageStringWithLabelElement(element, "Description", null, 100, style);
section_mediaRepresentation = (MediaRepresentationSection) formFactory.createEntityDetailSection(EntityDetailType.MEDIAREPRESENTATION, getConversationHolder(), element, style);
category="eu.etaxonomy.taxeditor.preferences.general"
class="eu.etaxonomy.taxeditor.preference.MatchingPreferences"
id="eu.etaxonomy.taxeditor.preferences.matching"
- name="Matching">
+ name="Matching (Experimental)">
</page>
<page
category="eu.etaxonomy.taxeditor.preferences.matching"
name="org.eclipse.ui.views.showView.viewId"
value="eu.etaxonomy.taxeditor.reporting.viewPart">
</parameter>
+ <visibleWhen
+ checkEnabled="true">
+ <reference
+ definitionId="isShowExperimentalFeatures">
+ </reference>
+ </visibleWhen>
</command>
</menu>
</menuContribution>
properties="isCompatible"
type="org.eclipse.jface.viewers.IStructuredSelection">
</propertyTester>
+ <propertyTester
+ class="eu.etaxonomy.taxeditor.preference.PreferencePropertyTester"
+ id="eu.etaxonomy.taxeditor.preferences.propertyTester"
+ namespace="eu.etaxonomy.taxeditor.preferences.propertyTester"
+ properties="isShowExperimentalFeatures"
+ type="org.eclipse.jface.viewers.IStructuredSelection">
+ </propertyTester>
</extension>
<extension
point="org.eclipse.core.expressions.definitions">
</test>
</with>
</definition>
+ <definition
+ id="isShowExperimentalFeatures">
+ <with
+ variable="activeMenuSelection">
+ <test
+ property="eu.etaxonomy.taxeditor.preferences.propertyTester.isShowExperimentalFeatures">
+ </test>
+ </with>
+ </definition>
</extension>
</plugin>
boolean confirmed = MessageDialog.openConfirm(shell, "Confirm Datasource Close", "Do you really want to close the datasource connection?\n\n");
-
if(confirmed){
- CdmStore.close(null);
+ CdmStore.close(StoreUtil.getMonitor());
}
CdmDataSourceViewPart view = (CdmDataSourceViewPart) StoreUtil.getView(CdmDataSourceViewPart.ID, true);
import org.eclipse.jface.viewers.IStructuredSelection;
import eu.etaxonomy.taxeditor.datasource.view.CdmMetaDataAwareDataSourceContainer;
+import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
/**
* <p>DataSourceMenuPropertyTester class.</p>
if (COMPATIBLE.equals(property)) {
return isCompatible(selectedElements);
}
+
return false;
}
+
+
/**
* @param selectedElements
* @return
* @param configurator a CONFIGURATOR object.
*/
public void run(final CONFIGURATOR configurator){
-
+ // create job
Job job = createIOJob(configurator);
+ // configure the job
job.setProperty(IProgressConstants.KEEP_PROPERTY, true);
job.setUser(true);
+ // schedule job
job.schedule();
}
import eu.etaxonomy.cdm.io.common.IImportConfigurator;
import eu.etaxonomy.cdm.io.common.IIoConfigurator;
-import eu.etaxonomy.taxeditor.store.StoreUtil;
/**
* <p>Abstract AbstractImportWizard class.</p>
}
private void createViewerComposite(Composite parent) {
-
viewerComposite = new SashForm(parent, SWT.HORIZONTAL);
-
-
}
/**
* @param selection a {@link org.eclipse.jface.viewers.ISelection} object.
*/
public void showViewer(IWorkbenchPart part, ISelection selection){
-
-
this.part = part;
IStructuredSelection structuredSelection = (IStructuredSelection) selection;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.ide.undo.WorkspaceUndoUtil;
+import org.eclipse.ui.part.EditorPart;
import org.eclipse.ui.progress.IProgressService;
import org.eclipse.ui.progress.IWorkbenchSiteProgressService;
import org.eclipse.ui.themes.ITheme;
/** Constant <code>statusLineManager</code> */
protected static IStatusLineManager statusLineManager;
+
+ /**
+ * <p>closeAll</p>
+ *
+ * @return a boolean.
+ */
+ public static boolean closeAll() {
+ return getActivePage().closeAllEditors(true);
+ }
+
+ /**
+ * Close the given editor.
+ *
+ * @param editor The <tt>MultipageTaxonEditor</tt> to close.
+ * @return <tt>true</tt> on success
+ */
+ public static boolean close(EditorPart editor) {
+ return getActivePage().closeEditor(editor, true);
+ }
+
/**
* <p>getShell</p>
*
*/
public static IViewPart showView(String id){
try {
- return PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(id);
+ return PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(id, null, IWorkbenchPage.VIEW_VISIBLE);
} catch (PartInitException e) {
error(AbstractUtility.class, "Could not open view: " + id, e);
throw new RuntimeException(e);
}
return null;
}
-
- /**
- * <p>closeAll</p>
- *
- * @return a boolean.
- */
- public static boolean closeAll() {
- return getActivePage().closeAllEditors(true);
- }
/**
* <p>getService</p>
* The language to be used for all things multilanguage
*/
public static final String GLOBAL_LANGUAGE_UUID = "eu.etaxonomy.taxeditor.globalLanguage";
+
+ public static final String SHOW_EXPERIMENTAL_FEATURES = "eu.etaxonomy.taxeditor.showExperimentalFeatures";
}
--- /dev/null
+// $Id$
+/**
+* Copyright (C) 2007 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+
+package eu.etaxonomy.taxeditor.preference;
+
+import org.eclipse.core.expressions.PropertyTester;
+
+/**
+ * @author n.hoffmann
+ * @created Jan 26, 2011
+ * @version 1.0
+ */
+public class PreferencePropertyTester extends PropertyTester {
+
+
+ private static final String SHOW_EXPERIMENTAL_FEATURES = "isShowExperimentalFeatures";
+
+ /* (non-Javadoc)
+ * @see org.eclipse.core.expressions.IPropertyTester#test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object)
+ */
+ @Override
+ public boolean test(Object receiver, String property, Object[] args,
+ Object expectedValue) {
+
+ if(SHOW_EXPERIMENTAL_FEATURES.equals(property)){
+ return isShowExperimentalFeatures();
+ }
+
+ return false;
+ }
+
+ /**
+ * @return
+ */
+ private boolean isShowExperimentalFeatures() {
+ return PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_EXPERIMENTAL_FEATURES);
+ }
+
+}
private boolean shouldConnectAtStartup;
private boolean shouldExpandSectionWhenDataAvailable;
+
+ private boolean shouldShowExperimentalFeatures;
/* (non-Javadoc)
* @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
createShouldConnectAtStartUp(container);
createShouldExpandSectionWhenDataAvailable(container);
+ createShowExperimentalFeatures(container);
+
return container;
}
+
private void createShouldExpandSectionWhenDataAvailable(Composite container) {
shouldExpandSectionWhenDataAvailable = getPreferenceStore().getBoolean(IPreferenceKeys.SHOULD_EXPAND_SECTION_WHEN_DATA_AVAILABLE);
}
private void createShouldConnectAtStartUp(Composite parent){
- shouldConnectAtStartup = getPreferenceStore().getBoolean(PreferencesUtil.SHOULD_CONNECT_AT_STARTUP);
+ shouldConnectAtStartup = getPreferenceStore().getBoolean(IPreferenceKeys.SHOULD_CONNECT_AT_STARTUP);
final Composite composite = createComposite(parent);
});
}
+ /**
+ * @param container
+ */
+ private void createShowExperimentalFeatures(Composite parent) {
+ shouldShowExperimentalFeatures = getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_EXPERIMENTAL_FEATURES);
+ final Composite composite = createComposite(parent);
+
+ final Button button_toggle = new Button(composite, SWT.CHECK);
+
+
+ button_toggle.setText("Show experimental features-");
+
+ button_toggle.setSelection(shouldShowExperimentalFeatures);
+
+
+ button_toggle.addSelectionListener(new SelectionAdapter(){
+ /* (non-Javadoc)
+ * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
+ */
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ shouldShowExperimentalFeatures = button_toggle.getSelection();
+ }
+ });
+ }
+
private Composite createComposite(Composite parent){
Composite composite = new Composite(parent, SWT.NULL);
composite.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false, 2, 1));
getPreferenceStore().setValue(IPreferenceKeys.EDIT_MAP_SERVICE_ACCES_POINT, editMapServiceAccessPoint);
getPreferenceStore().setValue(IPreferenceKeys.SHOULD_CONNECT_AT_STARTUP, shouldConnectAtStartup);
getPreferenceStore().setValue(IPreferenceKeys.SHOULD_EXPAND_SECTION_WHEN_DATA_AVAILABLE, shouldExpandSectionWhenDataAvailable);
+ getPreferenceStore().setValue(IPreferenceKeys.SHOW_EXPERIMENTAL_FEATURES, shouldShowExperimentalFeatures);
return super.performOk();
}
+
}
@Override
public void run() {
getContextManager().notifyContextAboutToStop(monitor);
- if((monitor == null || (!monitor.isCanceled()) && isActive() && StoreUtil.closeAll())){
+ if((monitor == null || (!monitor.isCanceled()) && isActive())){
getContextManager().notifyContextStop(monitor);
if(instance.getApplicationController() != null){
instance.getApplicationController().close();