Function winsafe::EnumDisplaySettings

source ·
pub fn EnumDisplaySettings(
    device_name: Option<&str>,
    mode_num: GmidxEnum,
    dev_mode: &mut DEVMODE
) -> SysResult<bool>
Available on crate feature user only.
Expand description

EnumDisplaySettings function.

§Examples

Iterating graphics modes.

use winsafe::{self as w, prelude::*};

let mut dm = w::DEVMODE::default();
let mut graphics_mode_idx = u32::default();

loop {
    let is_good = w::EnumDisplaySettings(
        None,
        w::GmidxEnum::Gmidx(graphics_mode_idx),
        &mut dm,
    )?;

    if !is_good {
        break;
    }

    println!("{}: {}, {}, {}",
        graphics_mode_idx,
        dm.dmDeviceName(), dm.dmDisplayFrequency, dm.dmBitsPerPel);

    graphics_mode_idx += 1;
}

Retrieving from the predefined enum.

use winsafe::{self as w, prelude::*, co};

let mut dm = w::DEVMODE::default();

w::EnumDisplaySettings(
    None,
    w::GmidxEnum::Enum(co::ENUM_SETTINGS::CURRENT),
    &mut dm,
)?;

println!("{}, {}, {}",
    dm.dmDeviceName(), dm.dmDisplayFrequency, dm.dmBitsPerPel);