zigwin32/win32/graphics/dwm.zig

569 lines
21 KiB
Zig

//! NOTE: this file is autogenerated, DO NOT MODIFY
//--------------------------------------------------------------------------------
// Section: Constants (20)
//--------------------------------------------------------------------------------
pub const DWM_BB_ENABLE = @as(u32, 1);
pub const DWM_BB_BLURREGION = @as(u32, 2);
pub const DWM_BB_TRANSITIONONMAXIMIZED = @as(u32, 4);
pub const DWMWA_COLOR_DEFAULT = @as(u32, 4294967295);
pub const DWMWA_COLOR_NONE = @as(u32, 4294967294);
pub const DWM_CLOAKED_APP = @as(u32, 1);
pub const DWM_CLOAKED_SHELL = @as(u32, 2);
pub const DWM_CLOAKED_INHERITED = @as(u32, 4);
pub const DWM_TNP_RECTDESTINATION = @as(u32, 1);
pub const DWM_TNP_RECTSOURCE = @as(u32, 2);
pub const DWM_TNP_OPACITY = @as(u32, 4);
pub const DWM_TNP_VISIBLE = @as(u32, 8);
pub const DWM_TNP_SOURCECLIENTAREAONLY = @as(u32, 16);
pub const DWM_FRAME_DURATION_DEFAULT = @as(i32, -1);
pub const DWM_EC_DISABLECOMPOSITION = @as(u32, 0);
pub const DWM_EC_ENABLECOMPOSITION = @as(u32, 1);
pub const DWM_SIT_DISPLAYFRAME = @as(u32, 1);
pub const c_DwmMaxQueuedBuffers = @as(u32, 8);
pub const c_DwmMaxMonitors = @as(u32, 16);
pub const c_DwmMaxAdapters = @as(u32, 16);
//--------------------------------------------------------------------------------
// Section: Types (15)
//--------------------------------------------------------------------------------
pub const DWM_BLURBEHIND = extern struct {
dwFlags: u32 align(1),
fEnable: BOOL align(1),
hRgnBlur: ?HRGN align(1),
fTransitionOnMaximized: BOOL align(1),
};
pub const DWMWINDOWATTRIBUTE = enum(i32) {
NCRENDERING_ENABLED = 1,
NCRENDERING_POLICY = 2,
TRANSITIONS_FORCEDISABLED = 3,
ALLOW_NCPAINT = 4,
CAPTION_BUTTON_BOUNDS = 5,
NONCLIENT_RTL_LAYOUT = 6,
FORCE_ICONIC_REPRESENTATION = 7,
FLIP3D_POLICY = 8,
EXTENDED_FRAME_BOUNDS = 9,
HAS_ICONIC_BITMAP = 10,
DISALLOW_PEEK = 11,
EXCLUDED_FROM_PEEK = 12,
CLOAK = 13,
CLOAKED = 14,
FREEZE_REPRESENTATION = 15,
PASSIVE_UPDATE_MODE = 16,
USE_HOSTBACKDROPBRUSH = 17,
USE_IMMERSIVE_DARK_MODE = 20,
WINDOW_CORNER_PREFERENCE = 33,
BORDER_COLOR = 34,
CAPTION_COLOR = 35,
TEXT_COLOR = 36,
VISIBLE_FRAME_BORDER_THICKNESS = 37,
LAST = 38,
};
pub const DWMWA_NCRENDERING_ENABLED = DWMWINDOWATTRIBUTE.NCRENDERING_ENABLED;
pub const DWMWA_NCRENDERING_POLICY = DWMWINDOWATTRIBUTE.NCRENDERING_POLICY;
pub const DWMWA_TRANSITIONS_FORCEDISABLED = DWMWINDOWATTRIBUTE.TRANSITIONS_FORCEDISABLED;
pub const DWMWA_ALLOW_NCPAINT = DWMWINDOWATTRIBUTE.ALLOW_NCPAINT;
pub const DWMWA_CAPTION_BUTTON_BOUNDS = DWMWINDOWATTRIBUTE.CAPTION_BUTTON_BOUNDS;
pub const DWMWA_NONCLIENT_RTL_LAYOUT = DWMWINDOWATTRIBUTE.NONCLIENT_RTL_LAYOUT;
pub const DWMWA_FORCE_ICONIC_REPRESENTATION = DWMWINDOWATTRIBUTE.FORCE_ICONIC_REPRESENTATION;
pub const DWMWA_FLIP3D_POLICY = DWMWINDOWATTRIBUTE.FLIP3D_POLICY;
pub const DWMWA_EXTENDED_FRAME_BOUNDS = DWMWINDOWATTRIBUTE.EXTENDED_FRAME_BOUNDS;
pub const DWMWA_HAS_ICONIC_BITMAP = DWMWINDOWATTRIBUTE.HAS_ICONIC_BITMAP;
pub const DWMWA_DISALLOW_PEEK = DWMWINDOWATTRIBUTE.DISALLOW_PEEK;
pub const DWMWA_EXCLUDED_FROM_PEEK = DWMWINDOWATTRIBUTE.EXCLUDED_FROM_PEEK;
pub const DWMWA_CLOAK = DWMWINDOWATTRIBUTE.CLOAK;
pub const DWMWA_CLOAKED = DWMWINDOWATTRIBUTE.CLOAKED;
pub const DWMWA_FREEZE_REPRESENTATION = DWMWINDOWATTRIBUTE.FREEZE_REPRESENTATION;
pub const DWMWA_PASSIVE_UPDATE_MODE = DWMWINDOWATTRIBUTE.PASSIVE_UPDATE_MODE;
pub const DWMWA_USE_HOSTBACKDROPBRUSH = DWMWINDOWATTRIBUTE.USE_HOSTBACKDROPBRUSH;
pub const DWMWA_USE_IMMERSIVE_DARK_MODE = DWMWINDOWATTRIBUTE.USE_IMMERSIVE_DARK_MODE;
pub const DWMWA_WINDOW_CORNER_PREFERENCE = DWMWINDOWATTRIBUTE.WINDOW_CORNER_PREFERENCE;
pub const DWMWA_BORDER_COLOR = DWMWINDOWATTRIBUTE.BORDER_COLOR;
pub const DWMWA_CAPTION_COLOR = DWMWINDOWATTRIBUTE.CAPTION_COLOR;
pub const DWMWA_TEXT_COLOR = DWMWINDOWATTRIBUTE.TEXT_COLOR;
pub const DWMWA_VISIBLE_FRAME_BORDER_THICKNESS = DWMWINDOWATTRIBUTE.VISIBLE_FRAME_BORDER_THICKNESS;
pub const DWMWA_LAST = DWMWINDOWATTRIBUTE.LAST;
pub const DWM_WINDOW_CORNER_PREFERENCE = enum(i32) {
DEFAULT = 0,
DONOTROUND = 1,
ROUND = 2,
ROUNDSMALL = 3,
};
pub const DWMWCP_DEFAULT = DWM_WINDOW_CORNER_PREFERENCE.DEFAULT;
pub const DWMWCP_DONOTROUND = DWM_WINDOW_CORNER_PREFERENCE.DONOTROUND;
pub const DWMWCP_ROUND = DWM_WINDOW_CORNER_PREFERENCE.ROUND;
pub const DWMWCP_ROUNDSMALL = DWM_WINDOW_CORNER_PREFERENCE.ROUNDSMALL;
pub const DWMNCRENDERINGPOLICY = enum(i32) {
USEWINDOWSTYLE = 0,
DISABLED = 1,
ENABLED = 2,
LAST = 3,
};
pub const DWMNCRP_USEWINDOWSTYLE = DWMNCRENDERINGPOLICY.USEWINDOWSTYLE;
pub const DWMNCRP_DISABLED = DWMNCRENDERINGPOLICY.DISABLED;
pub const DWMNCRP_ENABLED = DWMNCRENDERINGPOLICY.ENABLED;
pub const DWMNCRP_LAST = DWMNCRENDERINGPOLICY.LAST;
pub const DWMFLIP3DWINDOWPOLICY = enum(i32) {
DEFAULT = 0,
EXCLUDEBELOW = 1,
EXCLUDEABOVE = 2,
LAST = 3,
};
pub const DWMFLIP3D_DEFAULT = DWMFLIP3DWINDOWPOLICY.DEFAULT;
pub const DWMFLIP3D_EXCLUDEBELOW = DWMFLIP3DWINDOWPOLICY.EXCLUDEBELOW;
pub const DWMFLIP3D_EXCLUDEABOVE = DWMFLIP3DWINDOWPOLICY.EXCLUDEABOVE;
pub const DWMFLIP3D_LAST = DWMFLIP3DWINDOWPOLICY.LAST;
pub const DWM_THUMBNAIL_PROPERTIES = extern struct {
dwFlags: u32 align(1),
rcDestination: RECT align(1),
rcSource: RECT align(1),
opacity: u8 align(1),
fVisible: BOOL align(1),
fSourceClientAreaOnly: BOOL align(1),
};
pub const UNSIGNED_RATIO = extern struct {
uiNumerator: u32 align(1),
uiDenominator: u32 align(1),
};
pub const DWM_TIMING_INFO = extern struct {
cbSize: u32 align(1),
rateRefresh: UNSIGNED_RATIO align(1),
qpcRefreshPeriod: u64 align(1),
rateCompose: UNSIGNED_RATIO align(1),
qpcVBlank: u64 align(1),
cRefresh: u64 align(1),
cDXRefresh: u32 align(1),
qpcCompose: u64 align(1),
cFrame: u64 align(1),
cDXPresent: u32 align(1),
cRefreshFrame: u64 align(1),
cFrameSubmitted: u64 align(1),
cDXPresentSubmitted: u32 align(1),
cFrameConfirmed: u64 align(1),
cDXPresentConfirmed: u32 align(1),
cRefreshConfirmed: u64 align(1),
cDXRefreshConfirmed: u32 align(1),
cFramesLate: u64 align(1),
cFramesOutstanding: u32 align(1),
cFrameDisplayed: u64 align(1),
qpcFrameDisplayed: u64 align(1),
cRefreshFrameDisplayed: u64 align(1),
cFrameComplete: u64 align(1),
qpcFrameComplete: u64 align(1),
cFramePending: u64 align(1),
qpcFramePending: u64 align(1),
cFramesDisplayed: u64 align(1),
cFramesComplete: u64 align(1),
cFramesPending: u64 align(1),
cFramesAvailable: u64 align(1),
cFramesDropped: u64 align(1),
cFramesMissed: u64 align(1),
cRefreshNextDisplayed: u64 align(1),
cRefreshNextPresented: u64 align(1),
cRefreshesDisplayed: u64 align(1),
cRefreshesPresented: u64 align(1),
cRefreshStarted: u64 align(1),
cPixelsReceived: u64 align(1),
cPixelsDrawn: u64 align(1),
cBuffersEmpty: u64 align(1),
};
pub const DWM_SOURCE_FRAME_SAMPLING = enum(i32) {
POINT = 0,
COVERAGE = 1,
LAST = 2,
};
pub const DWM_SOURCE_FRAME_SAMPLING_POINT = DWM_SOURCE_FRAME_SAMPLING.POINT;
pub const DWM_SOURCE_FRAME_SAMPLING_COVERAGE = DWM_SOURCE_FRAME_SAMPLING.COVERAGE;
pub const DWM_SOURCE_FRAME_SAMPLING_LAST = DWM_SOURCE_FRAME_SAMPLING.LAST;
pub const DWM_PRESENT_PARAMETERS = extern struct {
cbSize: u32 align(1),
fQueue: BOOL align(1),
cRefreshStart: u64 align(1),
cBuffer: u32 align(1),
fUseSourceRate: BOOL align(1),
rateSource: UNSIGNED_RATIO align(1),
cRefreshesPerFrame: u32 align(1),
eSampling: DWM_SOURCE_FRAME_SAMPLING align(1),
};
pub const MilMatrix3x2D = extern struct {
S_11: f64 align(1),
S_12: f64 align(1),
S_21: f64 align(1),
S_22: f64 align(1),
DX: f64 align(1),
DY: f64 align(1),
};
pub const DWMTRANSITION_OWNEDWINDOW_TARGET = enum(i32) {
NULL = -1,
REPOSITION = 0,
};
pub const DWMTRANSITION_OWNEDWINDOW_NULL = DWMTRANSITION_OWNEDWINDOW_TARGET.NULL;
pub const DWMTRANSITION_OWNEDWINDOW_REPOSITION = DWMTRANSITION_OWNEDWINDOW_TARGET.REPOSITION;
pub const GESTURE_TYPE = enum(i32) {
PEN_TAP = 0,
PEN_DOUBLETAP = 1,
PEN_RIGHTTAP = 2,
PEN_PRESSANDHOLD = 3,
PEN_PRESSANDHOLDABORT = 4,
TOUCH_TAP = 5,
TOUCH_DOUBLETAP = 6,
TOUCH_RIGHTTAP = 7,
TOUCH_PRESSANDHOLD = 8,
TOUCH_PRESSANDHOLDABORT = 9,
TOUCH_PRESSANDTAP = 10,
};
pub const GT_PEN_TAP = GESTURE_TYPE.PEN_TAP;
pub const GT_PEN_DOUBLETAP = GESTURE_TYPE.PEN_DOUBLETAP;
pub const GT_PEN_RIGHTTAP = GESTURE_TYPE.PEN_RIGHTTAP;
pub const GT_PEN_PRESSANDHOLD = GESTURE_TYPE.PEN_PRESSANDHOLD;
pub const GT_PEN_PRESSANDHOLDABORT = GESTURE_TYPE.PEN_PRESSANDHOLDABORT;
pub const GT_TOUCH_TAP = GESTURE_TYPE.TOUCH_TAP;
pub const GT_TOUCH_DOUBLETAP = GESTURE_TYPE.TOUCH_DOUBLETAP;
pub const GT_TOUCH_RIGHTTAP = GESTURE_TYPE.TOUCH_RIGHTTAP;
pub const GT_TOUCH_PRESSANDHOLD = GESTURE_TYPE.TOUCH_PRESSANDHOLD;
pub const GT_TOUCH_PRESSANDHOLDABORT = GESTURE_TYPE.TOUCH_PRESSANDHOLDABORT;
pub const GT_TOUCH_PRESSANDTAP = GESTURE_TYPE.TOUCH_PRESSANDTAP;
pub const DWM_SHOWCONTACT = enum(u32) {
DOWN = 1,
UP = 2,
DRAG = 4,
HOLD = 8,
PENBARREL = 16,
NONE = 0,
ALL = 4294967295,
_,
pub fn initFlags(o: struct {
DOWN: u1 = 0,
UP: u1 = 0,
DRAG: u1 = 0,
HOLD: u1 = 0,
PENBARREL: u1 = 0,
NONE: u1 = 0,
ALL: u1 = 0,
}) DWM_SHOWCONTACT {
return @as(DWM_SHOWCONTACT, @enumFromInt(
(if (o.DOWN == 1) @intFromEnum(DWM_SHOWCONTACT.DOWN) else 0)
| (if (o.UP == 1) @intFromEnum(DWM_SHOWCONTACT.UP) else 0)
| (if (o.DRAG == 1) @intFromEnum(DWM_SHOWCONTACT.DRAG) else 0)
| (if (o.HOLD == 1) @intFromEnum(DWM_SHOWCONTACT.HOLD) else 0)
| (if (o.PENBARREL == 1) @intFromEnum(DWM_SHOWCONTACT.PENBARREL) else 0)
| (if (o.NONE == 1) @intFromEnum(DWM_SHOWCONTACT.NONE) else 0)
| (if (o.ALL == 1) @intFromEnum(DWM_SHOWCONTACT.ALL) else 0)
));
}
};
pub const DWMSC_DOWN = DWM_SHOWCONTACT.DOWN;
pub const DWMSC_UP = DWM_SHOWCONTACT.UP;
pub const DWMSC_DRAG = DWM_SHOWCONTACT.DRAG;
pub const DWMSC_HOLD = DWM_SHOWCONTACT.HOLD;
pub const DWMSC_PENBARREL = DWM_SHOWCONTACT.PENBARREL;
pub const DWMSC_NONE = DWM_SHOWCONTACT.NONE;
pub const DWMSC_ALL = DWM_SHOWCONTACT.ALL;
pub const DWM_TAB_WINDOW_REQUIREMENTS = enum(u32) {
NONE = 0,
IMPLEMENTED_BY_SYSTEM = 1,
WINDOW_RELATIONSHIP = 2,
WINDOW_STYLES = 4,
WINDOW_REGION = 8,
WINDOW_DWM_ATTRIBUTES = 16,
WINDOW_MARGINS = 32,
TABBING_ENABLED = 64,
USER_POLICY = 128,
GROUP_POLICY = 256,
APP_COMPAT = 512,
_,
pub fn initFlags(o: struct {
NONE: u1 = 0,
IMPLEMENTED_BY_SYSTEM: u1 = 0,
WINDOW_RELATIONSHIP: u1 = 0,
WINDOW_STYLES: u1 = 0,
WINDOW_REGION: u1 = 0,
WINDOW_DWM_ATTRIBUTES: u1 = 0,
WINDOW_MARGINS: u1 = 0,
TABBING_ENABLED: u1 = 0,
USER_POLICY: u1 = 0,
GROUP_POLICY: u1 = 0,
APP_COMPAT: u1 = 0,
}) DWM_TAB_WINDOW_REQUIREMENTS {
return @as(DWM_TAB_WINDOW_REQUIREMENTS, @enumFromInt(
(if (o.NONE == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.NONE) else 0)
| (if (o.IMPLEMENTED_BY_SYSTEM == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.IMPLEMENTED_BY_SYSTEM) else 0)
| (if (o.WINDOW_RELATIONSHIP == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.WINDOW_RELATIONSHIP) else 0)
| (if (o.WINDOW_STYLES == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.WINDOW_STYLES) else 0)
| (if (o.WINDOW_REGION == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.WINDOW_REGION) else 0)
| (if (o.WINDOW_DWM_ATTRIBUTES == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.WINDOW_DWM_ATTRIBUTES) else 0)
| (if (o.WINDOW_MARGINS == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.WINDOW_MARGINS) else 0)
| (if (o.TABBING_ENABLED == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.TABBING_ENABLED) else 0)
| (if (o.USER_POLICY == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.USER_POLICY) else 0)
| (if (o.GROUP_POLICY == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.GROUP_POLICY) else 0)
| (if (o.APP_COMPAT == 1) @intFromEnum(DWM_TAB_WINDOW_REQUIREMENTS.APP_COMPAT) else 0)
));
}
};
pub const DWMTWR_NONE = DWM_TAB_WINDOW_REQUIREMENTS.NONE;
pub const DWMTWR_IMPLEMENTED_BY_SYSTEM = DWM_TAB_WINDOW_REQUIREMENTS.IMPLEMENTED_BY_SYSTEM;
pub const DWMTWR_WINDOW_RELATIONSHIP = DWM_TAB_WINDOW_REQUIREMENTS.WINDOW_RELATIONSHIP;
pub const DWMTWR_WINDOW_STYLES = DWM_TAB_WINDOW_REQUIREMENTS.WINDOW_STYLES;
pub const DWMTWR_WINDOW_REGION = DWM_TAB_WINDOW_REQUIREMENTS.WINDOW_REGION;
pub const DWMTWR_WINDOW_DWM_ATTRIBUTES = DWM_TAB_WINDOW_REQUIREMENTS.WINDOW_DWM_ATTRIBUTES;
pub const DWMTWR_WINDOW_MARGINS = DWM_TAB_WINDOW_REQUIREMENTS.WINDOW_MARGINS;
pub const DWMTWR_TABBING_ENABLED = DWM_TAB_WINDOW_REQUIREMENTS.TABBING_ENABLED;
pub const DWMTWR_USER_POLICY = DWM_TAB_WINDOW_REQUIREMENTS.USER_POLICY;
pub const DWMTWR_GROUP_POLICY = DWM_TAB_WINDOW_REQUIREMENTS.GROUP_POLICY;
pub const DWMTWR_APP_COMPAT = DWM_TAB_WINDOW_REQUIREMENTS.APP_COMPAT;
//--------------------------------------------------------------------------------
// Section: Functions (31)
//--------------------------------------------------------------------------------
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmDefWindowProc(
hWnd: ?HWND,
msg: u32,
wParam: WPARAM,
lParam: LPARAM,
plResult: ?*LRESULT,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmEnableBlurBehindWindow(
hWnd: ?HWND,
pBlurBehind: ?*const DWM_BLURBEHIND,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmEnableComposition(
uCompositionAction: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmEnableMMCSS(
fEnableMMCSS: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmExtendFrameIntoClientArea(
hWnd: ?HWND,
pMarInset: ?*const MARGINS,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmGetColorizationColor(
pcrColorization: ?*u32,
pfOpaqueBlend: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmGetCompositionTimingInfo(
hwnd: ?HWND,
pTimingInfo: ?*DWM_TIMING_INFO,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmGetWindowAttribute(
hwnd: ?HWND,
dwAttribute: DWMWINDOWATTRIBUTE,
// TODO: what to do with BytesParamIndex 3?
pvAttribute: ?*anyopaque,
cbAttribute: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmIsCompositionEnabled(
pfEnabled: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmModifyPreviousDxFrameDuration(
hwnd: ?HWND,
cRefreshes: i32,
fRelative: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmQueryThumbnailSourceSize(
hThumbnail: isize,
pSize: ?*SIZE,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmRegisterThumbnail(
hwndDestination: ?HWND,
hwndSource: ?HWND,
phThumbnailId: ?*isize,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmSetDxFrameDuration(
hwnd: ?HWND,
cRefreshes: i32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmSetPresentParameters(
hwnd: ?HWND,
pPresentParams: ?*DWM_PRESENT_PARAMETERS,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmSetWindowAttribute(
hwnd: ?HWND,
dwAttribute: DWMWINDOWATTRIBUTE,
// TODO: what to do with BytesParamIndex 3?
pvAttribute: ?*const anyopaque,
cbAttribute: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmUnregisterThumbnail(
hThumbnailId: isize,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmUpdateThumbnailProperties(
hThumbnailId: isize,
ptnProperties: ?*const DWM_THUMBNAIL_PROPERTIES,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.1'
pub extern "dwmapi" fn DwmSetIconicThumbnail(
hwnd: ?HWND,
hbmp: ?HBITMAP,
dwSITFlags: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.1'
pub extern "dwmapi" fn DwmSetIconicLivePreviewBitmap(
hwnd: ?HWND,
hbmp: ?HBITMAP,
pptClient: ?*POINT,
dwSITFlags: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.1'
pub extern "dwmapi" fn DwmInvalidateIconicBitmaps(
hwnd: ?HWND,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmAttachMilContent(
hwnd: ?HWND,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmDetachMilContent(
hwnd: ?HWND,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmFlush(
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmGetGraphicsStreamTransformHint(
uIndex: u32,
pTransform: ?*MilMatrix3x2D,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmGetGraphicsStreamClient(
uIndex: u32,
pClientUuid: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dwmapi" fn DwmGetTransportAttributes(
pfIsRemoting: ?*BOOL,
pfIsConnected: ?*BOOL,
pDwGeneration: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows8.0'
pub extern "dwmapi" fn DwmTransitionOwnedWindow(
hwnd: ?HWND,
target: DWMTRANSITION_OWNEDWINDOW_TARGET,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows8.0'
pub extern "dwmapi" fn DwmRenderGesture(
gt: GESTURE_TYPE,
cContacts: u32,
pdwPointerID: [*]const u32,
pPoints: [*]const POINT,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows8.0'
pub extern "dwmapi" fn DwmTetherContact(
dwPointerID: u32,
fEnable: BOOL,
ptTether: POINT,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows8.0'
pub extern "dwmapi" fn DwmShowContact(
dwPointerID: u32,
eShowContact: DWM_SHOWCONTACT,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows10.0.17134'
pub extern "dwmapi" fn DwmGetUnmetTabRequirements(
appWindow: ?HWND,
value: ?*DWM_TAB_WINDOW_REQUIREMENTS,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
//--------------------------------------------------------------------------------
// Section: Unicode Aliases (0)
//--------------------------------------------------------------------------------
const thismodule = @This();
pub usingnamespace switch (@import("../zig.zig").unicode_mode) {
.ansi => struct {
},
.wide => struct {
},
.unspecified => if (@import("builtin").is_test) struct {
} else struct {
},
};
//--------------------------------------------------------------------------------
// Section: Imports (13)
//--------------------------------------------------------------------------------
const Guid = @import("../zig.zig").Guid;
const BOOL = @import("../foundation.zig").BOOL;
const HBITMAP = @import("../graphics/gdi.zig").HBITMAP;
const HRESULT = @import("../foundation.zig").HRESULT;
const HRGN = @import("../graphics/gdi.zig").HRGN;
const HWND = @import("../foundation.zig").HWND;
const LPARAM = @import("../foundation.zig").LPARAM;
const LRESULT = @import("../foundation.zig").LRESULT;
const MARGINS = @import("../ui/controls.zig").MARGINS;
const POINT = @import("../foundation.zig").POINT;
const RECT = @import("../foundation.zig").RECT;
const SIZE = @import("../foundation.zig").SIZE;
const WPARAM = @import("../foundation.zig").WPARAM;
test {
@setEvalBranchQuota(
comptime @import("std").meta.declarations(@This()).len * 3
);
// reference all the pub declarations
if (!@import("builtin").is_test) return;
inline for (comptime @import("std").meta.declarations(@This())) |decl| {
_ = @field(@This(), decl.name);
}
}