Mercurial > hg > de.mpg.mpiwg.itgroup.digilib.plugin
annotate src/de/mpg/mpiwg/itgroup/digilib/plugin/editors/DigilibLinkEditorPart.java @ 28:0205c3f41d1d default tip
repackaging (separate textgridlab and dgilib local parts more rigorously
author | dwinter |
---|---|
date | Fri, 24 Aug 2012 09:42:57 +0200 |
parents | |
children |
rev | line source |
---|---|
28
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
1 // TODO: Navigationselemente sollen nach Eclipserichtlinien in den local (view) toolbar (http://www.eclipse.org/articles/Article-UI-Guidelines/Contents.html) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
2 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
3 package de.mpg.mpiwg.itgroup.digilib.plugin.editors; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
4 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
5 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
6 // |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
7 //import info.textgrid.lab.core.model.TGContentType; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
8 //import info.textgrid.lab.core.model.TextGridObject; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
9 //import info.textgrid.lab.core.model.TextGridProject; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
10 //import info.textgrid.lab.core.swtutils.AdapterUtils; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
11 import de.mpg.mpiwg.itgroup.digilib.digiImage.Messages; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
12 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
13 import java.io.ByteArrayInputStream; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
14 import java.io.ByteArrayOutputStream; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
15 import java.io.File; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
16 import java.io.IOException; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
17 import java.io.OutputStream; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
18 import java.net.URI; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
19 import java.util.Observable; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
20 import java.util.Observer; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
21 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
22 import javax.xml.transform.stream.StreamResult; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
23 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
24 import org.eclipse.core.filesystem.EFS; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
25 import org.eclipse.core.filesystem.IFileStore; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
26 import org.eclipse.core.resources.IFile; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
27 import org.eclipse.core.runtime.CoreException; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
28 import org.eclipse.core.runtime.IAdaptable; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
29 import org.eclipse.core.runtime.IProgressMonitor; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
30 import org.eclipse.core.runtime.IStatus; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
31 import org.eclipse.core.runtime.NullProgressMonitor; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
32 import org.eclipse.core.runtime.Platform; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
33 import org.eclipse.core.runtime.Status; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
34 import org.eclipse.core.runtime.jobs.Job; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
35 import org.eclipse.jface.dialogs.IInputValidator; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
36 import org.eclipse.jface.dialogs.InputDialog; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
37 import org.eclipse.jface.dialogs.MessageDialog; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
38 import org.eclipse.jface.viewers.StructuredSelection; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
39 import org.eclipse.jface.window.Window; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
40 import org.eclipse.osgi.util.NLS; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
41 import org.eclipse.swt.SWT; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
42 import org.eclipse.swt.custom.ScrolledComposite; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
43 import org.eclipse.swt.graphics.Cursor; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
44 import org.eclipse.swt.graphics.Point; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
45 import org.eclipse.swt.layout.FillLayout; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
46 import org.eclipse.swt.layout.GridLayout; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
47 import org.eclipse.swt.widgets.Composite; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
48 import org.eclipse.swt.widgets.FileDialog; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
49 import org.eclipse.swt.widgets.Layout; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
50 import org.eclipse.ui.IEditorInput; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
51 import org.eclipse.ui.IEditorSite; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
52 import org.eclipse.ui.IFileEditorInput; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
53 import org.eclipse.ui.PartInitException; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
54 import org.eclipse.ui.ide.FileStoreEditorInput; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
55 import org.eclipse.ui.part.EditorPart; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
56 import org.eclipse.ui.progress.UIJob; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
57 import org.eclipse.ui.statushandlers.StatusManager; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
58 import org.eclipse.ui.views.properties.IPropertySheetPage; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
59 import org.eclipse.ui.views.properties.tabbed.ITabbedPropertySheetPageContributor; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
60 import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
61 import org.jdom.JDOMException; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
62 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
63 import de.mpg.mpiwg.itgroup.digilib.core.plugin.Activator; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
64 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
65 import de.mpg.mpiwg.itgroup.digilib.digiImage.DigiImage; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
66 import de.mpg.mpiwg.itgroup.digilib.digiImage.DigiImageController; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
67 import de.mpg.mpiwg.itgroup.digilib.digiImage.DigiImageParameter; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
68 import de.mpg.mpiwg.itgroup.digilib.digiImage.DigiNav; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
69 import de.mpg.mpiwg.itgroup.digilib.digiImage.IDigiImage; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
70 import de.mpg.mpiwg.itgroup.digilib.digiImage.ImageLayout; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
71 import de.mpg.mpiwg.itgroup.digilib.digiImage.TextGridDigiImage; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
72 import de.mpg.mpiwg.itgroup.indexMeta.Utils.ParseIndexMeta; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
73 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
74 /** |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
75 * Displays an image with digilib an allows image manipulation on the image. |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
76 * TODO: textgrid elemente sollten in eine Extraklasse |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
77 * |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
78 * @author dwinter |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
79 * |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
80 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
81 public class DigilibLinkEditorPart extends EditorPart implements Observer, ITabbedPropertySheetPageContributor, IDigilibLinkEditorPart{ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
82 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
83 private static final int SIZE_DH = 1000; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
84 private static final int SIZE_DW = 1000; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
85 private Composite mainComposite; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
86 private ScrolledComposite sc; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
87 private TabbedPropertySheetPage tp=null; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
88 private DigiImageParameter dp = null; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
89 private boolean dirty; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
90 private IDigiImage digiImage; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
91 //private TextGridProject textGridProject; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
92 private Composite imageComposite; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
93 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
94 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
95 * @see org.eclipse.ui.part.EditorPart#doSave(org.eclipse.core.runtime.IProgressMonitor) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
96 * |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
97 * Abgespeichert werden die Parameter des Digilib-Objektes als ein JSON object |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
98 * FIXME: doSave erkennt nicht richtig den Filenamen wird daher immer zu saveas |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
99 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
100 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
101 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#doSave(org.eclipse.core.runtime.IProgressMonitor) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
102 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
103 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
104 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
105 public void doSave(final IProgressMonitor monitor) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
106 if (dp== null) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
107 return; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
108 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
109 final IFile file = getAdapter(getEditorInput(), IFile.class); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
110 if (file != null) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
111 final ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
112 try { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
113 dp.save(outputStream); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
114 file.setContents(new ByteArrayInputStream(outputStream.toByteArray()), true, true, monitor); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
115 setDirty(false); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
116 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
117 } catch (final CoreException e) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
118 StatusManager.getManager().handle(e, Activator.PLUGIN_ID); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
119 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
120 } else if (getEditorInput() instanceof FileStoreEditorInput) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
121 final URI targetURI = ((FileStoreEditorInput) getEditorInput()).getURI(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
122 try { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
123 final IFileStore store = EFS.getStore(targetURI); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
124 final OutputStream outputStream = store.openOutputStream(EFS.NONE, monitor); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
125 dp.save(outputStream); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
126 outputStream.close(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
127 setDirty(false); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
128 } catch (final CoreException e) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
129 StatusManager.getManager().handle(e, Activator.PLUGIN_ID); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
130 } catch (final IOException e) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
131 StatusManager.getManager().handle( |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
132 new Status(IStatus.ERROR, Activator.PLUGIN_ID, NLS.bind( |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
133 "save failed", targetURI, |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
134 e.getLocalizedMessage()), e), StatusManager.LOG | StatusManager.SHOW); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
135 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
136 } else { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
137 doSaveAs(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
138 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
139 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
140 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
141 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
142 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
143 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#doSaveAs() |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
144 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
145 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
146 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
147 public void doSaveAs() { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
148 int selection = new MessageDialog(getSite().getShell(), "save as title", null, |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
149 Messages.DiglibLinkEditor_Save_As_What, MessageDialog.QUESTION_WITH_CANCEL, new String[] { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
150 Messages.DiglibLinkEditor_TextGridRep, Messages.DiglibLinkEditor_Local_File, Messages.DiglibLinkEditor_Cancel }, 1 ).open(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
151 switch (selection) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
152 case 0: |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
153 //saveAsTextGridObject(true); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
154 break; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
155 case 1: |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
156 saveAsLocalFile(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
157 break; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
158 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
159 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
160 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
161 // public void saveAsTextGridObject(boolean forceNew) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
162 // TextGridObject object = null; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
163 // if (getEditorInput() instanceof IFileEditorInput) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
164 // object = AdapterUtils.getAdapter(((IFileEditorInput) getEditorInput()).getFile(), TextGridObject.class); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
165 // if (object == null || forceNew) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
166 // object = TextGridObject.getNewObjectInstance(textGridProject, |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
167 // TGContentType.of(Activator.CONTENT_TYPE_ID)); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
168 // final InputDialog dialog = new InputDialog( |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
169 // getSite().getShell(), |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
170 // Messages.DiglibLinkEditor_Save_as_TextGrid_Title, |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
171 // NLS.bind( |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
172 // Messages.DiglibLinkEditor_Save_to_Target_Project, |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
173 // textGridProject), "", new IInputValidator() { //$NON-NLS-1$ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
174 // |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
175 // @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
176 // public String isValid(final String newText) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
177 // if (newText == null || newText.trim().isEmpty()) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
178 // return Messages.DigilibLinkEditor_Title_Validation_Warning; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
179 // } else |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
180 // return null; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
181 // } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
182 // }); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
183 // if (dialog.open() != Window.CANCEL) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
184 // object.setTitle(dialog.getValue().trim()); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
185 // } else { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
186 // return; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
187 // } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
188 // |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
189 // final IEditorInput input = AdapterUtils.getAdapter(object, IEditorInput.class); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
190 // setInputWithNotify(input); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
191 // } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
192 // new Job(NLS.bind(Messages.DiglibLinkEditor_Saving_x, object)) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
193 // |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
194 // @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
195 // protected IStatus run(final IProgressMonitor monitor) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
196 // doSave(monitor); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
197 // if (monitor.isCanceled()) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
198 // return Status.CANCEL_STATUS; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
199 // return Status.OK_STATUS; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
200 // } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
201 // }.schedule(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
202 // } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
203 // |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
204 // |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
205 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
206 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
207 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
208 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#saveAsLocalFile() |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
209 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
210 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
211 public void saveAsLocalFile() { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
212 final FileDialog fileDialog = new FileDialog(getSite().getShell(), SWT.SAVE); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
213 //fileDialog.setFilterExtensions(new String[] { "." //$NON-NLS-1$ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
214 // + TGContentType.getContentType(Activator.CONTENT_TYPE_ID).getExtension() }); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
215 //fileDialog.setFilterNames(new String[] { TGContentType.getContentType(Activator.CONTENT_TYPE_ID).getDescription() }); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
216 fileDialog.setText(Messages.DiglibLinkEditor_SaveImportSpecAsTitle); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
217 final String fileName = fileDialog.open(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
218 if (fileName != null) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
219 final URI fileURI = new File(fileName).toURI(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
220 try { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
221 final FileStoreEditorInput input = new FileStoreEditorInput(EFS.getStore(fileURI)); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
222 setPartName(input.getName()); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
223 setInputWithNotify(input); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
224 doSave(new NullProgressMonitor()); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
225 } catch (final CoreException e) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
226 StatusManager.getManager().handle(e, Activator.PLUGIN_ID); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
227 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
228 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
229 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
230 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
231 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
232 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
233 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#init(org.eclipse.ui.IEditorSite, org.eclipse.ui.IEditorInput) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
234 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
235 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
236 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
237 public void init(IEditorSite site, IEditorInput input) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
238 throws PartInitException { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
239 setInput(input); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
240 setSite(site); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
241 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
242 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
243 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
244 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
245 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#isDirty() |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
246 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
247 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
248 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
249 public boolean isDirty() { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
250 return dirty; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
251 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
252 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
253 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
254 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#isSaveAsAllowed() |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
255 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
256 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
257 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
258 public boolean isSaveAsAllowed() { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
259 // TODO Auto-generated method stub |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
260 return false; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
261 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
262 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
263 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
264 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#createPartControl(org.eclipse.swt.widgets.Composite) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
265 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
266 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
267 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
268 public void createPartControl(Composite frame) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
269 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
270 sc = new ScrolledComposite(frame, SWT.H_SCROLL | SWT.V_SCROLL); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
271 mainComposite = new Composite(sc,SWT.None); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
272 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
273 GridLayout imageLayout = new GridLayout(2,false); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
274 mainComposite.setLayout(imageLayout); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
275 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
276 Layout imgLayout = new ImageLayout(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
277 imageComposite = new Composite(mainComposite,SWT.None); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
278 imageComposite.setLayout(imgLayout); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
279 sc.setContent(mainComposite); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
280 //sc.setMinSize(400, 400); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
281 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
282 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
283 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
284 DigilibLinkEditorInput input= (DigilibLinkEditorInput) getEditorInput(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
285 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
286 String path=""; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
287 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
288 sc.layout(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
289 Point size = sc.getSize(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
290 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
291 //this.getViewer(). |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
292 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
293 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
294 int dh = SIZE_DH; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
295 int dw = SIZE_DW; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
296 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
297 if (input.getType()==DigilibLinkEditorInput.INDEX_META){ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
298 ParseIndexMeta im; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
299 try { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
300 im = new ParseIndexMeta(input.getFile()); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
301 } catch (JDOMException e) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
302 // TODO Auto-generated catch block |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
303 e.printStackTrace(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
304 return; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
305 } catch (IOException e) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
306 // TODO Auto-generated catch block |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
307 e.printStackTrace(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
308 return; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
309 } catch (CoreException e) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
310 // TODO Auto-generated catch block |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
311 e.printStackTrace(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
312 return; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
313 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
314 try { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
315 path=im.getImagePath(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
316 path=path.replace("/mpiwg/online", ""); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
317 dp = new DigiImageParameter(path); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
318 dp.setType(input.getType()); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
319 dp.setDh(dh); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
320 dp.setDw(dw); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
321 //dp.setDh(SIZE_DH); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
322 //dp.setDw(SIZE_DW); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
323 digiImage = new DigiImage(mainComposite, SWT.BORDER, dp); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
324 } catch (JDOMException e) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
325 // TODO Auto-generated catch block |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
326 e.printStackTrace(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
327 return; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
328 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
329 if (path==null) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
330 return; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
331 } else if (input.getType()==DigilibLinkEditorInput.TEXTGRID){ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
332 path = input.getUri().toASCIIString(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
333 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
334 dp = input.getParameter(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
335 if (dp==null){ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
336 dp = new DigiImageParameter(path); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
337 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
338 dp.setType(input.getType()); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
339 dp.setDh(SIZE_DH); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
340 dp.setDw(SIZE_DW); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
341 digiImage = new TextGridDigiImage(imageComposite, SWT.BORDER, dp,input.getSid()); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
342 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
343 } else { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
344 //TODO: issue warning that type cannot be solved. |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
345 return; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
346 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
347 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
348 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
349 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
350 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
351 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
352 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
353 DigiImageController digiImageController = new DigiImageController(digiImage); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
354 //imageComp.setBackgroundImage(img); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
355 new DigiNav(mainComposite,SWT.NONE,digiImageController); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
356 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
357 getSite().setSelectionProvider(digiImage); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
358 //StructuredSelection strucSel = new StructuredSelection(digiImage); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
359 digiImage.setSelection(new StructuredSelection(digiImage)); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
360 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
361 sc.setMinSize(mainComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT)); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
362 sc.setExpandHorizontal(true); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
363 sc.setExpandVertical(true); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
364 sc.layout(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
365 DigilibLinkEditorObservable.INSTANCE.addObserver(this); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
366 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
367 //setSelection( digiImage); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
368 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
369 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
370 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
371 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#setFocus() |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
372 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
373 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
374 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
375 public void setFocus() { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
376 // TODO Auto-generated method stub |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
377 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
378 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
379 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
380 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
381 * @see java.util.Observer#update(java.util.Observable, java.lang.Object) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
382 * Called from the observable |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
383 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
384 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
385 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#update(java.util.Observable, java.lang.Object) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
386 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
387 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
388 public void update(Observable o, Object arg) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
389 /* |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
390 * If the argument ist digiImage then rerender the editor and update the properties |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
391 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
392 if (IDigiImage.class.isInstance(arg)){ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
393 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
394 mainComposite.pack(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
395 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
396 sc.setMinSize(mainComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT)); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
397 sc.layout(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
398 dirty=true; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
399 firePropertyChange(PROP_DIRTY); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
400 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
401 //Object[] ls = getListeners(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
402 //System.out.println(ls); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
403 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
404 if (tp!=null) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
405 tp.refresh(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
406 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
407 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
408 } else if (Integer.class.isInstance(arg)){ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
409 //if it is in integer then the argument is the status of the cursor |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
410 int b = (Integer) arg; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
411 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
412 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
413 try { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
414 Cursor waitCursor = new Cursor(mainComposite.getDisplay(), b); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
415 mainComposite.setCursor(waitCursor); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
416 } catch (Exception e) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
417 // TODO: handle exception |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
418 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
419 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
420 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
421 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
422 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
423 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
424 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
425 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
426 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
427 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#getDigiImage() |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
428 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
429 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
430 public IDigiImage getDigiImage(){ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
431 return digiImage; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
432 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
433 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
434 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
435 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
436 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
437 * @see org.eclipse.ui.views.properties.tabbed.ITabbedPropertySheetPageContributor#getContributorId() |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
438 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
439 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
440 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#getContributorId() |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
441 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
442 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
443 public String getContributorId() { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
444 String contribId = getSite().getId(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
445 return contribId; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
446 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
447 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
448 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
449 * @see org.eclipse.ui.part.WorkbenchPart#getAdapter(java.lang.Class) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
450 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
451 /* (non-Javadoc) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
452 * @see de.mpg.mpiwg.itgroup.digilib.plugin.editors.IDigilibLinkEditorPart#getAdapter(java.lang.Class) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
453 */ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
454 @Override |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
455 @SuppressWarnings("rawtypes") |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
456 public Object getAdapter(Class adapter) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
457 if (adapter == IPropertySheetPage.class){ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
458 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
459 tp = new TabbedPropertySheetPage(this); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
460 return tp; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
461 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
462 return super.getAdapter(adapter); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
463 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
464 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
465 void setDirty(final boolean dirty) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
466 this.dirty = dirty; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
467 UIJob uiJob = new UIJob("Set dirty") { //$NON-NLS-1$ |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
468 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
469 public IStatus runInUIThread(IProgressMonitor monitor) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
470 firePropertyChange(PROP_DIRTY); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
471 return Status.OK_STATUS; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
472 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
473 }; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
474 uiJob.setSystem(true); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
475 uiJob.schedule(); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
476 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
477 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
478 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
479 public static <T> T getAdapter(Object source, Class<T> type) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
480 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
481 if (source == null) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
482 return null; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
483 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
484 if (type.isInstance(source)) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
485 return (T) source; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
486 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
487 if (source instanceof IAdaptable) |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
488 return (T) ((IAdaptable) source).getAdapter(type); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
489 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
490 return (T) Platform.getAdapterManager().getAdapter(source, type); |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
491 } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
492 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
493 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
494 // public void setTextGridProject(TextGridProject project) { |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
495 // this.textGridProject=project; |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
496 // |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
497 // } |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
498 |
0205c3f41d1d
repackaging (separate textgridlab and dgilib local parts more rigorously
dwinter
parents:
diff
changeset
|
499 } |