plug-ins crash course roland overgaauw e-mail: [email protected]
TRANSCRIPT
![Page 2: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/2.jpg)
Plug-ins Crash Course
![Page 3: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/3.jpg)
Wat is Eclipse
• een opensource framework
• een kernel & een verzameling Plug-ins
![Page 4: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/4.jpg)
Eclipse Bouwstenen
Platform Core (load en execute plugins)
Workbench UI (bestaat uit plug-ins)
Gui
SWT
JFace
perspectiveseditorsviewsdialogsetc...
Help
Team
Workspace/Resources
![Page 5: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/5.jpg)
plug-ins afhankelijk van plug-ins
Workbench UI
Tool 1
Tool 3
Tool 4
Tool 2
Platform Core
Java Devl Tool
extention points plug-ins
![Page 6: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/6.jpg)
Wat is een Plug-in(1)
![Page 7: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/7.jpg)
Wat is een Plug-in(2)
• directory in [INSTALL]/plugins[INSTALL]
Plug-ins
![Page 8: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/8.jpg)
Wat is een Plug-in(3)
• must have– directory– plugin manifest: plugin.xml– (jar file)
![Page 9: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/9.jpg)
Hello Frodo (1) wizard 1
• The hard way / The Easy way– File -> new -> Project
– of klik
![Page 10: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/10.jpg)
Hello Frodo (2) wizard 2
![Page 11: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/11.jpg)
Hello Frodo (3) wizard 3
![Page 12: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/12.jpg)
Hello Frodo (3) wizard 4
![Page 13: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/13.jpg)
Hello Frodo (4) wizard 5
![Page 14: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/14.jpg)
Hello Frodo (5.1) easy 1
![Page 15: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/15.jpg)
Hello Frodo (5.1) easy 2
![Page 16: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/16.jpg)
Hello Frodo (5.1) easy 3
![Page 17: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/17.jpg)
Hello Frodo (5.1) easy 4
![Page 18: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/18.jpg)
Hello Frodo (5.2) easy 5
![Page 19: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/19.jpg)
Hello Frodo (6) result
![Page 20: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/20.jpg)
Hello Frodo (7) plugin.xml 1
<?xml version="1.0" encoding="UTF-8"?><?eclipse version="3.0"?><plugin id="nl.java2.demo.plugin02" name="Plugin02 Plug-in" version="1.0.0" provider-name="java 2 nl" class="nl.java2.demo.plugin02.Plugin02Plugin">
<runtime> <library name="plugin02.jar"> <export name="*"/> </library> </runtime> <requires> <import plugin="org.eclipse.ui"/> <import plugin="org.eclipse.core.runtime.compatibility"/> </requires>
</plugin>
![Page 21: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/21.jpg)
Hello Frodo (8) plugin.xml 2
• plugin.xml - Manifest– dependencies
• welke andere plugins heb ik nodig
– runtime• waar kan ik mijn classjes vinden (jarfile)
– extentions• welke andere extention point(s) gebruik ik
– extentionspoint• welke nieuwe extention point(s) lever ik
![Page 22: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/22.jpg)
Hello Frodo (9) extensions page
![Page 23: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/23.jpg)
Hello Frodo (10) add extension
![Page 24: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/24.jpg)
Hello Frodo (11) choose extension point
![Page 25: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/25.jpg)
Hello Frodo (12) add actionSet
![Page 26: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/26.jpg)
Hello Frodo (13) add menu
![Page 27: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/27.jpg)
Hello Frodo (14) add ction
![Page 28: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/28.jpg)
Hello Frodo (15) add separation
![Page 29: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/29.jpg)
Hello Frodo (16) add ActionClass
![Page 30: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/30.jpg)
Hello Frodo (17) add ActionClass
![Page 31: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/31.jpg)
Hello Frodo (18) ActionClasspackage nl.java2.demo.plugin02;
import org.eclipse.jface.action.IAction;import org.eclipse.jface.viewers.ISelection;import org.eclipse.ui.IWorkbenchWindow;import org.eclipse.ui.IWorkbenchWindowActionDelegate;
public class MyAction implements IWorkbenchWindowActionDelegate {
private IWorkbenchWindow workbenchWindow;
public MyAction() {}public void run(IAction action) {
MessageDialog.openInformation(workbenchWindow.getShell(),"Plugin02 Plug-in","Hello, Frodo”
);
}public void selectionChanged(IAction action, ISelection selection) {}public void dispose() {}public void init(IWorkbenchWindow window) {
workbenchWindow = window;
}}
![Page 32: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/32.jpg)
Hello Frodo (19) testen
![Page 33: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/33.jpg)
Hello Frodo (20) perspective
![Page 34: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/34.jpg)
Hello Frodo (21) commands
![Page 35: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/35.jpg)
Hello Frodo (22) result 1
properties van (menu)
![Page 36: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/36.jpg)
Hello Frodo (23) result 2
![Page 37: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/37.jpg)
Hello Frodo (24) deploying plug-ins
![Page 38: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/38.jpg)
Hello Frodo (25) deploying plug-ins
![Page 39: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/39.jpg)
Hello Frodo (26) finished
![Page 40: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/40.jpg)
extention points (1)
Editors
Perspectives
ViewsViewsViews
![Page 41: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/41.jpg)
extention points (2) perspectives
• ui.perspectives– niewe workbench perspectives en default layout
• ui.perspectiveExtensions– toegevoegde waarde aan bestaande perspectives
![Page 42: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/42.jpg)
extention points (3) editors & views
• ui.editors– editors in de editors pane
• ui.editorActions– toevoegen van Actions aan bestaande editors
menu of toolbar
• ui.views
• ui.viewsActions
![Page 43: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/43.jpg)
extention points (4) actions
• ui.actionsSets– User actions in menu’s, toolbars
• ui.actionsSetPartAssociations– Verbinding tussen actions en componenten
• ui.popupMenus
![Page 44: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/44.jpg)
extention points (5)
• ui.commands– Shortcuts via Keyboard– (Windows -> Preferences -> Workebench ->
Keys)
• ui.dropActions– sleur n pleur
![Page 45: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/45.jpg)
extention points (6)
• ui.preferencePages
• ui.propertiesPages
• ui.startup
• ui.workingSets
![Page 46: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/46.jpg)
extention points (7) Gandalfs
• ui.exportWizards
• ui.importWizards
• ui.newWizards– extends org.eclipse.jface.wizard.Wizard– implement org.eclipse.ui.INewWizard– methode addPage() gebruiken om WizardPage
toe te voegen.
![Page 47: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/47.jpg)
extention points (8) help
• ui.markerHelp– toeveoegen van help markers
• ui.markerResolution– class MarkerResolutionGenerator– voor gebruik van QuickFix functies
• help.contexts• help.support• help.ui.browser
![Page 48: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/48.jpg)
Q&A
![Page 49: Plug-ins Crash Course Roland Overgaauw e-mail: r.overgaauw@infoprofs.nl](https://reader036.vdocuments.site/reader036/viewer/2022062223/551a72b6550346545e8b617a/html5/thumbnails/49.jpg)
Thanx!
presentatie te bekijken op
http://www.xs4all.nl/~rfover