Pieter van der Westhuizen

What’s new in Outlook 2013 for Microsoft Office developers

The new Office brought with it some major changes and we’ve been focusing on the biggest change: the new app framework. But, Apps for Office is not the only new feature, Outlook 2013 Preview brings with it the following important changes:

Let’s take a quick look at some of these changes.

Outlook Social Connector

The Outlook Social Connector (whether you love it or hate it) can now be used to allow all Office applications to display user presence and Contact Card information. This could prove to be interesting to see how developers could leverage this in other Office applications.

Outlook 2013 Weather bar

The new Outlook Weather bar is used to display weather information for user-selected locations. It uses the MSN weather service for its data. You are, however, able to plug into the Weather bar in order to use your own weather service. You can read more about this on the Office Dev center.

Outlook 2013 Weather bar

Version coexistence

This is great if you want to try out Outlook 2013 without having to uninstall your previous version of Outlook. Coexistence allows you to run Outlook 2010 or 2007 alongside Outlook 2013, without any weird and wonderful workarounds. You are, unfortunately, only allowed to run one version at a time, read more on MSDN.

Performance monitoring criteria

This is a very important consideration for any Outlook add-in developer. Outlook will record the time it takes for your add-in to perform certain tasks and if it takes longer than the acceptable time (in milliseconds) Outlook will disable your plug-in. The user will be informed of this and will have the option to enable the add-in again. It is a good idea to stay within the allocated time, as this will increase user confidence in your add-in. A short list of the criteria Outlook uses to monitor performance includes:

  • Start-up = 1000 milliseconds
  • Shutdown = 500 milliseconds
  • Folder switch = 500 milliseconds
  • Item open = 500 milliseconds

Inline response and other object model enhancements

Outlook 2013 brings with it a few Object model changes. One is that almost all the objects now have a ReadComplete event, which occurs after Outlook has finished reading the properties of the item.

The ContactItem object also received two more methods:

  • ShowCheckAddressDialog
  • ShowCheckFullNameDialog

The ShowCheckAddressDialog shows the familiar dialog with which the user can check the contacts’ address. The method accepts a parameter called MailingAddress which is an enumerator (OlMailingAddress) specifying which address of the contact to check e.g. Home, Business, Other.

Checking the contact's address

The ShowCheckFullNameDialog displays another well-known dialog with which the user can verify the name details of the current contact object.

Verifying the name details of the current contact object

Another big change in Outlook 2013 is the introduction of an inline response. If you have not seen it yet, reply to an email in Outlook 2013, and you will notice that it no longer shows your response in a separate inspector window, but rather adds an editor to the preview/reading pane as illustrated below.

Inline response in Outlook 2013

When we wanted to add logic to Outlook when a user replied to an e-mail in Outlook versions prior to 2013, we could’ve simply used the InspectorActivate event. In Outlook 2013, however, when the user replies the InspectorActivate event will not fire, instead the InlineResponse event will be raised with a reference to the Outlook item being responded to as a parameter.

You can still use the InspectorActivate event to determine if the user clicked on the POP OUT button in the inline response window, which will then open a new Inspector window for the active item.

As always, Add-in Express has your back and makes adding your own logic to the new InlineResponse event easy. All you have to do is drop a new ADXOutlookAppEvents component onto your AddinModule’s designer surface.

Adding a new ADXOutlookAppEvents component onto your AddinModule's designer surface

Next, in the list of events in the properties window, double-click next to ExplorerInlineResponse to generate an empty event handler for the event.

Generating an empty event handler for the ExplorerInlineResponse event

From there you can add the necessary logic for example:

private void adxOutlookEvents_ExplorerInlineResponse(object sender, object itemObject)
{
    if (itemObject is Outlook._MailItem)
    {
        Outlook._MailItem mailItem = itemObject as Outlook._MailItem;
        MessageBox.Show("You are replying to " + mailItem.To);
    }
}

Office 2013 offers an exciting new direction for Office developers creating Apps for Office or the traditional COM add-ins and Add-in Express will be with you every step of the way!

Thank you for reading. Until next time, keep coding!

Post a comment

Have any questions? Ask us right now!