Book Image

Eclipse 4 Plug-in Development by Example : Beginner's Guide

By : Dr Alex Blewitt
Book Image

Eclipse 4 Plug-in Development by Example : Beginner's Guide

By: Dr Alex Blewitt

Overview of this book

<p>As a highly extensible platform, Eclipse is used by everyone from independent software developers to NASA. Key to this is Eclipse’s plug-in ecosystem, which allows applications to be developed in a modular architecture and extended through its use of plug-ins and features.<br /><br />"Eclipse 4 Plug-in Development by Example Beginner's Guide" takes the reader through the full journey of plug-in development, starting with an introduction to Eclipse plug-ins, continued through packaging and culminating in automated testing and deployment. The example code provides simple snippets which can be developed and extended to get you going quickly.</p> <p>This book covers basics of plug-in development, creating user interfaces with both SWT and JFace, and interacting with the user and execution of long-running tasks in the background.</p> <p>Example-based tasks such as creating and working with preferences and advanced tasks such as well as working with Eclipse’s files and resources. A specific chapter on the differences between Eclipse 3.x and Eclipse 4.x presents a detailed view of the changes needed by applications and plug-ins upgrading to the new model. Finally, the book concludes on how to package plug-ins into update sites, and build and test them automatically.</p>
Table of Contents (19 chapters)
Eclipse 4 Plug-in Development by Example Beginner's Guide
Credits
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Preface
Index

Time for action – finding the leak


It is necessary to know how many resources are allocated in order to know if the leak has been plugged or not. Fortunately, SWT provides a mechanism to do this via the Display and the DeviceData classes. Normally, this is done by a separate plug-in, but in this example ClockView will be modified to show this behavior.

  1. At the start of the ClockView class' createPartControl() method, add a call to obtain the number of allocated Objects, via DeviceData of the Display class:

    public void createPartControl(Composite parent) {
      Object[] oo=parent.getDisplay().getDeviceData().objects;
  2. Iterate through the allocated objects counting how many are instances of Color:

      int c = 0;
      for (int i = 0; i < oo.length; i++)
        if (oo[i] instanceof Color)
          c++;
  3. Print the count to the standard error stream:

    System.err.println("There are " + c + " Color instances");
  4. Now run the code in debug mode and show the Clock View. The following will be displayed in the host Eclipse...