Presentation is loading. Please wait.

Presentation is loading. Please wait.

The 2007 Microsoft Office System Client-side Development User Interface & Outlook OM Martin Parry Developer and Platform Group, Microsoft Ltd

Similar presentations


Presentation on theme: "The 2007 Microsoft Office System Client-side Development User Interface & Outlook OM Martin Parry Developer and Platform Group, Microsoft Ltd"— Presentation transcript:

1 The 2007 Microsoft Office System Client-side Development User Interface & Outlook OM Martin Parry Developer and Platform Group, Microsoft Ltd martin.parry@microsoft.com http://martinparry.com

2 Agenda User Interface Custom Task Panes Ribbon Extensibility Outlook Form Regions Consolidated Outlook Object Model

3 Custom Task Pane Application-level Actions Pane Installed as add-in ICustomTaskPaneConsumer, or VSTO 2005 SE... this.CustomTaskPanes.Add( UserControl myCustomTaskPaneControl, string title ); Use any Windows Forms UserControl

4 Custom Task Pane

5 Ribbon Why? When the number of commands gets large, menus and toolbars get less efficient Almost all feature requests received against Office 2003 were for features already there More predictable, less user-customisable

6 Ribbon Extensibility Add-in implements IRibbonExtensibility One method... string GetCustomUI(string RibbonID) Add-in returns UI extension XML Outlook has multiple ribbons... View Mail, Compose Mail, View Appointment, etc.

7 Ribbon Programming Model Functions named in xml expected to be in class that implements IRibbonExtensibility OnLoad gives you an IRibbonUI object Invalidate, InvalidateControl methods “Pull Model” You cannot modify ribbon controls directly Invalidate and then handle callbacks

8 Ribbon - XML Top-level elements - ribbon controls always shown - shown only when needed - hangs off the big round button - quick access toolbar Child elements for... tab, group, button, editBox, gallery, etc.

9 Ribbon – Example XML <toggleButton id="toggleButton1" size="large” label="My Button" screentip="My Button Screentip" onAction="OnToggleButton1" imageMso="HappyFace" />

10 Ribbon – Example Result

11 Ribbon - Tips KeyTip Keyboard shortcut Just the key name, Alt is assumed ScreenTip The tooltip we know and love, max 1024 chars SuperTip More detailed text to accompany ScreenTip

12 Ribbon - Tips

13 Ribbon Extensibility

14 Ribbon – Dynamic Behaviour So far our XML has looked very static Sometimes you don’t know at design-time what your xml should look like Many attributes have equivalents that invoke callbacks to determine values getEnabled, getVisible getImage, getImageMso getLabel, getScreenTip, getSuperTip getItemCount, getItemImage, getItemLabel etc.

15 Ribbon - Containers Tab Group Controls DropDown, ComboBox ButtonGroup, DynamicMenu Gallery Some container controls rely on dynamic behaviour to populate their children

16 Ribbon - Images Can use built-in MSO images or your own, custom images imageMso=“...” getImageMso=“...” image=“...” getImage=“...” } These are the interesting ones! Code supplies images to Office in the form of IPictureDisp objects

17 Ribbon Extensibility: Containers and Images

18 Outlook Form Regions Extend any Outlook inspector with extra UI Controls also appear in the reading pane You choose when to apply For all items Only for items of a specific class Design in Outlook 2007 Code in VSTO 2005 SE

19 Outlook Form Region Loading Implement as an Outlook add-in Visual design in Outlook produces.ofs file Derive from _FormRegionStartup Better yet from Outlook.FormRegionStartup Create a Form Region Manifest file Register under...\Outlook\FormRegions\...

20 Form Region Manifest InternetHeaderDisplay adjoining Internet Headers true false FormRegionTest

21 Outlook Form Region

22 Outlook Object Model Unification Should not need CDO, Exchange Client, etc. Security Improved through unification Relaxed OM guard based on anti-virus Performance Search Forms Extend or replace built-in forms

23 Outlook OM – New Features Table Object High-performance, restricted results Can specify search filter Can access address book SelectNamesDialog, AddressList, etc. Property Accessor Gives access to all extended MAPI properties Context Menus Add items via the CommandBar model

24 Summary The UI in Office 2007 Extensible like never before Outlook programming model Unified More productive All using VSTO 2005 Second Edition

25 Additional Resources MSDN http://msdn.microsoft.com/office http://msdn.microsoft.com/office/program/outlook/2007 Links to blogs, newsgroups, etc. http://msdn.microsoft.com/office/community/blog http://www.officezealot.com microsoft.public.office microsoft.public.outlook microsoft.public.word etc….

26 © 2006 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Download ppt "The 2007 Microsoft Office System Client-side Development User Interface & Outlook OM Martin Parry Developer and Platform Group, Microsoft Ltd"

Similar presentations


Ads by Google