SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
Customizing RCP UI using
                                      the Presentations API
                                      Sébastien Moran
                                      Eclipse Summit Europe 2009




1   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Agenda
Context
RCP Customization & Presentations API
Demo
UI Tips & Tricks
Conclusion
Questions




       Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Sierra Wireless
• Formerly know as “Anyware Technologies”
• Third quarter of 2009 : Sierra Wireless - Solutions & Services

    Four product categories…




                       AirCard®              Embedded

                       Intelligent           Solutions                    …serving a diversified set of segments in
                       Gateways              & Services
                                                                          mobile computing and machine-to-
                                                                          machine




3        Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Expresso
    Discovery & Learn tool
    • Fast configuration of modems
    • Easy access to basic features
    User friendly
    • Intuitive graphical user interface
    • One click shows both ATCommand & its result
    Features
    •   SMS & Voice call configuration
    •   AT Console View
    •   Photographic help system
    •   …



4       Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Initial work


    “Classical” RCP                                  Several
                                                                                               Several Views
      Application                                  Perspectives

                                                           One per                               One per specific
      OS native look &
                                                          discovery                                discovery
           feel
                                                          thematic                                   feature


                                                                                                  Can be used in
         Eclipse visual                                Aggregates
                                                                                                     several
             flavor                                   several views
                                                                                                   perspectives




5    Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
6   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Product Manager remarks




                “Great ! It works like a charm.
But … it really looks like Eclipse... We have to
              add some UI love !”




7   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Graphical Designer Mockup




8   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Developer thoughts




                                                                                   Use Presentations API !

                                    Ask my best friends :
                                                            &


     What am I gonna do ?!




9   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Agenda
Context
RCP Customization & Presentations API
Demo
UI Tips & Tricks
Conclusion
Questions




       Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Why ?



              Over heard                                               Eclipse Look & Feel ?
                                                                               The way editors and views
           “[..] It really looks like                                                are shown.
                   Eclipse [..]
                                                                                Custom tabs Look & Feel
        “Do I need Eclipse to use
           your application ?”                                                     Perspectives switcher




11   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
If you don’t like it – change it !


     Presentations API
     • Control the look and feel of
       views and editors




                                                                   Workbench Customization
                                                                   • Customize the content area
                                                                   • Customize the window’s shape




12         Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Presentations API Concepts

                                    Presentation                           Presentation                            Extension
     Presentation
                                        Part                                 Factory                                 Point

      Look & Feel
                                                                                   Editors
      extension for
                                               Editor                           presentation
       Workbench
                                                                                   stacks
          parts
                                                                                                                    Register a
                                                                                                                   presentation
       Manage the                                                                                                     factory
        trim and                                                                   Views
        layout of                               View                            presentation
       parts’ areas                                                                stacks
      (Part stacks)




13        Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Presentation Responsibilities


     Create part stacks’                                                      Control layout &
            trim                                                                 visibility
                           Tabs                                                                  Parts
                           Title
                                                                                              Toolbars
                  System menu
                                                                                          View menus
      Part management buttons
                        Borders                                                   Drag & Drop regions




14   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
More details


     Eclipse Con 2005 presentation slides
     • eclipsecon2005-presentationsAPI.ppt



     Retrieve them from eclipse CVS repository
     • org.eclipse.ui.examples.presentation




15   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Workbench customization


     Next step : change the application window's layout


• WorbenchWindowAdvisor participates in window creation
• Control things in the Worbench that regular plug-ins can't
• Perfect Presentations API's complement
• Adapt Workbench default layout to your needs




16    Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Expresso Customizations

     Presentations API

     • Customize Parts' stacks display

     Workbench customization

     • Specific window’s shape
     • Specific workbench layout
     • Specific perspective switcher




17       Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Expresso Customizations




18   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Agenda
Context
RCP Customization & Presentations API
Demo
UI Tips & Tricks
Conclusion
Questions




       Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Agenda
Context
RCP Customization & Presentations API
Demo
UI Tips & Tricks
Conclusion
Questions




       Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Three states widgets


                                                                      Single image containing all
                                                                      widget’s states
                                                                      • Normal
                                                                      • Hover
                                                                      • Clicked & Selected
                                                                      Specific image's region is
                                                                      paint depending on the state




21   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Shells decorations
                                                                             Custom dialog without trim
                                                                             • SWT.NO_TRIM

                                                                             Create SWT Regions to
                                                                             define the Shell's shape
                                                                             • org.eclipse.mylyn.commons.ui
                                                                             • AbstractNotificationPopup.java




22   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Agenda
Context
RCP Customization & Presentations API
Demo
UI Tips & Tricks
Conclusion
Questions




       Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Conclusion
First of all: You NEED a Graphic Designer 
StackPresentation implementation is the most tricky part
• Start from the examples
     – org.eclipse.ui.examples.presentation
     – org.eclipse.ui.presentations.r21

SWT Graphics knowledge
• Mandatory for Shell's shape customization & custom widgets
• Eclipse article
     – http://www.eclipse.org/articles/Article-SWT-graphics/SWT_graphics.html

Eclipse's future of UI customization : e4
• Modeled Workbench
• CSS styling


24        Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
Questions ?
                                                    Sébastien Moran
                                                    SMoran@sierrawireless.com




25   Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0

Más contenido relacionado

Último

Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data SciencePaolo Missier
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?Paolo Missier
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...marcuskenyatta275
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Patrick Viafore
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Paige Cruz
 
Revolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial IntelligenceRevolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial IntelligencePrecisely
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftshyamraj55
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandIES VE
 
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Skynet Technologies
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...FIDO Alliance
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdfMuhammad Subhan
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityVictorSzoltysek
 
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...ScyllaDB
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxFIDO Alliance
 
UiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewUiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewDianaGray10
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuidePixlogix Infotech
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...panagenda
 

Último (20)

Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data Science
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
 
Revolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial IntelligenceRevolutionizing SAP® Processes with Automation and Artificial Intelligence
Revolutionizing SAP® Processes with Automation and Artificial Intelligence
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & Ireland
 
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps Productivity
 
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
UiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overviewUiPath manufacturing technology benefits and AI overview
UiPath manufacturing technology benefits and AI overview
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 

Destacado

Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellSaba Software
 

Destacado (20)

Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 

ESE 2009 - Customize RCP UI using Presentations API

  • 1. Customizing RCP UI using the Presentations API Sébastien Moran Eclipse Summit Europe 2009 1 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 2. Agenda Context RCP Customization & Presentations API Demo UI Tips & Tricks Conclusion Questions Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 3. Sierra Wireless • Formerly know as “Anyware Technologies” • Third quarter of 2009 : Sierra Wireless - Solutions & Services Four product categories… AirCard® Embedded Intelligent Solutions …serving a diversified set of segments in Gateways & Services mobile computing and machine-to- machine 3 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 4. Expresso Discovery & Learn tool • Fast configuration of modems • Easy access to basic features User friendly • Intuitive graphical user interface • One click shows both ATCommand & its result Features • SMS & Voice call configuration • AT Console View • Photographic help system • … 4 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 5. Initial work “Classical” RCP Several Several Views Application Perspectives One per One per specific OS native look & discovery discovery feel thematic feature Can be used in Eclipse visual Aggregates several flavor several views perspectives 5 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 6. 6 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 7. Product Manager remarks “Great ! It works like a charm. But … it really looks like Eclipse... We have to add some UI love !” 7 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 8. Graphical Designer Mockup 8 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 9. Developer thoughts Use Presentations API ! Ask my best friends : & What am I gonna do ?! 9 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 10. Agenda Context RCP Customization & Presentations API Demo UI Tips & Tricks Conclusion Questions Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 11. Why ? Over heard Eclipse Look & Feel ? The way editors and views “[..] It really looks like are shown. Eclipse [..] Custom tabs Look & Feel “Do I need Eclipse to use your application ?” Perspectives switcher 11 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 12. If you don’t like it – change it ! Presentations API • Control the look and feel of views and editors Workbench Customization • Customize the content area • Customize the window’s shape 12 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 13. Presentations API Concepts Presentation Presentation Extension Presentation Part Factory Point Look & Feel Editors extension for Editor presentation Workbench stacks parts Register a presentation Manage the factory trim and Views layout of View presentation parts’ areas stacks (Part stacks) 13 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 14. Presentation Responsibilities Create part stacks’ Control layout & trim visibility Tabs Parts Title Toolbars System menu View menus Part management buttons Borders Drag & Drop regions 14 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 15. More details Eclipse Con 2005 presentation slides • eclipsecon2005-presentationsAPI.ppt Retrieve them from eclipse CVS repository • org.eclipse.ui.examples.presentation 15 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 16. Workbench customization Next step : change the application window's layout • WorbenchWindowAdvisor participates in window creation • Control things in the Worbench that regular plug-ins can't • Perfect Presentations API's complement • Adapt Workbench default layout to your needs 16 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 17. Expresso Customizations Presentations API • Customize Parts' stacks display Workbench customization • Specific window’s shape • Specific workbench layout • Specific perspective switcher 17 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 18. Expresso Customizations 18 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 19. Agenda Context RCP Customization & Presentations API Demo UI Tips & Tricks Conclusion Questions Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 20. Agenda Context RCP Customization & Presentations API Demo UI Tips & Tricks Conclusion Questions Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 21. Three states widgets Single image containing all widget’s states • Normal • Hover • Clicked & Selected Specific image's region is paint depending on the state 21 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 22. Shells decorations Custom dialog without trim • SWT.NO_TRIM Create SWT Regions to define the Shell's shape • org.eclipse.mylyn.commons.ui • AbstractNotificationPopup.java 22 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 23. Agenda Context RCP Customization & Presentations API Demo UI Tips & Tricks Conclusion Questions Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 24. Conclusion First of all: You NEED a Graphic Designer  StackPresentation implementation is the most tricky part • Start from the examples – org.eclipse.ui.examples.presentation – org.eclipse.ui.presentations.r21 SWT Graphics knowledge • Mandatory for Shell's shape customization & custom widgets • Eclipse article – http://www.eclipse.org/articles/Article-SWT-graphics/SWT_graphics.html Eclipse's future of UI customization : e4 • Modeled Workbench • CSS styling 24 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0
  • 25. Questions ? Sébastien Moran SMoran@sierrawireless.com 25 Customizing RCP UI using the Presentations API - © 2009 Sierra Wireless, made available under EPL V1.0