/**
- *
+ *
*/
package eu.etaxonomy.taxeditor.view;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.IEditorPart;
+import eu.etaxonomy.taxeditor.editor.ISecuredEditor;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
import eu.etaxonomy.taxeditor.model.IDirtyMarkableSelectionProvider;
-import eu.etaxonomy.taxeditor.store.StoreUtil;
/**
* <p>
* Abstract AbstractCdmEditorViewPart class.
* </p>
- *
+ *
* @author n.hoffmann
* @created Sep 21, 2010
* @version 1.0
/*
* (non-Javadoc)
- *
+ *
* @see
* eu.etaxonomy.taxeditor.model.AbstractCdmViewPart#createPartControl(org
* .eclipse.swt.widgets.Composite)
/** {@inheritDoc} */
@Override
public void createPartControl(Composite parent) {
-
super.createPartControl(parent);
-
}
/**
* <p>
* getEditor
* </p>
- *
+ *
* @return the currently active editor
*/
public IEditorPart getEditor() {
- return StoreUtil.getActiveEditor();
+ return AbstractUtility.getActiveEditor();
}
/** {@inheritDoc} */
@Override
- public void changed(Object object) {
- if (part instanceof AbstractCdmViewPart) {
- ((AbstractCdmViewPart) part).changed(object);
- } else {
- IEditorPart editor = getEditor();
- if (editor != null
- && editor instanceof IDirtyMarkableSelectionProvider) {
-
- ((IDirtyMarkableSelectionProvider) editor).changed(object);
+ public void setFocus() {
+ super.setFocus();
- }
+ if(getEditor() != null && ISecuredEditor.class.isAssignableFrom(getEditor().getClass())){
+ boolean doEnable = ((ISecuredEditor)getEditor()).permissionsSatisfied();
+ setEnabled(doEnable);
}
- }
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public void changed(Object object) {
+ if (part instanceof AbstractCdmViewPart) {
+ ((AbstractCdmViewPart) part).changed(object);
+ } else {
+ IEditorPart editor = getEditor();
+ if (editor != null && editor instanceof IDirtyMarkableSelectionProvider) {
+ ((IDirtyMarkableSelectionProvider) editor).changed(object);
+ }
+ }
+ }
}