[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[ecf-dev] ECF press in EclipseSource

Hi Folks,

See article below for some ECF press in Eclipse Source.



-------- Original Message --------
Subject: EclipseSource: ECF Is Spreading the News
Date: Thu, 05 Jul 2007 12:04:08 EDT
From: BZ Media<news@xxxxxxxxxxx>
Reply-To: ES BZ Media <Reply.73089597.12912.slewis@xxxxxxxxxxxxxxxxxxxxxxxxx@listserv.listmgr.net>
To: slewis@xxxxxxxxxxxxx

Issue 56 July 5, 2007 » EdNotes: Wanna Be a Part of It? » Upcoming Events » Europa Release Marks Major Eclipse Overhaul » Eclipse-a-Palooza » EPICenter » Tips: Combining Field Editors and SWT Widgets in Preference Pages EdNotes ECF Takes Flight With Europa

After more than two years in incubation, The Eclipse Communication Framework project has earned its wings; the project took flight with Europa's 21 projects last week.

According to project lead Scott Lewis, functionality included in version 1.0 will permit developers to add chat and instant messaging features to their Eclipse and RCP applications using a number of protocols, including IRC, Yahoo and Jabber's XMPP. "For users, that's the main thing," said Lewis. "Most developers use IM quite a bit, and having it integrated within Eclipse presents an advantage."

Additional capabilities in the ECF base package include file transfer over HTTP, FTP and BitTorrent protocols, and ECF Generic, which Lewis described as a protocol for implementing baseline clients and a server. "It's a completely open publish-and-subscribe model that people can add onto." Also added in time for Europa is support for Eclipse's Hyperlink Detector. "You can embed links in Java or text to XMPP or Yahoo URLs, so you can say to people 'click here to IM me,' for example," he said. In preparation for Europa, Lewis said he's been spending much of his time "hardening the APIs and adding documentation."

The benefits of ECF to commercial developers should be obvious. But perhaps more subtle is the payback to enterprise developers building apps for use within their own company. "Even within an organization, it's helpful to have developers coordinate together more tightly than checking code into a repository." Capabilities planned for the near future include real-time shared document editing, for example, similar to Mac OS X's SubEthaEdit.

"There is a place for ECF to be used within an organization that might even already have a set of tools and conventions and might want to take this and improve their collaboration." One of the primary benefits of the framework, according to Lewis, is in its modular design. "We're defining all the APIs with careful separation between each API and between the provider implementations underneath." This allows included, third-party or proprietary protocols to combined in any combination, he said.

"That's important because people might want to use their existing "[IBM Lotus] Sametime" or other protocol [for example], because they already have apps that run on those things and they can just build ECF on top and keep interoperability." The project also conforms to the OSGi component model, when possible. "The presence API is separate from the call API and from file transfer API. They're not bound to any particular protocol, giving developers the ability to build interoperable apps within Eclipse RCP."

Some of the features not included in ECF 1.0 can still be taken for a test drive. Lewis said a bulletin board API, for example, permits apps to communicate directly with newsgroups, discussion forums and the like. "So you can programmatically interact with a BBS to post, search and call up other parts of the BBS," he said, adding that initial support will be for the phpBB open-source forum project. "You could take a discussion from within an IM client and post it to a forum," he said, for example. Lewis invites developers to visit the ECF Extras page at Oregon State University for Skype and Yahoo providers and other add-ons under development.

What more can we do? SEND FEEDBACK

	Upcoming Events 	

Eclipse Foundation Web Seminars

Eclipse 3.3 and Mylyn 2.2
Wednesday, Jul. 11, 2007
12:00–1:00pm EDT

Introduction to Eclipse Equinox and OSGI
Wednesday, Jul. 25, 2007
12:00-1:00pm EDT


Eclipse Summit Europe
Oct. 9–11, 2007
Stuttgart, Germany

Nov. 6–8, 2007
Reston, Virginia
  	Europa Release Marks Major Eclipse Overhaul 	

By Alex Handy

The Eclipse Europa simultaneous release, which includes version 3.3 of the Eclipse IDE and updates to 21 projects, was set to be offered to the public in late June.

Eclipse IDE 3.3 includes a new keystroke-based way to step through method collections, new ways to handle unresolved names, and the ability to browse objects in a Java Virtual Machine when running Java SE 6.

But with 21 companion projects included in part of Europa, it's a sure bet that your favorite tools are back again with new capabilities. While standbys such as the Business Intelligence and Reporting Tools (BIRT) suite and the Test and Performance Tools Platform (TPTP) have returned with support for Windows Vista and Java SE 6, new tools are also on board with their own bells and whistles.

Mike Milinkovich, executive director of the Eclipse Foundation, noted that two of the newest Eclipse tools have brought some of the most interesting updates to the Europa release.

The first, a workflow tool formerly known as Mylar, has been renamed Mylyn to avoid trademark issues. With the release of Mylyn 2.0 as part of Europa, the tool enhances its ability to view workflows as tasks. "This is one of the really interesting projects at Eclipse for the individual Java developer," said Milinkovich. "It gives instant access to a task UI and integrations with tools developers constantly use, like Bugzilla and Jira."

Learn to Build Better Software at EclipseWorld

Join your colleagues this November at EclipseWorld to learn to build better software using Eclipse. Choose from over 70 classes and tutorials to:

Improve team collaboration using Eclipse-based tool sets.

Go beyond the IDE to understand the wide range of Eclipse technologies.

Get deep inside Eclipse's open-source architecture.

Discover the best, most effective Eclipse add-ins and plug-ins.

Register today to save up to $500!

Nov. 6–8
Hyatt Regency Reston
Reston, VA
Take Eclipse-Based Java Development to the Next Level With Mylyn!

Mylyn – formerly known as Mylar – is a task-focused user interface for Eclipse that makes working with very large workspaces as easy as working with small ones. It makes tasks a first-class part of Eclipse, and integrates task repositories such as Bugzilla, Trac and JIRA. Mylyn is easy to use and powerful, and this no-cost SD Times Web seminar will teach you all about it. You'll learn how to combine the Eclipse Java development tools with Mylyn to make it dramatically easier to build and maintain large systems.


Featured Software Resources

Discover the best software practices, gain an in-depth understanding of the products and services of leading software vendors, and educate yourself on a variety of topics directly related to your industry with these software resources:

Load Testing 2.0 for Web 2.0: HP

Effective Process Management: MKS

Multilingual Applications Made Easier: Assima

Why Testing Alone Doesn't Guarantee Quality: Compuware


Make Software Testing a Team Effort

Take your team to the Software Test & Performance Conference and save $100. Take advantage of more than 80 classes and full-day tutorials covering software test/QA and performance issues across the entire application life cycle. Network with other test/QA & development professionals and learn the latest, most effective best practices for software testing.

Take advantage of your team discount now. Enter Discount Code: Group
Teams of 4 or more. Full Event Passports only. First-time registrants only. Not to be combined with other discounts.

Last Year's Conference Sold Out!

Oct. 2–4
Hyatt Regency Cambridge
Boston, MA
Subscribe Now!
» SD Times
» Software Test & Performance
» E-mail Newsletters

Another new unit of the Europa release, the SOA Tools Platform, is arriving just a few months after it was first announced. "It's a pretty interesting feature set for a 1.0 release," Milinkovich noted, adding that it offers JAX-WS service development, a BPM diagramming tool and BPEL editing tools as well.

Of course, Java doesn't get all the love in Europa. Another project that's first seeing the light of day in this release is the Dynamic Language Toolkit (DLT). While this toolkit is specifically designed to allow developers to add new dynamic languages to the Eclipse IDE as plug-ins, it also includes two sample language implementations for Ruby and TCL.

The trackbed of Eclipse has been overhauled for this release as well. The OSGi Alliance's new Equinox technology has been integrated into Eclipse, to the benefit of the rich client platform. For Web programmers, the Web Tools Platform (WTP) can now manage Tomcat work directories from inside Eclipse. Additionally, the WTP now includes a visual page editor designed to ease the development of JavaServer Pages (JSP) and HTML.

The BIRT reporting suite has also been updated. "We think this is a great project that offers a lot of functionality to Java developers," said Milinkovich. "There are several different new chart types. There's a new dynamic cross-paths report. You can actually have Word and Excel as output formats for your reports, now. You can use Web services as data sources. They've done some work on making it easier to deploy and integrate BIRT with server applications, too. The days of hand-coded JSP for reporting is coming to an end with the way BIRT is progressing."

And, keeping up with the times, all portions of the Eclipse Europa release are now compatible with Windows Vista. Developers hoping for some simplicity in the install process will also be happy to hear that the Eclipse Foundation has streamlined the packaging of the IDE. Specifically, there will be four packages available: one for Java developers, another for enterprise Java developers that includes Java EE support, a third for C/C++ developers, and the last, for RCP and plug-in developers.

Eclipse's Europa release can be found online at www.eclipse.org. The software and all of its plug-ins and frameworks are free and open source.



In the wake of the major Eclipse release last week, this issue's Eclipse-a-Palooza links you to some of the major coverage and analysis of this announcement. SD Times' news report, from Alex Handy, was reprinted above, but you can also link to it at www.sdtimes.com/article/story-20070701-01.html.

» Joe Niski from the Burton Group

» Michael Cote from RedMonk

» Alan Zeichick from SD Times

» Darryl Taft from eWeek

» Paul Krill from Infoworld

» Plus, a running list of Europa reviews maintained by the Eclipse Foundation



An update on recent activities at Eclipse Plug-in Central.

Bold type denotes commercial products.

Most Active Plug-ins from the Past 24 Hours.

eUML2 free edition


MyEclipse Enterprise Workbench


Bytecode Outline


WindowBuilder Pro - SWT/Swing/GWT Designer




Tiny Eclipse


Eclipse SQL Explorer


PyDev - Python Development Environment for Ec...


CDT for Windows


Jigloo SWT/Swing GUI Builder


Oxygen XML Editor and XSLT Debugger


Subversive - SVN client


EclipseUML free edition


J2EE Spider


GWT Designer

  	Combining Field Editors and SWT Widgets in Preference Pages 	
  	By Dwight Deugo 	

In my last article, I discussed how to use Eclipse's specialized FieldEditors, such as a StringFieldEditor, in your preference pages to collect user preferences. While the list of subclasses of org.eclipse.jface.preference.FieldEditor is extensive, providing many types of field editors you can use to collect preferences such as paths, colors, or integers, they won't handle every situation.

A simple example is the need of a button that, when pressed, initiates and tests a connection from a URL a user has provided as a preference. You have to position the SWT widgets in the appropriate positions within the preference page and handle the corresponding widget events when they occur. Let's see how this process actually works.

The first step is to look at the behavior your preference page inherits. In all of my previous implementations, my preference pages inherited from the class org.eclipse.jface.preference.FieldEditorPreferencePage.

In particular, we need to look at the method createContents(..). If we look a level higher in the hierarchy, we see that this method is an abstract method in the class org.eclipse.jface.preference.PreferencePage. Therefore, we'll either have to make use of the inherited behavior or create it ourselves. The inherited method is as follows:

protected Control createContents(Composite parent) {
              fieldEditorParent = new Composite(parent, SWT.NULL);
            GridLayout layout = new GridLayout();
            layout.numColumns = 1;
            layout.marginHeight = 0;
            layout.marginWidth = 0;


            if (style == GRID) {

            return fieldEditorParent;

The method simply creates a Composite object and uses a GridLayout for it. It is this composite that is returned, saved in the instance variable fieldEditorParent and ultimately used whenever a new FieldEditor is added to the preference page using the addField(..) method.

How do you hook into this process in order to add custom widgets? In your preference page class, implement the method createContents(..) as follows, letting the inherited createContents(..) method do its work first and then adding your corresponding widgets to the Composite object it returns.

In the method below, you can see the super invocation, the adding of a new SWT Button, the Button's setup, and then the final return of the control, which is the original composite, to the method that invoked the createContents(..) method in the first place.

protected Control createContents(Composite parent){
Control control = super.createContents(parent);
Button button = new Button((Composite) control, SWT.PUSH);
button.addSelectionListener(new ConnectButtonSelectionListener());
return control;

The result, along with any field editors added in the createFieldEditors() method, is as shown in Figure 1. Knowing the execution path will enable you to cut out the creation of FieldEditors completely, if you so wish.

Moreover, looking at the implementation of org.eclipse.jface.preference.FieldEditorPreferencePage should also give you some ideas as to how to change the layout manager from a GridLayout to something else—just check the style instance variable. While field editors will get you most of the way, on the rare occasion when you need to place and handle your own widgets are their events, you're now up to the task.


Sponsor this Newsletter

About EclipseSource

EclipseSource is published by BZ Media LLC, Huntington, New York.

Editor: Edward J. Correia
HTML/Web Producer: Nicole Schnatz
Publisher: Ted Bahr
Editorial Director: Alan Zeichick

EclipseSource is published on alternating Wednesdays and contains the latest Eclipse-related news,
analysis and product announcements, as well as developer tips and techniques written by
respected industry experts. EclipseSource is designed specifically
for enterprise developers using Eclipse technologies.

Discontinue EclipseSource

For uninterrupted delivery, add news@xxxxxxxxxxx
to your address book or anti-spam whitelist.

subscribing or unsubscribing, please contact our
customer service department at service@xxxxxxxxxxx

To submit a news idea for consideration, or if you have questions,
comments or Feedback about an item covered in EclipseSource,
contact us at feedback@xxxxxxxxxxx

Interested in reaching decision makers and technologists in the Eclipse market?
For more information, please contact our
advertising department at sales@xxxxxxxxxxx

EclipseSource is published by BZ Media LLC, which is solely responsible for its content.
EclipseSource may be redistributed only in unedited form and with written permission
from BZ Media. BZ Media is an associate member of the Eclipse Foundation.

Copyright 2007, BZ Media LLC