27 lines
860 B
C++
27 lines
860 B
C++
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// Licensed under the MIT License.
|
|
|
|
#pragma once
|
|
#include "NarratorAnnouncement.h"
|
|
|
|
// Declaration of the INarratorAnnouncementHost interface.
|
|
// This interface exists to hide the concrete announcement host
|
|
// being used. Depending on the version of the OS the app is running on,
|
|
// the app may need a host that uses LiveRegionChanged or RaiseNotification.
|
|
|
|
namespace CalculatorApp::Common::Automation
|
|
{
|
|
public interface class INarratorAnnouncementHost
|
|
{
|
|
public:
|
|
// Is the host available on this OS.
|
|
bool IsHostAvailable();
|
|
|
|
// Make a new instance of a concrete host.
|
|
INarratorAnnouncementHost^ MakeHost();
|
|
|
|
// Make an announcement using the concrete host's preferred method.
|
|
void Announce(NarratorAnnouncement^ announcement);
|
|
};
|
|
}
|