blob: 965dab6dd11acfd1471e6dc8f50761bddd4f58ca [file] [log] [blame]
#[doc(hidden)]
#[repr(transparent)]
pub struct IClosedCaptionPropertiesStatics(::windows::core::IUnknown);
unsafe impl ::windows::core::Interface for IClosedCaptionPropertiesStatics {
type Vtable = IClosedCaptionPropertiesStatics_Vtbl;
}
impl ::core::clone::Clone for IClosedCaptionPropertiesStatics {
fn clone(&self) -> Self {
Self(self.0.clone())
}
}
unsafe impl ::windows::core::ComInterface for IClosedCaptionPropertiesStatics {
const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x10aa1f84_cc30_4141_b503_5272289e0c20);
}
#[repr(C)]
#[doc(hidden)]
pub struct IClosedCaptionPropertiesStatics_Vtbl {
pub base__: ::windows::core::IInspectable_Vtbl,
pub FontColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ClosedCaptionColor) -> ::windows::core::HRESULT,
#[cfg(feature = "UI")]
pub ComputedFontColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut super::super::UI::Color) -> ::windows::core::HRESULT,
#[cfg(not(feature = "UI"))]
ComputedFontColor: usize,
pub FontOpacity: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ClosedCaptionOpacity) -> ::windows::core::HRESULT,
pub FontSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ClosedCaptionSize) -> ::windows::core::HRESULT,
pub FontStyle: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ClosedCaptionStyle) -> ::windows::core::HRESULT,
pub FontEffect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ClosedCaptionEdgeEffect) -> ::windows::core::HRESULT,
pub BackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ClosedCaptionColor) -> ::windows::core::HRESULT,
#[cfg(feature = "UI")]
pub ComputedBackgroundColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut super::super::UI::Color) -> ::windows::core::HRESULT,
#[cfg(not(feature = "UI"))]
ComputedBackgroundColor: usize,
pub BackgroundOpacity: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ClosedCaptionOpacity) -> ::windows::core::HRESULT,
pub RegionColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ClosedCaptionColor) -> ::windows::core::HRESULT,
#[cfg(feature = "UI")]
pub ComputedRegionColor: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut super::super::UI::Color) -> ::windows::core::HRESULT,
#[cfg(not(feature = "UI"))]
ComputedRegionColor: usize,
pub RegionOpacity: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, result__: *mut ClosedCaptionOpacity) -> ::windows::core::HRESULT,
}
#[doc = "*Required features: `\"Media_ClosedCaptioning\"`*"]
pub struct ClosedCaptionProperties;
impl ClosedCaptionProperties {
pub fn FontColor() -> ::windows::core::Result<ClosedCaptionColor> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<ClosedCaptionColor>();
(::windows::core::Interface::vtable(this).FontColor)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
#[doc = "*Required features: `\"UI\"`*"]
#[cfg(feature = "UI")]
pub fn ComputedFontColor() -> ::windows::core::Result<super::super::UI::Color> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<super::super::UI::Color>();
(::windows::core::Interface::vtable(this).ComputedFontColor)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
pub fn FontOpacity() -> ::windows::core::Result<ClosedCaptionOpacity> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<ClosedCaptionOpacity>();
(::windows::core::Interface::vtable(this).FontOpacity)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
pub fn FontSize() -> ::windows::core::Result<ClosedCaptionSize> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<ClosedCaptionSize>();
(::windows::core::Interface::vtable(this).FontSize)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
pub fn FontStyle() -> ::windows::core::Result<ClosedCaptionStyle> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<ClosedCaptionStyle>();
(::windows::core::Interface::vtable(this).FontStyle)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
pub fn FontEffect() -> ::windows::core::Result<ClosedCaptionEdgeEffect> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<ClosedCaptionEdgeEffect>();
(::windows::core::Interface::vtable(this).FontEffect)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
pub fn BackgroundColor() -> ::windows::core::Result<ClosedCaptionColor> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<ClosedCaptionColor>();
(::windows::core::Interface::vtable(this).BackgroundColor)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
#[doc = "*Required features: `\"UI\"`*"]
#[cfg(feature = "UI")]
pub fn ComputedBackgroundColor() -> ::windows::core::Result<super::super::UI::Color> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<super::super::UI::Color>();
(::windows::core::Interface::vtable(this).ComputedBackgroundColor)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
pub fn BackgroundOpacity() -> ::windows::core::Result<ClosedCaptionOpacity> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<ClosedCaptionOpacity>();
(::windows::core::Interface::vtable(this).BackgroundOpacity)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
pub fn RegionColor() -> ::windows::core::Result<ClosedCaptionColor> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<ClosedCaptionColor>();
(::windows::core::Interface::vtable(this).RegionColor)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
#[doc = "*Required features: `\"UI\"`*"]
#[cfg(feature = "UI")]
pub fn ComputedRegionColor() -> ::windows::core::Result<super::super::UI::Color> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<super::super::UI::Color>();
(::windows::core::Interface::vtable(this).ComputedRegionColor)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
pub fn RegionOpacity() -> ::windows::core::Result<ClosedCaptionOpacity> {
Self::IClosedCaptionPropertiesStatics(|this| unsafe {
let mut result__ = ::windows::core::zeroed::<ClosedCaptionOpacity>();
(::windows::core::Interface::vtable(this).RegionOpacity)(::windows::core::Interface::as_raw(this), &mut result__).from_abi(result__)
})
}
#[doc(hidden)]
pub fn IClosedCaptionPropertiesStatics<R, F: FnOnce(&IClosedCaptionPropertiesStatics) -> ::windows::core::Result<R>>(callback: F) -> ::windows::core::Result<R> {
static SHARED: ::windows::imp::FactoryCache<ClosedCaptionProperties, IClosedCaptionPropertiesStatics> = ::windows::imp::FactoryCache::new();
SHARED.call(callback)
}
}
impl ::windows::core::RuntimeName for ClosedCaptionProperties {
const NAME: &'static str = "Windows.Media.ClosedCaptioning.ClosedCaptionProperties";
}
#[doc = "*Required features: `\"Media_ClosedCaptioning\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ClosedCaptionColor(pub i32);
impl ClosedCaptionColor {
pub const Default: Self = Self(0i32);
pub const White: Self = Self(1i32);
pub const Black: Self = Self(2i32);
pub const Red: Self = Self(3i32);
pub const Green: Self = Self(4i32);
pub const Blue: Self = Self(5i32);
pub const Yellow: Self = Self(6i32);
pub const Magenta: Self = Self(7i32);
pub const Cyan: Self = Self(8i32);
}
impl ::core::marker::Copy for ClosedCaptionColor {}
impl ::core::clone::Clone for ClosedCaptionColor {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ClosedCaptionColor {
fn default() -> Self {
Self(0)
}
}
impl ::windows::core::TypeKind for ClosedCaptionColor {
type TypeKind = ::windows::core::CopyType;
}
impl ::core::fmt::Debug for ClosedCaptionColor {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ClosedCaptionColor").field(&self.0).finish()
}
}
impl ::windows::core::RuntimeType for ClosedCaptionColor {
const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Media.ClosedCaptioning.ClosedCaptionColor;i4)");
}
#[doc = "*Required features: `\"Media_ClosedCaptioning\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ClosedCaptionEdgeEffect(pub i32);
impl ClosedCaptionEdgeEffect {
pub const Default: Self = Self(0i32);
pub const None: Self = Self(1i32);
pub const Raised: Self = Self(2i32);
pub const Depressed: Self = Self(3i32);
pub const Uniform: Self = Self(4i32);
pub const DropShadow: Self = Self(5i32);
}
impl ::core::marker::Copy for ClosedCaptionEdgeEffect {}
impl ::core::clone::Clone for ClosedCaptionEdgeEffect {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ClosedCaptionEdgeEffect {
fn default() -> Self {
Self(0)
}
}
impl ::windows::core::TypeKind for ClosedCaptionEdgeEffect {
type TypeKind = ::windows::core::CopyType;
}
impl ::core::fmt::Debug for ClosedCaptionEdgeEffect {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ClosedCaptionEdgeEffect").field(&self.0).finish()
}
}
impl ::windows::core::RuntimeType for ClosedCaptionEdgeEffect {
const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Media.ClosedCaptioning.ClosedCaptionEdgeEffect;i4)");
}
#[doc = "*Required features: `\"Media_ClosedCaptioning\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ClosedCaptionOpacity(pub i32);
impl ClosedCaptionOpacity {
pub const Default: Self = Self(0i32);
pub const OneHundredPercent: Self = Self(1i32);
pub const SeventyFivePercent: Self = Self(2i32);
pub const TwentyFivePercent: Self = Self(3i32);
pub const ZeroPercent: Self = Self(4i32);
}
impl ::core::marker::Copy for ClosedCaptionOpacity {}
impl ::core::clone::Clone for ClosedCaptionOpacity {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ClosedCaptionOpacity {
fn default() -> Self {
Self(0)
}
}
impl ::windows::core::TypeKind for ClosedCaptionOpacity {
type TypeKind = ::windows::core::CopyType;
}
impl ::core::fmt::Debug for ClosedCaptionOpacity {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ClosedCaptionOpacity").field(&self.0).finish()
}
}
impl ::windows::core::RuntimeType for ClosedCaptionOpacity {
const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Media.ClosedCaptioning.ClosedCaptionOpacity;i4)");
}
#[doc = "*Required features: `\"Media_ClosedCaptioning\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ClosedCaptionSize(pub i32);
impl ClosedCaptionSize {
pub const Default: Self = Self(0i32);
pub const FiftyPercent: Self = Self(1i32);
pub const OneHundredPercent: Self = Self(2i32);
pub const OneHundredFiftyPercent: Self = Self(3i32);
pub const TwoHundredPercent: Self = Self(4i32);
}
impl ::core::marker::Copy for ClosedCaptionSize {}
impl ::core::clone::Clone for ClosedCaptionSize {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ClosedCaptionSize {
fn default() -> Self {
Self(0)
}
}
impl ::windows::core::TypeKind for ClosedCaptionSize {
type TypeKind = ::windows::core::CopyType;
}
impl ::core::fmt::Debug for ClosedCaptionSize {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ClosedCaptionSize").field(&self.0).finish()
}
}
impl ::windows::core::RuntimeType for ClosedCaptionSize {
const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Media.ClosedCaptioning.ClosedCaptionSize;i4)");
}
#[doc = "*Required features: `\"Media_ClosedCaptioning\"`*"]
#[repr(transparent)]
#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
pub struct ClosedCaptionStyle(pub i32);
impl ClosedCaptionStyle {
pub const Default: Self = Self(0i32);
pub const MonospacedWithSerifs: Self = Self(1i32);
pub const ProportionalWithSerifs: Self = Self(2i32);
pub const MonospacedWithoutSerifs: Self = Self(3i32);
pub const ProportionalWithoutSerifs: Self = Self(4i32);
pub const Casual: Self = Self(5i32);
pub const Cursive: Self = Self(6i32);
pub const SmallCapitals: Self = Self(7i32);
}
impl ::core::marker::Copy for ClosedCaptionStyle {}
impl ::core::clone::Clone for ClosedCaptionStyle {
fn clone(&self) -> Self {
*self
}
}
impl ::core::default::Default for ClosedCaptionStyle {
fn default() -> Self {
Self(0)
}
}
impl ::windows::core::TypeKind for ClosedCaptionStyle {
type TypeKind = ::windows::core::CopyType;
}
impl ::core::fmt::Debug for ClosedCaptionStyle {
fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
f.debug_tuple("ClosedCaptionStyle").field(&self.0).finish()
}
}
impl ::windows::core::RuntimeType for ClosedCaptionStyle {
const SIGNATURE: ::windows::imp::ConstBuffer = ::windows::imp::ConstBuffer::from_slice(b"enum(Windows.Media.ClosedCaptioning.ClosedCaptionStyle;i4)");
}
#[cfg(feature = "implement")]
::core::include!("impl.rs");