| <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> | 
 | <html> | 
 |  | 
 | <head> | 
 | <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> | 
 | <title>ECF New and Noteworthy</title> | 
 | <link rel="stylesheet" href="http://www.eclipse.org/default_style.css" type="text/css"> | 
 |  | 
 | </head> | 
 |  | 
 | <body bgcolor="#FFFFFF"> | 
 | <table border=0 cellspacing=5 cellpadding=2 width="100%"> | 
 |   <tbody> | 
 |     <tr> | 
 |       <td width="69%" class="bannertext"> | 
 |         <font class="indextop style">eclipse communication framework</font> | 
 |         <br><br> | 
 |         <font class="indexsub">an eclipse technology subproject</font> | 
 |         <br><br> | 
 |         <font class="indextop style2">New and Noteworthy</font><br>1.0.0 Milestone 7</font> | 
 |         <br><br><br> | 
 |         Return to <a href="downloads.php">ECF download page</a></br> | 
 |         Return to <a href="comm_resources.php">ECF communication resources page</a> | 
 |         <br><br> | 
 |         <a href="NewAndNoteworthy_0.7.0.html">New and Noteworthy for 0.7.0</a><br> | 
 |         <a href="NewAndNoteworthy_0.7.5.html">New and Noteworthy for 0.7.5</a><br> | 
 |         <a href="NewAndNoteworthy_0.7.6.html">New and Noteworthy for 0.7.6</a><br> | 
 |         <a href="NewAndNoteworthy_0.8.0.html">New and Noteworthy for 0.8.0</a><br> | 
 |         <a href="NewAndNoteworthy_0.8.1.html">New and Noteworthy for 0.8.1</a><br> | 
 |         <a href="NewAndNoteworthy_0.8.2.html">New and Noteworthy for 0.8.2</a><br> | 
 |         <a href="NewAndNoteworthy_0.8.4.html">New and Noteworthy for 0.8.4</a><br> | 
 |         <a href="NewAndNoteworthy_0.8.5.html">New and Noteworthy for 0.8.5</a><br> | 
 |         <a href="NewAndNoteworthy_0.8.6.html">New and Noteworthy for 0.8.6</a><br> | 
 |         <a href="NewAndNoteworthy_0.8.7.html">New and Noteworthy for 0.8.7</a><br> | 
 |         <a href="NewAndNoteworthy_0.8.9.html">New and Noteworthy for 0.8.9</a><br> | 
 |         <a href="NewAndNoteworthy_0.9.0.html">New and Noteworthy for 0.9.0</a><br> | 
 |         <a href="NewAndNoteworthy_0.9.1.html">New and Noteworthy for 0.9.1</a><br> | 
 |         <a href="NewAndNoteworthy_0.9.2.html">New and Noteworthy for 0.9.2</a><br> | 
 |         <a href="NewAndNoteworthy_0.9.3.html">New and Noteworthy for 0.9.3</a><br> | 
 |         <a href="NewAndNoteworthy_0.9.4.html">New and Noteworthy for 0.9.4</a><br> | 
 |         <a href="NewAndNoteworthy_0.9.5.html">New and Noteworthy for 0.9.5</a><br> | 
 |         <a href="NewAndNoteworthy_0.9.6.html">New and Noteworthy for 0.9.6</a><br> | 
 |         <a href="NewAndNoteworthy_1.0.0M5.html">New and Noteworthy for 1.0.0 Milestone 5</a> | 
 |         <a href="NewAndNoteworthy_1.0.0M6.html">New and Noteworthy for 1.0.0 Milestone 6</a><br> | 
 |       </td> | 
 |       <td width="31%"> | 
 |         <div align="center"> | 
 |           <img src="../images/Idea.jpg" width="120" height="86" hspace="50" align="middle"> | 
 |         </div> | 
 |       </td> | 
 |     </tr> | 
 |   </tbody> | 
 | </table> | 
 |  | 
 | <hr> | 
 |  | 
 | <table> | 
 |   <TR><TD colSpan=2><H2>Skype Provider</H2></TD> | 
 |    | 
 |   <TR> | 
 |    | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>Skype Provider</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |         Skype Provider Available at <a href="http://ecf1.osuosl.org">ECF OSU Open Source Lab site</a>.  See | 
 |         also <a href="http://wiki.eclipse.org/index.php/Skype_Provider">here for some screen shots</a> | 
 |        <br><br> | 
 |     </td> | 
 |   </TR> | 
 |  | 
 |   <TR> <!-----------------------------------------------------> | 
 |     <TD colSpan=2> <HR> </TD> | 
 |   </TR> | 
 |    | 
 |  <TR><TD colSpan=2><H2>UI Features</H2></TD> | 
 |  | 
 |   <TR> | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>IRC Bot Loose at irc.freenode.net</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |      	An IRC bot based upon the ECF <a href="http://wiki.eclipse.org/index.php/Bot_Framework">Bot Framework</a> is | 
 |      	running at irc.freenode.net.  See <a href="http://wiki.eclipse.org/index.php/IRC_Bot">IRC Bot</a> for details. | 
 |        <br><br> | 
 |        <br><br> | 
 |     </TD> | 
 |    </tr> | 
 |  | 
 |   <TR> | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>New Roster and Messages Views</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |     <p> | 
 |     	There are new roster and messages views: | 
 |     	</p> | 
 |     	<p> | 
 |     	            <img src="images/screens/contactsandmessages.png"> | 
 |        These views also are significantly refactored, simplifed, and made more extensible.  See the classes | 
 |        <b>org.eclipse.ecf.presence.ui.MultiRosterView</b> for the Contacts view, and <b>org.eclipse.ecf.presence.ui.MessagesView</b> | 
 |        for the Messages View.  Both are in the <b>org.eclipse.ecf.presence.ui</b> bundle. | 
 |        </p> | 
 |        <br><br> | 
 |        <br><br> | 
 |     </td> | 
 |   </TR> | 
 |  | 
 |   <TR> | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>Communications Perspective</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |         <p> | 
 |     	Communications Perspective Added. </p> | 
 |     	<p> | 
 |     	            <img src="images/screens/communicationsperspective.png"> | 
 |     	            </p> | 
 |         <br><br> | 
 |        <br><br> | 
 |     </td> | 
 |   </TR> | 
 |  | 
 |   <TR> | 
 |   </TR> | 
 |    | 
 |   <TR> | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>ShareCode Available</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |         ShareCode plugin available after IP approval.  The <a href="http://wiki.eclipse.org/index.php/Shared_Code_Plugin">ShareCode plugin, by Marcelo Mayworm</a> for the | 
 |         <a href="http://wiki.eclipse.org/index.php/Google_Summer_of_Code_2006">2006 Google Summer of Code</a> are now availble in the EF repository.  These plugins are available via  | 
 |         anonymous CVS with the following path:  <b>/cvsroot/technology</b>, the following module <b>org.eclipse.ecf/examples/plugins/org.eclipse.ecf.example.sharecode</b>.   | 
 |         See the <a href="http://wiki.eclipse.org/index.php/Shared_Code_Plugin">ShareCode wiki page</a> for more info.  This plugin will also be in a future distribution | 
 |         of ECF. | 
 |         <br><br> | 
 |        <br><br> | 
 |     </td> | 
 |   </TR> | 
 |  | 
 |   <TR> | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>All ECF Chat and Messages Views support viewing Hyperlinks</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |     <p> | 
 |        All ECF Chat, Messages, and Collaboration views now support embedded hyperlinks.  To activate,  | 
 |        simply hold down the <b>CTRL</b> key | 
 |        while pointing at the link: | 
 |        </p> | 
 |             <img src="images/screens/hyperlinkchat.png"> | 
 |         <br><br> | 
 |        <br><br> | 
 |     </TD> | 
 |    </tr> | 
 |  | 
 |   <TR> | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>Hyperlink Recognition for Communication Protocols</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |     <p> | 
 |     	Hyperlinks in text editors, java editors, etc. are now recognized by ECF and if clicked will result | 
 |     	in a connect dialog for the chosen protocol.  For example: | 
 |        </p> | 
 |             <img src="images/screens/ecfhyperlink1.png"> | 
 |        <br><br> | 
 |             <img src="images/screens/ecfhyperlink2.png"> | 
 |         <br><br> | 
 |        <br><br> | 
 |  | 
 |     </TD> | 
 |    </tr> | 
 |  | 
 |     <TR> <!-----------------------------------------------------> | 
 |     <TD colSpan=2> <HR> </TD> | 
 |   </TR> | 
 |    | 
 |   <TR><TD colSpan=2><H2>API Enhancements</H2></TD> | 
 |  | 
 |   <TR> | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>Dynamic Menu Contributions to Roster View</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |         The MultiRosterView now can be extended using the org.eclipse.ui.menus.menuContribution extension point.  TODO | 
 |          <br><br> | 
 |        <br><br> | 
 |     </TD> | 
 |    </tr> | 
 |  | 
 |   <TR> | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>Chat View Class Consolidation</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |         Several chat view classes have been consolidated so that now there is only one chat view org.eclipse.ecf.presence.ui.ChatRoomManagerView. | 
 |         <br><br> | 
 |        <br><br> | 
 |     </TD> | 
 |    </tr> | 
 |  | 
 |   <TR> | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>New Automated Build</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |         ECF now has an automated build and server setup to run automated builds.  It will be going active sometime within the next | 
 |         week (5.11.2007), and we will be doing daily, and weekly integration builds.  Thanks particularly to Pete Mackie and | 
 |         Ted Kubaska for making this possible, and getting the build environment together. | 
 |         <br><br> | 
 |        <br><br> | 
 |     </TD> | 
 |    </tr> | 
 |  | 
 |   <TR> | 
 |     <TD vAlign=top align=left width="30%"> | 
 |         <P align=left> | 
 | 	<B>Examples of Extending MultiRosterView Context Menus</B> | 
 |         </P> | 
 |     </TD> | 
 |     <TD vAlign=top width="70%"> | 
 |     The ECF MultiRosterView can now be easily extended with additional functionality.   | 
 |     To do this, all that is necessary is to implement the new Platform UI extension point: | 
 |     <b>org.eclipse.ui.menus.menuContribution</b>.  Here's an example that adds an URL | 
 |     sharing capability to the MultiRosterView context menu, when a roster entry is  | 
 |     selected.  The following is from the <b>org.eclipse.ecf.presence.collab.ui</b> plugin. | 
 |     <p> | 
 |     First, the extension declaration: | 
 |     <pre> | 
 |    <extension | 
 |          point="org.eclipse.ui.menus"> | 
 |       <menuContribution | 
 |             locationURI="popup:org.eclipse.ecf.presence.ui.MultiRosterView?before=additions"> | 
 |          <dynamic | 
 |                class="org.eclipse.ecf.presence.collab.ui.URLShareRosterEntryContributionItem" | 
 |                id="org.eclipse.ecf.presence.collab.ui.dynamic2"> | 
 |          </dynamic> | 
 |       </menuContribution> | 
 |    </extension> | 
 |     </pre> | 
 |     With this declaration, the following code will be invoked when the user clicks the | 
 |     right menu button on a roster entry (from URLShareRosterEntryContributionItem): | 
 |     <pre> | 
 | 	protected IAction[] makeActions() { | 
 | 		// check for Roster entry | 
 | 		final IRosterEntry entry = getSelectedRosterEntry(); | 
 | 		IContainer c = getContainerForRosterEntry(entry); | 
 | 		// If roster entry is selected and it has a container | 
 | 		if (entry != null && c != null) { | 
 | 			final IChannelContainerAdapter channelAdapter = (IChannelContainerAdapter) c | 
 | 					.getAdapter(IChannelContainerAdapter.class); | 
 | 			// If the container has channel container adapter and is online/available | 
 | 			if (channelAdapter != null && isAvailable(entry)) { | 
 | 				URLShare tmp = URLShareRosterContributionItem.getURLShare(c | 
 | 						.getID()); | 
 | 				// If there is an URL share associated with this container | 
 | 				if (tmp != null) { | 
 | 					final URLShare urlshare = tmp; | 
 | 					// Create action for sending | 
 | 					IAction action = new Action() { | 
 | 						public void run() { | 
 | 						    // Actually send URL to selected user | 
 | 							urlshare.sendURL(entry.getRoster().getUser().getName(),entry.getUser().getID()); | 
 | 						} | 
 | 					}; | 
 | 					action | 
 | 							.setText(Messages.URLShareRosterEntryContributionItem_SEND_URL_MENU_TEXT); | 
 | 					action.setImageDescriptor(Activator.imageDescriptorFromPlugin( | 
 | 							Activator.PLUGIN_ID, Messages.URLShareRosterContributionItem_BROWSER_ICON)); | 
 | 					// Return action for sending | 
 | 					return new IAction[] { action }; | 
 | 				} | 
 | 			} | 
 | 		} | 
 | 		// Else return null...meaning we have no menu contribution to make | 
 | 		return null; | 
 | 	} | 
 |     </pre> | 
 |      | 
 |     </p> | 
 |         <br><br> | 
 |        <br><br> | 
 |     </TD> | 
 |    </tr> | 
 |  | 
 | </table> | 
 |  | 
 | </body> | 
 | </html> |