Skip to content

Commit

Permalink
Updedted Generator View to work with MoleculesEditor too
Browse files Browse the repository at this point in the history
  • Loading branch information
goglepox committed Sep 7, 2012
1 parent 4e2ee08 commit d17276f
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 8 deletions.
Expand Up @@ -106,6 +106,7 @@
import org.openscience.cdk.io.formats.IChemFormat;
import org.openscience.cdk.io.formats.IResourceFormat;
import org.openscience.cdk.io.formats.MDLV2000Format;
import org.openscience.cdk.renderer.ChemModelRenderer;
import org.openscience.cdk.renderer.RendererModel;
import org.openscience.cdk.renderer.generators.AtomNumberGenerator.WillDrawAtomNumbers;
import org.openscience.cdk.renderer.generators.IGenerator;
Expand Down Expand Up @@ -588,6 +589,9 @@ public Object getAdapter( Class adapter ) {
if( adapter.isAssignableFrom(ICDKMolecule.class)) {
return getCDKMolecule();
}
if( adapter.isAssignableFrom(ChemModelRenderer.class)){
return getWidget().getRenderer();
}
return super.getAdapter( adapter );
}

Expand Down
Expand Up @@ -37,6 +37,7 @@
import org.eclipse.ui.part.PageBook;
import org.eclipse.ui.part.PageBookView;
import org.openscience.cdk.interfaces.IChemModel;
import org.openscience.cdk.renderer.IRenderer;
import org.openscience.cdk.renderer.generators.IGenerator;


Expand All @@ -57,9 +58,8 @@ protected IPage createDefaultPage( PageBook book ) {

@Override
protected PageRec doCreatePage( final IWorkbenchPart part ) {
final JChemPaintEditor editor = (JChemPaintEditor) part;
final List<IGenerator<IChemModel>> generators =
editor.getWidget().getRenderer().getGenerators();
IRenderer renderer = (IRenderer) part.getAdapter(IRenderer.class);
final List<IGenerator> generators = (List<IGenerator>)renderer.getGenerators();

Page page = new Page() {

Expand Down Expand Up @@ -101,7 +101,9 @@ public void checkStateChanged( CheckStateChangedEvent event ) {
Object element = event.getElement();
if(element instanceof ChoiceGenerator) {
((ChoiceGenerator)element).setUse( event.getChecked());
editor.update();
if(part instanceof JChemPaintEditor) {
((JChemPaintEditor)part).update();
}
}
}
});
Expand Down Expand Up @@ -208,16 +210,23 @@ protected IWorkbenchPart getBootstrapPart() {
IWorkbenchPage page = getSite().getPage();
if (page != null) {
IEditorPart part = page.getActiveEditor();
if(part != null && part.getSite().getId()
.startsWith( "net.bioclipse.cdk.ui.editors.jchempaint" ))
return page.getActiveEditor();
if(part != null && isImportant(part))
return part;
}
return null;
}

@Override
protected boolean isImportant( IWorkbenchPart part ) {
return part.getSite().getId().startsWith( "net.bioclipse.cdk.ui.editors.jchempaint" );
String[] ids = new String[] {
"net.bioclipse.cdk.ui.editors.jchempaint",
"net.bioclipse.cdk.ui.sdfeditor"
};
String partId = part.getSite().getId();
for(String id:ids) {
if(partId.startsWith(id)) return true;
}
return false;
}

}
Expand Up @@ -89,6 +89,8 @@
import org.eclipse.ui.part.EditorInputTransfer.EditorInputData;
import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
import org.openscience.cdk.interfaces.IAtomContainer;
import org.openscience.cdk.renderer.AtomContainerRenderer;
import org.openscience.cdk.renderer.IRenderer;

public class MoleculesEditor extends EditorPart implements
//ISelectionProvider,
Expand Down Expand Up @@ -650,6 +652,8 @@ public Object getAdapter( Class adapter ) {
outlinePage.setInput( (IMoleculesEditorModel) model );
}
return outlinePage;
} else if( adapter.isAssignableFrom(AtomContainerRenderer.class)) {
return getMolTableViewer().cellPainter.renderer;
}
return super.getAdapter( adapter );
}
Expand Down

0 comments on commit d17276f

Please sign in to comment.