1/*
2 * gdkmonitorprivate.h
3 *
4 * Copyright 2016 Red Hat, Inc.
5 *
6 * Matthias Clasen <mclasen@redhat.com>
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either
11 * version 2 of the License, or (at your option) any later version.
12 *
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Library General Public License for more details.
17 *
18 * You should have received a copy of the GNU Library General Public
19 * License along with this library. If not, see <http://www.gnu.org/licenses/>.
20 */
21
22#ifndef __GDK_MONITOR_PRIVATE_H__
23#define __GDK_MONITOR_PRIVATE_H__
24
25#include "gdkmonitor.h"
26
27G_BEGIN_DECLS
28
29#define GDK_MONITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_MONITOR, GdkMonitorClass))
30#define GDK_IS_MONITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_MONITOR))
31#define GDK_MONITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_MONITOR, GdkMonitorClass))
32
33struct _GdkMonitor {
34 GObject parent;
35
36 GdkDisplay *display;
37 char *manufacturer;
38 char *model;
39 char *connector;
40 GdkRectangle geometry;
41 int width_mm;
42 int height_mm;
43 int scale_factor;
44 int refresh_rate;
45 GdkSubpixelLayout subpixel_layout;
46 gboolean valid;
47};
48
49struct _GdkMonitorClass {
50 GObjectClass parent_class;
51};
52
53GdkMonitor * gdk_monitor_new (GdkDisplay *display);
54
55void gdk_monitor_set_manufacturer (GdkMonitor *monitor,
56 const char *manufacturer);
57void gdk_monitor_set_model (GdkMonitor *monitor,
58 const char *model);
59void gdk_monitor_set_connector (GdkMonitor *monitor,
60 const char *connector);
61void gdk_monitor_set_geometry (GdkMonitor *monitor,
62 const GdkRectangle *geometry);
63void gdk_monitor_set_physical_size (GdkMonitor *monitor,
64 int width_mm,
65 int height_mm);
66void gdk_monitor_set_scale_factor (GdkMonitor *monitor,
67 int scale);
68void gdk_monitor_set_refresh_rate (GdkMonitor *monitor,
69 int refresh_rate);
70void gdk_monitor_set_subpixel_layout (GdkMonitor *monitor,
71 GdkSubpixelLayout subpixel);
72void gdk_monitor_invalidate (GdkMonitor *monitor);
73
74G_END_DECLS
75
76#endif /* __GDK_MONITOR_PRIVATE_H__ */
77

source code of gtk/gdk/gdkmonitorprivate.h