Unterschiede
Hier werden die Unterschiede zwischen der gewählten und der aktuellen Version gezeigt.
eclipse-rcp:source-example-application 2008/07/02 08:09 | 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|}}\\ | ||
\\ | \\ | ||
MyEditor.java:\\ | MyEditor.java:\\ | ||
Zeile 51: | 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 64: | Zeile 65: | ||
} | } | ||
editorHolder.setObj(editor); | editorHolder.setObj(editor); | ||
- | // } | + | } |
- | // }); | + | }); |
IEditorPart editorPart = (IEditorPart) editorHolder.getObj(); | IEditorPart editorPart = (IEditorPart) editorHolder.getObj(); | ||
return editorPart; | return editorPart; | ||
Zeile 80: | 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 107: | Zeile 103: | ||
- | class MutableObject { | + | class ObjectHolder { |
private Object obj = null; | private Object obj = null; | ||
Zeile 124: | 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 132: | 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); | ||
} | } | ||
} | } |