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 – adding a memento for the Time Zone View


The TimeZoneView, created in Chapter 2, Creating views with SWT, presents a list of regions as tabs and allows the user to select a region of interest. When the view is closed and then re-opened, the previously selected tab is not remembered. This is the kind of nugget that could be persisted in a memento for later re-use. Perform the following steps:

  1. To record what the last selected tab was when it is changed; add the variable lastTabSelected, which contains the last selected tab name, to the TimeZoneView as follows:

    private transient String lastTabSelected;
  2. At the end of createPartControl( ), add a selection listener to the tab, such that any time the tab's selection is changed, the name of the tab is remembered:

    tabs.addSelectionListener(new SelectionAdapter() {
      public void widgetSelected(SelectionEvent e) {
        if(e.item instanceof CTabItem) {
          lastTabSelected = ((CTabItem)e.item).getText();
        }
      }
    });
  3. When the workbench...