| 1 |
Eclipse Plug-in Architecture |
| |
- Eclipse Overview
- Plug-in architecture
- Plug-in, Extension Point, and Extension
- Plug-in manifest
- Eclipse overview
- Plug-in features and fragments
- Platform architecture
- Workspace Component
- Workspace and Resource API
- Incremental Project Builders
- SWT
- JFace
- Workbench, Editors, Views, Perspectives
- Debug component
- PDE Introduction
|
|
| |
|
| 2 |
Plug-in Development Environment (PDE) & Eclipse Plug-in Development (Include lab) |
| |
- Why PDE?
- Concepts
- RCP application file structure
- Run an RCP application
- Plug-in and Life cycle
- Overview and Application control flow
- Main application class and how it creates and run workbench
- WorkbenchAdvisor class and its lifecycle events
- Default (Initial) perspective
- Plug-in structure
- Work with PDE
- Configure PDE
- Create a new Plug-in project
- Plug-in manifest file and editor
- Dependencies
- Runtime
- Extensions and Extension points
- Running the plug-in
- Plug-in communication
- Plug-in fragments
|
|
| |
|
| 3 |
SWT - The Standard Widget Toolkit (Include lab) |
| |
- Why SWT
- SWT features
- SWT packages
- Shell and Display
- Relationship between Thread and Display
- Common SWT widgets
- Constructor of an SWT control
- Layout managers in SWT
- FillLayout
- RowLayout
- GridLayout and GridData
- FormLayout and FormData
- SWT events
- Error handling
- SWT application at work
|
|
| |
|
| 4 |
Dialogs and Wizards (include lab) |
| |
- Introduction
- Eclipse packages for Dialogs and Wizards
- Standard dialogs
- Preferences dialog (JFace)
- Structural view
- Preferences class
- Preference page at work
- Field editor preference page
- Field editor preferences classes
- Build a field editor preference page
- Common reusable dialogs
- Property page
- Wizards
- Reusable specialized wizard pages
|
|
| |
|
| 5 |
Views (include lab) |
| |
- Introduction
- JFace Viewer Framework
- View behavior and architecture
- View class diagram
- View lifecycle
- JFace Viewers and SWT widgets
- Steps to create custom view
- Event handling
- Filtering the view
- Sorting the view
- View actions
- Integration with other view
|
|
| |
|
| 6 |
Editors (include lab) |
| |
- Introduction
- Editor behavior and architecture
- Editor lifecycle
- Steps to create custom editor
- Event handling
- Modify and save editor inputs
- Editor Actions
- Linking an Editor and the outline view
|
|
| |
|
| 7 |
Workspace Resource Programming (include lab) |
| |
- Resource Framework Concepts
- Physical view of the Workspace
- Logical view of the Workspace
- Resource model and file system interaction
- Workspace API
- Resource properties
- Markers
|
| |
|
| 8 |
Processing Workspace Change Events (include lab) |
| |
- Workspace change events
- Introduction
- Resource change event types
- Resource change event flags
- Resource change event flow
- Add / remove resource change listeners
- Handle resource change event
- Visiting Resource Delta
- Handle batch events
- Workspace save events
- Save Events – what and when
- Save Participants API
- Implement Save Participant
- Save Participant processing overview
|
| |
|
| 9 |
Managing Resources with Natures and Builders |
| |
- Customizing project processing
- Projects and project descriptions
- Define and implementing natures
- Create natures to support project configuration
- Add a nature to a project
- Remove a nature to a project
- Builder and Nature extension points
- Add a builder to a project
- Builder concepts
|
| |
|
| 10 |
Rich Client Platform (include lab) |
| |
- About RCP
- Applications, workbench, and workbench windows
- Minimal RCP application (runtime artifacts)
- Minimal RCP application (Development)
- RCP application – add a view
- RCP application – add menus / actions
- RCP application – help system
- Branding RCP application
|
|
| |
| Hands-on Labs: |
| 1 |
ExPDE: Develop a ReadDataPlugin using PDE in Eclipse |
| 2 |
ExSWT: GUI Applications Using SWT |
| 3 |
ExDialog: Extending ReadData Plug-in to study Dialogs and Wizards |
| 4 |
ExDBMetadataView: Create a custom View using JFace viewer Framework |
| 5 |
ExDBTableEditor: Create customized Database Table Editor using JFace Framework |
| 6 |
ExRCP: Building a Rich Client Platform application |
|
| |
|
| Prerequisites: |
Extensible Markup Language (XML), Strong knowledge of Java, design patterns, and GUI development experience. Prerequisites can be satisfied by taking Eclipse University Courses: “Java Programming using Eclipse” and “XML for Java programmers using Eclipse”.
|
| |
|
| Audience: |
Tool developers, tool vendors, and consultants who need to build their own plugins for Eclipse-based tools.
|