ted
ted

Reputation: 4191

Is it possible to override Visual Studio 2013 Notification window

Notification window is a new added feature in visual studio 2013. I have an isolated shell application created using visual studio 2013 shell.

Is it possible to extend the Notification window and show notification or information related to our isolated shell application ?

Upvotes: 2

Views: 261

Answers (1)

Erti-Chris Eelmaa
Erti-Chris Eelmaa

Reputation: 26348

The answer to your question would be yes, however Microsoft does not expose the functionality officially. You can expose these structures yourself, if you're super interested.

The way you can do it, is kind of hackish, but it will work, at least for VS2013. Basically, you need to either reference an internal dll (C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Microsoft.VisualStudio.Shell.UI.Internal.dll), or just copy/paste the relevant structures into your own program, as Kevin has done: User Notifications in the Visual Studio 2013 SDK.

If that is done, you can exploit the interfaces: https://github.com/kevfromireland/visual-studio-2013-notifications-example/blob/master/UserNotificationDemo/UserNotificationDemoPackage.cs

var notificationService = (IVsUserNotificationsService)GetService(
      typeof(SVsUserNotificationsService));

var notifcationManager = notificationService.
       GetUserNotificationsManagerAsync()
      .GetResult();

var vsUserNotificationsManager = (IVsUserNotificationsManager) notifcationManager;
var pic = new RedditPicProvider().GetAwwPicture();

vsUserNotificationsManager.
    AddUserNotification(ExampleProvider.Guid, 
        pic.Url, 
        pic.Title, 
        pic.Url, 
        (uint) NotificationServerity.Critical, isTransient: true);
RegisterNotificationProvider(vsUserNotificationsManager);

Upvotes: 3

Related Questions