Extending the 2007 Microsoft Office System User Interface Mike Taulty Developer & Platform Group, Microsoft Ltd
Agenda The Ribbon Custom Task Panes Outlook UI Enhancements Existing Customisations Tools
Quick tour of the Office 2007 User Interface
Tools PaidRTM Free*RTM Second Edition Pro & Above CTP Codename “Orcas”
Why use VSTO? Recommendation is to use VSTO over and above VS 2005 and the interop assemblies; Runtime adds app-domain isolation Runtime solves problem of enabling/disabling mscoree.dll add-ins Runtime solves problem of signing add-ins Runtime adds feature support (e.g. task panes) Templates speed development RuntimeRuntime Tool Support
“The Tab” The Ribbon (and Friends) “The Button” “Quick Access Toolbar” “The Group (of Controls)” “The Ribbon” “Dialog Launcher” “Gallery”
Customising the Ribbon Hiding or “re-purposing” existing UI Adding new UI Notes Can be more than one ribbon (e.g. Outlook) Can be done at the application level or at the document level Access, Excel, Outlook, PowerPoint, WordAccess, Excel, Outlook, PowerPoint, Word
Customising the Ribbon – The Pattern Your code Get XML UI Definition XML Other than Invalidate() Callbacks; “GetImage” “IsEnabled” etc.
Tools Second Edition Codename “Orcas” Add-ins at the application level Template helps with COM interfaces Add-ins at the document level Ribbon designer support
Customising the Ribbon
Custom Task Panes Space to host custom UI Any ActiveX content Windows Forms WPF Usually launched from the Ribbon Access, Excel, InfoPath, Outlook, PowerPoint, Word
Tools Second Edition Add-ins at the application level Runtime help with adding task panes to the application being extended
Custom Task Panes
Outlook UI Extensibility Form Regions Inspector Reading Pane Context Menus Attachment Item Folder Shortcut View
Outlook Object Model EnhancementsMAPIMAPI Outlook 2003 CDO(EX)CDO(EX) 3 rd Party Outlook New Objects + Enhancements + Rules Outlook New Objects + Enhancements + Rules
Outlook Object Guard Changes For add-ins, no prompts if; Add-in uses the Application object which has trusted access Admin has not restricted the list of trusted add-ins (group policy) For out of process callers, no prompts if; Windows Vista or Windows XP Sp2 Security Center reports “Good” anti-virus status Outlook programmatic settings have not been changed (user/admin)
Tools Second Edition VSTO helps in building the Outlook Add-In Helps in implementing the COM interface
Outlook UI Extensibility
Existing Customisations Custom Menus Custom Buttons on Formatting Toolbar Custom Toolbars They still work XLM, WordBasic, CommandBars (‘96), WLL, XLL, XLA, PPA, Word global templates In Excel, “Init Menus” registry key Attached Toolbars in Word & Excel Other technologies
Mapping Existing Solutions If your code added a...It appears in... Control to a built-in menuThe “Menu Commands” group Control to a built-in toolbarThe “Toolbar Commands” group Custom toolbarThe “Custom Toolbars” group
Summary Extending the RibbonExtending the Ribbon Adding Custom Task PanesAdding Custom Task Panes Form Regions & Menus in OutlookForm Regions & Menus in Outlook Visual Studio Tools for Office (SE)Visual Studio Tools for Office (SE)
© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.