From 4f73498b78645728ff23adfbf9b650a1b66b66bb Mon Sep 17 00:00:00 2001 From: Drew DeVault Date: Wed, 1 Nov 2017 15:47:58 -0400 Subject: Move shared example code --- examples/support/config.h | 60 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 examples/support/config.h (limited to 'examples/support/config.h') diff --git a/examples/support/config.h b/examples/support/config.h new file mode 100644 index 00000000..e26531c2 --- /dev/null +++ b/examples/support/config.h @@ -0,0 +1,60 @@ +#ifndef _EXAMPLE_CONFIG_H +#define _EXAMPLE_CONFIG_H +#ifndef _POSIX_C_SOURCE +#define _POSIX_C_SOURCE 200112L +#endif +#include +#include +#include +#include "shared.h" + +struct output_config { + char *name; + enum wl_output_transform transform; + int x, y; + struct wl_list link; +}; + +struct device_config { + char *name; + char *mapped_output; + struct wlr_box *mapped_box; + struct wl_list link; +}; + +struct example_config { + struct { + char *mapped_output; + struct wlr_box *mapped_box; + } cursor; + + struct wl_list outputs; + struct wl_list devices; + char *config_path; +}; + +struct example_config *parse_args(int argc, char *argv[]); + +void example_config_destroy(struct example_config *config); + +/** + * Get configuration for the output. If the output is not configured, returns + * NULL. + */ +struct output_config *example_config_get_output(struct example_config *config, + struct wlr_output *output); + +/** + * Get configuration for the device. If the device is not configured, returns + * NULL. + */ +struct device_config *example_config_get_device(struct example_config *config, + struct wlr_input_device *device); + +/** + * Configure cursor device mappings. + */ +void example_config_configure_cursor(struct example_config *config, + struct wlr_cursor *cursor, struct compositor_state *state); + +#endif -- cgit v1.2.3