Unterschiede
Hier werden die Unterschiede zwischen der gewählten und der aktuellen Version gezeigt.
| eclipse-rcp:source-example-application 2008/07/02 08:13 | eclipse-rcp:source-example-application 2020/01/22 20:59 aktuell | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Source einer Beispielapplikation ====== | ====== Source einer Beispielapplikation ====== | ||
| Der folgende Source ist Basis für viele der im RCP-Teil dieses Wikis aufgeführten Codeschippsel:\\ | Der folgende Source ist Basis für viele der im RCP-Teil dieses Wikis aufgeführten Codeschippsel:\\ | ||
| - | {{:eclipse-rcp:example-application.png|}} | + | {{:eclipse-rcp:example-application.png|}}\\ |
| \\ | \\ | ||
| MyEditor.java:\\ | MyEditor.java:\\ | ||
| Zeile 52: | Zeile 52: | ||
| public static IEditorPart openEditor(final Object myDataObject) { | public static IEditorPart openEditor(final Object myDataObject) { | ||
| final IWorkbenchPage wbp = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); | final IWorkbenchPage wbp = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); | ||
| - | final MutableObject editorHolder = new MutableObject(); | + | final ObjectHolder editorHolder = new ObjectHolder(); |
| - | // new Runnable() { | + | Display.getCurrent().asyncExec(new Runnable() { |
| - | // public void run() throws Exception { | + | public void run() { |
| final MyEditorInput input = new MyEditorInput(myDataObject); | final MyEditorInput input = new MyEditorInput(myDataObject); | ||
| IEditorPart editor; | IEditorPart editor; | ||
| Zeile 65: | Zeile 65: | ||
| } | } | ||
| editorHolder.setObj(editor); | editorHolder.setObj(editor); | ||
| - | // } | + | } |
| - | // }); | + | }); |
| IEditorPart editorPart = (IEditorPart) editorHolder.getObj(); | IEditorPart editorPart = (IEditorPart) editorHolder.getObj(); | ||
| return editorPart; | return editorPart; | ||
| Zeile 81: | Zeile 81: | ||
| } | } | ||
| - | @Override | ||
| public boolean exists(){ | public boolean exists(){ | ||
| return false; | return false; | ||
| } | } | ||
| - | @Override | ||
| public ImageDescriptor getImageDescriptor(){ | public ImageDescriptor getImageDescriptor(){ | ||
| return null; | return null; | ||
| } | } | ||
| - | @Override | ||
| public String getName(){ | public String getName(){ | ||
| return obj.toString(); | return obj.toString(); | ||
| } | } | ||
| - | @Override | ||
| public IPersistableElement getPersistable(){ | public IPersistableElement getPersistable(){ | ||
| return null; | return null; | ||
| } | } | ||
| - | @Override | ||
| public String getToolTipText(){ | public String getToolTipText(){ | ||
| return obj.toString(); | return obj.toString(); | ||
| Zeile 108: | Zeile 103: | ||
| - | class MutableObject { | + | class ObjectHolder { |
| private Object obj = null; | private Object obj = null; | ||
| Zeile 125: | Zeile 120: | ||
| package com.sowas.javawiki.rcpbaseapplication; | package com.sowas.javawiki.rcpbaseapplication; | ||
| + | import org.eclipse.swt.widgets.Text; | ||
| + | import org.eclipse.ui.forms.IManagedForm; | ||
| import org.eclipse.ui.forms.editor.FormEditor; | import org.eclipse.ui.forms.editor.FormEditor; | ||
| import org.eclipse.ui.forms.editor.FormPage; | import org.eclipse.ui.forms.editor.FormPage; | ||
| import org.eclipse.ui.forms.editor.IFormPage; | import org.eclipse.ui.forms.editor.IFormPage; | ||
| + | import org.eclipse.ui.forms.widgets.FormToolkit; | ||
| public class MyEditorPage extends FormPage implements IFormPage{ | public class MyEditorPage extends FormPage implements IFormPage{ | ||
| Zeile 133: | Zeile 131: | ||
| public MyEditorPage(FormEditor editor, String pageId, String pageTitle){ | public MyEditorPage(FormEditor editor, String pageId, String pageTitle){ | ||
| super(editor, pageId, pageTitle); | super(editor, pageId, pageTitle); | ||
| + | } | ||
| + | |||
| + | @Override | ||
| + | protected void createFormContent(IManagedForm managedForm) { | ||
| + | super.createFormContent(managedForm); | ||
| + | Composite client = managedForm.getForm().getBody(); | ||
| + | client.setLayout(new GridLayout(2, false)); | ||
| + | FormToolkit formToolkit = managedForm.getToolkit(); | ||
| + | formToolkit.createLabel(client, "Name:"); | ||
| + | formToolkit.createText(client, "", SWT.SINGLE|SWT.BORDER); | ||
| } | } | ||
| } | } | ||