AM-777: Eclipse Plugins, SWT, and JFace QuickStart: Getting started writing Eclipse Plugins

WorkShop Overview

Produced by the ArcMind team After completing this course you will have the skills to design and build Eclipse plugins.

Length

5 days

Course Abstract:

Eclipse is a platform for building development tools. The Eclipse platform provides a plugin framework. The core of Eclipse is based on plugins. Other companies can leverage the Eclipse environment to write plugins. This is much faster than starting from scratch and allows companies to focus on their strengths and talents to their clients development efforts.

The Eclipse platform provides API for writing plugins.

Developers attending this course will learn the architecture of the Eclipse platform, and will feel confident writing Eclipse plugins. The developers will be prepared to work with SWT, JFace and the Eclipse platform to build Eclipse plugins.

Outline

Day 1

  1. Intro to Eclipse platform
    1. Eclipse Technology Benefits
    2. Eclipse Architecture Overview
    3. Eclipse SDK
    4. Overview of SWT, JFace PDE, and Eclipse platform
  2. SWT basics
    1. Working with SWT libraries
    2. Creating a SWT program
    3. Understanding Display, and Shell
    4. Understanding the SWT architecture
  3. SWT Layouts and Widgets
    1. Types of layouts
    2. Working with the FillLayout
    3. Working with the RowLayout
    4. Working with the GridLayout
    5. Working with the FormLayout
    6. Working with the StackLayout
    7. Skipping the layout
    8. Introducing Widgets and Controls
    9. Working with Label, Button, Text, List and Combo
    10. Working with Sliders, Group, ScrollBar, and ProgressBar
    11. Working with the SWT event model
    12. Using Styled Text
    13. Lab: Using layouts, controls and Widgets
    14. Lab: Working with events
    15. Lab: Using Styled Text

Day 2

  1. SWT Dialogs
    1. Dialog: Displaying Messages
    2. Dialog: Color chooser
    3. Dialog: Finding files
    4. Dialog: Choose a font
    5. Dialog: Create a custom dialog
    6. Lab: Working with the file chooser
    7. Lab: Creating a custom dialog
  2. SWT Advanced controls
    1. Decorations
    2. Tabs, Toolbars
    3. Coolbars
    4. Sashes
    5. Tables
    6. Combining controls
    7. Lab: Working with Coolbars, Toolbars, and Sashes
  3. Drawing pictures with SWT
    1. Drawing shapes
    2. Working with text
    3. Working with images
    4. Lab: Create a drawing package

Day 3

  1. JFace Introduction
    1. JFace Architecture overview
    2. Why JFace?
    3. JFace and SWT
    4. Working with ApplicationWindow class
    5. Lab: Writing your first JFace application
  2. JFace Dialogs and User interactions
    1. Showing problems
    2. Displaying messages, showing progress
    3. Writing a JFace dialog
    4. Lab: Write a JFace dialog
    5. Working with Actions
    6. CoolBars, ToolBars, an Status
    7. Lab: Working with Actions
  3. Working with JFace viewers
    1. Tree viewer
    2. List viewer
    3. Table viewer, editing cells
    4. Lab: Working with viewers

Day 4

  1. Using JFace preferences
    1. persisting preferences
    2. editing preferences
    3. notifying of preference changes
    4. Lab: Working with preferences
  2. JFace: Working with Text
    1. Introducing the Text framework
    2. Working with the Text framework
    3. Highlighting text
    4. Lab: Working with the text package
  3. JFace: Creating wizards and Advanced APIs
    1. Working with Wizards
    2. Adding Wizard pages
    3. Lab: Creating a Wizard
    4. Using Resource Utilities
    5. Working with Modal and Modless Operations
    6. Lab: Using Resource Utilities
    7. Lab: Modal operations
  4. Creating your first Eclipse plugin
    1. Creating a Plug-in Project.
    2. Reviewing the Generated Code.
    3. Working with the PDE
    4. Plug-in.xml file
    5. Creating a simple plugin
    6. Writing tests
    7. Debugging/Running
    8. Lab 1: writing a simple plugin
    9. Lab 6: Writing three custom components

Day 5

  1. Creating your first Eclipse plugin
    1. Creating a Plug-in Project.
    2. Reviewing the Generated Code.
    3. Working with the PDE
    4. Plug-in.xml file
    5. Creating a simple plugin
    6. Writing tests
    7. Debugging/Running
    8. Lab: Writing a simple plugin
    9. Plugin Directory
    10. Plugin Manifest
    11. Plugin Class and Model
    12. Logging and Debugging
    13. Lab: Improving our plugin
  2. Eclipse Plugins: Builders, Markers, and Natures
    1. Creating Builders
    2. Creating Markers
    3. Working with Natures
    4. Logging and Debugging
    5. Lab: Improving our plugins
  3. Eclipse Plugins: Advanced
    1. Internationalization
    2. Branding Eclipse for you Product
    3. Working with extention points
    4. Understanding plugin classloaders
    5. Working with background tasks
    6. Lab: Improving our plugin