- ホーム
- > 洋書
- > 英文書
- > Computer / Languages
Full 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.
Contents
Foreword by Skip McGaughey xxxiiiForeword by Simon Archer xxxvPreface xxxviiChapter 1: Using Eclipse Tools 11.1 Getting Started 11.2 The Eclipse Workbench 31.3 Setting Up Your Environment 141.4 Creating a Project 191.5 Navigating 261.6 Searching 281.7 Writing Code 351.8 Team Development Using CVS 491.9 Running Applications 551.10 Introduction to Debugging 591.11 Introduction to Testing 631.12 Introduction to Mylyn 651.13 Summary 69Chapter 2: A Simple Plug-in Example 712.1 The Favorites Plug-in 712.2 Creating a Plug-in Project 722.3 Reviewing the Generated Code 772.4 Building a Product 862.5 Installing and Running the Product 922.6 Debugging the Product 942.7 PDE Views 962.8 Writing Plug-in Tests 992.9 Book Samples 1052.10 Summary 106Chapter 3: Eclipse Infrastructure 1073.1 Structural Overview 1073.2 Plug-in Directory or JAR file 1103.3 Plug-in Manifest 1133.4 Activator or Plug-in Class 1203.5 Plug-in Model 1263.6 Logging 1283.7 Eclipse Plug-ins 1323.8 Summary 133Chapter 4: The Standard Widget Toolkit 1354.1 SWT History and Goals 1354.2 SWT Widgets 1384.3 Layout Management 1784.4 Resource Management 1884.5 GUI Builders 1904.6 Summary 191Chapter 5: JFace Viewers 1935.1 List-Oriented Viewers 1935.2 Text Viewers 2115.3 Summary 214Chapter 6: Commands and Actions 2156.1 Commands 2166.2 Menu and Toolbar Contributions 2206.3 Handlers 2366.4 Key Bindings 2386.5 IAction versus IActionDelegate 2406.6 Workbench Window Actions 2426.7 Object Actions 2576.8 View Actions 2706.9 Editor Actions 2776.10 Actions and Key Bindings 2846.11 RFRS Considerations 2866.12 Summary 287Chapter 7: Views 2897.1 View Declaration 2917.2 View Part 2937.3 View Commands 3137.4 Linking the View 3367.5 Saving View State 3407.6 Testing 3457.7 Image Caching 3467.8 Auto-sizing Table Columns 3487.9 RFRS Considerations 3487.10 Summary 352Chapter 8: Editors 3538.1 Editor Declaration 3548.2 Editor Part 3588.3 Editing 3728.4 Editor Lifecycle 3788.5 Editor Commands 3818.6 Linking the Editor 4008.7 RFRS Considerations 4018.8 Summary 405Chapter 9: Resource Change Tracking 4079.1 IResourceChangeListener 4079.2 Processing Change Events 4119.3 Batching Change Events 4149.4 Progress Monitor 4159.5 Delayed Changed Events 4209.6 Summary 421Chapter 10: Perspectives 42310.1 Creating a Perspective 42310.2 Enhancing an Existing Perspective 43010.3 RFRS Considerations 43810.4 Summary 439Chapter 11: Dialogs and Wizards 44111.1 Dialogs 44111.2 Wizards 46411.3 RFRS Considerations 48211.4 Summary 484Chapter 12: Preference Pages 48512.1 Creating a Preference Page 48512.2 Preference Page APIs 48712.3 Preference APIs 50112.4 RFRS Considerations 50812.5 Summary 509Chapter 13: Properties 51113.1 Creating Properties 51113.2 Displaying Properties in the Properties Dialog 51513.3 Displaying Properties in the Properties View 52413.4 Property Pages Reused as Preference Pages 52913.5 RFRS Considerations 53013.6 Summary 531Chapter 14: Builders, Markers, and Natures 53314.1 Builders 53514.2 Markers 54814.3 Natures 56114.4 RFRS Considerations 57214.5 Summary 575Chapter 15: Implementing Help 57715.1 Using Help 57715.2 Implementing Help 58015.3 Context-Sensitive Help (F1) 59115.4 Accessing Help Programmatically 59915.5 Cheat Sheets 60115.6 RFRS Considerations 61115.7 Summary 614Chapter 16: Internationalization 61716.1 Externalizing the Plug-in Manifest 61816.2 Externalizing Plug-in Strings 62016.3 Using Fragments 62916.4 Manual Testing 63616.5 Summary 636Chapter 17: Creating New Extension Points 63717.1 The Extension Point Mechanism 63717.2 Defining an Extension Point 63917.3 Code Behind an Extension Point 64917.4 Extension Point Documentation 65617.5 Using the Extension Point 65717.6 RFRS Considerations 65917.7 Summary 660Chapter 18: Features, Branding, and Updates 66118.1 Feature Projects 66218.2 Branding 67318.3 Update Sites 67918.4 RFRS Considerations 68918.5 Summary 691Chapter 19: Building a Product 69319.1 A Brief Introduction to Ant 69319.2 Building with PDE 71119.3 Debugging the PDE Build process 72619.4 Summary 729Chapter 20: GEF: Graphical Editing Framework 73120.1 GEF Architecture 73120.2 GEF Model 73220.3 GEF Controller 73320.4 GEF Figures 74320.5 GEF in an Eclipse View 75420.6 GEF in an Eclipse Editor 75820.7 Palette 77520.8 Summary 778Chapter 21: Advanced Topics 77921.1 Advanced Search-Reference Projects 78021.2 Accessing Internal Code 78121.3 Adapters 78421.4 Opening a Browser or Creating an Email 78821.5 Types Specified in an Extension Point 79321.6 Modifying Eclipse to Find Part Identifiers 79721.7 Label Decorators 80221.8 Background Tasks-Jobs API 80821.9 Plug-in ClassLoaders 81121.10 Early Startup 81621.11 Rich Client Platform 81721.12 Conclusion 818Appendix A: Eclipse Plug-ins and Resources 819A.1 Plug-ins 819Appendix B: Ready for Rational Software 831Index 833