
Eclipse Plug-ins
Bestselling plug-in guide updated for Eclipse 3.4. New chapter on GEF
Versandkostenfrei!
Nicht lieferbar
Summary
One of the reasons for the success of Eclipse is that it is essentially an open
source platform for creating an extensible integrated development
environment. Because it is open source anyone can build tools that integrate
seamlessly with the environment and other tools.
Plugins are what make this seamless integration of tools with Eclipse possible.
With the exception of a small run-time kernel, everything in Eclipse is a plugin.
This means that any plug-in you develop integrates with Eclipse in exactly
the same way as other plug-ins.
This book provides an introduction and overview of the entire process of plugin
development, including all the best practices to achieve high-quality results.
It is a reference book for experienced Eclipse developers. It also discusses the
APIs and demonstrates many samples and examples. Detailed tutorials are
provided for both new and experienced developers. The Eclipse SWT UI is
introduced as the building block for Eclipse UI development.
Author(s) Expertise
ERIC CLAYBERG (Middleton, MA)is Senior VP for Product Development
for Instantiations, an Advanced IBM Business Partner and leading developer of
commercial add-ons for Eclipse, IBM VisualAge, and IBM WebSphere.
DAN RUBEL (Glenshaw, PA), Instantations' CTO, is an entrepreneur and
expert in object-oriented design and development. He has served as primary
architect and product manager for several successful commercial products.
Audience
Target audience is Eclipse users who want to customize the IDE, e.g., to
develop tools for their company's employees or to sell tools that connect to
their products. This book assumes the reader knows Java and how to use
Eclipse and has a fairly good understanding of the Standard Widget Toolkit
(SWT) and, or, Swing.
The CD/DVD/Web Site
Code samples, errata, tools used in the book and other resources available
online at the authors' web site-- www.qualityeclipse.com
Product Description
Producing a commercial-quality plug-in means going above and beyond the minimal requirements needed to integrate with Eclipse. It means attending to all those details that contribute to the "fit and polish" of a commercial offering. This comprehensive guide covers the entire process of plug-in development, including all the extra steps needed to achieve the highest quality results.
Building on two internationally best-selling previous editions, Eclipse Plug-ins, Third Edition, has been fully revised to reflect the powerful new capabilities of Eclipse 3.4. Leading Eclipse experts Eric Clayberg and Dan Rubel present detailed, practical coverage of every aspect of plug-in development, as well as specific, proven solutions for the challenges developers are most likely to encounter.
All code examples, relevant API listings, diagrams, and screen captures have been thoroughly updated to reflect both the Eclipse 3.4 API and the latest Java syntax. In addition, Clayberg and Rubel have completely revamped their popular Favorites View case study, reworking much of its content and recreating its code from scratch. The authors carefully cover new functionality added to existing Eclipse features, such as views and editors, and fully explain brand-new features such as Commands, GEF, and PDE Build.
This extensively revised edition
Thoroughly covers Eclipse's new preferences
Illuminates the powerful new Eclipse Command Framework, which replaces Eclipse's older Action Framework
Presents extensive new discussions of using commands with views and editors
Introduces Mylyn, the new task-focused interface that reduces information overload and simplifies multi-tasking
Contains an all-new chapter on using the Graphical Editing Framework (GEF) to build dynamic, interactive graphical user interface elements
Walks you step by step through the entire PDE Build process
Shows how to create update sites with p2, which replaces Eclipse's old Update Manager
This book is designed for every experienced developer interested in extending the Eclipse platform, the Rational Software Development Platform, or any other platform that supports Eclipse plug-ins.
Backcover
Producing a commercial-quality plug-in means going above and beyond the minimal requirements needed to integrate with Eclipse. It means attending to all those details that contribute to the "fit and polish" of a commercial offering. This comprehensive guide covers the entire process of plug-in development, including all the extra steps needed to achieve the highest quality results.
Building on two internationally best-selling previous editions, Eclipse Plug-ins, Third Edition, has been fully revised to reflect the powerful new capabilities of Eclipse 3.4. Leading Eclipse experts Eric Clayberg and Dan Rubel present detailed, practical coverage of every aspect of plug-in development, as well as specific, proven solutions for the challenges developers are most likely to encounter.
All code examples, relevant API listings, diagrams, and screen captures have been thoroughly updated to reflect both the Eclipse 3.4 API and the latest Java syntax. In addition, Clayberg and Rubel have completely revamped their popular Favorites View case study, reworking much of its content and recreating its code from scratch. The authors carefully cover new functionality added to existing Eclipse features, such as views and editors, and fully explain brand-new features such as Commands, GEF, and PDE Build.
This extensively revised edition
Thoroughly covers Eclipse's new preferences
Illuminates the powerful new Eclipse Command Framework, which replaces Eclipse's older Action Framework
Presents extensive new discussions of using commands with views and editors
Introduces Mylyn, the new task-focused interface that reduces information overload and simplifies multi-tasking
Contains an all-new chapter on using the Graphical Editing Framework (GEF) to build dynamic, interactive graphical user interface elements
Walks you step by step through the entire PDE Build process
Shows how to create update sites with p2, which replaces Eclipse's old Update Manager
This book is designed for every experienced developer interested in extending the Eclipse platform, the Rational Software Development Platform, or any other platform that supports Eclipse plug-ins.
Foreword by Skip McGaughey xxxiii
Foreword by Simon Archer xxxv
Preface xxxvii
Chapter 1: Using Eclipse Tools 1
1.1 Getting Started 1
1.2 The Eclipse Workbench 3
1.3 Setting Up Your Environment 14
1.4 Creating a Project 19
1.5 Navigating 26
1.6 Searching 28
1.7 Writing Code 35
1.8 Team Development Using CVS 49
1.9 Running Applications 55
1.10 Introduction to Debugging 59
1.11 Introduction to Testing 63
1.12 Introduction to Mylyn 65
1.13 Summary 69
Chapter 2: A Simple Plug-in Example 71
2.1 The Favorites Plug-in 71
2.2 Creating a Plug-in Project 72
2.3 Reviewing the Generated Code 77
2.4 Building a Product 86
2.5 Installing and Running the Product 92
2.6 Debugging the Product 94
2.7 PDE Views 96
2.8 Writing Plug-in Tests 99
2.9 Book Samples 105
2.10 Summary 106
Chapter 3: Eclipse Infrastructure 107
3.1 Structural Overview 107
3.2 Plug-in Directory or JAR file 110
3.3 Plug-in Manifest 113
3.4 Activator or Plug-in Class 120
3.5 Plug-in Model 126
3.6 Logging 128
3.7 Eclipse Plug-ins 132
3.8 Summary 133
Chapter 4: The Standard Widget Toolkit 135
4.1 SWT History and Goals 135
4.2 SWT Widgets 138
4.3 Layout Management 178
4.4 Resource Management 188
4.5 GUI Builders 190
4.6 Summary 191
Chapter 5: JFace Viewers 193
5.1 List-Oriented Viewers 193
5.2 Text Viewers 211
5.3 Summary 214
Chapter 6: Commands and Actions 215
6.1 Commands 216
6.2 Menu and Toolbar Contributions 220
6.3 Handlers 236
6.4 Key Bindings 238
6.5 IAction versus IActionDelegate 240
6.6 Workbench Window Actions 242
6.7 Object Actions 257
6.8 View Actions 270
6.9 Editor Actions 277
6.10 Actions and Key Bindings 284
6.11 RFRS Considerations 286
6.12 Summary 287
Chapter 7: Views 289
7.1 View Declaration 291
7.2 View Part 293
7.3 View Commands 313
7.4 Linking the View 336
7.5 Saving View State 340
7.6 Testing 345
7.7 Image Caching 346
7.8 Auto-sizing Table Columns 348
7.9 RFRS Considerations 348
7.10 Summary 352
Chapter 8: Editors 353
8.1 Editor Declaration 354
8.2 Editor Part 358
8.3 Editing 372
8.4 Editor Lifecycle 378
8.5 Editor Commands 381
8.6 Linking the Editor 400
8.7 RFRS Considerations 401
8.8 Summary 405
Chapter 9: Resource Change Tracking 407
9.1 IResourceChangeListener 407
9.2 Processing Change Events 411
9.3 Batching Change Events 414
9.4 Progress Monitor 415
9.5 Delayed Changed Events 420
9.6 Summary 421
Chapter 10: Perspectives 423
10.1 Creating a Perspective 423
10.2 Enhancing an Existing Perspective 430
10.3 RFRS Considerations 438
10.4 Summary 439
Chapter 11: Dialogs and Wizards 441
11.1 Dialogs 441
11.2 Wizards 464
11.3 RFRS Considerations 482
11.4 Summary 484
Chapter 12: Preference Pages 485
12.1 Creating a Preference Page 485
12.2 Preference Page APIs 487
12.3 Preference APIs 501
12.4 RFRS Considerations 508
12.5 Summary 509
Chapter 13: Properties 511
13.1 Creating Properties 511
13.2 Displaying Properties in the Properties Dialog 515
13.3 Displaying Properties in the Properties View 524
13.4 Property Pages Reused as Preference Pages 529
13.5 RFRS Considerations 530
13.6 Summary 531
Chapter 14: Builders, Markers, and Natures 533
14.1 Builders 535
14.2 Markers 548
14.3 Natures 561
14.4 RFRS Considerations 572
14.5 Summary 575
Chapter 15: Implementing Help 577
15.1 Using Help 577
15.2 Implementing Help 580
15.3 Context-Sensitive Help (F1) 591
15.4 Accessing Help Programmatically 599
15.5 Cheat Sheets 601
15.6 RFRS Considerations 611
15.7 Summary 614
Chapter 16: Internationalization 617
16.1 Externalizing the Plug-in Manifest 618
16.2 Externalizing Plug-in Strings 620
16.3 Using Fragments 629
16.4 Manual Testing 636
16.5 Summary 636
Chapter 17: Creating New Extension Points 637
17.1 The Extension Point Mechanism 637
17.2 Defining an Extension Point 639
17.3 Code Behind an Extension Point 649
17.4 Extension Point Documentation 656
17.5 Using the Extension Point 657
17.6 RFRS Considerations 659
17.7 Summary 660
Chapter 18: Features, Branding, and Updates 661
18.1 Feature Projects 662
18.2 Branding 673
18.3 Update Sites 679<
One of the reasons for the success of Eclipse is that it is essentially an open
source platform for creating an extensible integrated development
environment. Because it is open source anyone can build tools that integrate
seamlessly with the environment and other tools.
Plugins are what make this seamless integration of tools with Eclipse possible.
With the exception of a small run-time kernel, everything in Eclipse is a plugin.
This means that any plug-in you develop integrates with Eclipse in exactly
the same way as other plug-ins.
This book provides an introduction and overview of the entire process of plugin
development, including all the best practices to achieve high-quality results.
It is a reference book for experienced Eclipse developers. It also discusses the
APIs and demonstrates many samples and examples. Detailed tutorials are
provided for both new and experienced developers. The Eclipse SWT UI is
introduced as the building block for Eclipse UI development.
Author(s) Expertise
ERIC CLAYBERG (Middleton, MA)is Senior VP for Product Development
for Instantiations, an Advanced IBM Business Partner and leading developer of
commercial add-ons for Eclipse, IBM VisualAge, and IBM WebSphere.
DAN RUBEL (Glenshaw, PA), Instantations' CTO, is an entrepreneur and
expert in object-oriented design and development. He has served as primary
architect and product manager for several successful commercial products.
Audience
Target audience is Eclipse users who want to customize the IDE, e.g., to
develop tools for their company's employees or to sell tools that connect to
their products. This book assumes the reader knows Java and how to use
Eclipse and has a fairly good understanding of the Standard Widget Toolkit
(SWT) and, or, Swing.
The CD/DVD/Web Site
Code samples, errata, tools used in the book and other resources available
online at the authors' web site-- www.qualityeclipse.com
Product Description
Producing a commercial-quality plug-in means going above and beyond the minimal requirements needed to integrate with Eclipse. It means attending to all those details that contribute to the "fit and polish" of a commercial offering. This comprehensive guide covers the entire process of plug-in development, including all the extra steps needed to achieve the highest quality results.
Building on two internationally best-selling previous editions, Eclipse Plug-ins, Third Edition, has been fully revised to reflect the powerful new capabilities of Eclipse 3.4. Leading Eclipse experts Eric Clayberg and Dan Rubel present detailed, practical coverage of every aspect of plug-in development, as well as specific, proven solutions for the challenges developers are most likely to encounter.
All code examples, relevant API listings, diagrams, and screen captures have been thoroughly updated to reflect both the Eclipse 3.4 API and the latest Java syntax. In addition, Clayberg and Rubel have completely revamped their popular Favorites View case study, reworking much of its content and recreating its code from scratch. The authors carefully cover new functionality added to existing Eclipse features, such as views and editors, and fully explain brand-new features such as Commands, GEF, and PDE Build.
This extensively revised edition
Thoroughly covers Eclipse's new preferences
Illuminates the powerful new Eclipse Command Framework, which replaces Eclipse's older Action Framework
Presents extensive new discussions of using commands with views and editors
Introduces Mylyn, the new task-focused interface that reduces information overload and simplifies multi-tasking
Contains an all-new chapter on using the Graphical Editing Framework (GEF) to build dynamic, interactive graphical user interface elements
Walks you step by step through the entire PDE Build process
Shows how to create update sites with p2, which replaces Eclipse's old Update Manager
This book is designed for every experienced developer interested in extending the Eclipse platform, the Rational Software Development Platform, or any other platform that supports Eclipse plug-ins.
Backcover
Producing a commercial-quality plug-in means going above and beyond the minimal requirements needed to integrate with Eclipse. It means attending to all those details that contribute to the "fit and polish" of a commercial offering. This comprehensive guide covers the entire process of plug-in development, including all the extra steps needed to achieve the highest quality results.
Building on two internationally best-selling previous editions, Eclipse Plug-ins, Third Edition, has been fully revised to reflect the powerful new capabilities of Eclipse 3.4. Leading Eclipse experts Eric Clayberg and Dan Rubel present detailed, practical coverage of every aspect of plug-in development, as well as specific, proven solutions for the challenges developers are most likely to encounter.
All code examples, relevant API listings, diagrams, and screen captures have been thoroughly updated to reflect both the Eclipse 3.4 API and the latest Java syntax. In addition, Clayberg and Rubel have completely revamped their popular Favorites View case study, reworking much of its content and recreating its code from scratch. The authors carefully cover new functionality added to existing Eclipse features, such as views and editors, and fully explain brand-new features such as Commands, GEF, and PDE Build.
This extensively revised edition
Thoroughly covers Eclipse's new preferences
Illuminates the powerful new Eclipse Command Framework, which replaces Eclipse's older Action Framework
Presents extensive new discussions of using commands with views and editors
Introduces Mylyn, the new task-focused interface that reduces information overload and simplifies multi-tasking
Contains an all-new chapter on using the Graphical Editing Framework (GEF) to build dynamic, interactive graphical user interface elements
Walks you step by step through the entire PDE Build process
Shows how to create update sites with p2, which replaces Eclipse's old Update Manager
This book is designed for every experienced developer interested in extending the Eclipse platform, the Rational Software Development Platform, or any other platform that supports Eclipse plug-ins.
Foreword by Skip McGaughey xxxiii
Foreword by Simon Archer xxxv
Preface xxxvii
Chapter 1: Using Eclipse Tools 1
1.1 Getting Started 1
1.2 The Eclipse Workbench 3
1.3 Setting Up Your Environment 14
1.4 Creating a Project 19
1.5 Navigating 26
1.6 Searching 28
1.7 Writing Code 35
1.8 Team Development Using CVS 49
1.9 Running Applications 55
1.10 Introduction to Debugging 59
1.11 Introduction to Testing 63
1.12 Introduction to Mylyn 65
1.13 Summary 69
Chapter 2: A Simple Plug-in Example 71
2.1 The Favorites Plug-in 71
2.2 Creating a Plug-in Project 72
2.3 Reviewing the Generated Code 77
2.4 Building a Product 86
2.5 Installing and Running the Product 92
2.6 Debugging the Product 94
2.7 PDE Views 96
2.8 Writing Plug-in Tests 99
2.9 Book Samples 105
2.10 Summary 106
Chapter 3: Eclipse Infrastructure 107
3.1 Structural Overview 107
3.2 Plug-in Directory or JAR file 110
3.3 Plug-in Manifest 113
3.4 Activator or Plug-in Class 120
3.5 Plug-in Model 126
3.6 Logging 128
3.7 Eclipse Plug-ins 132
3.8 Summary 133
Chapter 4: The Standard Widget Toolkit 135
4.1 SWT History and Goals 135
4.2 SWT Widgets 138
4.3 Layout Management 178
4.4 Resource Management 188
4.5 GUI Builders 190
4.6 Summary 191
Chapter 5: JFace Viewers 193
5.1 List-Oriented Viewers 193
5.2 Text Viewers 211
5.3 Summary 214
Chapter 6: Commands and Actions 215
6.1 Commands 216
6.2 Menu and Toolbar Contributions 220
6.3 Handlers 236
6.4 Key Bindings 238
6.5 IAction versus IActionDelegate 240
6.6 Workbench Window Actions 242
6.7 Object Actions 257
6.8 View Actions 270
6.9 Editor Actions 277
6.10 Actions and Key Bindings 284
6.11 RFRS Considerations 286
6.12 Summary 287
Chapter 7: Views 289
7.1 View Declaration 291
7.2 View Part 293
7.3 View Commands 313
7.4 Linking the View 336
7.5 Saving View State 340
7.6 Testing 345
7.7 Image Caching 346
7.8 Auto-sizing Table Columns 348
7.9 RFRS Considerations 348
7.10 Summary 352
Chapter 8: Editors 353
8.1 Editor Declaration 354
8.2 Editor Part 358
8.3 Editing 372
8.4 Editor Lifecycle 378
8.5 Editor Commands 381
8.6 Linking the Editor 400
8.7 RFRS Considerations 401
8.8 Summary 405
Chapter 9: Resource Change Tracking 407
9.1 IResourceChangeListener 407
9.2 Processing Change Events 411
9.3 Batching Change Events 414
9.4 Progress Monitor 415
9.5 Delayed Changed Events 420
9.6 Summary 421
Chapter 10: Perspectives 423
10.1 Creating a Perspective 423
10.2 Enhancing an Existing Perspective 430
10.3 RFRS Considerations 438
10.4 Summary 439
Chapter 11: Dialogs and Wizards 441
11.1 Dialogs 441
11.2 Wizards 464
11.3 RFRS Considerations 482
11.4 Summary 484
Chapter 12: Preference Pages 485
12.1 Creating a Preference Page 485
12.2 Preference Page APIs 487
12.3 Preference APIs 501
12.4 RFRS Considerations 508
12.5 Summary 509
Chapter 13: Properties 511
13.1 Creating Properties 511
13.2 Displaying Properties in the Properties Dialog 515
13.3 Displaying Properties in the Properties View 524
13.4 Property Pages Reused as Preference Pages 529
13.5 RFRS Considerations 530
13.6 Summary 531
Chapter 14: Builders, Markers, and Natures 533
14.1 Builders 535
14.2 Markers 548
14.3 Natures 561
14.4 RFRS Considerations 572
14.5 Summary 575
Chapter 15: Implementing Help 577
15.1 Using Help 577
15.2 Implementing Help 580
15.3 Context-Sensitive Help (F1) 591
15.4 Accessing Help Programmatically 599
15.5 Cheat Sheets 601
15.6 RFRS Considerations 611
15.7 Summary 614
Chapter 16: Internationalization 617
16.1 Externalizing the Plug-in Manifest 618
16.2 Externalizing Plug-in Strings 620
16.3 Using Fragments 629
16.4 Manual Testing 636
16.5 Summary 636
Chapter 17: Creating New Extension Points 637
17.1 The Extension Point Mechanism 637
17.2 Defining an Extension Point 639
17.3 Code Behind an Extension Point 649
17.4 Extension Point Documentation 656
17.5 Using the Extension Point 657
17.6 RFRS Considerations 659
17.7 Summary 660
Chapter 18: Features, Branding, and Updates 661
18.1 Feature Projects 662
18.2 Branding 673
18.3 Update Sites 679<
Summary
One of the reasons for the success of Eclipse is that it is essentially an open
source platform for creating an extensible integrated development
environment. Because it is open source anyone can build tools that integrate
seamlessly with the environment and other tools.
Plugins are what make this seamless integration of tools with Eclipse possible.
With the exception of a small run-time kernel, everything in Eclipse is a plugin.
This means that any plug-in you develop integrates with Eclipse in exactly
the same way as other plug-ins.
This book provides an introduction and overview of the entire process of plugin
development, including all the best practices to achieve high-quality results.
It is a reference book for experienced Eclipse developers. It also discusses the
APIs and demonstrates many samples and examples. Detailed tutorials are
provided for both new and experienced developers. The Eclipse SWT UI is
introduced as the building block for Eclipse UI development.
Author(s) Expertise
ERIC CLAYBERG (Middleton, MA)is Senior VP for Product Development
for Instantiations, an Advanced IBM Business Partner and leading developer of
commercial add-ons for Eclipse, IBM VisualAge, and IBM WebSphere.
DAN RUBEL (Glenshaw, PA), Instantations' CTO, is an entrepreneur and
expert in object-oriented design and development. He has served as primary
architect and product manager for several successful commercial products.
Audience
Target audience is Eclipse users who want to customize the IDE, e.g., to
develop tools for their company's employees or to sell tools that connect to
their products. This book assumes the reader knows Java and how to use
Eclipse and has a fairly good understanding of the Standard Widget Toolkit
(SWT) and, or, Swing.
The CD/DVD/Web Site
Code samples, errata, tools used in the book and other resources available
online at the authors' web site-- www.qualityeclipse.com
One of the reasons for the success of Eclipse is that it is essentially an open
source platform for creating an extensible integrated development
environment. Because it is open source anyone can build tools that integrate
seamlessly with the environment and other tools.
Plugins are what make this seamless integration of tools with Eclipse possible.
With the exception of a small run-time kernel, everything in Eclipse is a plugin.
This means that any plug-in you develop integrates with Eclipse in exactly
the same way as other plug-ins.
This book provides an introduction and overview of the entire process of plugin
development, including all the best practices to achieve high-quality results.
It is a reference book for experienced Eclipse developers. It also discusses the
APIs and demonstrates many samples and examples. Detailed tutorials are
provided for both new and experienced developers. The Eclipse SWT UI is
introduced as the building block for Eclipse UI development.
Author(s) Expertise
ERIC CLAYBERG (Middleton, MA)is Senior VP for Product Development
for Instantiations, an Advanced IBM Business Partner and leading developer of
commercial add-ons for Eclipse, IBM VisualAge, and IBM WebSphere.
DAN RUBEL (Glenshaw, PA), Instantations' CTO, is an entrepreneur and
expert in object-oriented design and development. He has served as primary
architect and product manager for several successful commercial products.
Audience
Target audience is Eclipse users who want to customize the IDE, e.g., to
develop tools for their company's employees or to sell tools that connect to
their products. This book assumes the reader knows Java and how to use
Eclipse and has a fairly good understanding of the Standard Widget Toolkit
(SWT) and, or, Swing.
The CD/DVD/Web Site
Code samples, errata, tools used in the book and other resources available
online at the authors' web site-- www.qualityeclipse.com