95cc7d9625
FontInfoBase and it's descendents are missing noexcept annotations, which virally forces other code to not be noexcept as well during AuditMode checks. Apart from adding noexcept, this commit also * Passes std::wstring_view by reference. * Pass the FillLegacyNameBuffer argument as a simple pointer-to-array, allowing us to fill the buffer with a single memcpy. (gsl::span's iterators inhibit any internal STL optimizations.) * Move operator== declarations inside the class to reduce code size. All other changes are an effect of the virality of noexcept. This is an offshoot from #11623. ## Validation Steps Performed * It still compiles ✔️
44 lines
1.4 KiB
C++
44 lines
1.4 KiB
C++
/*++
|
|
Copyright (c) Microsoft Corporation
|
|
Licensed under the MIT license.
|
|
|
|
Module Name:
|
|
- IControlAccessibilityInfo.h
|
|
|
|
Abstract:
|
|
- This serves as the interface defining all information known by the control
|
|
hosting the terminal renderer that is needed for the UI Automation Tree.
|
|
|
|
Author(s):
|
|
- Zoey Riordan (zorio) Feb-2020
|
|
--*/
|
|
|
|
#pragma once
|
|
|
|
#include <wtypes.h>
|
|
|
|
namespace Microsoft::Console::Types
|
|
{
|
|
class IControlAccessibilityInfo
|
|
{
|
|
public:
|
|
virtual ~IControlAccessibilityInfo() = 0;
|
|
|
|
virtual COORD GetFontSize() const noexcept = 0;
|
|
virtual RECT GetBounds() const noexcept = 0;
|
|
virtual RECT GetPadding() const noexcept = 0;
|
|
virtual double GetScaleFactor() const noexcept = 0;
|
|
virtual void ChangeViewport(const SMALL_RECT NewWindow) = 0;
|
|
virtual HRESULT GetHostUiaProvider(IRawElementProviderSimple** provider) = 0;
|
|
|
|
protected:
|
|
IControlAccessibilityInfo() = default;
|
|
IControlAccessibilityInfo(const IControlAccessibilityInfo&) = default;
|
|
IControlAccessibilityInfo(IControlAccessibilityInfo&&) = default;
|
|
IControlAccessibilityInfo& operator=(const IControlAccessibilityInfo&) = default;
|
|
IControlAccessibilityInfo& operator=(IControlAccessibilityInfo&&) = default;
|
|
};
|
|
|
|
inline IControlAccessibilityInfo::~IControlAccessibilityInfo() {}
|
|
}
|