gnome-control-center/panels/wacom/cc-tablet-tool-map.h
Carlos Garnacho fe5c5f97c8 wacom: Add CcTabletToolMap
In the wayland tablet input model, compositor and clients may
recognize the different physical styli in use, even if those are
used across compatible tablets.

This object is intended to be used as a persistent memory of
which stylus was used with which tablet. So you 1) can associate
tools and devices when such combination happens, and 2) query the
styli that were previously used with a tablet when it is detected/
plugged.

These associations are stored in two keyfiles in
~/.cache/gnome-control-center/wacom/, one for tablets and other
for styli.
2016-11-04 23:26:41 +01:00

48 lines
1.5 KiB
C

/*
* Copyright © 2016 Red Hat, Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*
* Authors: Carlos Garnacho <carlosg@gnome.org>
*
*/
#ifndef __CC_TABLET_TOOL_MAP_H__
#define __CC_TABLET_TOOL_MAP_H__
#include "config.h"
#include <gtk/gtk.h>
#include "cc-wacom-device.h"
#include "cc-wacom-tool.h"
G_BEGIN_DECLS
#define CC_TYPE_TABLET_TOOL_MAP (cc_tablet_tool_map_get_type ())
G_DECLARE_FINAL_TYPE (CcTabletToolMap, cc_tablet_tool_map, CC, TABLET_TOOL_MAP, GObject)
CcTabletToolMap * cc_tablet_tool_map_new (void);
GList * cc_tablet_tool_map_list_tools (CcTabletToolMap *map,
CcWacomDevice *device);
CcWacomTool * cc_tablet_tool_map_lookup_tool (CcTabletToolMap *map,
CcWacomDevice *device,
guint64 serial);
void cc_tablet_tool_map_add_relation (CcTabletToolMap *map,
CcWacomDevice *device,
CcWacomTool *tool);
G_END_DECLS
#endif /* __CC_TABLET_TOOL_MAP_H__ */