Presentation is loading. Please wait.

Presentation is loading. Please wait.

Copyright © IBM Corp., 2008. All rights reserved. Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, and more Benjamin Pasero.

Similar presentations


Presentation on theme: "Copyright © IBM Corp., 2008. All rights reserved. Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, and more Benjamin Pasero."— Presentation transcript:

1 Copyright © IBM Corp., 2008. All rights reserved. Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, and more Benjamin Pasero

2 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Goal for Today: Pimping the Mail Template  First Part  Custom SWT Widgets  Custom Owner Drawn using latest 3.4 API  Rich Tooltips with JFace  Second Part  Custom Presentation  Product Transformation  Custom Splash Handler

3 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Setup Eclipse 3.4 and the Mail Template  Make sure to use Eclipse 3.4 M5  Create a new Plug-in Project  From the Templates choose RCP Mail Template  Open the plugin.xml  Execute Launch an Eclipse application  The UI is nice, but we can do better!

4 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Using the PShelf Widget from Nebula  The Nebula Project: http://www.eclipse.org/nebula/  Official source for custom SWT Widgets  Examples  Grid  Gallery  GanttChart  PShelf  CDateTime

5 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Writing our own Custom Widget  SWT:Two strategies  Custom Widget by extending Canvas  Custom Compound Widget by extending Composite  Goal: Simple Link Widget that supports Image and Text  Features  Looks and behaves like a real link  Listener for handling selection  Keyboard Accessibility

6 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Custom Owner Drawn Inbox  New JFace-API in Eclipse 3.4: SimpleStyledCellLabelProvider  Use it to have mixed styles per Table- or Treeitem  Hides complexity of custom owner drawn  Mixed fonts not yet supported  We want to draw the number of unread Mails  Using a different Color  We want to highlight Folders  Using an Underline

7 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Rich Tooltips using JFace  JFace makes it easy to add rich tooltips to Viewers  CellLabelProvider provides API to define the custom Tooltip  Text and Image  Foreground and Background color  We want to preview a Mail by using a rich tooltip:

8 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Custom Mail Presentation: Large and In Charge  Presentations allow to make our RCP app not look like Eclipse  Eclipse offers extension points to add our own Presentation  org.eclipse.ui.presentationFactories  org.eclipse.ui.themes  Goal for our Presentation  Large Round Tabs  Close Button will be a red Arc  Foundation for our Product Transformation with large Icons

9 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved.

10 Product Transforms  Presentations allow for extreme customization  but some things are beyond their reach  Themes can allow for an additional axis of customization  but they don't cover images  Time to break out the chainsaw and apply some product transforms  Remove/modify extensions from plugins outside of your control  Swap in new icon sets  Help available: http://wiki.eclipse.org/Equinox_Transforms

11 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Our Mail Transformation in a Nutshell  We register a framework extension that OSGI loads on startup  org.eclipse.equinox.transforms.hook  We register a Service for the transformation with some properties  Use the ReplaceTransformer  Use transform.csv for the replacement  We ensure early startup using a custom config.ini for  org.mailtemplate.transform  org.eclipse.equinox.transforms.replace

12 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Custom Splash Screen  Using the org.eclipse.ui.splashHandlers Extension Point  Getting full control of the Shell that is used for the Splash on startup  Let’s have a look at the available templates  Adding product images  Simulated session log-in  Embedded Browser (?)

13 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Pointers & References  Eclipse Corner Articles: http://www.eclipse.org/articles/  Eclipse Wiki: http://wiki.eclipse.org  Eclipse SWT  Snippets: http://www.eclipse.org/swt/snippets/  Examples: http://www.eclipse.org/swt/examples.php  Community: http://www.eclipse.org/swt/community.php  The Nebula Project  http://www.eclipse.org/nebula/

14 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Thanks for listening and attending! E-Mail: bpasero@rssowl.org

15 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Legal Notices (1/2)  Copyright © IBM Corp., 2008. All rights reserved. This presentation is licensed under Creative Commons Att. Nc Nd 2.5 license.  IBM and the IBM logo are trademarks or registered trademarks of IBM Corporation, in the United States, other countries or both.  Java and all Java-based marks, among others, are trademarks or registered trademarks of Sun Microsystems in the United States, other countries or both.  OSGi is a trademark or registered trademark of the OSGi Alliance in the United States and other countries.  Eclipse and the Eclipse logo are trademarks of Eclipse Foundation, Inc.  Other company, product and service names may be trademarks or service marks of others.

16 Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, And More | Copyright © IBM Corp., 2008. All rights reserved. Legal Notices (2/2)  THE INFORMATION DISCUSSED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY. WHILE EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATION, IT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, AND IBM SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, SUCH INFORMATION. ANY INFORMATION CONCERNING IBM'S PRODUCT PLANS OR STRATEGY IS SUBJECT TO CHANGE BY IBM WITHOUT NOTICE.


Download ppt "Copyright © IBM Corp., 2008. All rights reserved. Plastic Surgery For Eclipse: Custom SWT Widgets, RCP Customization, and more Benjamin Pasero."

Similar presentations


Ads by Google