class Gdk::Monitor

Overview

Gdk::Monitor objects represent the individual outputs that are associated with a Gdk::Display.

Gdk::Display keeps a GListModel to enumerate and monitor monitors with Gdk::Display#monitors. You can use Gdk::Display#monitor_at_surface to find a particular monitor.

Defined in:

lib/gi-crystal/src/auto/gdk-4.0/monitor.cr

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class GObject::Object

bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding bind_property, bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding bind_property_full, data(key : String) : Pointer(Void)? data, finalize finalize, freeze_notify : Nil freeze_notify, getv(names : Enumerable(String), values : Enumerable(_)) : Nil getv, notify(property_name : String) : Nil notify, notify_by_pspec(pspec : GObject::ParamSpec) : Nil notify_by_pspec, notify_signal notify_signal, property(property_name : String, value : _) : Nil property, qdata(quark : UInt32) : Pointer(Void)? qdata, ref_count : UInt32 ref_count, run_dispose : Nil run_dispose, set_data(key : String, data : Pointer(Void)?) : Nil set_data, set_property(property_name : String, value : _) : Nil set_property, steal_data(key : String) : Pointer(Void)? steal_data, steal_qdata(quark : UInt32) : Pointer(Void)? steal_qdata, thaw_notify : Nil thaw_notify, to_unsafe : Pointer(Void) to_unsafe, watch_closure(closure : GObject::Closure) : Nil watch_closure

Constructor methods inherited from class GObject::Object

cast(obj : GObject::Object) : self cast, cast?(obj : GObject::Object) : self? cast?, new(pointer : Pointer(Void), transfer : GICrystal::Transfer)
new
new
, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv

Class methods inherited from class GObject::Object

compat_control(what : UInt64, data : Pointer(Void)?) : UInt64 compat_control, g_type : UInt64 g_type, interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec interface_find_property, interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec) interface_list_properties

Constructor Detail

def self.new #

Initialize a new Monitor.


def self.new(*, connector : String? = nil, display : Gdk::Display? = nil, geometry : Gdk::Rectangle? = nil, height_mm : Int32? = nil, manufacturer : String? = nil, model : String? = nil, refresh_rate : Int32? = nil, scale_factor : Int32? = nil, subpixel_layout : Gdk::SubpixelLayout? = nil, valid : Bool? = nil, width_mm : Int32? = nil) #

Class Method Detail

def self.g_type : UInt64 #

Returns the type id (GType) registered in GLib type system.


Instance Method Detail

def connector : String? #

Gets the name of the monitor's connector, if available.


def display : Gdk::Display #

Gets the display that this monitor belongs to.


def display=(value : Gdk::Display?) : Gdk::Display? #

def geometry : Gdk::Rectangle #

Retrieves the size and position of the monitor within the display coordinate space.

The returned geometry is in ”application pixels”, not in ”device pixels” (see Gdk::Monitor#scale_factor).


def height_mm : Int32 #

Gets the height in millimeters of the monitor.


def invalidate_signal #

def is_valid : Bool #

Returns true if the @monitor object corresponds to a physical monitor.

The @monitor becomes invalid when the physical monitor is unplugged or removed.


def manufacturer : String? #

Gets the name or PNP ID of the monitor's manufacturer.

Note that this value might also vary depending on actual display backend.

The PNP ID registry is located at https://uefi.org/pnp_id_list.


def model : String? #

Gets the string identifying the monitor model, if available.


def refresh_rate : Int32 #

Gets the refresh rate of the monitor, if available.

The value is in milli-Hertz, so a refresh rate of 60Hz is returned as 60000.


def scale_factor : Int32 #

Gets the internal scale factor that maps from monitor coordinates to device pixels.

On traditional systems this is 1, but on very high density outputs it can be a higher value (often 2).

This can be used if you want to create pixel based data for a particular monitor, but most of the time you’re drawing to a surface where it is better to use Gdk::Surface#scale_factor instead.


def subpixel_layout : Gdk::SubpixelLayout #

Gets information about the layout of red, green and blue primaries for pixels.


def valid? : Bool #

def width_mm : Int32 #

Gets the width in millimeters of the monitor.