Mercurial > hg > de.mpg.mpiwg.itgroup.digilib.plugin
diff src/de/mpg/mpiwg/itgroup/digilib/plugin/editors/DigilibLinkEditorPart.java @ 25:6e7bb3467531
new property view
author | dwinter |
---|---|
date | Mon, 10 Jan 2011 11:38:03 +0100 |
parents | 1a7940ac5169 |
children | 183c3e96f6c3 |
line wrap: on
line diff
--- a/src/de/mpg/mpiwg/itgroup/digilib/plugin/editors/DigilibLinkEditorPart.java Wed Jan 05 14:04:58 2011 +0100 +++ b/src/de/mpg/mpiwg/itgroup/digilib/plugin/editors/DigilibLinkEditorPart.java Mon Jan 10 11:38:03 2011 +0100 @@ -16,18 +16,24 @@ import org.eclipse.ui.IEditorInput; import org.eclipse.ui.IEditorSite; import org.eclipse.ui.IPageLayout; +import org.eclipse.ui.IPartService; import org.eclipse.ui.IViewPart; import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.PartInitException; +import org.eclipse.ui.internal.WWinPartService; import org.eclipse.ui.part.EditorPart; +import org.eclipse.ui.views.properties.IPropertySheetPage; import org.eclipse.ui.views.properties.PropertySheet; import org.eclipse.ui.views.properties.PropertySheetPage; +import org.eclipse.ui.views.properties.tabbed.ITabbedPropertySheetPageContributor; +import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; import org.jdom.JDOMException; import de.mpg.mpiwg.itgroup.digilib.digiImage.DigiImage; import de.mpg.mpiwg.itgroup.digilib.digiImage.DigiImageController; import de.mpg.mpiwg.itgroup.digilib.digiImage.DigiImageParameter; import de.mpg.mpiwg.itgroup.digilib.digiImage.DigiNav; +import de.mpg.mpiwg.itgroup.digilib.plugin.Activator; import de.mpg.mpiwg.itgroup.indexMeta.Utils.ParseIndexMeta; /** @@ -36,10 +42,12 @@ * @author dwinter * */ -public class DigilibLinkEditorPart extends EditorPart implements Observer{ +public class DigilibLinkEditorPart extends EditorPart implements Observer, ITabbedPropertySheetPageContributor{ private Composite mainComposite; private ScrolledComposite sc; + private boolean isDirty; + private TabbedPropertySheetPage tp=null; @Override public void doSave(IProgressMonitor monitor) { // TODO Auto-generated method stub @@ -62,8 +70,7 @@ @Override public boolean isDirty() { - // TODO Auto-generated method stub - return false; + return isDirty; } @Override @@ -131,6 +138,7 @@ new DigiNav(mainComposite,SWT.NONE,digiImageController); getSite().setSelectionProvider(digiImage); + //StructuredSelection strucSel = new StructuredSelection(digiImage); digiImage.setSelection(new StructuredSelection(digiImage)); sc.setMinSize(mainComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT)); @@ -153,15 +161,15 @@ mainComposite.pack(); sc.setMinSize(mainComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT)); sc.layout(); - - - //refresh the property view. - IWorkbenchPage page = getSite().getPage(); + isDirty=true; + firePropertyChange(PROP_DIRTY); - IViewPart view = page.findView(IPageLayout.ID_PROP_SHEET); + //Object[] ls = getListeners(); + //System.out.println(ls); - ((PropertySheetPage)((PropertySheet)view).getCurrentPage()).refresh(); - //sc.pack(); + if (tp!=null) + tp.refresh(); + } else if (Integer.class.isInstance(arg)){ int b = (Integer) arg; @@ -173,7 +181,19 @@ } + + public String getContributorId() { + String contribId = getSite().getId(); + return contribId; + } - + public Object getAdapter(Class adapter) { + if (adapter == IPropertySheetPage.class){ + + tp = new TabbedPropertySheetPage(this); + return tp; + } + return super.getAdapter(adapter); + } }