Contents
Foreword by Skip McGaughey
Foreword by Simon Archer
Preface
Chapter 1: Using Eclipse Tools
1.1 Getting Started
1.2 The Eclipse Workbench
1.3 Setting Up Your Environment
1.4 Creating a Project
1.5 Navigating
1.6 Searching
1.7 Writing Code
1.8 Team Development Using CVS
1.9 Running Applications
1.10 Introduction to Debugging
1.11 Introduction to Testing
1.12 Introduction to Mylyn
1.13 Summary
Chapter 2: A Simple Plug-in Example
2.1 The Favorites Plug-in
2.2 Creating a Plug-in Project
2.3 Reviewing the Generated Code
2.4 Building a Product
2.5 Installing and Running the Product
2.6 Debugging the Product
2.7 PDE Views
2.8 Writing Plug-in Tests
2.9 Book Samples
2.10 Summary
Chapter 3: Eclipse Infrastructure
3.1 Structural Overview
3.2 Plug-in Directory or JAR file
3.3 Plug-in Manifest
3.4 Activator or Plug-in Class
3.5 Plug-in Model
3.6 Logging
3.7 Eclipse Plug-ins
3.8 Summary
Chapter 4: The Standard Widget Toolkit
4.1 SWT History and Goals
4.2 SWT Widgets
4.3 Layout Management
4.4 Resource Management
4.5 GUI Builders
4.6 Summary
Chapter 5: JFace Viewers
5.1 List-Oriented Viewers
5.2 Text Viewers
5.3 Summary
Chapter 6: Commands and Actions
6.1 Commands
6.2 Menu and Toolbar Contributions
6.3 Handlers
6.4 Key Bindings
6.5 IAction versus IActionDelegate
6.6 Workbench Window Actions
6.7 Object Actions
6.8 View Actions
6.9 Editor Actions
6.10 Actions and Key Bindings
6.11 RFRS Considerations
6.12 Summary
Chapter 7: Views
7.1 View Declaration
7.2 View Part
7.3 View Commands
7.4 Linking the View
7.5 Saving View State
7.6 Testing
7.7 Image Caching
7.8 Auto-sizing Table Columns
7.9 RFRS Considerations
7.10 Summary
Chapter 8: Editors
8.1 Editor Declaration
8.2 Editor Part
8.3 Editing
8.4 Editor Lifecycle
8.5 Editor Commands
8.6 Linking the Editor
8.7 RFRS Considerations
8.8 Summary
Chapter 9: Resource Change Tracking
9.1 IResourceChangeListener
9.2 Processing Change Events
9.3 Batching Change Events
9.4 Progress Monitor
9.5 Delayed Changed Events
9.6 Summary
Chapter 10: Perspectives
10.1 Creating a Perspective
10.2 Enhancing an Existing Perspective
10.3 RFRS Considerations
10.4 Summary
Chapter 11: Dialogs and Wizards
11.1 Dialogs
11.2 Wizards
11.3 RFRS Considerations
11.4 Summary
Chapter 12: Preference Pages
12.1 Creating a Preference Page
12.2 Preference Page APIs
12.3 Preference APIs
12.4 RFRS Considerations
12.5 Summary
Chapter 13: Properties
13.1 Creating Properties
13.2 Displaying Properties in the Properties Dialog
13.3 Displaying Properties in the Properties View
13.4 Property Pages Reused as Preference Pages
13.5 RFRS Considerations
13.6 Summary
Chapter 14: Builders, Markers, and Natures
14.1 Builders
14.2 Markers
14.3 Natures
14.4 RFRS Considerations
14.5 Summary
Chapter 15: Implementing Help
15.1 Using Help
15.2 Implementing Help
15.3 Context-Sensitive Help (F1)
15.4 Accessing Help Programmatically9
15.5 Cheat Sheets
15.6 RFRS Considerations
15.7 Summary
Chapter 16: Internationalization
16.1 Externalizing the Plug-in Manifest
16.2 Externalizing Plug-in Strings
16.3 Using Fragments
16.4 Manual Testing
16.5 Summary
Chapter 17: Creating New Extension Points
17.1 The Extension Point Mechanism
17.2 Defining an Extension Point
17.3 Code Behind an Extension Point
17.4 Extension Point Documentation
17.5 Using the Extension Point
17.6 RFRS Considerations
17.7 Summary
Chapter 18: Features, Branding, and Updates
18.1 Feature Projects
18.2 Branding
18.3 Update Sites
18.4 RFRS Considerations
18.5 Summary
Chapter 19: Building a Product
19.1 A Brief Introduction to Ant
19.2 Building with PDE
19.3 Debugging the PDE Build process
19.4 Summary
Chapter 20: GEF: Graphical Editing Framework
20.1 GEF Architecture
20.2 GEF Model
20.3 GEF Controller
20.4 GEF Figures
20.5 GEF in an Eclipse View
20.6 GEF in an Eclipse Editor
20.7 Palette
20.8 Summary
Chapter 21: Advanced Topics
21.1 Advanced Search Reference Projects
21.2 Accessing Internal Code
21.3 Adapters
21.4 Opening a Browser or Creating an Email
21.5 Types Specified in an Extension Point
21.6 Modifying Eclipse to Find Part Identifiers
21.7 Label Decorators
21.8 Background Tasks Jobs API
21.9 Plug-in ClassLoaders
21.10 Early Startup
21.11 Rich Client Platform
21.12 Conclusion
Appendix A: Eclipse Plug-ins and Resources
A.1 Plug-ins
Appendix B: Ready for Rational Software
Index