Re: [Linuxwacom-devel] libwacom not recognizing touch(screen) devices

2013-06-27 Thread Peter Hutterer
On Tue, Jun 11, 2013 at 12:07:10AM +0200, Sjoerd Simons wrote:
 On Fri, 2013-05-31 at 16:44 +1000, Peter Hutterer wrote:
  On Fri, May 24, 2013 at 10:47:32PM +0200, Sjoerd Simons wrote:
   Attached is an updated version of the patch which prevents
   false-positives by checking whether a touchscreen device uses the wacom
   kernel driver (by checking the ID_USB_DRIVER property from udev)
  
  Please see my reply to Ritesh in this thread:
  http://old.nabble.com/Re%3A-libwacom-not-recognizing-touch%28screen%29-devices-p35313125.html
  
  we have a device database of the devices we support - might as well use it
  :)
 
 Read that now (didn't see it before, i suck at searching the SF mail
 archives it seems), not sure if it makes much sense to me...
 
 libwacom_new_from_path seems to roughly speaking work in two steps:
  1: Get raw device information
  2: lookup device in the database, and if found (or if WFALLBACK_GENERIC
 is given) create the WacomDevice struct.
 
 What you seem to be suggesting is to fail getting the raw device
 information, in case the device is (practically speaking) a touchscreen
 that's not in the the database.. Which makes the semantics of
 WFALLBACK_GENERIC depend on the device type, which seems a bit odd.

not quite. what I'm suggesting is that if the device's vendor/product ID
matches one we already have in the DB we don't rely on the raw device
information anyway. e.g. if your DB says that 0x56a:00c6 is a Cintiq 12WX
we _know_ the device is a built-in tablet. that's what the db is for.

if a device is not in the database, then we need to guess and create the
generic device. in your case, the x220t should be in the database, it's the
0xe6 device so there is no reason we should fail.

where it's failing now is that if the device doesn't have the udev tags set
we don't look at it at all, even though the device may be in the db and thus
supported by libwacom.

 But if that's what you would like to see (Only do the WFALLBACK_GENERIC
 fallback for touchpads and non-integrated tablets), i'm happy to provide
 a patch that does that explicitly which seems nicer then having
 get_device_info pre-check the database :)
 
 
 Btw, checking whether the wacom driver is used instead of the database
 has the advantage something like g-s-d which uses WFALLBACK_GENERIC
 still works when one has a recent kernel which recognizes a new device
 but an older libwacom database.

true, but that would be on top of the other thing. also, we could assume
that anything with vendor id 056a is a wacom device which is probably better
than checking the kernel driver :)

Cheers,
   Peter


--
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom not recognizing touch(screen) devices

2013-06-10 Thread Sjoerd Simons
On Fri, 2013-05-31 at 16:44 +1000, Peter Hutterer wrote:
 On Fri, May 24, 2013 at 10:47:32PM +0200, Sjoerd Simons wrote:
  Attached is an updated version of the patch which prevents
  false-positives by checking whether a touchscreen device uses the wacom
  kernel driver (by checking the ID_USB_DRIVER property from udev)
 
 Please see my reply to Ritesh in this thread:
 http://old.nabble.com/Re%3A-libwacom-not-recognizing-touch%28screen%29-devices-p35313125.html
 
 we have a device database of the devices we support - might as well use it
 :)

Read that now (didn't see it before, i suck at searching the SF mail
archives it seems), not sure if it makes much sense to me...

libwacom_new_from_path seems to roughly speaking work in two steps:
 1: Get raw device information
 2: lookup device in the database, and if found (or if WFALLBACK_GENERIC
is given) create the WacomDevice struct.

What you seem to be suggesting is to fail getting the raw device
information, in case the device is (practically speaking) a touchscreen
that's not in the the database.. Which makes the semantics of
WFALLBACK_GENERIC depend on the device type, which seems a bit odd.

But if that's what you would like to see (Only do the WFALLBACK_GENERIC
fallback for touchpads and non-integrated tablets), i'm happy to provide
a patch that does that explicitly which seems nicer then having
get_device_info pre-check the database :)


Btw, checking whether the wacom driver is used instead of the database
has the advantage something like g-s-d which uses WFALLBACK_GENERIC
still works when one has a recent kernel which recognizes a new device
but an older libwacom database.

-- 
Sjoerd Simons sjo...@luon.net

--
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom not recognizing touch(screen) devices

2013-05-31 Thread Peter Hutterer
On Fri, May 24, 2013 at 10:47:32PM +0200, Sjoerd Simons wrote:
 On Tue, 2013-04-16 at 10:35 +1000, Peter Hutterer wrote:
  On Mon, Mar 25, 2013 at 09:22:20AM +0100, Sjoerd Simons wrote:
   Making libwacom recognize the touch
   device as a wacom device solves this issue (As it makes gnome set the
   wacom rotation for it)
  
  sorry, too simple a fix and too many wide-reaching consequences. we'll need
  something a lot narrower than this.
  
  http://sourceforge.net/mailarchive/forum.php?thread_name=CAGK%2BT_%3DiyfZKXCUJ4jFChy%2Bb0U3%3DGbfMMAJVY%2BQ2aVkiZnusMQ%40mail.gmail.comforum_name=linuxwacom-devel
 
 Looking as Bastiens example the problem is calling
 libwacom_new_from_path with WFALLBACK_GENERIC, which always creates a
 device if it doesn't know the model.. The same problem would occur with
 tablets from a vendor that's not wacom. There just aren't that many of
 those vs. non-wacom touchscreens :).
 
 Attached is an updated version of the patch which prevents
 false-positives by checking whether a touchscreen device uses the wacom
 kernel driver (by checking the ID_USB_DRIVER property from udev)

Please see my reply to Ritesh in this thread:
http://old.nabble.com/Re%3A-libwacom-not-recognizing-touch%28screen%29-devices-p35313125.html

we have a device database of the devices we support - might as well use it
:)

Cheers,
   Peter


 From ea0c25e80b817ede87fa2ad38017d05d69ea7c7a Mon Sep 17 00:00:00 2001
 From: Sjoerd Simons sjo...@greynoise.nl
 Date: Mon, 25 Mar 2013 09:08:53 +0100
 Subject: [PATCH] Also recognize touchscreen wacom devices
 
 On my X220t there are two wacom device exposed. One being the pen and
 one being two finger touch. The touch device has ID_INPUT_TOUCHSCREEN
 instead of _TABLET or _TOUCHPAD, so also recognize that.
 
 To prevent false-negatives only recognize touchscreen that use the wacom
 usb driver
 
 Signed-off-by: Sjoerd Simons sjo...@greynoise.nl
 ---
  libwacom/libwacom.c |4 
  1 file changed, 4 insertions(+)
 
 diff --git a/libwacom/libwacom.c b/libwacom/libwacom.c
 index 1b9b398..b4afe56 100644
 --- a/libwacom/libwacom.c
 +++ b/libwacom/libwacom.c
 @@ -56,6 +56,10 @@ libwacom_get_device(const WacomDeviceDatabase *db, const 
 char *match)
  static gboolean
  is_tablet_or_touchpad (GUdevDevice *device)
  {
 + if (g_udev_device_get_property_as_boolean (device, 
 ID_INPUT_TOUCHSCREEN))
 + return !g_strcmp0 (wacom, g_udev_device_get_property (device,
 + ID_USB_DRIVER));
 +
   return g_udev_device_get_property_as_boolean (device, 
 ID_INPUT_TABLET) ||
   g_udev_device_get_property_as_boolean (device, 
 ID_INPUT_TOUCHPAD);
  }
 -- 
 1.7.10.4
 


--
Get 100% visibility into Java/.NET code with AppDynamics Lite
It's a free troubleshooting tool designed for production
Get down to code-level detail for bottlenecks, with 2% overhead.
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap2
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom not recognizing touch(screen) devices

2013-05-24 Thread Sjoerd Simons
On Tue, 2013-04-16 at 10:35 +1000, Peter Hutterer wrote:
 On Mon, Mar 25, 2013 at 09:22:20AM +0100, Sjoerd Simons wrote:
  Making libwacom recognize the touch
  device as a wacom device solves this issue (As it makes gnome set the
  wacom rotation for it)
 
 sorry, too simple a fix and too many wide-reaching consequences. we'll need
 something a lot narrower than this.
 
 http://sourceforge.net/mailarchive/forum.php?thread_name=CAGK%2BT_%3DiyfZKXCUJ4jFChy%2Bb0U3%3DGbfMMAJVY%2BQ2aVkiZnusMQ%40mail.gmail.comforum_name=linuxwacom-devel

Looking as Bastiens example the problem is calling
libwacom_new_from_path with WFALLBACK_GENERIC, which always creates a
device if it doesn't know the model.. The same problem would occur with
tablets from a vendor that's not wacom. There just aren't that many of
those vs. non-wacom touchscreens :).

Attached is an updated version of the patch which prevents
false-positives by checking whether a touchscreen device uses the wacom
kernel driver (by checking the ID_USB_DRIVER property from udev)

-- 
Sjoerd Simons sjo...@luon.net
From ea0c25e80b817ede87fa2ad38017d05d69ea7c7a Mon Sep 17 00:00:00 2001
From: Sjoerd Simons sjo...@greynoise.nl
Date: Mon, 25 Mar 2013 09:08:53 +0100
Subject: [PATCH] Also recognize touchscreen wacom devices

On my X220t there are two wacom device exposed. One being the pen and
one being two finger touch. The touch device has ID_INPUT_TOUCHSCREEN
instead of _TABLET or _TOUCHPAD, so also recognize that.

To prevent false-negatives only recognize touchscreen that use the wacom
usb driver

Signed-off-by: Sjoerd Simons sjo...@greynoise.nl
---
 libwacom/libwacom.c |4 
 1 file changed, 4 insertions(+)

diff --git a/libwacom/libwacom.c b/libwacom/libwacom.c
index 1b9b398..b4afe56 100644
--- a/libwacom/libwacom.c
+++ b/libwacom/libwacom.c
@@ -56,6 +56,10 @@ libwacom_get_device(const WacomDeviceDatabase *db, const char *match)
 static gboolean
 is_tablet_or_touchpad (GUdevDevice *device)
 {
+	if (g_udev_device_get_property_as_boolean (device, ID_INPUT_TOUCHSCREEN))
+		return !g_strcmp0 (wacom, g_udev_device_get_property (device,
+			ID_USB_DRIVER));
+
 	return g_udev_device_get_property_as_boolean (device, ID_INPUT_TABLET) ||
 		g_udev_device_get_property_as_boolean (device, ID_INPUT_TOUCHPAD);
 }
-- 
1.7.10.4

--
Try New Relic Now  We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app,  servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom not recognizing touch(screen) devices

2013-04-16 Thread Ritesh Khadgaray

Hi


 Let me know, if this would work fine ?
  

reference: https://sourceforge.net/p/linuxwacom/bugs/227/

-- 
 --ritz
(paradoxum)
%
  Most bacteria have the decency to be microscopic. Epulopiscium
  fishelsoni is not among them. The newly identified one-celled
  macro-microorganism is a full .5 mm long, large enough to be seen
  with the naked eye. Described in the current Nature, It is a
  million times as massive as a typical bacterium.-Time, page 25,
  March 29, 1993
diff --git a/libwacom/libwacom.c b/libwacom/libwacom.c
index 1b9b398..29ffcc0 100644
--- a/libwacom/libwacom.c
+++ b/libwacom/libwacom.c
@@ -54,10 +54,13 @@ libwacom_get_device(const WacomDeviceDatabase *db, const char *match)
 }
 
 static gboolean
-is_tablet_or_touchpad (GUdevDevice *device)
+is_useable_device (GUdevDevice *device)
 {
+	gboolean is_wacom = (g_strcmp0 (wacom, g_udev_device_get_property(device,ID_USB_DRIVER)) == 0 );
+	
 	return g_udev_device_get_property_as_boolean (device, ID_INPUT_TABLET) ||
-		g_udev_device_get_property_as_boolean (device, ID_INPUT_TOUCHPAD);
+		g_udev_device_get_property_as_boolean (device, ID_INPUT_TOUCHPAD) ||
+		is_wacom ? g_udev_device_get_property_as_boolean(device, ID_INPUT_TOUCHSCREEN): 0 ;
 }
 
 /* Overriding SUBSYSTEM isn't allowed in udev (works sometimes, but not
@@ -154,11 +157,11 @@ get_device_info (const char*path,
 	}
 
 	/* Touchpads are only for the Finger part of Bamboo devices */
-	if (!is_tablet_or_touchpad(device)) {
+	if (!is_useable_device(device)) {
 		GUdevDevice *parent;
 
 		parent = g_udev_device_get_parent(device);
-		if (!parent || !is_tablet_or_touchpad(parent)) {
+		if (!parent || !is_useable_device(parent)) {
 			libwacom_error_set(error, WERROR_INVALID_PATH, Device '%s' is not a tablet, path);
 			g_object_unref (parent);
 			goto bail;
--
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis  visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom not recognizing touch(screen) devices

2013-03-25 Thread Sjoerd Simons
Hey,

When playing with the latest gnome on an X220t i noticed that the pen
input on the built-in tablet nicely follows the rotation of the screen
but the finger touch input does not. Making libwacom recognize the touch
device as a wacom device solves this issue (As it makes gnome set the
wacom rotation for it)

Patch attached

-- 
Sjoerd Simons sjo...@luon.net
From 69beb7e641950168ac26643048fef938194d77f8 Mon Sep 17 00:00:00 2001
From: Sjoerd Simons sjo...@greynoise.nl
Date: Mon, 25 Mar 2013 09:08:53 +0100
Subject: [PATCH] Also recognize touchscreen wacom devices

On my X220t there are two wacom device exposed. One being the pen and
one being two finger touch. The touch device has ID_INPUT_TOUCHSCREEN
instead of _TABLET or _TOUCHPAD, so also recognize that.

Signed-off-by: Sjoerd Simons sjo...@greynoise.nl
---
 libwacom/libwacom.c |1 +
 1 file changed, 1 insertion(+)

diff --git a/libwacom/libwacom.c b/libwacom/libwacom.c
index 1b9b398..0f44eb2 100644
--- a/libwacom/libwacom.c
+++ b/libwacom/libwacom.c
@@ -57,6 +57,7 @@ static gboolean
 is_tablet_or_touchpad (GUdevDevice *device)
 {
 	return g_udev_device_get_property_as_boolean (device, ID_INPUT_TABLET) ||
+		g_udev_device_get_property_as_boolean (device, ID_INPUT_TOUCHSCREEN) ||
 		g_udev_device_get_property_as_boolean (device, ID_INPUT_TOUCHPAD);
 }
 
-- 
1.7.10.4

--
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_mar___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] test: check number of switches against number of modes

2012-12-19 Thread Peter Hutterer
On Fri, Dec 14, 2012 at 12:16:41PM +0100, Olivier Fourdan wrote:

 From 5fe5a58ad6eada45471e670625b60cd10b52b0be Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Fri, 14 Dec 2012 12:08:09 +0100
 Subject: [PATCH] test: check number of switches against number of modes
 
 Most tablets have one mode-switch button and multiple
 modes, but some like the Cintiq 24HD have dedicated mode-
 switch buttons.
 
 In this case, the number of modes must match the number of
 switches otherwise client applications have no way to tell
 if a button is used as a mode-switch button to cycle through
 all the modes or a mode-switch button to select a given mode.
 
 Add this in the tablet-validity check, ie make sure that
 if we have more than one mode-switch button, then the
 number of modes matches the number of mode-switch buttons.
 
 Also checks that if more than one mode is declared, at least
 one mode-switch button is found.
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com

merged, thanks. sorry missed it before the 0.7 release, so it didn't make
it.

Cheers,
   Peter

 ---
  test/tablet-validity.c |   46 ++
  1 files changed, 46 insertions(+), 0 deletions(-)
 
 diff --git a/test/tablet-validity.c b/test/tablet-validity.c
 index 75fe265..19a4b98 100644
 --- a/test/tablet-validity.c
 +++ b/test/tablet-validity.c
 @@ -40,6 +40,8 @@
  #include assert.h
  #include unistd.h
  
 +typedef int (*NumModesFn) (const WacomDevice *device);
 +
  static int buttons_have_direction (WacomDevice *device)
  {
   char   button;
 @@ -59,6 +61,42 @@ static int buttons_have_direction (WacomDevice *device)
   return 0;
  }
  
 +static int match_mode_switch (WacomDevice *device, NumModesFn get_num_modes, 
 WacomButtonFlags flag)
 +{
 + char   button;
 + intnum_buttons;
 + intnum_switches;
 + intnum_modes;
 +
 + num_buttons  = libwacom_get_num_buttons (device);
 + num_modes= get_num_modes (device);
 + num_switches = 0;
 +
 + for (button = 'A'; button  'A' + num_buttons; button++) {
 + WacomButtonFlags  flags;
 + flags = libwacom_get_button_flag(device, button);
 +
 + if (flags  flag)
 + num_switches++;
 + }
 +
 + /*
 +  * If we have more than one mode-switch button, then the
 +  * number of modes must match the number of mode-switch buttons.
 +  */
 + if (num_switches  1  num_modes != num_switches)
 + return 0;
 +
 + /*
 +  * If we have more than one mode, then we should find at least
 +  * one mode-switch button.
 +  */
 + if (num_modes  1  num_switches == 0)
 + return 0;
 +
 + return 1;
 +}
 +
  static int eraser_is_present(WacomDeviceDatabase *db, const int *styli, int 
 nstyli, WacomStylusType type)
  {
   int i;
 @@ -146,6 +184,14 @@ static void verify_tablet(WacomDeviceDatabase *db, 
 WacomDevice *device)
   assert(libwacom_get_strips_num_modes(device) = 0);
   assert(libwacom_get_bustype(device) != WBUSTYPE_UNKNOWN);
   assert(buttons_have_direction(device)  0);
 + if (libwacom_has_ring(device))
 + assert(match_mode_switch (device, libwacom_get_ring_num_modes, 
 WACOM_BUTTON_RING_MODESWITCH));
 + if (libwacom_has_ring2(device))
 + assert(match_mode_switch (device, libwacom_get_ring2_num_modes, 
 WACOM_BUTTON_RING2_MODESWITCH));
 + if (libwacom_get_num_strips(device)  1)
 + assert(match_mode_switch (device, 
 libwacom_get_strips_num_modes, WACOM_BUTTON_TOUCHSTRIP2_MODESWITCH));
 + if (libwacom_get_num_strips(device)  0)
 + assert(match_mode_switch (device, 
 libwacom_get_strips_num_modes, WACOM_BUTTON_TOUCHSTRIP_MODESWITCH));
  }
  
  int main(int argc, char **argv)
 -- 
 1.7.1
 

 --
 LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
 Remotely access PCs and mobile devices and provide instant support
 Improve your efficiency, and focus on delivering more value-add services
 Discover what IT Professionals Know. Rescue delivers
 http://p.sf.net/sfu/logmein_12329d2d

 ___
 Linuxwacom-devel mailing list
 Linuxwacom-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net

[Linuxwacom-devel] libwacom: [PATCH] test: check number of switches against number of modes

2012-12-14 Thread Olivier Fourdan


From 5fe5a58ad6eada45471e670625b60cd10b52b0be Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 14 Dec 2012 12:08:09 +0100
Subject: [PATCH] test: check number of switches against number of modes

Most tablets have one mode-switch button and multiple
modes, but some like the Cintiq 24HD have dedicated mode-
switch buttons.

In this case, the number of modes must match the number of
switches otherwise client applications have no way to tell
if a button is used as a mode-switch button to cycle through
all the modes or a mode-switch button to select a given mode.

Add this in the tablet-validity check, ie make sure that
if we have more than one mode-switch button, then the
number of modes matches the number of mode-switch buttons.

Also checks that if more than one mode is declared, at least
one mode-switch button is found.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 test/tablet-validity.c |   46 ++
 1 files changed, 46 insertions(+), 0 deletions(-)

diff --git a/test/tablet-validity.c b/test/tablet-validity.c
index 75fe265..19a4b98 100644
--- a/test/tablet-validity.c
+++ b/test/tablet-validity.c
@@ -40,6 +40,8 @@
 #include assert.h
 #include unistd.h
 
+typedef int (*NumModesFn) (const WacomDevice *device);
+
 static int buttons_have_direction (WacomDevice *device)
 {
 	char   button;
@@ -59,6 +61,42 @@ static int buttons_have_direction (WacomDevice *device)
 	return 0;
 }
 
+static int match_mode_switch (WacomDevice *device, NumModesFn get_num_modes, WacomButtonFlags flag)
+{
+	char   button;
+	intnum_buttons;
+	intnum_switches;
+	intnum_modes;
+
+	num_buttons  = libwacom_get_num_buttons (device);
+	num_modes= get_num_modes (device);
+	num_switches = 0;
+
+	for (button = 'A'; button  'A' + num_buttons; button++) {
+		WacomButtonFlags  flags;
+		flags = libwacom_get_button_flag(device, button);
+
+		if (flags  flag)
+			num_switches++;
+	}
+
+	/*
+	 * If we have more than one mode-switch button, then the
+	 * number of modes must match the number of mode-switch buttons.
+	 */
+	if (num_switches  1  num_modes != num_switches)
+		return 0;
+
+	/*
+	 * If we have more than one mode, then we should find at least
+	 * one mode-switch button.
+	 */
+	if (num_modes  1  num_switches == 0)
+		return 0;
+
+	return 1;
+}
+
 static int eraser_is_present(WacomDeviceDatabase *db, const int *styli, int nstyli, WacomStylusType type)
 {
 	int i;
@@ -146,6 +184,14 @@ static void verify_tablet(WacomDeviceDatabase *db, WacomDevice *device)
 	assert(libwacom_get_strips_num_modes(device) = 0);
 	assert(libwacom_get_bustype(device) != WBUSTYPE_UNKNOWN);
 	assert(buttons_have_direction(device)  0);
+	if (libwacom_has_ring(device))
+		assert(match_mode_switch (device, libwacom_get_ring_num_modes, WACOM_BUTTON_RING_MODESWITCH));
+	if (libwacom_has_ring2(device))
+		assert(match_mode_switch (device, libwacom_get_ring2_num_modes, WACOM_BUTTON_RING2_MODESWITCH));
+	if (libwacom_get_num_strips(device)  1)
+		assert(match_mode_switch (device, libwacom_get_strips_num_modes, WACOM_BUTTON_TOUCHSTRIP2_MODESWITCH));
+	if (libwacom_get_num_strips(device)  0)
+		assert(match_mode_switch (device, libwacom_get_strips_num_modes, WACOM_BUTTON_TOUCHSTRIP_MODESWITCH));
 }
 
 int main(int argc, char **argv)
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: Mode-switches and libwacom API

2012-12-13 Thread Olivier Fourdan
Hi all,

It seems GNOME settings daemon was modelled after the I4, where you 
have multiple modes (4 on the I4) and a single mode-switch button.

Pressing the mode-switch will cycle between the mode, 1, 2, 3, 4, 1, 
2, etc.

The hardware on the 24HD is different, there are 3 modes per ring, and 
3 mode-switch buttons per ring. So of course, the user expects that 
pressing the first one will switch to mode 1, the second to mode 2 and 
the third to mode 3.

But GNOME setting daemon does not do that. it treats all modeswitch 
the same, so pressing any of the mode-switch buttons for the first 
ring will cycle between the mode (just like on the I4). That's wrong 
and definitely not what users would expect.

The data/wacom.example files reads:

-
   # The location of the various rings, if associated with a button
   # or buttons.
   # For example, a single button in the middle of the touchring, like
   # on the Intuos4 tablets. You will need to mention the number of modes
   # that the button allows if there isn't one button per mode.
   Ring=A
   RingNumModes=4
   # Or the 2nd touchring associated with 3 buttons like the Cintiq24HD
   Ring2=I;J;K
   # Implied, as we have 3 buttons for that ring
   Ring2NumModes=3

   # If the touchstrips have mode toggling through a button
   # like on the Cintiq 21UX2
   Touchstrip=A
   Touchstrip2=J
   # We assume the same number of modes for each of the touchstrips
   # if there is more than one
   StripsNumModes=4
-

So to distinguish between a single mode-switch button that toggles 
between multiple modes (like the I4), and multiple mode-switch buttons 
that select a given mode (like the 24HD), one has to count how many 
buttons have the *MODESWITCH flag and compare than against the number 
of modes for that same touchring/touchstrip?

Cheers,
Olivier.

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: Mode-switches and libwacom API

2012-12-13 Thread Bastien Nocera
On Thu, 2012-12-13 at 11:52 +0100, Olivier Fourdan wrote:
 Hi all,
 
 It seems GNOME settings daemon was modelled after the I4, where you 
 have multiple modes (4 on the I4) and a single mode-switch button.
snip
 The hardware on the 24HD is different

Blame work, which bought me the wrong kind of hardware.

Seriously though, support for the modeswitches was rushed in for GNOME
3.4 and and I4 was all I had with a modeswitch.

 But GNOME setting daemon does not do that.

gnome-settings-daemon's modeswitch code was only ever tested on an I4,
by me at least. It's probably wrong for anything else.


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: Mode-switches and libwacom API

2012-12-13 Thread Olivier Fourdan

Hi Bastien,

Bastien Nocera said the following on 12/13/2012 12:12 PM:
 [...]
 The hardware on the 24HD is different
 Blame work, which bought me the wrong kind of hardware.

Oh, sorry, I really did not mean to blame anything or anybody, sorry 
if my email sounded like that, it was not my intention.

 Seriously though, support for the modeswitches was rushed in for GNOME
 3.4 and and I4 was all I had with a modeswitch.
 [...]
 gnome-settings-daemon's modeswitch code was only ever tested on an I4,
 by me at least. It's probably wrong for anything else.

Actually not, it probably works well on the vast majority of the 
tablets we support in libwacom, the only one I could find with 
separate mode-switches is the 24HD.

And I realised the problem only once I designed the 24HD layout, and 
just got an email yesterday from someone asking about the odd behavior 
on an 24HD, so it's not like it was obvious from the beginning (at 
least for me).

What I am after is really a way to fix this, without introducing too 
many ugly hacks in gnome-settings-daemon... Thus my question about 
using the API in libwacom to detect the different use cases.

I don't have a 24HD, but for testing I plan on tweaking the I5 tablet 
(the one I have here) definition to use regular buttons as different 
mode switches, after all, the whole concept of modes and switches is 
purely logical. Well, if that works, that would be a cheap alternative 
for testing the code (once it's done) :-)

Cheers,
Olivier.

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: Mode-switches and libwacom API

2012-12-13 Thread Olivier Fourdan
Olivier Fourdan said the following on 12/13/2012 01:26 PM:
 [...]

 What I am after is really a way to fix this, without introducing too
 many ugly hacks in gnome-settings-daemon... Thus my question about
 using the API in libwacom to detect the different use cases.

Well, it proved easier than I thought, I posted a proposed patch using 
the logic I described initially in GNOME bug 690157

https://bugzilla.gnome.org/show_bug.cgi?id=690157

 I don't have a 24HD, but for testing I plan on tweaking the I5 tablet
 (the one I have here) definition to use regular buttons as different
 mode switches, after all, the whole concept of modes and switches is
 purely logical. Well, if that works, that would be a cheap alternative
 for testing the code (once it's done) :-)

Tested using this method above, works a charm.

Cheers,
Olivier.

-- 
əɔıʌəp əɯos ɥʇıʍ əɹəɥʍəɯos ɯoɹɟ ʇuəs


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] test: warn if a tablet has buttons but no layout

2012-12-12 Thread Olivier Fourdan


From 67ff0a18b8807d4d254b8e074f0d3d83a8b64547 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Wed, 12 Dec 2012 09:55:07 +0100
Subject: [PATCH] test: warn if a tablet has buttons but no layout

so we can quickly spot the layouts to contribute,
but do not assert since layouts are not mandatory.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 test/tablet-svg-validity.c |8 ++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/test/tablet-svg-validity.c b/test/tablet-svg-validity.c
index 296fa1a..d0bb54d 100644
--- a/test/tablet-svg-validity.c
+++ b/test/tablet-svg-validity.c
@@ -245,8 +245,13 @@ verify_tablet_layout (WacomDeviceDatabase *db, WacomDevice *device)
 		return;
 
 	filename = libwacom_get_layout_filename(device);
-	if (filename == NULL)
+	num_buttons = libwacom_get_num_buttons (device);
+
+	if (filename == NULL) {
+		if (num_buttons  0)
+			g_warning (device '%s' has buttons but no layout, name);
 		return;
+	}
 
 	g_message (Verifying device '%s', SVG file '%s', name, filename);
 
@@ -269,7 +274,6 @@ verify_tablet_layout (WacomDeviceDatabase *db, WacomDevice *device)
 	g_assert (prop != NULL);
 	xmlFree(prop);
 
-	num_buttons = libwacom_get_num_buttons (device);
 	for (button = 'A'; button  'A' + num_buttons; button++) {
 		check_button (cur, device, button, Button);
 		check_button (cur, device, button, Label);
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 2/2] data: fix wrong size in intuos4 6x9 layout

2012-12-12 Thread Olivier Fourdan


From 2ffeca2fb6954eccb02dc8844eee5f9cd037d1af Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Wed, 12 Dec 2012 09:54:00 +0100
Subject: [PATCH 2/2] data: fix wrong size in intuos4 6x9 layout

and adjust buttons' position accordingly.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/layouts/intuos4-6x9.svg |   78 ++
 1 files changed, 41 insertions(+), 37 deletions(-)

diff --git a/data/layouts/intuos4-6x9.svg b/data/layouts/intuos4-6x9.svg
index 91aeca4..b416f47 100644
--- a/data/layouts/intuos4-6x9.svg
+++ b/data/layouts/intuos4-6x9.svg
@@ -1,13 +1,17 @@
 ?xml version=1.0 standalone=no?
 !DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+Designed after data from http://www.wacom-asia.com/files/intuos4.pdf
+Size and positions of controls may not be accurate
+ --
 svg
xmlns=http://www.w3.org/2000/svg;
version=1.1
style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
id=intuos4-m
width=370
-   height=245
+   height=253
   title
  id=titleWacom Intuos4 M/title
   g
@@ -16,14 +20,14 @@
class=B Button
rx=.5
ry=.5
-   x=14
+   x=11
y=40
width=22
height=12 /
 path
id=LeaderB
class=B Leader
-   d=M 38 46 L 60 46 /
+   d=M 35 46 l 25 0 /
 text
id=LabelB
class=B Label
@@ -39,14 +43,14 @@
class=C Button
rx=.5
ry=.5
-   x=14
+   x=11
y=53
width=22
height=12 /
 path
id=LeaderC
class=C Leader
-   d=M 38 59 L 60 59 /
+   d=M 35 59 l 25 0 /
 text
id=LabelC
class=C Label
@@ -60,14 +64,14 @@
class=D Button
rx=.5
ry=.5
-   x=14
+   x=11
y=66
width=22
height=12 /
 path
id=LeaderD
class=D Leader
-   d=M 38 72 L 60 72 /
+   d=M 35 72 l 25 0 /
 text
id=LabelD
class=D Label
@@ -81,14 +85,14 @@
class=E Button
rx=.5
ry=.5
-   x=14
+   x=11
y=79
width=22
height=12 /
 path
id=LeaderE
class=E Leader
-   d=M 38 85 L 60 85 /
+   d=M 35 85 l 25 0 /
 text
id=LabelE
class=E Label
@@ -102,19 +106,19 @@
class=F Button
rx=.5
ry=.5
-   x=14
-   y=151
+   x=11
+   y=162
width=22
height=12 /
 path
id=LeaderF
class=F Leader
-   d=M 38 157 L 60 157 /
+   d=M 35 168 l 25 0 /
 text
id=LabelF
class=F Label
x=62
-   y=157
+   y=168
style=text-anchor:start;F/text
   /g
   g
@@ -123,19 +127,19 @@
class=G Button
rx=.5
ry=.5
-   x=14
-   y=164
+   x=11
+   y=175
width=22
height=12 /
  path
id=LeaderG
class=G Leader
-   d=M 38 170 L 60 170 /
+   d=M 35 181 l 25 0 /
 text
id=LabelG
class=G Label
x=62
-   y=170
+   y=181
style=text-anchor:start;G/text
   /g
   g
@@ -144,19 +148,19 @@
class=H Button
rx=.5
ry=.5
-   x=14
-   y=177
+   x=11
+   y=188
width=22
height=12 /
 path
id=LeaderH
class=H Leader
-   d=M 38 183 L 60 183 /
+   d=M 35 194 l 25 0 /
 text
id=LabelH
class=H Label
x=62
-   y=183
+   y=194
style=text-anchor:start;H/text
   /g
   g
@@ -165,73 +169,73 @@
class=I Button
rx=.5
ry=.5
-   x=14
-   y=190
+   x=11
+   y=201
width=22
height=12 /
 path
id=LeaderI
class=I Leader
-   d=M 38 196 L 60 196 /
+   d=M 35 207 l 25 0 /
 text
id=LabelI
class=I Label
x=62
-   y=196
+   y=207
style=text-anchor:start;I/text
   /g
   g
 circle
id=Ring
class=Ring TouchRing
-   cx=34
-   cy=121
+   cx=31
+   cy=126.5
r=19.5 /
 path
id=LeaderRingCCW
class=RingCCW Ring Leader
-   d=M 34 101 L 34 99 L 60 99 /
+   d=M 31 106.5 l 0 -2 l 29 0 /
 text
id=LabelRingCCW
class=RingCCW Ring Label
x=62
-   y=99
+   y=104.5
style=text-anchor:start;CCW/text
 path
id=RingCCW
class=RingCCW Button
-   d=M 31 107 l 3 -1.5 l 0 1 a 7.5 7.5 0 0 1 5 1.5 a 6.5 6.5 0 0 0 -5 -0.5 l 0 1 z /
+   d=M 28 112.5 l 3 -1.5 l 0 1 a 7.5 7.5 0 0 1 5 1.5 a 6.5 6.5 0 0 0 -5 -0.5 l 0 1 z /
 path
id=LeaderRingCW
class=RingCW Ring Leader
-   d=M 34 141 L 34 143 L 60 143 /
+   d=M 31 146.5 l 0 2 l 29 0 /
 text
id=LabelRingCW
class=RingCW Ring Label
x=62
-   y=143
+   y=148.5
style=text-anchor:start;CW/text
 

[Linuxwacom-devel] libwacom: [PATCH 1/2] data: add layout for intuos4 4x9 wireless

2012-12-12 Thread Olivier Fourdan


From 2b5578af252629c573f353225004159646a21b98 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Wed, 12 Dec 2012 09:53:18 +0100
Subject: [PATCH 1/2] data: add layout for intuos4 4x9 wireless

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos4-6x9-wl.tablet  |1 +
 data/layouts/intuos4-6x9-wl.svg |  241 +++
 2 files changed, 242 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos4-6x9-wl.svg

diff --git a/data/intuos4-6x9-wl.tablet b/data/intuos4-6x9-wl.tablet
index 786a7a5..2fb0478 100644
--- a/data/intuos4-6x9-wl.tablet
+++ b/data/intuos4-6x9-wl.tablet
@@ -39,6 +39,7 @@ Class=Intuos4
 Width=8
 Height=5
 IntegratedIn=
+Layout=intuos4-6x9-wl.svg
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;0x806;
 
 [Features]
diff --git a/data/layouts/intuos4-6x9-wl.svg b/data/layouts/intuos4-6x9-wl.svg
new file mode 100644
index 000..59b2f1b
--- /dev/null
+++ b/data/layouts/intuos4-6x9-wl.svg
@@ -0,0 +1,241 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+Designed after data from http://www.wacom-asia.com/files/intuos4.pdf
+Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos4-6x9-wl
+   width=363
+   height=254
+  title
+ id=titleWacom Intuos4 WL/title
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=11
+   y=40
+   width=22
+   height=12 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 35 46 l 25 0 /
+text
+   id=LabelB
+   class=B Label
+   x=62
+   y=46
+   style=text-anchor:start;
+  B
+/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   rx=.5
+   ry=.5
+   x=11
+   y=53
+   width=22
+   height=12 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 35 59 l 25 0 /
+text
+   id=LabelC
+   class=C Label
+   x=62
+   y=59
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   rx=.5
+   ry=.5
+   x=11
+   y=66
+   width=22
+   height=12 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 35 72 l 25 0 /
+text
+   id=LabelD
+   class=D Label
+   x=62
+   y=72
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=.5
+   ry=.5
+   x=11
+   y=79
+   width=22
+   height=12 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 35 85 l 25 0 /
+text
+   id=LabelE
+   class=E Label
+   x=62
+   y=85
+   style=text-anchor:start;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=.5
+   ry=.5
+   x=11
+   y=163
+   width=22
+   height=12 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 35 169 l 25 0 /
+text
+   id=LabelF
+   class=F Label
+   x=62
+   y=169
+   style=text-anchor:start;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   rx=.5
+   ry=.5
+   x=11
+   y=176
+   width=22
+   height=12 /
+ path
+   id=LeaderG
+   class=G Leader
+   d=M 35 182 l 25 0 /
+text
+   id=LabelG
+   class=G Label
+   x=62
+   y=182
+   style=text-anchor:start;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   rx=.5
+   ry=.5
+   x=11
+   y=189
+   width=22
+   height=12 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 35 195 l 25 0 /
+text
+   id=LabelH
+   class=H Label
+   x=62
+   y=195
+   style=text-anchor:start;H/text
+  /g
+  g
+rect
+   id=ButtonI
+   class=I Button
+   rx=.5
+   ry=.5
+   x=11
+   y=202
+   width=22
+   height=12 /
+path
+   id=LeaderI
+   class=I Leader
+   d=M 35 208 l 25 0 /
+text
+   id=LabelI
+   class=I Label
+   x=62
+   y=208
+   style=text-anchor:start;I/text
+  /g
+  g
+circle
+   id=Ring
+   class=Ring TouchRing
+   cx=31
+   cy=127
+   r=19.5 /
+path
+   id=LeaderRingCCW
+   class=RingCCW Ring Leader
+   d=M 31 107 l 0 -2 l 29 0 /
+text
+   id=LabelRingCCW
+   class=RingCCW Ring Label
+   x=62
+   y=105
+   style=text-anchor:start;CCW/text
+path
+   id=RingCCW
+   class=RingCCW Button
+   d=M 28 113 l 3 -1.5 l 0 1 a 7.5 7.5 0 0 1 5 1.5 a 6.5 6.5 0 0 0 -5 -0.5 l 0 1 z /
+path
+   id=LeaderRingCW
+   class=RingCW Ring Leader
+   d=M 31 147 l 0 2 l 29 0 /
+text
+   id=LabelRingCW
+   

Re: [Linuxwacom-devel] libwacom: [PATCH 1/6] data: add layout for Wacom Graphire4 4x5

2012-12-12 Thread Peter Hutterer
On Tue, Dec 11, 2012 at 08:09:38PM +0100, Olivier Fourdan wrote:

 From b6f902ea9b358ace5599e408e1906e08f8e4ee6a Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Tue, 11 Dec 2012 15:50:37 +0100
 Subject: [PATCH 1/6] data: add layout for Wacom Graphire4 4x5
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com


series merged, thanks.
   22d2070..323ee0e  master - master

Cheers,
   Peter

 ---
  data/graphire4-4x5.tablet  |1 +
  data/layouts/graphire4-4x5.svg |   66 
 
  2 files changed, 67 insertions(+), 0 deletions(-)
  create mode 100644 data/layouts/graphire4-4x5.svg
 
 diff --git a/data/graphire4-4x5.tablet b/data/graphire4-4x5.tablet
 index b93c65b..a0609c0 100644
 --- a/data/graphire4-4x5.tablet
 +++ b/data/graphire4-4x5.tablet
 @@ -22,6 +22,7 @@ DeviceMatch=usb:056a:0015
  Class=Graphire
  Width=5
  Height=4
 +Layout=graphire4-4x5.svg
  
  [Features]
  Stylus=true
 diff --git a/data/layouts/graphire4-4x5.svg b/data/layouts/graphire4-4x5.svg
 new file mode 100644
 index 000..05e2ecb
 --- /dev/null
 +++ b/data/layouts/graphire4-4x5.svg
 @@ -0,0 +1,66 @@
 +?xml version=1.0 standalone=no?
 +!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
 +   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
 +!--
 +   Designed after data from 
 http://www.wacom-asia.com/download/manuals/G4_QSG_EN.pdf
 +   Size and positions of controls may not be accurate
 + --
 +svg
 +   xmlns=http://www.w3.org/2000/svg;
 +   version=1.1
 +   
 style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
 +   id=graphire4-4x5
 +   width=208
 +   height=204
 +  title
 + id=titleWacom Graphire4 4x5/title
 +  g
 +rect
 +   id=ButtonA
 +   class=A Button
 +   rx=.5
 +   ry=.5
 +   x=55
 +   y=24
 +   width=36
 +   height=10 /
 +path
 +   id=LeaderA
 +   class=A Leader
 +   d=M 73 36 l -23 23 l 0 10 m -5 0 l 10 0 /
 +text
 +   id=LabelA
 +   class=A Label
 +   x=50
 +   y=79
 +   style=text-anchor:middle;A/text
 +  /g
 +  rect
 + rx=1
 + ry=1
 + x=92
 + y=25
 + width=24
 + height=9 /
 +  g
 +rect
 +   id=ButtonB
 +   class=B Button
 +   rx=.5
 +   ry=.5
 +   x=117
 +   y=24
 +   width=36
 +   height=10 /
 +path
 +   id=LeaderB
 +   class=B Leader
 +   d=M 135 36 l 23 23 l 0 10 m -5 0 l 10 0 /
 +text
 +   id=LabelB
 +   class=B Label
 +   x=158
 +   y=79
 +   style=text-anchor:middle;B/text
 +  /g
 +/svg
 -- 
 1.7.1
 

 --
 LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
 Remotely access PCs and mobile devices and provide instant support
 Improve your efficiency, and focus on delivering more value-add services
 Discover what IT Professionals Know. Rescue delivers
 http://p.sf.net/sfu/logmein_12329d2d

 ___
 Linuxwacom-devel mailing list
 Linuxwacom-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] test: warn if a tablet has buttons but no layout

2012-12-12 Thread Peter Hutterer
On Wed, Dec 12, 2012 at 10:03:35AM +0100, Olivier Fourdan wrote:
 

 From 67ff0a18b8807d4d254b8e074f0d3d83a8b64547 Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Wed, 12 Dec 2012 09:55:07 +0100
 Subject: [PATCH] test: warn if a tablet has buttons but no layout
 
 so we can quickly spot the layouts to contribute,
 but do not assert since layouts are not mandatory.
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com

applied, thank you

Cheers,
   Peter

 ---
  test/tablet-svg-validity.c |8 ++--
  1 files changed, 6 insertions(+), 2 deletions(-)
 
 diff --git a/test/tablet-svg-validity.c b/test/tablet-svg-validity.c
 index 296fa1a..d0bb54d 100644
 --- a/test/tablet-svg-validity.c
 +++ b/test/tablet-svg-validity.c
 @@ -245,8 +245,13 @@ verify_tablet_layout (WacomDeviceDatabase *db, 
 WacomDevice *device)
   return;
  
   filename = libwacom_get_layout_filename(device);
 - if (filename == NULL)
 + num_buttons = libwacom_get_num_buttons (device);
 +
 + if (filename == NULL) {
 + if (num_buttons  0)
 + g_warning (device '%s' has buttons but no layout, 
 name);
   return;
 + }
  
   g_message (Verifying device '%s', SVG file '%s', name, filename);
  
 @@ -269,7 +274,6 @@ verify_tablet_layout (WacomDeviceDatabase *db, 
 WacomDevice *device)
   g_assert (prop != NULL);
   xmlFree(prop);
  
 - num_buttons = libwacom_get_num_buttons (device);
   for (button = 'A'; button  'A' + num_buttons; button++) {
   check_button (cur, device, button, Button);
   check_button (cur, device, button, Label);
 -- 
 1.7.1
 

 --
 LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
 Remotely access PCs and mobile devices and provide instant support
 Improve your efficiency, and focus on delivering more value-add services
 Discover what IT Professionals Know. Rescue delivers
 http://p.sf.net/sfu/logmein_12329d2d

 ___
 Linuxwacom-devel mailing list
 Linuxwacom-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 1/2] data: add layout for intuos4 4x9 wireless

2012-12-12 Thread Peter Hutterer
On Wed, Dec 12, 2012 at 10:12:26AM +0100, Olivier Fourdan wrote:
 

 From 2b5578af252629c573f353225004159646a21b98 Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Wed, 12 Dec 2012 09:53:18 +0100
 Subject: [PATCH 1/2] data: add layout for intuos4 4x9 wireless
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com

applied, thanks (i think these too were part of the pull request you sent me
off-list, if not remind me to apply them)

Cheers,
   Peter
 ---
  data/intuos4-6x9-wl.tablet  |1 +
  data/layouts/intuos4-6x9-wl.svg |  241 
 +++
  2 files changed, 242 insertions(+), 0 deletions(-)
  create mode 100644 data/layouts/intuos4-6x9-wl.svg
 
 diff --git a/data/intuos4-6x9-wl.tablet b/data/intuos4-6x9-wl.tablet
 index 786a7a5..2fb0478 100644
 --- a/data/intuos4-6x9-wl.tablet
 +++ b/data/intuos4-6x9-wl.tablet
 @@ -39,6 +39,7 @@ Class=Intuos4
  Width=8
  Height=5
  IntegratedIn=
 +Layout=intuos4-6x9-wl.svg
  Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;0x806;
  
  [Features]
 diff --git a/data/layouts/intuos4-6x9-wl.svg b/data/layouts/intuos4-6x9-wl.svg
 new file mode 100644
 index 000..59b2f1b
 --- /dev/null
 +++ b/data/layouts/intuos4-6x9-wl.svg
 @@ -0,0 +1,241 @@
 +?xml version=1.0 standalone=no?
 +!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
 +   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
 +!--
 +Designed after data from http://www.wacom-asia.com/files/intuos4.pdf
 +Size and positions of controls may not be accurate
 + --
 +svg
 +   xmlns=http://www.w3.org/2000/svg;
 +   version=1.1
 +   
 style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
 +   id=intuos4-6x9-wl
 +   width=363
 +   height=254
 +  title
 + id=titleWacom Intuos4 WL/title
 +  g
 +rect
 +   id=ButtonB
 +   class=B Button
 +   rx=.5
 +   ry=.5
 +   x=11
 +   y=40
 +   width=22
 +   height=12 /
 +path
 +   id=LeaderB
 +   class=B Leader
 +   d=M 35 46 l 25 0 /
 +text
 +   id=LabelB
 +   class=B Label
 +   x=62
 +   y=46
 +   style=text-anchor:start;
 +  B
 +/text
 +  /g
 +  g
 +rect
 +   id=ButtonC
 +   class=C Button
 +   rx=.5
 +   ry=.5
 +   x=11
 +   y=53
 +   width=22
 +   height=12 /
 +path
 +   id=LeaderC
 +   class=C Leader
 +   d=M 35 59 l 25 0 /
 +text
 +   id=LabelC
 +   class=C Label
 +   x=62
 +   y=59
 +   style=text-anchor:start;C/text
 +  /g
 +  g
 +rect
 +   id=ButtonD
 +   class=D Button
 +   rx=.5
 +   ry=.5
 +   x=11
 +   y=66
 +   width=22
 +   height=12 /
 +path
 +   id=LeaderD
 +   class=D Leader
 +   d=M 35 72 l 25 0 /
 +text
 +   id=LabelD
 +   class=D Label
 +   x=62
 +   y=72
 +   style=text-anchor:start;D/text
 +  /g
 +  g
 +rect
 +   id=ButtonE
 +   class=E Button
 +   rx=.5
 +   ry=.5
 +   x=11
 +   y=79
 +   width=22
 +   height=12 /
 +path
 +   id=LeaderE
 +   class=E Leader
 +   d=M 35 85 l 25 0 /
 +text
 +   id=LabelE
 +   class=E Label
 +   x=62
 +   y=85
 +   style=text-anchor:start;E/text
 +  /g
 +  g
 +rect
 +   id=ButtonF
 +   class=F Button
 +   rx=.5
 +   ry=.5
 +   x=11
 +   y=163
 +   width=22
 +   height=12 /
 +path
 +   id=LeaderF
 +   class=F Leader
 +   d=M 35 169 l 25 0 /
 +text
 +   id=LabelF
 +   class=F Label
 +   x=62
 +   y=169
 +   style=text-anchor:start;F/text
 +  /g
 +  g
 +rect
 +   id=ButtonG
 +   class=G Button
 +   rx=.5
 +   ry=.5
 +   x=11
 +   y=176
 +   width=22
 +   height=12 /
 + path
 +   id=LeaderG
 +   class=G Leader
 +   d=M 35 182 l 25 0 /
 +text
 +   id=LabelG
 +   class=G Label
 +   x=62
 +   y=182
 +   style=text-anchor:start;G/text
 +  /g
 +  g
 +rect
 +   id=ButtonH
 +   class=H Button
 +   rx=.5
 +   ry=.5
 +   x=11
 +   y=189
 +   width=22
 +   height=12 /
 +path
 +   id=LeaderH
 +   class=H Leader
 +   d=M 35 195 l 25 0 /
 +text
 +   id=LabelH
 +   class=H Label
 +   x=62
 +   y=195
 +   style=text-anchor:start;H/text
 +  /g
 +  g
 +rect
 +   id=ButtonI
 +   class=I Button
 +   rx=.5
 +   ry=.5
 +   x=11
 +   y=202
 +   width=22
 +   height=12 /
 +path
 +   id=LeaderI
 +   class=I Leader
 +   d=M 35 208 l 25 0 /
 +text
 +   id=LabelI
 +   class=I Label
 +   x=62
 +   y=208
 +   style=text-anchor:start;I/text
 +  /g
 +  g
 +circle
 +   id=Ring
 +   class=Ring TouchRing
 +   cx=31
 +   cy=127
 +   r=19.5 /
 +path
 +   id=LeaderRingCCW
 +   class=RingCCW Ring Leader
 +   d=M 31 107 l 0 -2 l 29 

Re: [Linuxwacom-devel] libwacom: [PATCH 0/3]: Add layouts for Cintiq 20WSX/24HD and DTI-520

2012-12-11 Thread Peter Hutterer
On Mon, Dec 10, 2012 at 05:40:18PM +0100, Olivier Fourdan wrote:

merged, thanks. can't push atm, sf seems to be down, but expect this
upstream soon.

btw, if you're leaving the cover letter for a patch series empty you can
just skip it altogether.

Cheers,
   Peter

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 0/3] Add Cintiq 21UX/21UX2/22HD layouts

2012-12-11 Thread Peter Hutterer
On Fri, Dec 07, 2012 at 03:42:39PM +0100, Olivier Fourdan wrote:
 Missing 24HD, that's for next week :)

series merged, thanks

Cheers,
   Peter


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] data: fix 2mm offset in label positioning

2012-12-11 Thread Peter Hutterer
On Fri, Dec 07, 2012 at 05:17:39PM +0100, Olivier Fourdan wrote:

merged, thanks

Cheers,
   Peter

 From dc81f18b8ccc62ab8440563c641d759825ce461f Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Fri, 7 Dec 2012 17:15:23 +0100
 Subject: [PATCH] data: fix 2mm offset in label positioning
 
 on Wacom Intuos5 M/L
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com
 ---
  data/layouts/intuos5-l.svg |4 ++--
  data/layouts/intuos5-m.svg |4 ++--
  2 files changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/data/layouts/intuos5-l.svg b/data/layouts/intuos5-l.svg
 index 29b7eca..32a59f1 100644
 --- a/data/layouts/intuos5-l.svg
 +++ b/data/layouts/intuos5-l.svg
 @@ -198,12 +198,12 @@
  path
 id=LeaderI
 class=I Leader
 -   d=M 46 240 L 50 240 /
 +   d=M 46 238 L 50 238 /
  text
 id=LabelI
 class=I Label
 x=52
 -   y=240
 +   y=238
 style=text-anchor:start;I/text
/g
g
 diff --git a/data/layouts/intuos5-m.svg b/data/layouts/intuos5-m.svg
 index d33c0ef..7c27184 100644
 --- a/data/layouts/intuos5-m.svg
 +++ b/data/layouts/intuos5-m.svg
 @@ -198,12 +198,12 @@
  path
 id=LeaderI
 class=I Leader
 -   d=M 46 206 L 50 206 /
 +   d=M 46 204 L 50 204 /
  text
 id=LabelI
 class=I Label
 x=52
 -   y=206
 +   y=204
 style=text-anchor:start;I/text
/g
g
 -- 
 1.7.1
 

 --
 LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
 Remotely access PCs and mobile devices and provide instant support
 Improve your efficiency, and focus on delivering more value-add services
 Discover what IT Professionals Know. Rescue delivers
 http://p.sf.net/sfu/logmein_12329d2d

 ___
 Linuxwacom-devel mailing list
 Linuxwacom-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 1/6] data: add layout for Wacom Graphire4 4x5

2012-12-11 Thread Olivier Fourdan


From b6f902ea9b358ace5599e408e1906e08f8e4ee6a Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Tue, 11 Dec 2012 15:50:37 +0100
Subject: [PATCH 1/6] data: add layout for Wacom Graphire4 4x5

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/graphire4-4x5.tablet  |1 +
 data/layouts/graphire4-4x5.svg |   66 
 2 files changed, 67 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/graphire4-4x5.svg

diff --git a/data/graphire4-4x5.tablet b/data/graphire4-4x5.tablet
index b93c65b..a0609c0 100644
--- a/data/graphire4-4x5.tablet
+++ b/data/graphire4-4x5.tablet
@@ -22,6 +22,7 @@ DeviceMatch=usb:056a:0015
 Class=Graphire
 Width=5
 Height=4
+Layout=graphire4-4x5.svg
 
 [Features]
 Stylus=true
diff --git a/data/layouts/graphire4-4x5.svg b/data/layouts/graphire4-4x5.svg
new file mode 100644
index 000..05e2ecb
--- /dev/null
+++ b/data/layouts/graphire4-4x5.svg
@@ -0,0 +1,66 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom-asia.com/download/manuals/G4_QSG_EN.pdf
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=graphire4-4x5
+   width=208
+   height=204
+  title
+ id=titleWacom Graphire4 4x5/title
+  g
+rect
+   id=ButtonA
+   class=A Button
+   rx=.5
+   ry=.5
+   x=55
+   y=24
+   width=36
+   height=10 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 73 36 l -23 23 l 0 10 m -5 0 l 10 0 /
+text
+   id=LabelA
+   class=A Label
+   x=50
+   y=79
+   style=text-anchor:middle;A/text
+  /g
+  rect
+ rx=1
+ ry=1
+ x=92
+ y=25
+ width=24
+ height=9 /
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=117
+   y=24
+   width=36
+   height=10 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 135 36 l 23 23 l 0 10 m -5 0 l 10 0 /
+text
+   id=LabelB
+   class=B Label
+   x=158
+   y=79
+   style=text-anchor:middle;B/text
+  /g
+/svg
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 2/6] data: add layout for Wacom Graphire Wireless

2012-12-11 Thread Olivier Fourdan


From 84cf6438d239eb25b322428641a0955204f82902 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Tue, 11 Dec 2012 15:51:14 +0100
Subject: [PATCH 2/6] data: add layout for Wacom Graphire Wireless

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/graphire-wireless-8x6.tablet  |1 +
 data/layouts/graphire-wireless-8x6.svg |   51 
 2 files changed, 52 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/graphire-wireless-8x6.svg

diff --git a/data/graphire-wireless-8x6.tablet b/data/graphire-wireless-8x6.tablet
index 1a922c4..5ec6bb1 100644
--- a/data/graphire-wireless-8x6.tablet
+++ b/data/graphire-wireless-8x6.tablet
@@ -4,6 +4,7 @@ DeviceMatch=bluetooth:056a:81
 Class=Graphire
 Width=8
 Height=6
+Layout=graphire-wireless-8x6.svg
 IntegratedIn=
 
 [Features]
diff --git a/data/layouts/graphire-wireless-8x6.svg b/data/layouts/graphire-wireless-8x6.svg
new file mode 100644
index 000..572edd4
--- /dev/null
+++ b/data/layouts/graphire-wireless-8x6.svg
@@ -0,0 +1,51 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom-asia.com/download/manuals/GBT_e_EN.pdf
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=graphire-wireless-8x6
+   width=257
+   height=280
+  title
+ id=titleWacom Graphire Wireless/title
+  path
+ d=M 86 0 a 50 33 0 0 0 85 0 /
+  g
+path
+   id=ButtonA
+   class=A Button
+   d=M 98 10 a 42 18 0 0 0 30 7 l 0 6 a 42 15 0 0 1 -34 -8 z /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 111 22 l -62 31 l 0 10 m -5 0 l 10 0 /
+text
+   id=LabelA
+   class=A Label
+   x=49
+   y=73
+   style=text-anchor:middle;A/text
+  /g
+  g
+path
+   id=ButtonB
+   class=B Button
+   d=M 159 10 a 42 18 0 0 1 -30 7 l 0 6 a 42 15 0 0 0 34 -8 z /
+   path
+   id=LeaderB
+   class=B Leader
+   d=M 146 22 l 62 31 l 0 10 m -5 0 l 10 0 /
+text
+   id=LabelB
+   class=B Label
+   x=208
+   y=73
+   style=text-anchor:middle;B/text
+  /g
+/svg
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 3/6] data: add layout for Bamboo Craft CTH-461

2012-12-11 Thread Olivier Fourdan


From 4a5ac8df3255aa05cfe4715be1e00cb9236815ae Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Tue, 11 Dec 2012 20:06:19 +0100
Subject: [PATCH 3/6] data: add layout for Bamboo Craft CTH-461

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/bamboo-craft.tablet  |1 +
 data/layouts/bamboo-craft.svg |  118 +
 2 files changed, 119 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/bamboo-craft.svg

diff --git a/data/bamboo-craft.tablet b/data/bamboo-craft.tablet
index e6e36ba..a69760c 100644
--- a/data/bamboo-craft.tablet
+++ b/data/bamboo-craft.tablet
@@ -14,6 +14,7 @@ DeviceMatch=usb:056a:00d2
 Class=Bamboo
 Width=6
 Height=4
+Layout=bamboo-craft.svg
 IntegratedIn=
 
 [Features]
diff --git a/data/layouts/bamboo-craft.svg b/data/layouts/bamboo-craft.svg
new file mode 100644
index 000..9fd42d9
--- /dev/null
+++ b/data/layouts/bamboo-craft.svg
@@ -0,0 +1,118 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+Designed after data from http://www.wacom-asia.com/download/manuals/BambooUsersManual.pdf
+Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=bamboo-craft
+   width=248
+   height=176
+  title
+ id=titleWacom Bamboo Craft (CTH-461)/title
+  g
+path
+   id=ButtonA
+   class=A Button
+   d=M 26 29 a 7 7 0 0 1 7 -7 l 14 0 l 0 39 l -21 0 z /
+circle
+   id=DotA
+   cx=36.5
+   cy=41.5
+   r=.5 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 48 42 l 20 0 /
+text
+   id=LabelA
+   class=A Label
+   x=70
+   y=42
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=26
+   y=62
+   width=21
+   height=24 /
+circle
+   id=DotB
+   cx=36.5
+   cy=73.5
+   r=.5 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 48 74 l 20 0 /
+text
+   id=LabelB
+   class=B Label
+   x=70
+   y=74
+   style=text-anchor:start;B/text
+  /g
+  rect
+  rx=1
+  ry=1
+  x=26
+  y=87
+  width=21
+  height=2 /
+  g
+rect
+   id=ButtonC
+   class=C Button
+   x=26
+   y=90
+   rx=.5
+   ry=.5
+   width=21
+   height=24 /
+circle
+   id=DotC
+   cx=36.5
+   cy=101.5
+   r=.5 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 48 102 l 20 0 /
+text
+   id=LabelC
+   class=C Label
+   x=70
+   y=102
+   style=text-anchor:start;C/text
+  /g
+  g
+path
+   id=ButtonD
+   class=D Button
+   d=M 26 147 a 7 7 0 0 0 7 7 l 14 0 l 0 -39 l -21 0 z /
+circle
+   id=DotD
+   cx=36.5
+   cy=133.5
+   r=.5 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 48 134 l 20 0 /
+text
+   id=LabelD
+   class=D Label
+   x=70
+   y=134
+   style=text-anchor:start;D/text
+  /g
+/svg
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 5/6] data: add layout for Bamboo 2fg 6x8 CTH-661

2012-12-11 Thread Olivier Fourdan


From c8501a8cc9e0dcb7dc38103055d8b4232553dc96 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Tue, 11 Dec 2012 20:07:06 +0100
Subject: [PATCH 5/6] data: add layout for Bamboo 2fg 6x8 CTH-661

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/bamboo-2fg-6x8.tablet  |1 +
 data/layouts/bamboo-2fg-6x8.svg |  118 +++
 2 files changed, 119 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/bamboo-2fg-6x8.svg

diff --git a/data/bamboo-2fg-6x8.tablet b/data/bamboo-2fg-6x8.tablet
index 08874e4..f5f9131 100644
--- a/data/bamboo-2fg-6x8.tablet
+++ b/data/bamboo-2fg-6x8.tablet
@@ -14,6 +14,7 @@ DeviceMatch=usb:056a:00d3
 Class=Bamboo
 Width=9
 Height=5
+Layout=bamboo-2fg-6x8.svg
 IntegratedIn=
 
 [Features]
diff --git a/data/layouts/bamboo-2fg-6x8.svg b/data/layouts/bamboo-2fg-6x8.svg
new file mode 100644
index 000..1a2ed9c
--- /dev/null
+++ b/data/layouts/bamboo-2fg-6x8.svg
@@ -0,0 +1,118 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+Designed after data from http://www.wacom-asia.com/download/manuals/BambooUsersManual.pdf
+Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=bamboo-2fg-6x8
+   width=337
+   height=222
+  title
+ id=titleWacom Bamboo 2FG 6x8 (CTH-661)/title
+  g
+path
+   id=ButtonA
+   class=A Button
+   d=M 35 35 a 9 9 0 0 1 9 -9 l 19 0 l 0 50 l -28 0 z /
+circle
+   id=DotA
+   cx=49.5
+   cy=52.5
+   r=.5 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 65 53 l 20 0 /
+text
+   id=LabelA
+   class=A Label
+   x=87
+   y=53
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=35
+   y=77
+   width=28
+   height=32 /
+circle
+   id=DotB
+   cx=49.5
+   cy=93.5
+   r=.5 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 65 94 l 20 0 /
+text
+   id=LabelB
+   class=B Label
+   x=87
+   y=94
+   style=text-anchor:start;B/text
+  /g
+  rect
+  rx=1
+  ry=1
+  x=35
+  y=110
+  width=28
+  height=2 /
+  g
+rect
+   id=ButtonC
+   class=C Button
+   x=35
+   y=113
+   rx=.5
+   ry=.5
+   width=28
+   height=32 /
+circle
+   id=DotC
+   cx=49.5
+   cy=127.5
+   r=.5 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 65 128 l 20 0 /
+text
+   id=LabelC
+   class=C Label
+   x=87
+   y=128
+   style=text-anchor:start;C/text
+  /g
+  g
+path
+   id=ButtonD
+   class=D Button
+   d=M 35 187 a 9 9 0 0 0 9 9 l 19 0 l 0 -50 l -28 0 z /
+circle
+   id=DotD
+   cx=49.5
+   cy=169.5
+   r=.5 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 65 170 l 20 0 /
+text
+   id=LabelD
+   class=D Label
+   x=87
+   y=170
+   style=text-anchor:start;D/text
+  /g
+/svg
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 4/6] data: add layout for Bamboo 2fg CTT-460

2012-12-11 Thread Olivier Fourdan


From 50d9f75464a09a6f0708c317b5643295210542c0 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Tue, 11 Dec 2012 20:06:46 +0100
Subject: [PATCH 4/6] data: add layout for Bamboo 2fg CTT-460

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/bamboo-2fg.tablet  |1 +
 data/layouts/bamboo-2fg.svg |  128 +++
 2 files changed, 129 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/bamboo-2fg.svg

diff --git a/data/bamboo-2fg.tablet b/data/bamboo-2fg.tablet
index 103af68..6e37e7a 100644
--- a/data/bamboo-2fg.tablet
+++ b/data/bamboo-2fg.tablet
@@ -13,6 +13,7 @@ DeviceMatch=usb:056a:00d0
 Class=Bamboo
 Width=5
 Height=3
+Layout=bamboo-2fg.svg
 IntegratedIn=
 
 [Features]
diff --git a/data/layouts/bamboo-2fg.svg b/data/layouts/bamboo-2fg.svg
new file mode 100644
index 000..4dd3694
--- /dev/null
+++ b/data/layouts/bamboo-2fg.svg
@@ -0,0 +1,128 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+Designed after data from http://www.wacom-asia.com/download/manuals/BambooUsersManual.pdf
+Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=bamboo-2fg
+   width=208
+   height=136
+  title
+ id=titleWacom Bamboo 2FG (CTT-460)/title
+  g
+rect
+   id=ButtonA
+   class=A Button
+   rx=.5
+   ry=.5
+   x=17
+   y=11
+   width=28
+   height=36 /
+circle
+   id=DotA
+   cx=30.5
+   cy=28.5
+   r=.5 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 47 29 l 20 0 /
+text
+   id=LabelA
+   class=A Label
+   x=69
+   y=29
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=17
+   y=48
+   width=28
+   height=18 /
+circle
+   id=DotB
+   cx=30.5
+   cy=57.5
+   r=.5 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 47 58 l 20 0 /
+text
+   id=LabelB
+   class=B Label
+   x=69
+   y=58
+   style=text-anchor:start;B/text
+  /g
+  rect
+  rx=1
+  ry=1
+  x=17
+  y=67
+  width=28
+  height=2 /
+  g
+rect
+   id=ButtonC
+   class=C Button
+   x=17
+   y=70
+   rx=.5
+   ry=.5
+   width=28
+   height=18 /
+circle
+   id=DotC
+   cx=30.5
+   cy=79.5
+   r=.5 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 47 80 l 20 0 /
+text
+   id=LabelC
+   class=C Label
+   x=69
+   y=80
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   x=17
+   y=89
+   rx=.5
+   ry=.5
+   width=28
+   height=36 /
+circle
+   id=DotD
+   cx=30.5
+   cy=106.5
+   r=.5 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 47 107 l 20 0 /
+text
+   id=LabelD
+   class=D Label
+   x=69
+   y=107
+   style=text-anchor:start;D/text
+  /g
+/svg
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 6/6] data: add layout for Bamboo 2fg 4x5 CTH-460

2012-12-11 Thread Olivier Fourdan


From 9b79ae9d2b68ac93e4aae902ddf3bd6f5650e15c Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Tue, 11 Dec 2012 20:07:34 +0100
Subject: [PATCH 6/6] data: add layout for Bamboo 2fg 4x5 CTH-460

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/bamboo-2fg-4x5.tablet  |1 +
 data/layouts/bamboo-2fg-4x5.svg |  128 +++
 2 files changed, 129 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/bamboo-2fg-4x5.svg

diff --git a/data/bamboo-2fg-4x5.tablet b/data/bamboo-2fg-4x5.tablet
index ab7afaf..67f963d 100644
--- a/data/bamboo-2fg-4x5.tablet
+++ b/data/bamboo-2fg-4x5.tablet
@@ -14,6 +14,7 @@ DeviceMatch=usb:056a:00d1
 Class=Bamboo
 Width=6
 Height=4
+Layout=bamboo-2fg-4x5.svg
 IntegratedIn=
 
 [Features]
diff --git a/data/layouts/bamboo-2fg-4x5.svg b/data/layouts/bamboo-2fg-4x5.svg
new file mode 100644
index 000..ec56790
--- /dev/null
+++ b/data/layouts/bamboo-2fg-4x5.svg
@@ -0,0 +1,128 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+Designed after data from http://www.wacom-asia.com/download/manuals/BambooUsersManual.pdf
+Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=bamboo-2fg-4x5
+   width=248
+   height=176
+  title
+ id=titleWacom Bamboo 2FG 4x5 (CTH-460)/title
+  g
+rect
+   id=ButtonA
+   class=A Button
+   rx=.5
+   ry=.5
+   x=28
+   y=31
+   width=28
+   height=36 /
+circle
+   id=DotA
+   cx=41.5
+   cy=48.5
+   r=.5 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 58 49 l 20 0 /
+text
+   id=LabelA
+   class=A Label
+   x=80
+   y=49
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=28
+   y=68
+   width=28
+   height=18 /
+circle
+   id=DotB
+   cx=41.5
+   cy=77.5
+   r=.5 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 58 78 l 20 0 /
+text
+   id=LabelB
+   class=B Label
+   x=80
+   y=78
+   style=text-anchor:start;B/text
+  /g
+  rect
+  rx=1
+  ry=1
+  x=28
+  y=87
+  width=28
+  height=2 /
+  g
+rect
+   id=ButtonC
+   class=C Button
+   x=28
+   y=90
+   rx=.5
+   ry=.5
+   width=28
+   height=18 /
+circle
+   id=DotC
+   cx=41.5
+   cy=99.5
+   r=.5 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 58 100 l 20 0 /
+text
+   id=LabelC
+   class=C Label
+   x=80
+   y=100
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   x=28
+   y=109
+   rx=.5
+   ry=.5
+   width=28
+   height=36 /
+circle
+   id=DotD
+   cx=41.5
+   cy=126.5
+   r=.5 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 58 127 l 20 0 /
+text
+   id=LabelD
+   class=D Label
+   x=80
+   y=127
+   style=text-anchor:start;D/text
+  /g
+/svg
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 0/3]: Add layouts for Cintiq 20WSX/24HD and DTI-520

2012-12-10 Thread Olivier Fourdan


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 1/3] data: add layout for Cintiq 20WSX

2012-12-10 Thread Olivier Fourdan


From c6135a7dee6b0e88d5eed89c75f4de0250d41eae Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Mon, 10 Dec 2012 15:51:55 +0100
Subject: [PATCH 1/3] data: add layout for Cintiq 20WSX

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/cintiq-20wsx.tablet  |1 +
 data/layouts/cintiq-20wsx.svg |  433 +
 2 files changed, 434 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/cintiq-20wsx.svg

diff --git a/data/cintiq-20wsx.tablet b/data/cintiq-20wsx.tablet
index 4bc91d0..f9aec9c 100644
--- a/data/cintiq-20wsx.tablet
+++ b/data/cintiq-20wsx.tablet
@@ -39,6 +39,7 @@ DeviceMatch=usb:056a:00c5
 Class=Cintiq
 Width=17
 Height=11
+Layout=cintiq-20wsx.svg
 Styli=0x913;0x91b;0x813;0x81b;0x823;0x82b;0x801;0x885;
 IntegratedIn=Display
 
diff --git a/data/layouts/cintiq-20wsx.svg b/data/layouts/cintiq-20wsx.svg
new file mode 100644
index 000..f03b8a4
--- /dev/null
+++ b/data/layouts/cintiq-20wsx.svg
@@ -0,0 +1,433 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom.com/~/media/Files/Manuals/Cintiq20WSX_UserManual_Final.pdf
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=cintiq-20wsx
+   width=547
+   height=367
+  title
+ id=titleWacom Cintiq 20WSX/title
+  g
+rect
+   id=ButtonA
+   class=A Button
+   rx=.5
+   ry=.5
+   x=40
+   y=195
+   width=11
+   height=17 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 53 204 l 20 0 l 0 9 l 5 0 /
+text
+   id=LabelA
+   class=A Label
+   x=80
+   y=213
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=40
+   y=213
+   width=11
+   height=17 /
+circle
+   id=DotB1
+   cx=45.5
+   cy=218.5
+   r=.5 /
+circle
+   id=DotB2
+   cx=45.5
+   cy=221.5
+   r=.5 /
+circle
+   id=DotB3
+   cx=45.5
+   cy=224.5
+   r=.5 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 53 222 l 15 0 l 0 21 l 10 0 /
+text
+   id=LabelB
+   class=B Label
+   x=80
+   y=243
+   style=text-anchor:start;B/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   x=28
+   y=195
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 26 213 l -1 0 l 0 -35 l 43 0 l 0 -25 l 10 0 /
+text
+   id=LabelC
+   class=C Label
+   x=80
+   y=153
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   x=28
+   y=231
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 53 237 l 10 0 l 0 36 l 15 0 /
+text
+   id=LabelD
+   class=D Label
+   x=80
+   y=273
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   x=496
+   y=195
+   rx=.5
+   ry=.5
+   width=11
+   height=17 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 494 204 l -20 0 l 0 9 l -5 0 /
+text
+   id=LabelE
+   class=E Label
+   x=467
+   y=213
+   style=text-anchor:end;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   x=496
+   y=213
+   rx=.5
+   ry=.5
+   width=11
+   height=17 /
+circle
+   id=DotF1
+   cx=501.5
+   cy=218.5
+   r=.5 /
+circle
+   id=DotF2
+   cx=501.5
+   cy=221.5
+   r=.5 /
+circle
+   id=DotF3
+   cx=501.5
+   cy=224.5
+   r=.5 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 494 222 l -15 0 l 0 21 l -10 0 /
+text
+   id=LabelF
+   class=F Label
+   x=467
+   y=243
+   style=text-anchor:end;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   x=508
+   y=195
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 521 213 l 1 0 l 0 -35 l -43 0 l 0 -25 l -10 0 /
+text
+   id=LabelG
+   class=G Label
+   x=467
+   y=153
+   style=text-anchor:end;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   x=496
+   y=231
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 494 237 l -10 0 l 0 36 l -15 0 /
+   text
+   id=LabelH
+   class=H Label
+   x=467
+   y=273
+   style=text-anchor:end;H/text
+  /g
+  g
+rect
+   

[Linuxwacom-devel] libwacom: [PATCH 3/3] data: add layout for DTI-520

2012-12-10 Thread Olivier Fourdan


From 656ecf22f210c191677f7f7139d989c56452a97e Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Mon, 10 Dec 2012 17:36:09 +0100
Subject: [PATCH 3/3] data: add layout for DTI-520

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/dti-520.tablet  |1 +
 data/layouts/dti-520.svg |  204 ++
 2 files changed, 205 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/dti-520.svg

diff --git a/data/dti-520.tablet b/data/dti-520.tablet
index 700ab51..0aecd54 100644
--- a/data/dti-520.tablet
+++ b/data/dti-520.tablet
@@ -20,6 +20,7 @@ DeviceMatch=usb:056a:003a
 Class=PenDisplay
 Width=14
 Height=12
+Layout=dti-520.svg
 # FIXME does the stylus have an eraser?
 # Styli=0xf;
 IntegratedIn=Display;System
diff --git a/data/layouts/dti-520.svg b/data/layouts/dti-520.svg
new file mode 100644
index 000..15a384c
--- /dev/null
+++ b/data/layouts/dti-520.svg
@@ -0,0 +1,204 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom-asia.com/download/manuals/DTI-520UB_en.pdf
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=dti-520
+   width=344
+   height=300
+  title
+ id=titleWacom DTI520UB/L/title
+  g
+circle
+   id=ButtonA
+   class=A Button
+   cx=152
+   cy=280
+   r=6 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 100 210 l 10 0 m -5 0 l 47 47 l 0 14 /
+text
+   id=LabelA
+   class=A Label
+   x=105
+   y=200
+   style=text-anchor:middle;A/text
+  /g
+  g
+circle
+   id=ButtonB
+   class=B Button
+   cx=132
+   cy=280
+   r=6 /
+circle
+   id=ButtonB
+   class=B Button
+   cx=212
+   cy=280
+   r=6 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 132 288 l 0 8 M 212 288 l 0 8 l -100 0 l -62 -62 l 0 -24 m -5 0 l 10 0 /
+text
+   id=LabelB
+   class=B Label
+   x=50
+   y=200
+   style=text-anchor:middle;B/text
+  /g
+
+  g
+circle
+   id=ButtonC
+   class=C Button
+   cx=192
+   cy=280
+   r=6 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 198 274 l 40 -40 l 56 0 l 0 -24 m -5 0 l 10 0 /
+text
+   id=LabelC
+   class=C Label
+   x=294
+   y=200
+   style=text-anchor:middle;C/text
+  /g
+  g
+circle
+   id=ButtonD
+   class=D Button
+   cx=172
+   cy=273
+   r=6 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 167 210 l 10 0 m -5 0 l 0 54 /
+text
+   id=LabelD
+   class=D Label
+   x=172
+   y=200
+   style=text-anchor:middle;D/text
+  /g
+  g
+circle
+   id=ButtonE
+   class=E Button
+   cx=172
+   cy=287
+   r=6 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 178 281 l 61 -61 l 0 -10 m -5 0 l 10 0 /
+text
+   id=LabelE
+   class=E Label
+   x=239
+   y=200
+   style=text-anchor:middle;E/text
+  /g
+  g
+circle
+   id=ButtonF
+   class=F Button
+   cx=138
+   cy=10
+   r=4 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 132 10 l -82 0 l 0 80 m -5 0 l 10 0 /
+text
+   id=LabelF
+   class=F Label
+   x=50
+   y=100
+   style=text-anchor:middle;F/text
+  /g
+  g
+circle
+   id=ButtonG
+   class=G Button
+   cx=155
+   cy=10
+   r=4 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 151 14 l -46 46 l 0 30 m -5 0 l 10 0 /
+text
+   id=LabelG
+   class=G Label
+   x=105
+   y=100
+   style=text-anchor:middle;G/text
+  /g
+  g
+circle
+   id=ButtonH
+   class=H Button
+   cx=172
+   cy=10
+   r=4 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 172 15 l 0 75 m -5 0 l 10 0 /
+text
+   id=LabelH
+   class=H Label
+   x=172
+   y=100
+   style=text-anchor:middle;H/text
+  /g
+  g
+circle
+   id=ButtonI
+   class=I Button
+   cx=189
+   cy=10
+   r=4 /
+path
+   id=LeaderI
+   class=I Leader
+   d=M 193 14 l 46 46 l 0 30 m -5 0 l 10 0 /
+text
+   id=LabelI
+   class=I Label
+   x=239
+   y=100
+   style=text-anchor:middle;I/text
+  /g
+  g
+circle
+   id=ButtonJ
+   class=J Button
+   cx=206
+   cy=10
+   r=4 /
+path
+   id=LeaderJ
+   class=J Leader
+   d=M 212 10 l 82 0 l 0 80 m -5 0 l 10 0 /
+text
+   id=LabelJ
+   class=J Label
+   x=294
+   y=100
+   style=text-anchor:middle;J/text
+  /g
+/svg
-- 
1.7.1

--

[Linuxwacom-devel] libwacom: [PATCH 2/3] data: add layout for Cintiq 24HD

2012-12-10 Thread Olivier Fourdan


From da7b5353d845ce33f113885628184ea8083d04d2 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Mon, 10 Dec 2012 15:52:18 +0100
Subject: [PATCH 2/3] data: add layout for Cintiq 24HD

and Cintiq 24HD touch

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/cintiq-24hd-touch.tablet |1 +
 data/cintiq-24hd.tablet   |1 +
 data/layouts/cintiq-24hd.svg  |  515 +
 3 files changed, 517 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/cintiq-24hd.svg

diff --git a/data/cintiq-24hd-touch.tablet b/data/cintiq-24hd-touch.tablet
index 8e9bad1..41d05de 100644
--- a/data/cintiq-24hd-touch.tablet
+++ b/data/cintiq-24hd-touch.tablet
@@ -45,6 +45,7 @@ DeviceMatch=usb:056a:00f8
 Class=Cintiq
 Width=21
 Height=13
+Layout=cintiq-24hd.svg
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;
 IntegratedIn=Display
 
diff --git a/data/cintiq-24hd.tablet b/data/cintiq-24hd.tablet
index 39b749f..0a3f4ef 100644
--- a/data/cintiq-24hd.tablet
+++ b/data/cintiq-24hd.tablet
@@ -44,6 +44,7 @@ DeviceMatch=usb:056a:00f4
 Class=Cintiq
 Width=21
 Height=13
+Layout=cintiq-24hd.svg
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;
 IntegratedIn=Display
 
diff --git a/data/layouts/cintiq-24hd.svg b/data/layouts/cintiq-24hd.svg
new file mode 100644
index 000..1277798
--- /dev/null
+++ b/data/layouts/cintiq-24hd.svg
@@ -0,0 +1,515 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom.asia/cintiq24hd/specifications
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=cintiq-24hd
+   width=770
+   height=464
+  title
+ id=titleWacom Cintq 24HD/title
+  g
+rect
+   id=ButtonA
+   class=A ModeSwitch Button
+   rx=3
+   ry=3
+   x=10
+   y=155
+   width=12
+   height=10 /
+rect
+   id=DotA
+   rx=1
+   ry=1
+   x=14
+   y=159.5
+   width=4
+   height=1 /
+path
+   id=LeaderA
+   class=A ModeSwitch Leader
+   d=M 8 160 l -1 0 l 0 -60 l 91 0 /
+text
+   id=LabelA
+   class=A ModeSwitch Label
+   x=100
+   y=100
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B ModeSwitch Button
+   rx=3
+   ry=3
+   x=10
+   y=170
+   width=12
+   height=10 /
+rect
+   id=DotB
+   rx=1
+   ry=1
+   x=14
+   y=174.5
+   width=4
+   height=1 /
+path
+   id=LeaderB
+   class=B ModeSwitch Leader
+   d=M 24 175 l 1 0 l 0 -50 l 73 0 /
+text
+   id=LabelB
+   class=B ModeSwitch Label
+   x=100
+   y=125
+   style=text-anchor:start;B/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C ModeSwitch Button
+   rx=3
+   ry=3
+   x=10
+   y=185
+   width=12
+   height=10 /
+rect
+   id=DotC
+   rx=1
+   ry=1
+   x=14
+   y=189.5
+   width=4
+   height=1 /
+path
+   id=LeaderC
+   class=C ModeSwitch Leader
+   d=M 8 190 l -1 0 l 0 10 l 91 0 /
+text
+   id=LabelC
+   class=C ModeSwitch Label
+   x=100
+   y=200
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   rx=3
+   ry=3
+   x=10
+   y=205
+   width=12
+   height=46 /
+rect
+   id=DotD
+   rx=1
+   ry=1
+   x=15.5
+   y=225
+   width=1
+   height=6 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 8 228 l -1 0 l 0 97 l 91 0  /
+text
+   id=LabelD
+   class=D Label
+   x=100
+   y=325
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=3
+   ry=3
+   x=26
+   y=205
+   width=12
+   height=46 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 32 253 l 0 47 l 66 0  /
+text
+   id=LabelE
+   class=E Label
+   x=100
+   y=300
+   style=text-anchor:start;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=3
+   ry=3
+   x=42
+   y=205
+   width=30
+   height=12 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 74 211 l 15 0 l 0 14 l 9 0 /
+text
+   id=LabelF
+   class=F Label
+   x=100
+   y=225
+   style=text-anchor:start;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   rx=3
+   ry=3
+   x=42
+   y=222
+   width=30
+   height=12 /
+rect
+   id=DotG
+   rx=1
+   ry=1
+   x=54
+   y=227.5
+   width=6
+   height=1 /
+path
+   id=LeaderG
+   

[Linuxwacom-devel] libwacom: [PATCH 1/3] data: add layout for Cintiq 21UX2

2012-12-07 Thread Olivier Fourdan


From 9d23ad138c7f6b77ff1c18919aa6622a21ec3e24 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 7 Dec 2012 15:34:24 +0100
Subject: [PATCH 1/3] data: add layout for Cintiq 21UX2

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/cintiq-21ux2.tablet  |1 +
 data/layouts/cintiq-21ux2.svg |  451 +
 2 files changed, 452 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/cintiq-21ux2.svg

diff --git a/data/cintiq-21ux2.tablet b/data/cintiq-21ux2.tablet
index 734f9f3..df81807 100644
--- a/data/cintiq-21ux2.tablet
+++ b/data/cintiq-21ux2.tablet
@@ -48,6 +48,7 @@ DeviceMatch=usb:056a:00cc
 Class=Cintiq
 Width=17
 Height=13
+Layout=cintiq-21ux2.svg
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;
 IntegratedIn=Display
 
diff --git a/data/layouts/cintiq-21ux2.svg b/data/layouts/cintiq-21ux2.svg
new file mode 100644
index 000..0417833
--- /dev/null
+++ b/data/layouts/cintiq-21ux2.svg
@@ -0,0 +1,451 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom-asia.com/download/manuals/UM_DTK2100.pdf
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=cintiq-21ux2
+   width=560
+   height=420
+  title
+ id=titleWacom Cintiq 21UX2/title
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=24
+   y=144
+   width=20
+   height=12 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 46 150 l 5 0 l 0 -49 l 20 0 /
+text
+   id=LabelB
+   class=B Label
+   x=73
+   y=101
+   style=text-anchor:start;B/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   rx=.5
+   ry=.5
+   x=24
+   y=157
+   width=20
+   height=12 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 46 163 l 10 0 l 0 -36 l 15 0 /
+text
+   id=LabelC
+   class=C Label
+   x=73
+   y=127
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   rx=.5
+   ry=.5
+   x=24
+   y=170
+   width=20
+   height=12 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 46 176 l 15 0 l 0 -23 l 10 0 /
+text
+   id=LabelD
+   class=D Label
+   x=73
+   y=153
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=.5
+   ry=.5
+   x=24
+   y=183
+   width=20
+   height=12 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 46 189 l 20 0 l 0 -10 l 5 0 /
+text
+   id=LabelE
+   class=E Label
+   x=73
+   y=179
+   style=text-anchor:start;E/text
+  /g
+  g
+circle
+   id=ButtonA
+   class=A ModeSwitch Button
+   cx=34
+   cy=210
+   r=9 /
+path
+   id=LeaderA
+   class=A ModeSwitch Leader
+   d=M 46 210 l 25 0 /
+text
+   id=LabelA
+   class=A ModeSwitch Label
+   x=73
+   y=210
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=.5
+   ry=.5
+   x=24
+   y=225
+   width=20
+   height=12 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 46 231 l 20 0 l 0 10 l 5 0 /
+text
+   id=LabelF
+   class=F Label
+   x=73
+   y=241
+   style=text-anchor:start;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   rx=.5
+   ry=.5
+   x=24
+   y=238
+   width=20
+   height=12 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 46 245 l 15 0 l 0 23 l 10 0 /
+text
+   id=LabelG
+   class=G Label
+   x=73
+   y=267
+   style=text-anchor:start;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   rx=.5
+   ry=.5
+   x=24
+   y=251
+   width=20
+   height=12 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 46 257 l 10 0 l 0 36 l 15 0 /
+text
+   id=LabelH
+   class=H Label
+   x=73
+   y=293
+   style=text-anchor:start;H/text
+  /g
+  g
+rect
+   id=ButtonI
+   class=I Button
+   rx=.5
+   ry=.5
+   x=24
+   y=264
+   width=20
+   height=12 /
+path
+   id=LeaderI
+   class=I Leader
+   d=M 46 270 l 5 0 l 0 49 l 20 0 /
+text
+   id=LabelI
+   class=I Label
+   x=73
+   y=319
+   style=text-anchor:start;I/text
+  /g
+  g
+rect
+   id=ButtonK
+   class=K Button
+   rx=.5
+   ry=.5
+   x=516
+   y=144
+   width=20
+   height=12 /
+path
+   id=LeaderK
+   class=K 

[Linuxwacom-devel] libwacom: [PATCH 3/3] data: add layout for Cintiq 21UX

2012-12-07 Thread Olivier Fourdan


From 24f585f3c7c93bb4be6b9f039fddadd8308a5398 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 7 Dec 2012 15:35:54 +0100
Subject: [PATCH 3/3] data: add layout for Cintiq 21UX

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/cintiq-21ux.tablet  |1 +
 data/layouts/cintiq-21ux.svg |  247 ++
 2 files changed, 248 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/cintiq-21ux.svg

diff --git a/data/cintiq-21ux.tablet b/data/cintiq-21ux.tablet
index 1c353a4..69e8d4a 100644
--- a/data/cintiq-21ux.tablet
+++ b/data/cintiq-21ux.tablet
@@ -32,6 +32,7 @@ DeviceMatch=usb:056a:003f
 Class=Cintiq
 Width=17
 Height=13
+Layout=cintiq-21ux.svg
 Styli=0x913;0x91b;0x813;0x81b;0x823;0x82b;0x801;0x885;
 IntegratedIn=Display
 
diff --git a/data/layouts/cintiq-21ux.svg b/data/layouts/cintiq-21ux.svg
new file mode 100644
index 000..3b9550c
--- /dev/null
+++ b/data/layouts/cintiq-21ux.svg
@@ -0,0 +1,247 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom-asia.com/download/manuals/UM_DTZ2100.pdf
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=cintiq-21ux
+   width=561
+   height=421
+  title
+ id=titleWacom Cintiq 21UX/title
+  g
+rect
+   id=ButtonA
+   class=A Button
+   rx=.5
+   ry=.5
+   x=20
+   y=224
+   width=11
+   height=17 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 33 233 l 20 0 l 0 10 l 5 0 /
+text
+   id=LabelA
+   class=A Label
+   x=60
+   y=243
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=20
+   y=242
+   width=11
+   height=17 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 33 251 l 16 0 l 0 13 l 9 0 /
+text
+   id=LabelB
+   class=B Label
+   x=60
+   y=264
+   style=text-anchor:start;B/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   x=8
+   y=224
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 6 242 l -1 0 l 0 -22 l 53 0 /
+text
+   id=LabelC
+   class=C Label
+   x=60
+   y=220
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   x=8
+   y=260
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 33 266 l 8 0 l 0 19 l 17 0 /
+text
+   id=LabelD
+   class=D Label
+   x=60
+   y=285
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   x=530
+   y=224
+   rx=.5
+   ry=.5
+   width=11
+   height=17 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 528 233 l -20 0 l 0 10 l -5 0 /
+text
+   id=LabelE
+   class=E Label
+   x=500
+   y=243
+   style=text-anchor:end;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   x=530
+   y=242
+   rx=.5
+   ry=.5
+   width=11
+   height=17 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 528 251 l -16 0 l 0 13 l -9 0 /
+text
+   id=LabelF
+   class=F Label
+   x=500
+   y=264
+   style=text-anchor:end;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   x=542
+   y=224
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 555 242 l 1 0 l 0 -22 l -53 0 /
+text
+   id=LabelG
+   class=G Label
+   x=500
+   y=220
+   style=text-anchor:end;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   x=530
+   y=260
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 528 266 l -8 0 l 0 19 l -17 0 /
+text
+   id=LabelH
+   class=H Label
+   x=500
+   y=285
+   style=text-anchor:end;H/text
+  /g
+  g
+rect
+   id=Strip
+   class=Strip TouchStrip
+   x=20
+   y=140
+   rx=2
+   ry=2
+   width=12
+   height=60 /
+path
+   id=LeaderStripUp
+   class=StripUp Strip Leader
+   d=M 26 138 l 0 -2 l 16 0 l 0 7 l 16 0 /
+text
+   id=LabelStripUp
+   class=StripUp Strip Label
+   x=60
+   y=143
+   style=text-anchor:start;Up/text
+path
+   id=LeaderStripDown
+   class=StripDown Strip Leader
+   d=M 26 202 l 0 2 l 16 0 l 0 -7 l 16 0 /
+text
+   

[Linuxwacom-devel] libwacom: [PATCH 0/3] Add Cintiq 21UX/21UX2/22HD layouts

2012-12-07 Thread Olivier Fourdan
Missing 24HD, that's for next week :)

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 2/3] data: add layout for Cintiq 22HD

2012-12-07 Thread Olivier Fourdan


From 2e416405f513dfa978ebcb0b35007bc16644720f Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 7 Dec 2012 15:34:50 +0100
Subject: [PATCH 2/3] data: add layout for Cintiq 22HD

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/cintiq-22hd.tablet  |3 +-
 data/layouts/cintiq-22hd.svg |  457 ++
 2 files changed, 459 insertions(+), 1 deletions(-)
 create mode 100644 data/layouts/cintiq-22hd.svg

diff --git a/data/cintiq-22hd.tablet b/data/cintiq-22hd.tablet
index f290e2f..9faac95 100644
--- a/data/cintiq-22hd.tablet
+++ b/data/cintiq-22hd.tablet
@@ -1,4 +1,4 @@
-# Wacom
+ # Wacom
 # Cintiq 22HD
 # DTK-2200
 #
@@ -36,6 +36,7 @@ DeviceMatch=usb:056a:00fa
 Class=Cintiq
 Width=19
 Height=11
+Layout=cintiq-22hd.svg
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;
 IntegratedIn=Display
 
diff --git a/data/layouts/cintiq-22hd.svg b/data/layouts/cintiq-22hd.svg
new file mode 100644
index 000..fabd084
--- /dev/null
+++ b/data/layouts/cintiq-22hd.svg
@@ -0,0 +1,457 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom.com/~/media/Files/Manuals/Cintiq-22HD-Manual.pdf
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=cintiq-22hd
+   width=650
+   height=400
+  title
+ id=titleWacom Cintiq 22HD/title
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=24
+   y=139
+   width=20
+   height=12 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 46 145 l 5 0 l 0 -49 l 20 0 /
+text
+   id=LabelB
+   class=B Label
+   x=73
+   y=96
+   style=text-anchor:start;B/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   rx=.5
+   ry=.5
+   x=24
+   y=152
+   width=20
+   height=12 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 46 158 l 10 0 l 0 -36 l 15 0 /
+text
+   id=LabelC
+   class=C Label
+   x=73
+   y=122
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   rx=.5
+   ry=.5
+   x=24
+   y=165
+   width=20
+   height=12 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 46 171 l 15 0 l 0 -23 l 10 0 /
+text
+   id=LabelD
+   class=D Label
+   x=73
+   y=148
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=.5
+   ry=.5
+   x=24
+   y=178
+   width=20
+   height=12 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 46 184 l 20 0 l 0 -10 l 5 0 /
+text
+   id=LabelE
+   class=E Label
+   x=73
+   y=174
+   style=text-anchor:start;E/text
+  /g
+  g
+rect
+   id=ButtonA
+   class=A ModeSwitch Button
+   rx=3
+   ry=3
+   x=25
+   y=195
+   width=18
+   height=10 /
+path
+   id=LeaderA
+   class=A ModeSwitch Leader
+   d=M 46 200 l 25 0 /
+text
+   id=LabelA
+   class=A ModeSwitch Label
+   x=73
+   y=200
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=.5
+   ry=.5
+   x=24
+   y=210
+   width=20
+   height=12 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 46 216 l 20 0 l 0 10 l 5 0 /
+text
+   id=LabelF
+   class=F Label
+   x=73
+   y=226
+   style=text-anchor:start;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   rx=.5
+   ry=.5
+   x=24
+   y=223
+   width=20
+   height=12 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 46 230 l 15 0 l 0 23 l 10 0 /
+text
+   id=LabelG
+   class=G Label
+   x=73
+   y=252
+   style=text-anchor:start;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   rx=.5
+   ry=.5
+   x=24
+   y=236
+   width=20
+   height=12 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 46 242 l 10 0 l 0 36 l 15 0 /
+text
+   id=LabelH
+   class=H Label
+   x=73
+   y=278
+   style=text-anchor:start;H/text
+  /g
+  g
+rect
+   id=ButtonI
+   class=I Button
+   rx=.5
+   ry=.5
+   x=24
+   y=249
+   width=20
+   height=12 /
+path
+   id=LeaderI
+   class=I Leader
+   d=M 46 255 l 5 0 l 0 49 l 20 0 /
+text
+   id=LabelI
+   class=I Label
+   x=73
+   y=304
+   style=text-anchor:start;I/text
+  /g
+  g
+rect
+   id=ButtonK
+   class=K Button
+   rx=.5
+   ry=.5
+   

[Linuxwacom-devel] libwacom: [PATCH] data: fix 2mm offset in label positioning

2012-12-07 Thread Olivier Fourdan


From dc81f18b8ccc62ab8440563c641d759825ce461f Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 7 Dec 2012 17:15:23 +0100
Subject: [PATCH] data: fix 2mm offset in label positioning

on Wacom Intuos5 M/L

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/layouts/intuos5-l.svg |4 ++--
 data/layouts/intuos5-m.svg |4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/data/layouts/intuos5-l.svg b/data/layouts/intuos5-l.svg
index 29b7eca..32a59f1 100644
--- a/data/layouts/intuos5-l.svg
+++ b/data/layouts/intuos5-l.svg
@@ -198,12 +198,12 @@
 path
id=LeaderI
class=I Leader
-   d=M 46 240 L 50 240 /
+   d=M 46 238 L 50 238 /
 text
id=LabelI
class=I Label
x=52
-   y=240
+   y=238
style=text-anchor:start;I/text
   /g
   g
diff --git a/data/layouts/intuos5-m.svg b/data/layouts/intuos5-m.svg
index d33c0ef..7c27184 100644
--- a/data/layouts/intuos5-m.svg
+++ b/data/layouts/intuos5-m.svg
@@ -198,12 +198,12 @@
 path
id=LeaderI
class=I Leader
-   d=M 46 206 L 50 206 /
+   d=M 46 204 L 50 204 /
 text
id=LabelI
class=I Label
x=52
-   y=206
+   y=204
style=text-anchor:start;I/text
   /g
   g
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 1/7] data: add layout for Intuos3-4x5

2012-12-06 Thread Olivier Fourdan


From 84e6a0a6982401b5379f36700fe7c15aa46db0fb Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Thu, 6 Dec 2012 15:22:56 +0100
Subject: [PATCH 1/7] data: add layout for Intuos3-4x5

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos3-4x5.tablet  |1 +
 data/layouts/intuos3-4x5.svg |  137 ++
 2 files changed, 138 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos3-4x5.svg

diff --git a/data/intuos3-4x5.tablet b/data/intuos3-4x5.tablet
index b4a3946..4730d5b 100644
--- a/data/intuos3-4x5.tablet
+++ b/data/intuos3-4x5.tablet
@@ -35,6 +35,7 @@ DeviceMatch=usb:056a:00b0
 Class=Intuos3
 Width=5
 Height=4
+Layout=intuos3-4x5.svg
 Styli=0x913;0x91b;0x813;0x81b;0x823;0x82b;0x801;0x885;0x017;0x097;
 
 [Features]
diff --git a/data/layouts/intuos3-4x5.svg b/data/layouts/intuos3-4x5.svg
new file mode 100644
index 000..693306d
--- /dev/null
+++ b/data/layouts/intuos3-4x5.svg
@@ -0,0 +1,137 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+Designed after data from http://gdgt.com/wacom/intuos3/4x5/specs
+Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos3-4x5
+   width=240
+   height=216
+  title
+ id=titleWacom Intuos3 4x5/title
+  g
+rect
+   id=ButtonA
+   class=A Button
+   rx=.5
+   ry=.5
+   x=22
+   y=41
+   width=11
+   height=17 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 28 39 l 0 -10 l 32 0 /
+text
+   id=LabelA
+   class=A Label
+   x=62
+   y=29
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=22
+   y=59
+   width=11
+   height=17 /
+circle
+   id=DotB
+   cx=27.5
+   cy=67.5
+   r=.5 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 32 68 l 2 0 l 0 32 l 26 0 /
+text
+   id=LabelB
+   class=B Label
+   x=62
+   y=100
+   style=text-anchor:start;B/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   x=10
+   y=41
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 8 58 l -1 0 l 0 -48 l 53 0  /
+text
+   id=LabelC
+   class=C Label
+   x=62
+   y=10
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   x=10
+   y=77
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 22 90 l 0 29 l 38 0 /
+text
+   id=LabelD
+   class=D Label
+   x=62
+   y=119
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=Strip
+   class=Strip TouchStrip
+   x=35
+   y=41
+   rx=1
+   ry=1
+   width=12
+   height=47 /
+path
+   id=LeaderStripUp
+   class=StripUp Strip Leader
+   d=M 41 39 l 0 -1 l 10 0 l 0 10 l 9 0 /
+text
+   id=LabelStripUp
+   class=StripUp Strip Label
+   x=62
+   y=48
+   style=text-anchor:start;Up/text
+path
+   id=LeaderStripDown
+   class=StripDown Strip Leader
+   d=M 41 90 l 0 1 l 10 0 l 0 -10 l 9 0 /
+text
+   id=LabelStripDown
+   class=StripDown Strip Label
+   x=62
+   y=81
+   style=text-anchor:start;Down/text
+  /g
+/svg
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 6/7] data: add layout for Intuos3-12x12

2012-12-06 Thread Olivier Fourdan


From c19d1fa2fd70e00f879864e6e47ff5c79ef9bed4 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Thu, 6 Dec 2012 15:24:29 +0100
Subject: [PATCH 6/7] data: add layout for Intuos3-12x12

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos3-12x12.tablet  |1 +
 data/layouts/intuos3-12x12.svg |  257 
 2 files changed, 258 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos3-12x12.svg

diff --git a/data/intuos3-12x12.tablet b/data/intuos3-12x12.tablet
index c1887ab..d936ce6 100644
--- a/data/intuos3-12x12.tablet
+++ b/data/intuos3-12x12.tablet
@@ -35,6 +35,7 @@ DeviceMatch=usb:056a:00b3
 Class=Intuos3
 Width=12
 Height=12
+Layout=intuos3-12x12.svg
 Styli=0x913;0x91b;0x813;0x81b;0x823;0x82b;0x801;0x885;0x017;0x097;
 
 [Features]
diff --git a/data/layouts/intuos3-12x12.svg b/data/layouts/intuos3-12x12.svg
new file mode 100644
index 000..1b26110
--- /dev/null
+++ b/data/layouts/intuos3-12x12.svg
@@ -0,0 +1,257 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom-asia.com/intuos3/spec/spec_tablet.html
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos3-12x12
+   width=440
+   height=429
+  title
+ id=titleWacom Intuos3 12x12/title
+  g
+rect
+   id=ButtonA
+   class=A Button
+   rx=.5
+   ry=.5
+   x=22
+   y=41
+   width=11
+   height=17 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 28 39 l 0 -10 l 32 0 /
+text
+   id=LabelA
+   class=A Label
+   x=62
+   y=29
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=22
+   y=59
+   width=11
+   height=17 /
+circle
+   id=DotB
+   cx=27.5
+   cy=67.5
+   r=.5 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 32 68 l 2 0 l 0 32 l 26 0 /
+text
+   id=LabelB
+   class=B Label
+   x=62
+   y=100
+   style=text-anchor:start;B/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   x=10
+   y=41
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 8 58 l -1 0 l 0 -48 l 53 0  /
+text
+   id=LabelC
+   class=C Label
+   x=62
+   y=10
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   x=10
+   y=77
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 22 90 l 0 29 l 38 0 /
+text
+   id=LabelD
+   class=D Label
+   x=62
+   y=119
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=.5
+   ry=.5
+   x=407
+   y=41
+   width=11
+   height=17 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 412 39 l 0 -10 l -32 0 /
+text
+   id=LabelE
+   class=E Label
+   x=378
+   y=29
+   style=text-anchor:end;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=.5
+   ry=.5
+   x=407
+   y=59
+   width=11
+   height=17 /
+circle
+   id=DotF
+   cx=412.5
+   cy=67.5
+   r=.5 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 408 68 l -2 0 l 0 32 l -26 0 /
+text
+   id=LabelF
+   class=F Label
+   x=378
+   y=100
+   style=text-anchor:end;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   x=419
+   y=41
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 432 58 l 1 0 l 0 -48 l -53 0  /
+text
+   id=LabelG
+   class=G Label
+   x=378
+   y=10
+   style=text-anchor:end;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   x=407
+   y=77
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 419 90 l 0 29 l -38 0 /
+text
+   id=LabelH
+   class=H Label
+   x=378
+   y=119
+   style=text-anchor:end;H/text
+  /g
+  g
+rect
+   id=Strip
+   class=Strip TouchStrip
+   x=35
+   y=41
+   rx=1
+   ry=1
+   width=12
+   height=47 /
+path
+   id=LeaderStripUp
+   class=StripUp Strip Leader
+   d=M 41 39 l 0 -1 l 10 0 l 0 10 l 9 0 /
+text
+   id=LabelStripUp
+   class=StripUp Strip Label
+   x=62
+   y=48
+   style=text-anchor:start;Up/text
+path
+ 

[Linuxwacom-devel] libwacom: [PATCH 7/7] data: add layout for Intuos3-12x19

2012-12-06 Thread Olivier Fourdan


From a77f11208a4c6eb1b3a9eda67fd9fd58dd933c07 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Thu, 6 Dec 2012 15:24:41 +0100
Subject: [PATCH 7/7] data: add layout for Intuos3-12x19

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos3-12x19.tablet  |1 +
 data/layouts/intuos3-12x19.svg |  257 
 2 files changed, 258 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos3-12x19.svg

diff --git a/data/intuos3-12x19.tablet b/data/intuos3-12x19.tablet
index e8b5395..2c9ab94 100644
--- a/data/intuos3-12x19.tablet
+++ b/data/intuos3-12x19.tablet
@@ -35,6 +35,7 @@ DeviceMatch=usb:056a:00b4
 Class=Intuos3
 Width=19
 Height=12
+Layout=intuos3-12x19.svg
 Styli=0x913;0x91b;0x813;0x81b;0x823;0x82b;0x801;0x885;0x017;0x097;
 
 [Features]
diff --git a/data/layouts/intuos3-12x19.svg b/data/layouts/intuos3-12x19.svg
new file mode 100644
index 000..72040d1
--- /dev/null
+++ b/data/layouts/intuos3-12x19.svg
@@ -0,0 +1,257 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom-asia.com/intuos3/spec/spec_tablet.html
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos3-12x19
+   width=623
+   height=429
+  title
+ id=titleWacom Intuos3 12x19/title
+  g
+rect
+   id=ButtonA
+   class=A Button
+   rx=.5
+   ry=.5
+   x=22
+   y=41
+   width=11
+   height=17 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 28 39 l 0 -10 l 32 0 /
+text
+   id=LabelA
+   class=A Label
+   x=62
+   y=29
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=22
+   y=59
+   width=11
+   height=17 /
+circle
+   id=DotB
+   cx=27.5
+   cy=67.5
+   r=.5 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 32 68 l 2 0 l 0 32 l 26 0 /
+text
+   id=LabelB
+   class=B Label
+   x=62
+   y=100
+   style=text-anchor:start;B/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   x=10
+   y=41
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 8 58 l -1 0 l 0 -48 l 53 0  /
+text
+   id=LabelC
+   class=C Label
+   x=62
+   y=10
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   x=10
+   y=77
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 22 90 l 0 29 l 38 0 /
+text
+   id=LabelD
+   class=D Label
+   x=62
+   y=119
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=.5
+   ry=.5
+   x=590
+   y=41
+   width=11
+   height=17 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 595 39 l 0 -10 l -32 0 /
+text
+   id=LabelE
+   class=E Label
+   x=561
+   y=29
+   style=text-anchor:end;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=.5
+   ry=.5
+   x=590
+   y=59
+   width=11
+   height=17 /
+circle
+   id=DotF
+   cx=595.5
+   cy=67.5
+   r=.5 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 591 68 l -2 0 l 0 32 l -26 0 /
+text
+   id=LabelF
+   class=F Label
+   x=561
+   y=100
+   style=text-anchor:end;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   x=602
+   y=41
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 615 58 l 1 0 l 0 -48 l -53 0  /
+text
+   id=LabelG
+   class=G Label
+   x=561
+   y=10
+   style=text-anchor:end;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   x=590
+   y=77
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 602 90 l 0 29 l -38 0 /
+text
+   id=LabelH
+   class=H Label
+   x=561
+   y=119
+   style=text-anchor:end;H/text
+  /g
+  g
+rect
+   id=Strip
+   class=Strip TouchStrip
+   x=35
+   y=41
+   rx=1
+   ry=1
+   width=12
+   height=47 /
+path
+   id=LeaderStripUp
+   class=StripUp Strip Leader
+   d=M 41 39 l 0 -1 l 10 0 l 0 10 l 9 0 /
+text
+   id=LabelStripUp
+   class=StripUp Strip Label
+   x=62
+   y=48
+   style=text-anchor:start;Up/text
+path
+ 

[Linuxwacom-devel] libwacom: [PATCH 5/7] data: add layout for Intuos3-9x12

2012-12-06 Thread Olivier Fourdan


From 51164cc89bc2d9e843c0b5c2b31588b134a69199 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Thu, 6 Dec 2012 15:24:09 +0100
Subject: [PATCH 5/7] data: add layout for Intuos3-9x12

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos3-9x12.tablet  |1 +
 data/layouts/intuos3-9x12.svg |  257 +
 2 files changed, 258 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos3-9x12.svg

diff --git a/data/intuos3-9x12.tablet b/data/intuos3-9x12.tablet
index 602501b..ed31163 100644
--- a/data/intuos3-9x12.tablet
+++ b/data/intuos3-9x12.tablet
@@ -34,6 +34,7 @@ DeviceMatch=usb:056a:00b2
 Class=Intuos3
 Width=12
 Height=9
+Layout=intuos3-9x12.svg
 Styli=0x913;0x91b;0x813;0x81b;0x823;0x82b;0x801;0x885;0x017;0x097;
 
 [Features]
diff --git a/data/layouts/intuos3-9x12.svg b/data/layouts/intuos3-9x12.svg
new file mode 100644
index 000..b1d8d08
--- /dev/null
+++ b/data/layouts/intuos3-9x12.svg
@@ -0,0 +1,257 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+!--
+   Designed after data from http://www.wacom-asia.com/intuos3/intuos3_930.html
+   Size and positions of controls may not be accurate
+ --
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos3-9x12
+   width=440
+   height=340
+  title
+ id=titleWacom Intuos3 9x12/title
+  g
+rect
+   id=ButtonA
+   class=A Button
+   rx=.5
+   ry=.5
+   x=22
+   y=41
+   width=11
+   height=17 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 28 39 l 0 -10 l 32 0 /
+text
+   id=LabelA
+   class=A Label
+   x=62
+   y=29
+   style=text-anchor:start;A/text
+  /g
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=22
+   y=59
+   width=11
+   height=17 /
+circle
+   id=DotB
+   cx=27.5
+   cy=67.5
+   r=.5 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 32 68 l 2 0 l 0 32 l 26 0 /
+text
+   id=LabelB
+   class=B Label
+   x=62
+   y=100
+   style=text-anchor:start;B/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   x=10
+   y=41
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 8 58 l -1 0 l 0 -48 l 53 0  /
+text
+   id=LabelC
+   class=C Label
+   x=62
+   y=10
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   x=10
+   y=77
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 22 90 l 0 29 l 38 0 /
+text
+   id=LabelD
+   class=D Label
+   x=62
+   y=119
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=.5
+   ry=.5
+   x=407
+   y=41
+   width=11
+   height=17 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 412 39 l 0 -10 l -32 0 /
+text
+   id=LabelE
+   class=E Label
+   x=378
+   y=29
+   style=text-anchor:end;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=.5
+   ry=.5
+   x=407
+   y=59
+   width=11
+   height=17 /
+circle
+   id=DotF
+   cx=412.5
+   cy=67.5
+   r=.5 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 408 68 l -2 0 l 0 32 l -26 0 /
+text
+   id=LabelF
+   class=F Label
+   x=378
+   y=100
+   style=text-anchor:end;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   x=419
+   y=41
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 432 58 l 1 0 l 0 -48 l -53 0  /
+text
+   id=LabelG
+   class=G Label
+   x=378
+   y=10
+   style=text-anchor:end;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   x=407
+   y=77
+   rx=.5
+   ry=.5
+   width=23
+   height=11 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 419 90 l 0 29 l -38 0 /
+text
+   id=LabelH
+   class=H Label
+   x=378
+   y=119
+   style=text-anchor:end;H/text
+  /g
+  g
+rect
+   id=Strip
+   class=Strip TouchStrip
+   x=35
+   y=41
+   rx=1
+   ry=1
+   width=12
+   height=47 /
+path
+   id=LeaderStripUp
+   class=StripUp Strip Leader
+   d=M 41 39 l 0 -1 l 10 0 l 0 10 l 9 0 /
+text
+   id=LabelStripUp
+   class=StripUp Strip Label
+   x=62
+   y=48
+   style=text-anchor:start;Up/text
+path
+   

Re: [Linuxwacom-devel] libwacom: [PATCH 0/7] data: add layouts for Intuos3

2012-12-06 Thread Peter Hutterer
On Thu, Dec 06, 2012 at 03:34:35PM +0100, Olivier Fourdan wrote:

   3dd6c47..f2b27c1  master - master


thanks

Cheers,
   Peter


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 0/6] data: add more new layouts for Intuos4 and Intuos5

2012-12-05 Thread Olivier Fourdan


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 1/6] data: add layout for Intuos5 S/Intuos5 S touch

2012-12-05 Thread Olivier Fourdan


From 6b566054552e38bfe807263a8004412a0221f6c1 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Wed, 5 Dec 2012 17:39:09 +0100
Subject: [PATCH 1/6] data: add layout for Intuos5 S/Intuos5 S touch

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos5-s.tablet   |1 +
 data/intuos5-touch-s.tablet |1 +
 data/layouts/intuos5-s.svg  |  211 +++
 3 files changed, 213 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos5-s.svg

diff --git a/data/intuos5-s.tablet b/data/intuos5-s.tablet
index e5a7d26..8e7d140 100644
--- a/data/intuos5-s.tablet
+++ b/data/intuos5-s.tablet
@@ -46,6 +46,7 @@ DeviceMatch=usb:056a:0029
 Class=Intuos5
 Width=6
 Height=4
+Layout=intuos5-s.svg
 IntegratedIn=
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;0x806;
 
diff --git a/data/intuos5-touch-s.tablet b/data/intuos5-touch-s.tablet
index 0630f02..f75c664 100644
--- a/data/intuos5-touch-s.tablet
+++ b/data/intuos5-touch-s.tablet
@@ -46,6 +46,7 @@ DeviceMatch=usb:056a:0026
 Class=Intuos5
 Width=6
 Height=4
+Layout=intuos5-s.svg
 IntegratedIn=
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;0x806;
 
diff --git a/data/layouts/intuos5-s.svg b/data/layouts/intuos5-s.svg
new file mode 100644
index 000..d38f84d
--- /dev/null
+++ b/data/layouts/intuos5-s.svg
@@ -0,0 +1,211 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos5-m
+   width=320
+   height=208
+  title
+ id=titleWacom Intuos5 S/title
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=2
+   ry=2
+   x=24
+   y=33
+   width=20
+   height=12 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 46 39 L 50 39 /
+text
+   id=LabelB
+   class=B Label
+   x=52
+   y=39
+   style=text-anchor:start;
+  B
+/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   rx=2
+   ry=2
+   x=24
+   y=47
+   width=20
+   height=12 /
+rect
+   id=DotC1
+   rx=1
+   ry=1
+   x=30
+   y=52.5
+   width=8
+   height=1 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 46 53 L 50 53 /
+text
+   id=LabelC
+   class=C Label
+   x=52
+   y=53
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   rx=2
+   ry=2
+   x=24
+   y=61
+   width=20
+   height=12 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 46 67 L 50 67 /
+text
+   id=LabelD
+   class=D Label
+   x=52
+   y=67
+   style=text-anchor:start;D/text
+  /g
+   g
+rect
+   id=ButtonE
+   class=E Button
+   rx=2
+   ry=2
+   x=24
+   y=135
+   width=20
+   height=12 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 46 141 L 50 141 /
+text
+   id=LabelE
+   class=E Label
+   x=52
+   y=141
+   style=text-anchor:start;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=2
+   ry=2
+   x=24
+   y=149
+   width=20
+   height=12 /
+ rect
+   id=DotF1
+   rx=1
+   ry=1
+   x=30
+   y=154.5
+   width=8
+   height=1 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 46 155 L 50 155 /
+text
+   id=LabelF
+   class=F Label
+   x=52
+   y=155
+   style=text-anchor:start;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   rx=2
+   ry=2
+   x=24
+   y=163
+   width=20
+   height=12 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 46 169 L 50 169 /
+text
+   id=LabelG
+   class=G Label
+   x=52
+   y=169
+   style=text-anchor:start;G/text
+  /g
+g
+circle
+   id=Ring
+   class=Ring TouchRing
+   cx=34
+   cy=104
+   r=19.5 /
+path
+   id=LeaderRingCCW
+   class=RingCCW Ring Leader
+   d=M 34 84 L 34 82 L 60 82 /
+text
+   id=LabelRingCCW
+   class=RingCCW Ring Label
+   x=62
+   y=82
+   style=text-anchor:start;CCW/text
+path
+   id=RingCCW
+   class=RingCCW Button
+   d=M 31 90 l 3 -1.5 l 0 1 a 7.5 7.5 0 0 1 5 1.5 a 6.5 6.5 0 0 0 -5 -0.5 l 0 1 z /
+path
+   id=LeaderRingCW
+   class=RingCW Ring Leader
+   d=M 34 124 L 34 126 L 60 126 /
+text
+   id=LabelRingCW
+   class=RingCW Ring Label
+   x=62
+   y=126
+   style=text-anchor:start;CW/text
+path
+   id=RingCW
+   class=RingCW Button
+   d=M 31 118 l 3 -1.5 l 0 1 a 7.5 7.5 0 0 0 5 -1 a 6.5 6.5 0 0 1 -5 2 l 0 1 z /
+  /g
+  g
+  

[Linuxwacom-devel] libwacom: [PATCH 2/6] data: add layout for Intuos5 L touch

2012-12-05 Thread Olivier Fourdan


From bd06c376f46cfed308704baf856ca0716ca1a1f6 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Wed, 5 Dec 2012 17:40:44 +0100
Subject: [PATCH 2/6] data: add layout for Intuos5 L touch

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos5-touch-l.tablet |1 +
 data/layouts/intuos5-l.svg  |  263 +++
 2 files changed, 264 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos5-l.svg

diff --git a/data/intuos5-touch-l.tablet b/data/intuos5-touch-l.tablet
index bcc9165..faaacbe 100644
--- a/data/intuos5-touch-l.tablet
+++ b/data/intuos5-touch-l.tablet
@@ -48,6 +48,7 @@ DeviceMatch=usb:056a:0028
 Class=Intuos5
 Width=13
 Height=8
+Layout=intuos5-l.svg
 IntegratedIn=
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;0x806;0x006;
 
diff --git a/data/layouts/intuos5-l.svg b/data/layouts/intuos5-l.svg
new file mode 100644
index 000..29b7eca
--- /dev/null
+++ b/data/layouts/intuos5-l.svg
@@ -0,0 +1,263 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos5-l
+   width=487
+   height=318
+  title
+ id=titleWacom Intuos5 L/title
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=2
+   ry=2
+   x=24
+   y=74
+   width=20
+   height=12 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 46 80 L 50 80 /
+text
+   id=LabelB
+   class=B Label
+   x=52
+   y=80
+   style=text-anchor:start;
+  B
+/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   rx=2
+   ry=2
+   x=24
+   y=88
+   width=20
+   height=12 /
+rect
+   id=DotC1
+   rx=1
+   ry=1
+   x=30
+   y=93.5
+   width=8
+   height=1 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 46 94 L 50 94 /
+text
+   id=LabelC
+   class=C Label
+   x=52
+   y=94
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   rx=2
+   ry=2
+   x=24
+   y=102
+   width=20
+   height=12 /
+circle
+   id=DotD1
+   cx=34
+   cy=108
+   r=.75 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 46 108 L 50 108 /
+text
+   id=LabelD
+   class=D Label
+   x=52
+   y=108
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=2
+   ry=2
+   x=24
+   y=116
+   width=20
+   height=12 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 46 122 L 50 122 /
+text
+   id=LabelE
+   class=E Label
+   x=52
+   y=122
+   style=text-anchor:start;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=2
+   ry=2
+   x=24
+   y=190
+   width=20
+   height=12 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 46 196 L 50 196 /
+text
+   id=LabelF
+   class=F Label
+   x=52
+   y=196
+   style=text-anchor:start;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   rx=2
+   ry=2
+   x=24
+   y=204
+   width=20
+   height=12 /
+circle
+   id=DotG1
+   cx=34
+   cy=210
+   r=.75 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 46 210 L 50 210 /
+text
+   id=LabelG
+   class=G Label
+   x=52
+   y=210
+   style=text-anchor:start;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   rx=2
+   ry=2
+   x=24
+   y=218
+   width=20
+   height=12 /
+rect
+   id=DotH1
+   rx=1
+   ry=1
+   x=30
+   y=223.5
+   width=8
+   height=1 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 46 224 L 50 224 /
+text
+   id=LabelH
+   class=H Label
+   x=52
+   y=224
+   style=text-anchor:start;H/text
+  /g
+  g
+rect
+   id=ButtonI
+   class=I Button
+   rx=2
+   ry=2
+   x=24
+   y=232
+   width=20
+   height=12 /
+path
+   id=LeaderI
+   class=I Leader
+   d=M 46 240 L 50 240 /
+text
+   id=LabelI
+   class=I Label
+   x=52
+   y=240
+   style=text-anchor:start;I/text
+  /g
+  g
+circle
+   id=Ring
+   class=Ring TouchRing
+   cx=34
+   cy=159
+   r=19.5 /
+path
+   id=LeaderRingCCW
+   class=RingCCW Ring Leader
+   d=M 34 139 L 34 137 L 60 137 /
+text
+   id=LabelRingCCW
+   class=RingCCW Ring Label
+   x=62
+   y=137
+   style=text-anchor:start;CCW/text
+path
+   id=RingCCW
+   class=RingCCW Button
+ 

[Linuxwacom-devel] libwacom: [PATCH 4/6] data: add layout for Intuos4 M/Intuos4 6x9

2012-12-05 Thread Olivier Fourdan


From c3f3132642007a078b7f29d9c4a855fdc2a0f1e1 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Wed, 5 Dec 2012 17:42:53 +0100
Subject: [PATCH 4/6] data: add layout for Intuos4 M/Intuos4 6x9

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos4-6x9.tablet  |1 +
 data/layouts/intuos4-6x9.svg |  237 ++
 2 files changed, 238 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos4-6x9.svg

diff --git a/data/intuos4-6x9.tablet b/data/intuos4-6x9.tablet
index 9d0356a..945f453 100644
--- a/data/intuos4-6x9.tablet
+++ b/data/intuos4-6x9.tablet
@@ -38,6 +38,7 @@ DeviceMatch=usb:056a:00b9
 Class=Intuos4
 Width=9
 Height=6
+Layout=intuos4-6x9.svg
 IntegratedIn=
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;0x806;
 
diff --git a/data/layouts/intuos4-6x9.svg b/data/layouts/intuos4-6x9.svg
new file mode 100644
index 000..91aeca4
--- /dev/null
+++ b/data/layouts/intuos4-6x9.svg
@@ -0,0 +1,237 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos4-m
+   width=370
+   height=245
+  title
+ id=titleWacom Intuos4 M/title
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=14
+   y=40
+   width=22
+   height=12 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 38 46 L 60 46 /
+text
+   id=LabelB
+   class=B Label
+   x=62
+   y=46
+   style=text-anchor:start;
+  B
+/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   rx=.5
+   ry=.5
+   x=14
+   y=53
+   width=22
+   height=12 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 38 59 L 60 59 /
+text
+   id=LabelC
+   class=C Label
+   x=62
+   y=59
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   rx=.5
+   ry=.5
+   x=14
+   y=66
+   width=22
+   height=12 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 38 72 L 60 72 /
+text
+   id=LabelD
+   class=D Label
+   x=62
+   y=72
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=.5
+   ry=.5
+   x=14
+   y=79
+   width=22
+   height=12 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 38 85 L 60 85 /
+text
+   id=LabelE
+   class=E Label
+   x=62
+   y=85
+   style=text-anchor:start;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=.5
+   ry=.5
+   x=14
+   y=151
+   width=22
+   height=12 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 38 157 L 60 157 /
+text
+   id=LabelF
+   class=F Label
+   x=62
+   y=157
+   style=text-anchor:start;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   rx=.5
+   ry=.5
+   x=14
+   y=164
+   width=22
+   height=12 /
+ path
+   id=LeaderG
+   class=G Leader
+   d=M 38 170 L 60 170 /
+text
+   id=LabelG
+   class=G Label
+   x=62
+   y=170
+   style=text-anchor:start;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   rx=.5
+   ry=.5
+   x=14
+   y=177
+   width=22
+   height=12 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 38 183 L 60 183 /
+text
+   id=LabelH
+   class=H Label
+   x=62
+   y=183
+   style=text-anchor:start;H/text
+  /g
+  g
+rect
+   id=ButtonI
+   class=I Button
+   rx=.5
+   ry=.5
+   x=14
+   y=190
+   width=22
+   height=12 /
+path
+   id=LeaderI
+   class=I Leader
+   d=M 38 196 L 60 196 /
+text
+   id=LabelI
+   class=I Label
+   x=62
+   y=196
+   style=text-anchor:start;I/text
+  /g
+  g
+circle
+   id=Ring
+   class=Ring TouchRing
+   cx=34
+   cy=121
+   r=19.5 /
+path
+   id=LeaderRingCCW
+   class=RingCCW Ring Leader
+   d=M 34 101 L 34 99 L 60 99 /
+text
+   id=LabelRingCCW
+   class=RingCCW Ring Label
+   x=62
+   y=99
+   style=text-anchor:start;CCW/text
+path
+   id=RingCCW
+   class=RingCCW Button
+   d=M 31 107 l 3 -1.5 l 0 1 a 7.5 7.5 0 0 1 5 1.5 a 6.5 6.5 0 0 0 -5 -0.5 l 0 1 z /
+path
+   id=LeaderRingCW
+   class=RingCW Ring Leader
+   d=M 34 141 L 34 143 L 60 143 /
+text
+   id=LabelRingCW
+   class=RingCW Ring Label
+   x=62
+   y=143
+   style=text-anchor:start;CW/text
+path
+   id=RingCW
+   class=RingCW Button
+  

[Linuxwacom-devel] libwacom: [PATCH 3/6] data: add layout for Intuos4 S/Intuos4 4x6

2012-12-05 Thread Olivier Fourdan


From 8d967a8c3ea33d71a7ab3651bf32bd40508198b0 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Wed, 5 Dec 2012 17:42:03 +0100
Subject: [PATCH 3/6] data: add layout for Intuos4 S/Intuos4 4x6

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos4-4x6.tablet  |1 +
 data/layouts/intuos4-4x6.svg |  195 ++
 2 files changed, 196 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos4-4x6.svg

diff --git a/data/intuos4-4x6.tablet b/data/intuos4-4x6.tablet
index 8ac8fb7..09e2f84 100644
--- a/data/intuos4-4x6.tablet
+++ b/data/intuos4-4x6.tablet
@@ -39,6 +39,7 @@ DeviceMatch=usb:056a:00b8
 Class=Intuos4
 Width=6
 Height=4
+Layout=intuos4-4x6.svg
 IntegratedIn=
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;0x806;
 
diff --git a/data/layouts/intuos4-4x6.svg b/data/layouts/intuos4-4x6.svg
new file mode 100644
index 000..a791224
--- /dev/null
+++ b/data/layouts/intuos4-4x6.svg
@@ -0,0 +1,195 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos4-s
+   width=309
+   height=208
+  title
+ id=titleWacom Intuos4 S/title
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=24
+   y=36
+   width=22
+   height=12 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 48 42 L 60 42 /
+text
+   id=LabelB
+   class=B Label
+   x=62
+   y=42
+   style=text-anchor:start;
+  B
+/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   rx=.5
+   ry=.5
+   x=24
+   y=49
+   width=22
+   height=12 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 48 55 L 60 55 /
+text
+   id=LabelC
+   class=C Label
+   x=62
+   y=55
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   rx=.5
+   ry=.5
+   x=24
+   y=62
+   width=22
+   height=12 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 48 68 L 60 68 /
+text
+   id=LabelD
+   class=D Label
+   x=62
+   y=68
+   style=text-anchor:start;D/text
+  /g
+   g
+rect
+   id=ButtonE
+   class=E Button
+   rx=.5
+   ry=.5
+   x=24
+   y=134
+   width=22
+   height=12 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 48 140 L 60 140 /
+text
+   id=LabelE
+   class=E Label
+   x=62
+   y=140
+   style=text-anchor:start;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=.5
+   ry=.5
+   x=24
+   y=147
+   width=22
+   height=12 /
+ path
+   id=LeaderF
+   class=F Leader
+   d=M 48 153 L 60 153 /
+text
+   id=LabelF
+   class=F Label
+   x=62
+   y=153
+   style=text-anchor:start;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   rx=.5
+   ry=.5
+   x=24
+   y=160
+   width=22
+   height=12 /
+path
+   id=LeaderG
+   class=G Leader
+   d=M 48 166 L 60 166 /
+text
+   id=LabelG
+   class=G Label
+   x=62
+   y=166
+   style=text-anchor:start;G/text
+  /g
+  g
+circle
+   id=Ring
+   class=Ring TouchRing
+   cx=34
+   cy=104
+   r=19.5 /
+path
+   id=LeaderRingCCW
+   class=RingCCW Ring Leader
+   d=M 34 84 L 34 82 L 60 82 /
+text
+   id=LabelRingCCW
+   class=RingCCW Ring Label
+   x=62
+   y=82
+   style=text-anchor:start;CCW/text
+path
+   id=RingCCW
+   class=RingCCW Button
+   d=M 31 90 l 3 -1.5 l 0 1 a 7.5 7.5 0 0 1 5 1.5 a 6.5 6.5 0 0 0 -5 -0.5 l 0 1 z /
+path
+   id=LeaderRingCW
+   class=RingCW Ring Leader
+   d=M 34 124 L 34 126 L 60 126 /
+text
+   id=LabelRingCW
+   class=RingCW Ring Label
+   x=62
+   y=126
+   style=text-anchor:start;CW/text
+path
+   id=RingCW
+   class=RingCW Button
+   d=M 31 118 l 3 -1.5 l 0 1 a 7.5 7.5 0 0 0 5 -1 a 6.5 6.5 0 0 1 -5 2 l 0 1 z /
+  /g
+  g
+circle
+   id=ButtonA
+   class=A ModeSwitch Button
+   cx=34
+   cy=104
+   r=9.5 /
+path
+   id=LeaderA
+   class=A ModeSwitch Leader
+   d=M 56 104 L 60 104 /
+text
+   id=LabelA
+   class=A ModeSwitch Label
+   x=62
+   y=104
+   style=text-anchor:start;A/text
+  /g
+/svg
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on 

[Linuxwacom-devel] libwacom: [PATCH 5/6] data: add layout for Intuos4 L/Intuos4 8x13

2012-12-05 Thread Olivier Fourdan


From aef8d4da49d2719b393a8ac105859257db857ef4 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Wed, 5 Dec 2012 17:43:34 +0100
Subject: [PATCH 5/6] data: add layout for Intuos4 L/Intuos4 8x13

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos4-8x13.tablet  |1 +
 data/layouts/intuos4-8x13.svg |  237 +
 2 files changed, 238 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos4-8x13.svg

diff --git a/data/intuos4-8x13.tablet b/data/intuos4-8x13.tablet
index 2339d14..18aedf5 100644
--- a/data/intuos4-8x13.tablet
+++ b/data/intuos4-8x13.tablet
@@ -38,6 +38,7 @@ DeviceMatch=usb:056a:00ba
 Class=Intuos4
 Width=13
 Height=8
+Layout=intuos4-8x13.svg
 IntegratedIn=
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;0x806;0x006;
 
diff --git a/data/layouts/intuos4-8x13.svg b/data/layouts/intuos4-8x13.svg
new file mode 100644
index 000..13069c7
--- /dev/null
+++ b/data/layouts/intuos4-8x13.svg
@@ -0,0 +1,237 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos4-l
+   width=474
+   height=320
+  title
+ id=titleWacom Intuos4 L/title
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=14
+   y=78
+   width=22
+   height=12 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 38 84 L 60 84 /
+text
+   id=LabelB
+   class=B Label
+   x=62
+   y=84
+   style=text-anchor:start;
+  B
+/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   rx=.5
+   ry=.5
+   x=14
+   y=91
+   width=22
+   height=12 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 38 97 L 60 97 /
+text
+   id=LabelC
+   class=C Label
+   x=62
+   y=97
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   rx=.5
+   ry=.5
+   x=14
+   y=104
+   width=22
+   height=12 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 38 110 L 60 110 /
+text
+   id=LabelD
+   class=D Label
+   x=62
+   y=110
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=.5
+   ry=.5
+   x=14
+   y=117
+   width=22
+   height=12 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 38 123 L 60 123 /
+text
+   id=LabelE
+   class=E Label
+   x=62
+   y=123
+   style=text-anchor:start;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=.5
+   ry=.5
+   x=14
+   y=189
+   width=22
+   height=12 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 38 195 L 60 195 /
+text
+   id=LabelF
+   class=F Label
+   x=62
+   y=195
+   style=text-anchor:start;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   rx=.5
+   ry=.5
+   x=14
+   y=202
+   width=22
+   height=12 /
+ path
+   id=LeaderG
+   class=G Leader
+   d=M 38 208 L 60 208 /
+text
+   id=LabelG
+   class=G Label
+   x=62
+   y=208
+   style=text-anchor:start;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   rx=.5
+   ry=.5
+   x=14
+   y=215
+   width=22
+   height=12 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 38 221 L 60 221 /
+text
+   id=LabelH
+   class=H Label
+   x=62
+   y=221
+   style=text-anchor:start;H/text
+  /g
+  g
+rect
+   id=ButtonI
+   class=I Button
+   rx=.5
+   ry=.5
+   x=14
+   y=228
+   width=22
+   height=12 /
+path
+   id=LeaderI
+   class=I Leader
+   d=M 38 234 L 60 234 /
+text
+   id=LabelI
+   class=I Label
+   x=62
+   y=234
+   style=text-anchor:start;I/text
+  /g
+  g
+circle
+   id=Ring
+   class=Ring TouchRing
+   cx=34
+   cy=159
+   r=19.5 /
+path
+   id=LeaderRingCCW
+   class=RingCCW Ring Leader
+   d=M 34 139 L 34 137 L 60 137 /
+text
+   id=LabelRingCCW
+   class=RingCCW Ring Label
+   x=62
+   y=137
+   style=text-anchor:start;CCW/text
+path
+   id=RingCCW
+   class=RingCCW Button
+   d=M 31 145 l 3 -1.5 l 0 1 a 7.5 7.5 0 0 1 5 1.5 a 6.5 6.5 0 0 0 -5 -0.5 l 0 1 z /
+path
+   id=LeaderRingCW
+   class=RingCW Ring Leader
+   d=M 34 179 L 34 181 L 60 181 /
+text
+   id=LabelRingCW
+   class=RingCW Ring Label
+   x=62
+   y=181
+   style=text-anchor:start;CW/text
+path
+   id=RingCW
+ 

[Linuxwacom-devel] libwacom: [PATCH 6/6] data: add layout for Intuos4 XL/Intuos4 12x19

2012-12-05 Thread Olivier Fourdan


From a90b1738a49788a6a15c023bcc11b247e2f2beef Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Wed, 5 Dec 2012 17:44:15 +0100
Subject: [PATCH 6/6] data: add layout for Intuos4 XL/Intuos4 12x19

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/intuos4-12x19.tablet  |1 +
 data/layouts/intuos4-12x19.svg |  237 
 2 files changed, 238 insertions(+), 0 deletions(-)
 create mode 100644 data/layouts/intuos4-12x19.svg

diff --git a/data/intuos4-12x19.tablet b/data/intuos4-12x19.tablet
index fe7a110..7b8f960 100644
--- a/data/intuos4-12x19.tablet
+++ b/data/intuos4-12x19.tablet
@@ -38,6 +38,7 @@ DeviceMatch=usb:056a:00bb
 Class=Intuos4
 Width=19
 Height=12
+Layout=intuos4-12x19.svg
 IntegratedIn=
 Styli=0x802;0x80c;0x804;0x80a;0x40802;0x4080a;0x902;0x90a;0x20802;0x806;0x006;
 
diff --git a/data/layouts/intuos4-12x19.svg b/data/layouts/intuos4-12x19.svg
new file mode 100644
index 000..de080da
--- /dev/null
+++ b/data/layouts/intuos4-12x19.svg
@@ -0,0 +1,237 @@
+?xml version=1.0 standalone=no?
+!DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=intuos4-xl
+   width=623
+   height=462
+  title
+ id=titleWacom Intuos4 XL/title
+  g
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=14
+   y=149
+   width=22
+   height=12 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 38 155 L 60 155 /
+text
+   id=LabelB
+   class=B Label
+   x=62
+   y=155
+   style=text-anchor:start;
+  B
+/text
+  /g
+  g
+rect
+   id=ButtonC
+   class=C Button
+   rx=.5
+   ry=.5
+   x=14
+   y=162
+   width=22
+   height=12 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 38 168 L 60 168 /
+text
+   id=LabelC
+   class=C Label
+   x=62
+   y=168
+   style=text-anchor:start;C/text
+  /g
+  g
+rect
+   id=ButtonD
+   class=D Button
+   rx=.5
+   ry=.5
+   x=14
+   y=175
+   width=22
+   height=12 /
+path
+   id=LeaderD
+   class=D Leader
+   d=M 38 181 L 60 181 /
+text
+   id=LabelD
+   class=D Label
+   x=62
+   y=181
+   style=text-anchor:start;D/text
+  /g
+  g
+rect
+   id=ButtonE
+   class=E Button
+   rx=.5
+   ry=.5
+   x=14
+   y=188
+   width=22
+   height=12 /
+path
+   id=LeaderE
+   class=E Leader
+   d=M 38 194 L 60 194 /
+text
+   id=LabelE
+   class=E Label
+   x=62
+   y=194
+   style=text-anchor:start;E/text
+  /g
+  g
+rect
+   id=ButtonF
+   class=F Button
+   rx=.5
+   ry=.5
+   x=14
+   y=260
+   width=22
+   height=12 /
+path
+   id=LeaderF
+   class=F Leader
+   d=M 38 266 L 60 266 /
+text
+   id=LabelF
+   class=F Label
+   x=62
+   y=266
+   style=text-anchor:start;F/text
+  /g
+  g
+rect
+   id=ButtonG
+   class=G Button
+   rx=.5
+   ry=.5
+   x=14
+   y=273
+   width=22
+   height=12 /
+ path
+   id=LeaderG
+   class=G Leader
+   d=M 38 279 L 60 279 /
+text
+   id=LabelG
+   class=G Label
+   x=62
+   y=279
+   style=text-anchor:start;G/text
+  /g
+  g
+rect
+   id=ButtonH
+   class=H Button
+   rx=.5
+   ry=.5
+   x=14
+   y=286
+   width=22
+   height=12 /
+path
+   id=LeaderH
+   class=H Leader
+   d=M 38 292 L 60 292 /
+text
+   id=LabelH
+   class=H Label
+   x=62
+   y=292
+   style=text-anchor:start;H/text
+  /g
+  g
+rect
+   id=ButtonI
+   class=I Button
+   rx=.5
+   ry=.5
+   x=14
+   y=299
+   width=22
+   height=12 /
+path
+   id=LeaderI
+   class=I Leader
+   d=M 38 305 L 60 305 /
+text
+   id=LabelI
+   class=I Label
+   x=62
+   y=305
+   style=text-anchor:start;I/text
+  /g
+  g
+circle
+   id=Ring
+   class=Ring TouchRing
+   cx=34
+   cy=230
+   r=19.5 /
+path
+   id=LeaderRingCCW
+   class=RingCCW Ring Leader
+   d=M 34 210 L 34 208 L 60 208 /
+text
+   id=LabelRingCCW
+   class=RingCCW Ring Label
+   x=62
+   y=208
+   style=text-anchor:start;CCW/text
+path
+   id=RingCCW
+   class=RingCCW Button
+   d=M 31 216 l 3 -1.5 l 0 1 a 7.5 7.5 0 0 1 5 1.5 a 6.5 6.5 0 0 0 -5 -0.5 l 0 1 z /
+path
+   id=LeaderRingCW
+   class=RingCW Ring Leader
+   d=M 34 250 L 34 252 L 60 252 /
+text
+   id=LabelRingCW
+   class=RingCW Ring Label
+   x=62
+   y=252
+   style=text-anchor:start;CW/text
+

Re: [Linuxwacom-devel] libwacom: [PATCH 0/2] data: update SVG layouts

2012-12-05 Thread Peter Hutterer
On Tue, Dec 04, 2012 at 09:16:14AM +0100, Olivier Fourdan wrote:
 Peter Hutterer said the following on 12/04/2012 04:13 AM:
 I've merged these and all the standalone patches. Let me
 know if I forgot any.
 
 37d5fd6..1366904  master -  master
 
 Perfect! Many thanks for this!
 
 Only thing is, I dunno why, but the copyright © sign gets replaced
 by ?? here, after the merge process.
 
 That happened in both tools/show-svg-image.c and
 test/tablet-svg-validity.c - But it's a minor issue and possibly a
 local problem on my side :-)

Looking at tools: add tablet image viewer from Nov 6,
50991983.3030...@redhat.com, the attachment (patch) encoding is ascii.
Not sure where exactly the problem is, but it does appear to be on your
side.

Cheers,
   Peter




--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 0/6] data: add more new layouts for Intuos4 and Intuos5

2012-12-05 Thread Peter Hutterer
On Wed, Dec 05, 2012 at 05:48:50PM +0100, Olivier Fourdan wrote:

   1366904..3dd6c47  master - master


thanks

Cheers,
   Peter

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] data: rename serial WACf004 to generic serial

2012-12-05 Thread Peter Hutterer
On Tue, Dec 04, 2012 at 11:29:34AM +0100, Olivier Fourdan wrote:
 Hi,
 
 It's been reported [1] that some serial tablet are wrongly seen as
 Wacom Serial Tablet WACf004.
 
 Looking at the device definition in libwacom, it appears that the
 DeviceMatch for the serial-wacf004.tablet is serial:: so I
 suspect any unknown serial tablet will be reported as a WACf004.
 
 The attached patch therefore changes the current definition of
 serial-wacf004.tablet to a more generic dfefintion, thus the name
 generic-serial.tablet and the new name Generic Serial Tablet.
 
 Would that be better?

in theory, but make check fails once I apply this patch. Haven't looked at
it in detail though.

Cheers,
   Peter

 [1] https://bugzilla.gnome.org/show_bug.cgi?id=688317#c5

 From 914aa387b4ef816703326633289336100b664c89 Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Tue, 4 Dec 2012 11:21:30 +0100
 Subject: [PATCH] data: rename serial WACf004 to generic serial
 
 The definition of the serial-wacf004.tablet does not
 specify any device match, so any generic serial tablet would
 be reported as a WACf004 serial tablet.
 
 Renamed serial-wacf004.tablet to generic-serial.tablet and
 changed the name to Generic serial tablet
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com
 ---
  data/generic-serial.tablet |   10 ++
  data/serial-wacf004.tablet |   10 --
  2 files changed, 10 insertions(+), 10 deletions(-)
  create mode 100644 data/generic-serial.tablet
  delete mode 100644 data/serial-wacf004.tablet
 
 diff --git a/data/generic-serial.tablet b/data/generic-serial.tablet
 new file mode 100644
 index 000..275375c
 --- /dev/null
 +++ b/data/generic-serial.tablet
 @@ -0,0 +1,10 @@
 +[Device]
 +Name=Generic Serial Tablet
 +DeviceMatch=serial::
 +Class=ISDV4
 +IntegratedIn=Display;System
 +
 +[Features]
 +Stylus=true
 +Ring=false
 +Buttons=0
 diff --git a/data/serial-wacf004.tablet b/data/serial-wacf004.tablet
 deleted file mode 100644
 index e2b5f74..000
 --- a/data/serial-wacf004.tablet
 +++ /dev/null
 @@ -1,10 +0,0 @@
 -[Device]
 -Name=Wacom Serial Tablet WACf004
 -DeviceMatch=serial::
 -Class=ISDV4
 -IntegratedIn=Display;System
 -
 -[Features]
 -Stylus=true
 -Ring=false
 -Buttons=0
 -- 
 1.7.1
 

 --
 LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
 Remotely access PCs and mobile devices and provide instant support
 Improve your efficiency, and focus on delivering more value-add services
 Discover what IT Professionals Know. Rescue delivers
 http://p.sf.net/sfu/logmein_12329d2d

 ___
 Linuxwacom-devel mailing list
 Linuxwacom-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 0/2] data: update SVG layouts

2012-12-04 Thread Olivier Fourdan
Peter Hutterer said the following on 12/04/2012 04:13 AM:
 I've merged these and all the standalone patches. Let me
 know if I forgot any.

 37d5fd6..1366904  master -  master

Perfect! Many thanks for this!

Only thing is, I dunno why, but the copyright © sign gets replaced 
by ?? here, after the merge process.

That happened in both tools/show-svg-image.c and 
test/tablet-svg-validity.c - But it's a minor issue and possibly a 
local problem on my side :-)

Thanks again!
Olivier.

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] data: rename serial WACf004 to generic serial

2012-12-04 Thread Olivier Fourdan

Hi,

It's been reported [1] that some serial tablet are wrongly seen as 
Wacom Serial Tablet WACf004.


Looking at the device definition in libwacom, it appears that the 
DeviceMatch for the serial-wacf004.tablet is serial:: so I 
suspect any unknown serial tablet will be reported as a WACf004.


The attached patch therefore changes the current definition of 
serial-wacf004.tablet to a more generic dfefintion, thus the name 
generic-serial.tablet and the new name Generic Serial Tablet.


Would that be better?

Cheers,
Olivier.
--
[1] https://bugzilla.gnome.org/show_bug.cgi?id=688317#c5
From 914aa387b4ef816703326633289336100b664c89 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Tue, 4 Dec 2012 11:21:30 +0100
Subject: [PATCH] data: rename serial WACf004 to generic serial

The definition of the serial-wacf004.tablet does not
specify any device match, so any generic serial tablet would
be reported as a WACf004 serial tablet.

Renamed serial-wacf004.tablet to generic-serial.tablet and
changed the name to Generic serial tablet

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/generic-serial.tablet |   10 ++
 data/serial-wacf004.tablet |   10 --
 2 files changed, 10 insertions(+), 10 deletions(-)
 create mode 100644 data/generic-serial.tablet
 delete mode 100644 data/serial-wacf004.tablet

diff --git a/data/generic-serial.tablet b/data/generic-serial.tablet
new file mode 100644
index 000..275375c
--- /dev/null
+++ b/data/generic-serial.tablet
@@ -0,0 +1,10 @@
+[Device]
+Name=Generic Serial Tablet
+DeviceMatch=serial::
+Class=ISDV4
+IntegratedIn=Display;System
+
+[Features]
+Stylus=true
+Ring=false
+Buttons=0
diff --git a/data/serial-wacf004.tablet b/data/serial-wacf004.tablet
deleted file mode 100644
index e2b5f74..000
--- a/data/serial-wacf004.tablet
+++ /dev/null
@@ -1,10 +0,0 @@
-[Device]
-Name=Wacom Serial Tablet WACf004
-DeviceMatch=serial::
-Class=ISDV4
-IntegratedIn=Display;System
-
-[Features]
-Stylus=true
-Ring=false
-Buttons=0
-- 
1.7.1

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] data: rename serial WACf004 to generic serial

2012-12-04 Thread Ping Cheng
On Tue, Dec 4, 2012 at 2:29 AM, Olivier Fourdan ofour...@redhat.com wrote:
 Hi,

 It's been reported [1] that some serial tablet are wrongly seen as Wacom
 Serial Tablet WACf004.

 Looking at the device definition in libwacom, it appears that the
 DeviceMatch for the serial-wacf004.tablet is serial:: so I suspect
 any unknown serial tablet will be reported as a WACf004.

I wonder how a serial device ever gets a serial::. We assign
vendor id and device id to all serial devices in the kernel and X
drivers.

 The attached patch therefore changes the current definition of
 serial-wacf004.tablet to a more generic dfefintion, thus the name
 generic-serial.tablet and the new name Generic Serial Tablet.

If we have no idea about the device id, we can not tell the device
type and its  supported feature. Naming it generic is a good choice.

Reviewed-by: Ping Cheng pingli...@gmail.com

Ping

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] lib: use integration flags from device info

2012-12-03 Thread Olivier Fourdan
Following the comments from Peter regarding /not/ changing the 
integration flags when set in the database.
From 63808789de413dc4ea60fadc7bb897cc870b008d Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Mon, 3 Dec 2012 10:25:11 +0100
Subject: [PATCH] lib: use integration flags from device info

if and only if the entry in the database did not set
a value.

The flags set in the database entry should be changed
based on kernel flags unless the database did not set
the integration flags.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 libwacom/libwacom.c |8 
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/libwacom/libwacom.c b/libwacom/libwacom.c
index 23f3b08..7e88148 100644
--- a/libwacom/libwacom.c
+++ b/libwacom/libwacom.c
@@ -142,6 +142,7 @@ get_device_info (const char*path,
 	g_type_init();
 
 	retval = FALSE;
+	/* The integration flags from device info are unset by default */
 	*integration_flags = WACOM_DEVICE_INTEGRATED_UNSET;
 	*name = NULL;
 	bus_str = NULL;
@@ -507,10 +508,9 @@ libwacom_new_from_path(WacomDeviceDatabase *db, const char *path, WacomFallbackF
 	libwacom_update_match(ret, bus, vendor_id, product_id);
 
 	if (device) {
-		if (integration_flags == WACOM_DEVICE_INTEGRATED_DISPLAY)
-			ret-integration_flags |= WACOM_DEVICE_INTEGRATED_DISPLAY;
-		else if (integration_flags == WACOM_DEVICE_INTEGRATED_NONE)
-			ret-integration_flags = ~WACOM_DEVICE_INTEGRATED_DISPLAY;
+		/* if unset, use the kernel flags. Could be uset as well. */
+		if (ret-integration_flags == WACOM_DEVICE_INTEGRATED_UNSET)
+			ret-integration_flags = integration_flags;
 
 		return ret;
 	}
-- 
1.7.1

--
Keep yourself connected to Go Parallel: 
BUILD Helping you discover the best ways to construct your parallel projects.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] lib: use integration flags from device info

2012-12-03 Thread Olivier Fourdan

Resend, sorry the commit message was the opposite of what I meant...
From 378edbc1b5caec1e27164d33dd4135a38b32f003 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Mon, 3 Dec 2012 10:25:11 +0100
Subject: [PATCH] lib: use integration flags from device info

if and only if the entry in the database did not set
a value.

The flags set in the database entry should not be changed
based on kernel flags unless the database did not set the
integration flags.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 libwacom/libwacom.c |8 
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/libwacom/libwacom.c b/libwacom/libwacom.c
index 23f3b08..7e88148 100644
--- a/libwacom/libwacom.c
+++ b/libwacom/libwacom.c
@@ -142,6 +142,7 @@ get_device_info (const char*path,
 	g_type_init();
 
 	retval = FALSE;
+	/* The integration flags from device info are unset by default */
 	*integration_flags = WACOM_DEVICE_INTEGRATED_UNSET;
 	*name = NULL;
 	bus_str = NULL;
@@ -507,10 +508,9 @@ libwacom_new_from_path(WacomDeviceDatabase *db, const char *path, WacomFallbackF
 	libwacom_update_match(ret, bus, vendor_id, product_id);
 
 	if (device) {
-		if (integration_flags == WACOM_DEVICE_INTEGRATED_DISPLAY)
-			ret-integration_flags |= WACOM_DEVICE_INTEGRATED_DISPLAY;
-		else if (integration_flags == WACOM_DEVICE_INTEGRATED_NONE)
-			ret-integration_flags = ~WACOM_DEVICE_INTEGRATED_DISPLAY;
+		/* if unset, use the kernel flags. Could be uset as well. */
+		if (ret-integration_flags == WACOM_DEVICE_INTEGRATED_UNSET)
+			ret-integration_flags = integration_flags;
 
 		return ret;
 	}
-- 
1.7.1

--
Keep yourself connected to Go Parallel: 
BUILD Helping you discover the best ways to construct your parallel projects.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: set of patches...

2012-12-03 Thread Olivier Fourdan
Hi all,

I admit I tend to get lost a bit myself with all the patches I sent, 
so if you're like me, I placed the full list of patches here:

 http://people.redhat.com/ofourdan/libwacom/patches/

These patches are meant to go on top of current (as of today) git master.

Hope it helps :)

Cheers,
Olivier.

--
Keep yourself connected to Go Parallel: 
BUILD Helping you discover the best ways to construct your parallel projects.
http://goparallel.sourceforge.net
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] lib: constify parameters in API

2012-12-03 Thread Peter Hutterer
On Thu, Nov 29, 2012 at 07:07:18PM +0100, Olivier Fourdan wrote:
 [...]
 
 Olivier Fourdan said the following on 11/29/2012 05:49 PM:
 sorry, I didn't spot this earlier, this should be const WacomDevice *device.
   (only noticed that when doing some printf testing on my device). Given 
  that
   is_builtin, is_reversible, etc aren't const we should update all of them 
  in
   a follow-up patch.
 
 Yes, I simply copy/pasted from one of the previous functions... I'll
 send a separate global constification patch.
 
 The /big/ constification patch... goes on top of the integration bits.

applied, thanks.

Cheers,
   Peter

 From 36a4afefcc4fcf89fa7c1e917c97926e3945a152 Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Thu, 29 Nov 2012 18:52:36 +0100
 Subject: [PATCH] lib: constify parameters in API
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com
 ---
  libwacom/libwacom-database.c |2 +-
  libwacom/libwacom.c  |   86 -
  libwacom/libwacom.h  |   70 +-
  3 files changed, 78 insertions(+), 80 deletions(-)
 
 diff --git a/libwacom/libwacom-database.c b/libwacom/libwacom-database.c
 index e0ee52e..9813a4e 100644
 --- a/libwacom/libwacom-database.c
 +++ b/libwacom/libwacom-database.c
 @@ -622,7 +622,7 @@ libwacom_database_destroy(WacomDeviceDatabase *db)
  }
  
  WacomDevice**
 -libwacom_list_devices_from_database(WacomDeviceDatabase *db, WacomError 
 *error)
 +libwacom_list_devices_from_database(const WacomDeviceDatabase *db, 
 WacomError *error)
  {
   GList *cur, *devices;
   WacomDevice **list, **p;
 diff --git a/libwacom/libwacom.c b/libwacom/libwacom.c
 index 23f3b08..b03fe0b 100644
 --- a/libwacom/libwacom.c
 +++ b/libwacom/libwacom.c
 @@ -48,7 +48,7 @@
  #endif
  
  static const WacomDevice *
 -libwacom_get_device(WacomDeviceDatabase *db, const char *match)
 +libwacom_get_device(const WacomDeviceDatabase *db, const char *match)
  {
   return (WacomDevice *) g_hash_table_lookup (db-device_ht, match);
  }
 @@ -337,7 +337,7 @@ libwacom_copy(const WacomDevice *device)
  
  
  static int
 -compare_matches(WacomDevice *a, WacomDevice *b)
 +compare_matches(const WacomDevice *a, const WacomDevice *b)
  {
   const WacomMatch **ma, **mb, **match_a, **match_b;
  
 @@ -359,7 +359,7 @@ compare_matches(WacomDevice *a, WacomDevice *b)
  
  /* Compare layouts based on file name, stripping the full path */
  static gboolean
 -libwacom_same_layouts (WacomDevice *a, WacomDevice *b)
 +libwacom_same_layouts (const WacomDevice *a, const WacomDevice *b)
  {
   gchar *file1, *file2;
  
 @@ -378,7 +378,7 @@ libwacom_same_layouts (WacomDevice *a, WacomDevice *b)
  }
  
  int
 -libwacom_compare(WacomDevice *a, WacomDevice *b, WacomCompareFlags flags)
 +libwacom_compare(const WacomDevice *a, const WacomDevice *b, 
 WacomCompareFlags flags)
  {
   g_return_val_if_fail(a || b, 0);
  
 @@ -442,7 +442,7 @@ libwacom_compare(WacomDevice *a, WacomDevice *b, 
 WacomCompareFlags flags)
  }
  
  static const WacomDevice *
 -libwacom_new (WacomDeviceDatabase *db, int vendor_id, int product_id, 
 WacomBusType bus, WacomError *error)
 +libwacom_new (const WacomDeviceDatabase *db, int vendor_id, int product_id, 
 WacomBusType bus, WacomError *error)
  {
   const WacomDevice *device;
   char *match;
 @@ -460,7 +460,7 @@ libwacom_new (WacomDeviceDatabase *db, int vendor_id, int 
 product_id, WacomBusTy
  }
  
  WacomDevice*
 -libwacom_new_from_path(WacomDeviceDatabase *db, const char *path, 
 WacomFallbackFlags fallback, WacomError *error)
 +libwacom_new_from_path(const WacomDeviceDatabase *db, const char *path, 
 WacomFallbackFlags fallback, WacomError *error)
  {
   int vendor_id, product_id;
   WacomBusType bus;
 @@ -522,7 +522,7 @@ bail:
  }
  
  WacomDevice*
 -libwacom_new_from_usbid(WacomDeviceDatabase *db, int vendor_id, int 
 product_id, WacomError *error)
 +libwacom_new_from_usbid(const WacomDeviceDatabase *db, int vendor_id, int 
 product_id, WacomError *error)
  {
   const WacomDevice *device;
  
 @@ -541,7 +541,7 @@ libwacom_new_from_usbid(WacomDeviceDatabase *db, int 
 vendor_id, int product_id,
  }
  
  WacomDevice*
 -libwacom_new_from_name(WacomDeviceDatabase *db, const char *name, WacomError 
 *error)
 +libwacom_new_from_name(const WacomDeviceDatabase *db, const char *name, 
 WacomError *error)
  {
   const WacomDevice *device;
   GList *keys, *l;
 @@ -570,7 +570,7 @@ libwacom_new_from_name(WacomDeviceDatabase *db, const 
 char *name, WacomError *er
   return NULL;
  }
  
 -static void print_styli_for_device (int fd, WacomDevice *device)
 +static void print_styli_for_device (int fd, const WacomDevice *device)
  {
   int nstyli;
   const int *styli;
 @@ -587,7 +587,7 @@ static void print_styli_for_device (int fd, WacomDevice 
 *device)
   dprintf(fd, \n);
  }
  
 -static void print_layout_for_device (int fd, WacomDevice *device)
 +static void 

Re: [Linuxwacom-devel] libwacom: [PATCH 0/3] data: add leaders to layouts

2012-12-03 Thread Peter Hutterer
On Fri, Nov 30, 2012 at 02:56:40PM +0100, Olivier Fourdan wrote:
 Separated patches for the addition of leaders in layout files.

   c5c38f1..37d5fd6  master - master


thanks

Cheers,
   Peter

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] tools: increase timeout for animation

2012-12-03 Thread Peter Hutterer
On Fri, Nov 30, 2012 at 03:06:05PM +0100, Olivier Fourdan wrote:
 

 From 06ff3bab2f21f9b25191fb280ae5f25741c21cd1 Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Fri, 30 Nov 2012 11:37:17 +0100
 Subject: [PATCH] tools: increase timeout for animation
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com

merged, thanks

Cheers,
   Peter

 ---
  tools/show-svg-image.c |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/tools/show-svg-image.c b/tools/show-svg-image.c
 index fac8c45..d9e1ec0 100644
 --- a/tools/show-svg-image.c
 +++ b/tools/show-svg-image.c
 @@ -403,7 +403,7 @@ main (int argc, char **argv)
  
   g_signal_connect (tablet-widget, expose-event, 
 G_CALLBACK(on_expose_cb), tablet);
   g_signal_connect (tablet-widget, delete-event, 
 G_CALLBACK(on_delete_cb), tablet);
 - tablet-timeout = g_timeout_add(500 /* ms */, (GSourceFunc) 
 on_timer_cb, tablet);
 + tablet-timeout = g_timeout_add(750 /* ms */, (GSourceFunc) 
 on_timer_cb, tablet);
  
   gtk_widget_show (tablet-widget);
  
 -- 
 1.7.1
 

 --
 Keep yourself connected to Go Parallel: 
 TUNE You got it built. Now make it sing. Tune shows you how.
 http://goparallel.sourceforge.net

 ___
 Linuxwacom-devel mailing list
 Linuxwacom-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] lib: use integration flags from device info

2012-12-03 Thread Peter Hutterer
On Mon, Dec 03, 2012 at 10:53:31AM +0100, Olivier Fourdan wrote:
 Resend, sorry the commit message was the opposite of what I meant...

 From 378edbc1b5caec1e27164d33dd4135a38b32f003 Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Mon, 3 Dec 2012 10:25:11 +0100
 Subject: [PATCH] lib: use integration flags from device info
 
 if and only if the entry in the database did not set
 a value.
 
 The flags set in the database entry should not be changed
 based on kernel flags unless the database did not set the
 integration flags.
 

merged, thanks

Cheers,
   Peter

 Signed-off-by: Olivier Fourdan ofour...@redhat.com
 ---
  libwacom/libwacom.c |8 
  1 files changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/libwacom/libwacom.c b/libwacom/libwacom.c
 index 23f3b08..7e88148 100644
 --- a/libwacom/libwacom.c
 +++ b/libwacom/libwacom.c
 @@ -142,6 +142,7 @@ get_device_info (const char*path,
   g_type_init();
  
   retval = FALSE;
 + /* The integration flags from device info are unset by default */
   *integration_flags = WACOM_DEVICE_INTEGRATED_UNSET;
   *name = NULL;
   bus_str = NULL;
 @@ -507,10 +508,9 @@ libwacom_new_from_path(WacomDeviceDatabase *db, const 
 char *path, WacomFallbackF
   libwacom_update_match(ret, bus, vendor_id, product_id);
  
   if (device) {
 - if (integration_flags == WACOM_DEVICE_INTEGRATED_DISPLAY)
 - ret-integration_flags |= 
 WACOM_DEVICE_INTEGRATED_DISPLAY;
 - else if (integration_flags == WACOM_DEVICE_INTEGRATED_NONE)
 - ret-integration_flags = 
 ~WACOM_DEVICE_INTEGRATED_DISPLAY;
 + /* if unset, use the kernel flags. Could be uset as well. */
 + if (ret-integration_flags == WACOM_DEVICE_INTEGRATED_UNSET)
 + ret-integration_flags = integration_flags;
  
   return ret;
   }
 -- 
 1.7.1
 

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 0/2] data: update SVG layouts

2012-12-03 Thread Peter Hutterer
On Fri, Nov 30, 2012 at 03:12:12PM +0100, Olivier Fourdan wrote:
 I never really liked the indentation for the SVG layouts, having one 
 SVG object per single line with attributes aligned induces way too 
 long lines that are harder to read and a burden to modify (believe me, 
 it's a pain to keep all those x/y/wifth/height aligned, and it doesn't 
 even help with clarity, quite the contrary)
 
 I would rather adopt the usual SVG indentation as generated by 
 graphical tools such as Inkscape, that reduces the size of later 
 patches and improves their readability.

yeah, fair enough. I've merged these and all the standalone patches. Let me
know if I forgot any.

   37d5fd6..1366904  master - master

Cheers,
   Peter

--
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 0/3] data: add leaders to layouts

2012-11-30 Thread Olivier Fourdan
Separated patches for the addition of leaders in layout files.


--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 1/3] data: add leaders to layouts

2012-11-30 Thread Olivier Fourdan


From cc6712c8941f039d3456742e536d3c75ad21fd19 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 30 Nov 2012 09:16:44 +0100
Subject: [PATCH 1/3] data: add leaders to layouts

To match the buttons with their corresponding labels, the
layout SVG must also provide a leader line for each label
in the form of a line that links each button and its
label.

Improves the layout SVG for the Cintiq 12WX and Intuos 5 M
by adding details and rounded buttons to match the look of
the real device.

Buttons, labels and indicators are now grouped in the SVG
layout for better clarity of the SVG.

Replace use of ambiguous Up and Down in ring
controls with CW (Clockwise) and CCW (Counter
Clockwise) which are more appropriate for circular
motion (note that CCW is used in place of Up
and CW in place of Down).

Add possible use of fake buttons to materialize
the type of motion expected in touch strips/rings
(optional, not mandatory as not present on the
real device).

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/layouts/README  |  123 ++---
 data/layouts/cintiq-12wx.svg |  116 ++--
 data/layouts/intuos5-m.svg   |   85 +
 3 files changed, 264 insertions(+), 60 deletions(-)

diff --git a/data/layouts/README b/data/layouts/README
index 37b644d..9da2321 100644
--- a/data/layouts/README
+++ b/data/layouts/README
@@ -56,6 +56,56 @@ Touch rings use the following convention:
 id=Strip2
 class=Strip2 TouchStrip
 
+Note: Additional fake buttons (ie actual controls not found on the real
+device) can be added to touch controls to help showing the type of action
+expected on the control, like for example circular motion on a touch ring
+or vertical motion on a touch strip.
+
+These controls can be named:
+
+ - First touch ring, rotating clockwise:
+
+id=RingCW
+class=RingCW Button
+
+ - First touch ring, rotating counter clockwise:
+
+id=RingCCW
+class=RingCCW Button
+
+ - Second touch ring, rotating clockwise:
+
+id=Ring2CW
+class=Ring2CW Button
+
+ - Second touch ring, rotating counter clockwise:
+
+id=Ring2CCW
+class=Ring2CCW Button
+
+ - First touch strip, moving up:
+
+id=StripUp
+class=StripUp Button
+
+ - First touch strip, moving down:
+
+id=StripDown
+class=StripDown Button
+
+ - Second touch strip, moving up:
+
+id=Strip2Up
+class=Strip2Up Button
+
+ - Second touch strip, moving down:
+
+id=Strip2Down
+class=Strip2Down Button
+
+The use of those fake buttons is left at the discretion of the designer
+and is not mandatory nor enforced.
+
 * Labels
 
 The role of the labels in the SVG is to give applications an indication on
@@ -71,6 +121,7 @@ Each button's label ID in the SVG is made of the string Label with ID of the
 button to which it applies, between 'A' and 'Z'.
 
 Class includes both the button ID and the string Label.
+
 id=LabelA
 class=A Label
 
@@ -84,23 +135,23 @@ For the special case of mode-switch buttons, the class also list ModeSwitch:
 Touch-rings and touch-strips generate Up and Down events, therefore 2 different
 labels are needed for each touch-ring/touch-strip control.
 
-id=LabelRingUp
-class=RingUp Ring Label
+id=LabelRingCCW
+class=RingCCW Ring Label
 
   and
 
-id=LabelRingDown
-class=RingDown Ring Label
+id=LabelRingCW
+class=RingCW Ring Label
 
 The second touch-ring button is identified by Ring2 in place of Ring:
 
-id=LabelRing2Up
-class=Ring2Up Ring2 Label
+id=LabelRing2CCW
+class=Ring2CCW Ring2 Label
 
   and
 
-id=LabelRingDown
-class=Ring2Down Ring2 Label
+id=LabelRingCW
+class=Ring2CW Ring2 Label
 
 Touchstrips button follow the same naming scheme, using Strip and Strip2
 to name the first and second touch-strip.
@@ -120,5 +171,59 @@ Second touch-strip:
 
   and
 
-id=LabelRingDown
+id=LabelRingCW
 class=Strip2Down Strip2 Label
+
+ - Caption leader lines
+
+To match the buttons with their corresponding labels, the SVG must also
+provide a leader line for each label in the form of a line that links
+each button and its label.
+
+Each leader line follows the same naming convention as the labels, using
+the special name Leader in place of Label, ie:
+
+id=LeaderA
+class=A Leader
+
+Touch-rings and touch-strips have 2 different labels and therefore 2 leader
+lines.
+
+id=LeaderRingCCW
+class=RingCCW Ring Leader
+
+  and
+
+id=LeaderRingCW
+class=RingCW Ring Leader
+
+The second touch-ring button is identified by Ring2 in place of Ring:
+
+id=LeaderRing2CCW
+class=Ring2CCW Ring2 Leader
+
+  and
+
+id=LeaderRingCW
+class=Ring2CW Ring2 Leader
+
+Touchstrips button follow the same naming scheme, using Strip and Strip2
+to name the first and second touch-strip.
+
+id=LeaderStripUp
+class=StripUp Strip Leader
+
+  and
+
+id=LeaderStripDown
+

[Linuxwacom-devel] libwacom: [PATCH 2/3] test: add check for leaders and ring circular motion

2012-11-30 Thread Olivier Fourdan


From b0ee69086912223e2027ecb0879e9fc4fe40cc08 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 30 Nov 2012 10:01:34 +0100
Subject: [PATCH 2/3] test: add check for leaders and ring circular motion

Check for the presence of the leaders in the SVG layouts and
changes the naming of touch ring control to CW and CCW in
place of Up and Down.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 test/tablet-svg-validity.c |   85 
 1 files changed, 78 insertions(+), 7 deletions(-)

diff --git a/test/tablet-svg-validity.c b/test/tablet-svg-validity.c
index 0dca5a4..4e3cc81 100644
--- a/test/tablet-svg-validity.c
+++ b/test/tablet-svg-validity.c
@@ -1,5 +1,5 @@
 /*
- * Copyright ?? 2012 Red Hat, Inc.
+ * Copyright © 2012 Red Hat, Inc.
  *
  * Permission to use, copy, modify, distribute, and sell this software
  * and its documentation for any purpose is hereby granted without
@@ -127,7 +127,7 @@ check_button (xmlNodePtr cur, WacomDevice *device, char button, gchar *type)
 }
 
 static void
-check_touch (xmlNodePtr cur, gchar *id, gchar *type)
+check_touchstrip (xmlNodePtr cur, gchar *id)
 {
 	char *sub;
 	char *class;
@@ -136,7 +136,7 @@ check_touch (xmlNodePtr cur, gchar *id, gchar *type)
 	node = verify_has_sub (cur, id);
 	g_assert (node != NULL);
 
-	class = g_strdup_printf (%s %s, id, type);
+	class = g_strdup_printf (%s %s, id, TouchStrip);
 	verify_has_class (node, class);
 	g_free (class);
 
@@ -157,6 +157,76 @@ check_touch (xmlNodePtr cur, gchar *id, gchar *type)
 	class = g_strdup_printf (%sDown %s Label, id, id);
 	verify_has_class (node, class);
 	g_free (class);
+
+	sub = g_strdup_printf (Leader%sUp, id);
+	node = verify_has_sub (cur, sub);
+	g_assert (node != NULL);
+	g_free (sub);
+
+	class = g_strdup_printf (%sUp %s Leader, id, id);
+	verify_has_class (node, class);
+	g_free (class);
+
+	sub = g_strdup_printf (Leader%sDown, id);
+	node = verify_has_sub (cur, sub);
+	g_assert (node != NULL);
+	g_free (sub);
+
+	class = g_strdup_printf (%sDown %s Leader, id, id);
+	verify_has_class (node, class);
+	g_free (class);
+}
+
+
+static void
+check_touchring (xmlNodePtr cur, gchar *id)
+{
+	char *sub;
+	char *class;
+	xmlNodePtrnode;
+
+	node = verify_has_sub (cur, id);
+	g_assert (node != NULL);
+
+	class = g_strdup_printf (%s %s, id, TouchRing);
+	verify_has_class (node, class);
+	g_free (class);
+
+	sub = g_strdup_printf (Label%sCCW, id);
+	node = verify_has_sub (cur, sub);
+	g_assert (node != NULL);
+	g_free (sub);
+
+	class = g_strdup_printf (%sCCW %s Label, id, id);
+	verify_has_class (node, class);
+	g_free (class);
+
+	sub = g_strdup_printf (Label%sCW, id);
+	node = verify_has_sub (cur, sub);
+	g_assert (node != NULL);
+	g_free (sub);
+
+	class = g_strdup_printf (%sCW %s Label, id, id);
+	verify_has_class (node, class);
+	g_free (class);
+
+	sub = g_strdup_printf (Leader%sCCW, id);
+	node = verify_has_sub (cur, sub);
+	g_assert (node != NULL);
+	g_free (sub);
+
+	class = g_strdup_printf (%sCCW %s Leader, id, id);
+	verify_has_class (node, class);
+	g_free (class);
+
+	sub = g_strdup_printf (Leader%sCW, id);
+	node = verify_has_sub (cur, sub);
+	g_assert (node != NULL);
+	g_free (sub);
+
+	class = g_strdup_printf (%sCW %s Leader, id, id);
+	verify_has_class (node, class);
+	g_free (class);
 }
 
 static void
@@ -203,18 +273,19 @@ verify_tablet_layout (WacomDeviceDatabase *db, WacomDevice *device)
 	for (button = 'A'; button  'A' + num_buttons; button++) {
 		check_button (cur, device, button, Button);
 		check_button (cur, device, button, Label);
+		check_button (cur, device, button, Leader);
 	}
 
 	/* Touch rings */
 	if (libwacom_has_ring(device))
-		check_touch (cur, Ring, TouchRing);
+		check_touchring (cur, Ring);
 	if (libwacom_has_ring2(device))
-		check_touch (cur, Ring2, TouchRing);
+		check_touchring (cur, Ring2);
 	/* Touch strips */
 	if (libwacom_get_num_strips(device)  0)
-		check_touch (cur, Strip, TouchStrip);
+		check_touchstrip (cur, Strip);
 	if (libwacom_get_num_strips(device)  1)
-		check_touch (cur, Strip2, TouchStrip);
+		check_touchstrip (cur, Strip2);
 
 	xmlFreeDoc(doc);
 
-- 
1.7.1

--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 3/3] tools: add leaders to CSS

2012-11-30 Thread Olivier Fourdan


From 516bf02a63d444766625e131ba0fac6e44804599 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 30 Nov 2012 11:18:43 +0100
Subject: [PATCH 3/3] tools: add leaders to CSS

and adjust CSS to differentiate leaders from regular buttons.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 tools/show-svg-image.c |   15 +++
 1 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/tools/show-svg-image.c b/tools/show-svg-image.c
index 01a7b13..5831888 100644
--- a/tools/show-svg-image.c
+++ b/tools/show-svg-image.c
@@ -1,5 +1,5 @@
 /*
- * Copyright ?? 2012 Red Hat, Inc.
+ * Copyright © 2012 Red Hat, Inc.
  *
  * Permission to use, copy, modify, distribute, and sell this software
  * and its documentation for any purpose is hereby granted without
@@ -192,8 +192,13 @@ update_tablet (Tablet *tablet)
 	 xmlns:xi=\http://www.w3.org/2001/XInclude\\n;
 	 width=\, width, \\n
 	 height=\, height, \\n
-	  style type=\text/css\\n
-	* {\n
+	  style type=\text/css\\n,
+	.Leader {\n
+	  stroke-width: .5 !important;\n
+	  stroke: , INACTIVE_COLOR, ;\n
+	  fill:none !important;\n
+	}\n,
+	.Button {\n
 	  stroke: , STROKE_COLOR, !important;\n
 	  fill:   , INACTIVE_COLOR, !important;\n
 	}\n,
@@ -213,8 +218,10 @@ update_tablet (Tablet *tablet)
 	}
 	}
 
-	/* Hide the existing labels */
 	data = g_strconcat (data,
+	.Leader {\n
+	  fill:none !important;\n
+	}\n,
 	.Label {\n
 	  stroke: none !important;\n
 	  fill:   , BACK_COLOR,   !important;\n
-- 
1.7.1

--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] tools: adjust colors and CSS for show-svg-image

2012-11-30 Thread Olivier Fourdan


From a9f392f5fa93fee859b5dcf6aa10b976cebf1ed0 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 30 Nov 2012 11:36:35 +0100
Subject: [PATCH] tools: adjust colors and CSS for show-svg-image

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 tools/show-svg-image.c |   27 ---
 1 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/tools/show-svg-image.c b/tools/show-svg-image.c
index 03b4c5d..fac8c45 100644
--- a/tools/show-svg-image.c
+++ b/tools/show-svg-image.c
@@ -37,10 +37,10 @@
 #include libwacom.h
 
 
-#define INACTIVE_COLOR		#2d2d2d
-#define ACTIVE_COLOR		#ff
-#define STROKE_COLOR		#b4b4b4
-#define DARK_COLOR		#141414
+#define INACTIVE_COLOR		#ededed
+#define ACTIVE_COLOR		#729fcf
+#define STROKE_COLOR		#00
+#define DARK_COLOR		#535353
 #define BACK_COLOR		#00
 
 /* Convenient struct to store our stuff around */
@@ -219,8 +219,9 @@ update_tablet (Tablet *tablet)
 	  fill:none !important;\n
 	}\n,
 	.Button {\n
-	  stroke: , STROKE_COLOR, !important;\n
-	  fill:   , INACTIVE_COLOR, !important;\n
+	  stroke-width: 0.25;\n
+	  stroke: , INACTIVE_COLOR, ;\n
+	  fill:   , INACTIVE_COLOR, ;\n
 	}\n,
 	NULL);
 	g_free (width);
@@ -231,8 +232,8 @@ update_tablet (Tablet *tablet)
 		if (button == tablet-active_button) {
 			data = g_strconcat (data,
 			., class,  {\n
-			  stroke: , STROKE_COLOR, !important;\n
-			  fill:   , button == tablet-active_button ? ACTIVE_COLOR : INACTIVE_COLOR,  !important;\n
+			  stroke: , ACTIVE_COLOR,  !important;\n
+			  fill:   , ACTIVE_COLOR,  !important;\n
 			}\n,
 			NULL);
 	}
@@ -243,12 +244,16 @@ update_tablet (Tablet *tablet)
 	  fill:none !important;\n
 	}\n,
 	.Label {\n
-	  stroke: none !important;\n
-	  fill:   , BACK_COLOR,   !important;\n
+	  stroke: none  !important;\n
+	  stroke-width: 0.1 !important;\n
+	  opacity:   .0 !important;\n
+	  font-size: .1 !important;\n
+	  fill:   , BACK_COLOR, !important;\n
 	}\n,
 	.TouchStrip,.TouchRing {\n
+	  stroke-width: 0.1   !important;\n
 	  stroke: , INACTIVE_COLOR, !important;\n
-	  fill:   , DARK_COLOR,   !important;\n
+	  fill:   , DARK_COLOR, !important;\n
 	}\n,
 	  /style\n
 	  xi:include href=\, libwacom_get_layout_filename (tablet-device), \/\n
-- 
1.7.1

--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] tools: show touchring and touchring labels

2012-11-30 Thread Olivier Fourdan


From ee49ab918b64fd17638bb7c83572111a668439d9 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 30 Nov 2012 11:34:43 +0100
Subject: [PATCH] tools: show touchring and touchring labels

in show-svg-image tool.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 tools/show-svg-image.c |   19 +++
 1 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/tools/show-svg-image.c b/tools/show-svg-image.c
index 8ec5ddb..03b4c5d 100644
--- a/tools/show-svg-image.c
+++ b/tools/show-svg-image.c
@@ -171,6 +171,25 @@ print_button_labels (cairo_t *cairo_context, Tablet *tablet)
 		g_free (label);
 		g_free (sub);
 	}
+
+	/* Touch rings */
+	if (libwacom_has_ring(tablet-device)) {
+		print_label (cairo_context, tablet, #LabelRingCCW, span foreground=\ INACTIVE_COLOR \ Ring Counter Clockwise/span, WACOM_BUTTON_POSITION_LEFT);
+		print_label (cairo_context, tablet, #LabelRingCW, span foreground=\ INACTIVE_COLOR \ Ring Clockwise/span, WACOM_BUTTON_POSITION_LEFT);
+	}
+	if (libwacom_has_ring2(tablet-device)) {
+		print_label (cairo_context, tablet, #LabelRing2CCW, span foreground=\ INACTIVE_COLOR \ 2nd Ring Counter Clockwise/span, WACOM_BUTTON_POSITION_RIGHT);
+		print_label (cairo_context, tablet, #LabelRing2CW, span foreground=\ INACTIVE_COLOR \ 2nd Ring Clockwise/span, WACOM_BUTTON_POSITION_RIGHT);
+	}
+	/* Touch strips */
+	if (libwacom_get_num_strips(tablet-device)  0) {
+		print_label (cairo_context, tablet, #LabelStripUp, span foreground=\ INACTIVE_COLOR \ Strip Up/span, WACOM_BUTTON_POSITION_LEFT);
+		print_label (cairo_context, tablet, #LabelStripDown, span foreground=\ INACTIVE_COLOR \ Strip Down/span, WACOM_BUTTON_POSITION_LEFT);
+	}
+	if (libwacom_get_num_strips(tablet-device)  1) {
+		print_label (cairo_context, tablet, #LabelStrip2Up, span foreground=\ INACTIVE_COLOR \ 2nd Strip Up/span, WACOM_BUTTON_POSITION_RIGHT);
+		print_label (cairo_context, tablet, #LabelStrip2Down, span foreground=\ INACTIVE_COLOR \ 2nd Strip Down/span, WACOM_BUTTON_POSITION_RIGHT);
+	}
 }
 
 static void
-- 
1.7.1

--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] tools: increase timeout for animation

2012-11-30 Thread Olivier Fourdan


From 06ff3bab2f21f9b25191fb280ae5f25741c21cd1 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 30 Nov 2012 11:37:17 +0100
Subject: [PATCH] tools: increase timeout for animation

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 tools/show-svg-image.c |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/tools/show-svg-image.c b/tools/show-svg-image.c
index fac8c45..d9e1ec0 100644
--- a/tools/show-svg-image.c
+++ b/tools/show-svg-image.c
@@ -403,7 +403,7 @@ main (int argc, char **argv)
 
 	g_signal_connect (tablet-widget, expose-event, G_CALLBACK(on_expose_cb), tablet);
 	g_signal_connect (tablet-widget, delete-event, G_CALLBACK(on_delete_cb), tablet);
-	tablet-timeout = g_timeout_add(500 /* ms */, (GSourceFunc) on_timer_cb, tablet);
+	tablet-timeout = g_timeout_add(750 /* ms */, (GSourceFunc) on_timer_cb, tablet);
 
 	gtk_widget_show (tablet-widget);
 
-- 
1.7.1

--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] tools: simplify label printing

2012-11-30 Thread Olivier Fourdan


From b5bfc43aec5cae79d8c3e257f62b0556607a0cdd Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 30 Nov 2012 11:55:30 +0100
Subject: [PATCH] tools: simplify label printing

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 tools/show-svg-image.c |7 +++
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/tools/show-svg-image.c b/tools/show-svg-image.c
index d9e1ec0..af57b37 100644
--- a/tools/show-svg-image.c
+++ b/tools/show-svg-image.c
@@ -163,10 +163,9 @@ print_button_labels (cairo_t *cairo_context, Tablet *tablet)
 
 		flags = libwacom_get_button_flag(tablet-device, button);
 		sub = g_strdup_printf (#Label%c, button);
-		if (button == tablet-active_button)
-			label = g_strdup_printf (span foreground=\ ACTIVE_COLOR \ Button %c/span, button);
-		else
-			label = g_strdup_printf (span foreground=\ INACTIVE_COLOR \ Button %c/span, button);
+		label = g_strdup_printf (span foreground=\%s\ Button %c/span,
+		 (button == tablet-active_button) ? ACTIVE_COLOR : INACTIVE_COLOR,
+		 button);
 		print_label (cairo_context, tablet, sub, label, flags);
 		g_free (label);
 		g_free (sub);
-- 
1.7.1

--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] tools: check for librsvg version 2.36.2

2012-11-30 Thread Olivier Fourdan


From 898c8f9f43e5057857cebe4b5ae5ab2659b1895a Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 30 Nov 2012 12:04:40 +0100
Subject: [PATCH] tools: check for librsvg version 2.36.2

to avoid a warning at build time as including librsvg/rsvg-cairo.h
directly is deprecated in version 2.36.2 or later.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 tools/show-svg-image.c |7 ++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/tools/show-svg-image.c b/tools/show-svg-image.c
index af57b37..7c806a1 100644
--- a/tools/show-svg-image.c
+++ b/tools/show-svg-image.c
@@ -33,9 +33,14 @@
 #include gtk/gtk.h
 #include cairo.h
 #include librsvg/rsvg.h
-#include librsvg/rsvg-cairo.h
 #include libwacom.h
 
+#ifndef LIBRSVG_CHECK_VERSION
+#include librsvg/librsvg-features.h
+#endif
+#if !LIBRSVG_CHECK_VERSION(2,36,2)
+#include librsvg/rsvg-cairo.h
+#endif
 
 #define INACTIVE_COLOR		#ededed
 #define ACTIVE_COLOR		#729fcf
-- 
1.7.1

--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 0/2] data: update SVG layouts

2012-11-30 Thread Olivier Fourdan
I never really liked the indentation for the SVG layouts, having one 
SVG object per single line with attributes aligned induces way too 
long lines that are harder to read and a burden to modify (believe me, 
it's a pain to keep all those x/y/wifth/height aligned, and it doesn't 
even help with clarity, quite the contrary)

I would rather adopt the usual SVG indentation as generated by 
graphical tools such as Inkscape, that reduces the size of later 
patches and improves their readability.


--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 1/2] data: change colors and default style in SVG layouts

2012-11-30 Thread Olivier Fourdan


From a21be4bb34c881f63735b7443e218da9a6e1bf51 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 30 Nov 2012 09:49:20 +0100
Subject: [PATCH 1/2] data: change colors and default style in SVG layouts

To improve rendering in graphical tools such as Inkscape.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/layouts/cintiq-12wx.svg |2 +-
 data/layouts/intuos5-m.svg   |2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/data/layouts/cintiq-12wx.svg b/data/layouts/cintiq-12wx.svg
index 3d1de09..26d9131 100644
--- a/data/layouts/cintiq-12wx.svg
+++ b/data/layouts/cintiq-12wx.svg
@@ -2,7 +2,7 @@
 !DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
 http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
 svg xmlns=http://www.w3.org/2000/svg; version=1.1
- style=color:#00;stroke:#bebebe;fill:#00;stroke-linejoin:round;stroke-width:1;font-size:8
+ style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
 id=cintiq-12wxwidth=405 height=270
   titleid=title  Wacom Cintiq 12WX/title
   g
diff --git a/data/layouts/intuos5-m.svg b/data/layouts/intuos5-m.svg
index f6748ae..d070b1c 100644
--- a/data/layouts/intuos5-m.svg
+++ b/data/layouts/intuos5-m.svg
@@ -2,7 +2,7 @@
 !DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
 http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
 svg xmlns=http://www.w3.org/2000/svg; version=1.1
- style=color:#00;stroke:#bebebe;fill:#f0f0f0;stroke-linejoin:round;stroke-width:1;font-size:8
+ style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
   id=intuos5-m  width=380 height=250 
   title  id=title   Wacom Intuos5 M Touch/title
   g
-- 
1.7.1

--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH 2/2] data: reindent SVG layout files

2012-11-30 Thread Olivier Fourdan


From ef8fcb07d8cb57fe3b91b615ac0d1faf138cc118 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 30 Nov 2012 09:50:51 +0100
Subject: [PATCH 2/2] data: reindent SVG layout files

Having one SVG object per single line with attributes
aligned induces way too long lines that are harder
to read and a burden to modify.

Adopt usual SVG indentation as generated by graphical
tools such as Inkscape, that reduces the size of later
patches and improves their readability.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/layouts/cintiq-12wx.svg |  385 ++
 data/layouts/intuos5-m.svg   |  285 ++-
 2 files changed, 558 insertions(+), 112 deletions(-)

diff --git a/data/layouts/cintiq-12wx.svg b/data/layouts/cintiq-12wx.svg
index 26d9131..57fa781 100644
--- a/data/layouts/cintiq-12wx.svg
+++ b/data/layouts/cintiq-12wx.svg
@@ -1,94 +1,345 @@
 ?xml version=1.0 standalone=no?
 !DOCTYPE svg PUBLIC -//W3C//DTD SVG 1.1//EN
-http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
-svg xmlns=http://www.w3.org/2000/svg; version=1.1
- style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
-id=cintiq-12wxwidth=405 height=270
-  titleid=title  Wacom Cintiq 12WX/title
+   http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
+svg
+   xmlns=http://www.w3.org/2000/svg;
+   version=1.1
+   style=color:#00;stroke:#7f7f7f;fill:none;stroke-width:.25;font-size:8
+   id=cintiq-12wx
+   width=405
+   height=270
+  title
+ id=titleWacom Cintiq 12WX/title
   g
-rect   id=ButtonA  class=A Button rx=.5 ry=.5 x=40 y=54  width=11  height=17   /
-path   id=LeaderA  class=A Leader d=M 53 63 L 65 63 L 65 72 L 78 72  /
-text   id=LabelA   class=A Label  x=80 y=72   style=text-anchor:start;   A/text
+rect
+   id=ButtonA
+   class=A Button
+   rx=.5
+   ry=.5
+   x=40
+   y=54
+   width=11
+   height=17 /
+path
+   id=LeaderA
+   class=A Leader
+   d=M 53 63 L 65 63 L 65 72 L 78 72 /
+text
+   id=LabelA
+   class=A Label
+   x=80
+   y=72
+   style=text-anchor:start;A/text
   /g
   g
-rect   id=ButtonB  class=B Button rx=.5 ry=.5 x=40 y=72   width=11  height=17  /
-circle id=DotB1cx=45.5  cy=77.5 r=.5   /
-circle id=DotB2cx=45.5  cy=80.5 r=.5   /
-circle id=DotB3cx=45.5  cy=83.5 r=.5   /
-path   id=LeaderB  class=B Leader d=M 53 81 L 65 81 L 65 87 L 78 87  /
-text   id=LabelB   class=B Label  x=80 y=87   style=text-anchor:start;B/text
+rect
+   id=ButtonB
+   class=B Button
+   rx=.5
+   ry=.5
+   x=40
+   y=72
+   width=11
+   height=17 /
+circle
+   id=DotB1
+   cx=45.5
+   cy=77.5
+   r=.5 /
+circle
+   id=DotB2
+   cx=45.5
+   cy=80.5
+   r=.5 /
+circle
+   id=DotB3
+   cx=45.5
+   cy=83.5
+   r=.5 /
+path
+   id=LeaderB
+   class=B Leader
+   d=M 53 81 L 65 81 L 65 87 L 78 87 /
+text
+   id=LabelB
+   class=B Label
+   x=80
+   y=87
+   style=text-anchor:start;B/text
   /g
   g
-rect   id=ButtonC  class=C Button x=28 y=54
-  rx=.5ry=.5   width=11  height=35  /
-path   id=LeaderC  class=C Leader d=M 26 72 L 25 72 L 25 35 L 65 35 L 65 42 L 78 42  /
-text   id=LabelC   class=C Label  x=80 y=42   style=text-anchor:start;C/text
+rect
+   id=ButtonC
+   class=C Button
+   x=28
+   y=54
+   rx=.5
+   ry=.5
+   width=11
+   height=35 /
+path
+   id=LeaderC
+   class=C Leader
+   d=M 26 72 L 25 72 L 25 35 L 65 35 L 65 42 L 78 42 /
+text
+   id=LabelC
+   class=C Label
+   x=80
+   y=42
+   style=text-anchor:start;C/text
   /g
   g
-rect   id=ButtonD  class=D Button x=28 y=90
-  rx=.5ry=.5   width=23  height=11   /
-path   id=LeaderD  class=D Leader d=M 53 96 L 65 96 L 65 102 L 78 102 /
-text   id=LabelD   class=D Label  x=80 y=102   

Re: [Linuxwacom-devel] libwacom: [PATCH 0/3] data: add leaders to layouts

2012-11-30 Thread Ping Cheng
On Fri, Nov 30, 2012 at 5:56 AM, Olivier Fourdan ofour...@redhat.comwrote:

 Separated patches for the addition of leaders in layout files.


Nice to see so many libwacom patchsets ready to be merged. Hope they can
get in the tree soon so we can move forward.

Thank you, Olivier.

Ping
--
Keep yourself connected to Go Parallel: 
TUNE You got it built. Now make it sing. Tune shows you how.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] data: Add caption indicators to layouts

2012-11-29 Thread Olivier Fourdan
Favux ... said the following on 11/29/2012 07:08 AM:
 In drafting there is a technical name for lines connecting labels to
 the object they reference.

 Leaders
 Leaders or leader lines indicate the part or area of a drawing to
 which a number, note or other reference applies. They are solid lines
 and usually terminate in a single arrowhead.

Perfect, Thanks!

That's the word I was looking for (unfortunately Google didn't help 
here and I could not use any translator tool as I couldn't 
find/remember in any other language either... meh)

I shall send an updated patch shortly.

Cheers,
Olivier.

-- 
əɔıʌəp əɯos ɥʇıʍ əɹəɥʍəɯos ɯoɹɟ ʇuəs


--
Keep yourself connected to Go Parallel: 
VERIFY Test and improve your parallel project with help from experts 
and peers. http://goparallel.sourceforge.net
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] data: Add caption indicators to layouts

2012-11-29 Thread Olivier Fourdan

Hi Peter,

Peter Hutterer said the following on 11/29/2012 06:34 AM:
 As Ping said, up/down on a ring is ambiguous. we use that 
 terminology in the driver, but I do think we have the chance here to 
 use CW/CCW instead.

Right, but is is it guaranteed that {Abs,Rel}Wheel*UP as received by 
the client is always CCW on the hardware and {Abs,Rel}Wheel*Down is 
always CW, for all devices out there?

Otherwise there would be no way to accurately match what's received 
from the driver with the CW/CWW naming convention.

Cheers,
Olivier.

--
Keep yourself connected to Go Parallel: 
VERIFY Test and improve your parallel project with help from experts 
and peers. http://goparallel.sourceforge.net
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 3/3] lib: add IntegratedIn to device group

2012-11-29 Thread Olivier Fourdan

Hi Peter,

Peter Hutterer said the following on 11/28/2012 01:43 AM:
 [...]
 I have to admit, this confused me quite a bit during testing (reason was
 that I forgot to install the data files at first, so list-local-devices gave
 me wrong values).

 turns out integration_flags is the one read from the kernel and can only be
 DISPLAY or NONE, so we need this weird construct to keep the SYSTEM alive
 (if it is there in the database).

 Now, that brings up the question: do we really want to override
 the device database entries with kernel-queried ones?

It should be the other way around. The kernel flags are used only if 
the integration flags are not set in the database.

get_device_info() which is the routines that reads the kernel flags is 
called from libwacom_new_from_path();

libwacom_new_from_path() passes an integration_flags local variable 
to get_device_info() which is set based on the kernel flags.

Then only the display part of the flag is used to update the device flags:


 if (device) {
 if (integration_flags == WACOM_DEVICE_INTEGRATED_DISPLAY)
 ret-integration_flags |= WACOM_DEVICE_INTEGRATED_DISPLAY;
 else if (integration_flags == WACOM_DEVICE_INTEGRATED_NONE)
 ret-integration_flags = ~WACOM_DEVICE_INTEGRATED_DISPLAY;

 return ret;
 }

(was like that with is_builtin, so nothing new here). The system 
part of the integration flags is left untouched and remains to 
whatever is set in the database (the kernel does not allow to 
automatically determine ISDs)

 [...]
 +WacomIntegrationFlags libwacom_get_integration_flags (WacomDevice *device)
 +{
 sorry, I didn't spot this earlier, this should be const WacomDevice *device.
 (only noticed that when doing some printf testing on my device). Given that
 is_builtin, is_reversible, etc aren't const we should update all of them in
 a follow-up patch.


Yes, I simply copy/pasted from one of the previous functions... I'll 
send a separate global constification patch.

Cheers,
Olivier.

--
Keep yourself connected to Go Parallel: 
VERIFY Test and improve your parallel project with help from experts 
and peers. http://goparallel.sourceforge.net
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 3/3] lib: add IntegratedIn to device group

2012-11-29 Thread Olivier Fourdan
Olivier Fourdan said the following on 11/29/2012 05:49 PM:
 [...]
 It should be the other way around. The kernel flags are used only if 
 the integration flags are not set in the database. 

Sorry please ignore that sentence in my previous reply, it was left 
over from a first draft... meh :(

Cheers,
Olivier.

--
Keep yourself connected to Go Parallel: 
VERIFY Test and improve your parallel project with help from experts 
and peers. http://goparallel.sourceforge.net
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] lib: constify parameters in API

2012-11-29 Thread Olivier Fourdan

[...]

Olivier Fourdan said the following on 11/29/2012 05:49 PM:

sorry, I didn't spot this earlier, this should be const WacomDevice *device.
  (only noticed that when doing some printf testing on my device). Given that
  is_builtin, is_reversible, etc aren't const we should update all of them in
  a follow-up patch.


Yes, I simply copy/pasted from one of the previous functions... I'll
send a separate global constification patch.


The /big/ constification patch... goes on top of the integration bits.

Cheers,
Olivier.
From 36a4afefcc4fcf89fa7c1e917c97926e3945a152 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Thu, 29 Nov 2012 18:52:36 +0100
Subject: [PATCH] lib: constify parameters in API

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 libwacom/libwacom-database.c |2 +-
 libwacom/libwacom.c  |   86 -
 libwacom/libwacom.h  |   70 +-
 3 files changed, 78 insertions(+), 80 deletions(-)

diff --git a/libwacom/libwacom-database.c b/libwacom/libwacom-database.c
index e0ee52e..9813a4e 100644
--- a/libwacom/libwacom-database.c
+++ b/libwacom/libwacom-database.c
@@ -622,7 +622,7 @@ libwacom_database_destroy(WacomDeviceDatabase *db)
 }
 
 WacomDevice**
-libwacom_list_devices_from_database(WacomDeviceDatabase *db, WacomError *error)
+libwacom_list_devices_from_database(const WacomDeviceDatabase *db, WacomError *error)
 {
 	GList *cur, *devices;
 	WacomDevice **list, **p;
diff --git a/libwacom/libwacom.c b/libwacom/libwacom.c
index 23f3b08..b03fe0b 100644
--- a/libwacom/libwacom.c
+++ b/libwacom/libwacom.c
@@ -48,7 +48,7 @@
 #endif
 
 static const WacomDevice *
-libwacom_get_device(WacomDeviceDatabase *db, const char *match)
+libwacom_get_device(const WacomDeviceDatabase *db, const char *match)
 {
 	return (WacomDevice *) g_hash_table_lookup (db-device_ht, match);
 }
@@ -337,7 +337,7 @@ libwacom_copy(const WacomDevice *device)
 
 
 static int
-compare_matches(WacomDevice *a, WacomDevice *b)
+compare_matches(const WacomDevice *a, const WacomDevice *b)
 {
 	const WacomMatch **ma, **mb, **match_a, **match_b;
 
@@ -359,7 +359,7 @@ compare_matches(WacomDevice *a, WacomDevice *b)
 
 /* Compare layouts based on file name, stripping the full path */
 static gboolean
-libwacom_same_layouts (WacomDevice *a, WacomDevice *b)
+libwacom_same_layouts (const WacomDevice *a, const WacomDevice *b)
 {
 	gchar *file1, *file2;
 
@@ -378,7 +378,7 @@ libwacom_same_layouts (WacomDevice *a, WacomDevice *b)
 }
 
 int
-libwacom_compare(WacomDevice *a, WacomDevice *b, WacomCompareFlags flags)
+libwacom_compare(const WacomDevice *a, const WacomDevice *b, WacomCompareFlags flags)
 {
 	g_return_val_if_fail(a || b, 0);
 
@@ -442,7 +442,7 @@ libwacom_compare(WacomDevice *a, WacomDevice *b, WacomCompareFlags flags)
 }
 
 static const WacomDevice *
-libwacom_new (WacomDeviceDatabase *db, int vendor_id, int product_id, WacomBusType bus, WacomError *error)
+libwacom_new (const WacomDeviceDatabase *db, int vendor_id, int product_id, WacomBusType bus, WacomError *error)
 {
 	const WacomDevice *device;
 	char *match;
@@ -460,7 +460,7 @@ libwacom_new (WacomDeviceDatabase *db, int vendor_id, int product_id, WacomBusTy
 }
 
 WacomDevice*
-libwacom_new_from_path(WacomDeviceDatabase *db, const char *path, WacomFallbackFlags fallback, WacomError *error)
+libwacom_new_from_path(const WacomDeviceDatabase *db, const char *path, WacomFallbackFlags fallback, WacomError *error)
 {
 	int vendor_id, product_id;
 	WacomBusType bus;
@@ -522,7 +522,7 @@ bail:
 }
 
 WacomDevice*
-libwacom_new_from_usbid(WacomDeviceDatabase *db, int vendor_id, int product_id, WacomError *error)
+libwacom_new_from_usbid(const WacomDeviceDatabase *db, int vendor_id, int product_id, WacomError *error)
 {
 	const WacomDevice *device;
 
@@ -541,7 +541,7 @@ libwacom_new_from_usbid(WacomDeviceDatabase *db, int vendor_id, int product_id,
 }
 
 WacomDevice*
-libwacom_new_from_name(WacomDeviceDatabase *db, const char *name, WacomError *error)
+libwacom_new_from_name(const WacomDeviceDatabase *db, const char *name, WacomError *error)
 {
 	const WacomDevice *device;
 	GList *keys, *l;
@@ -570,7 +570,7 @@ libwacom_new_from_name(WacomDeviceDatabase *db, const char *name, WacomError *er
 	return NULL;
 }
 
-static void print_styli_for_device (int fd, WacomDevice *device)
+static void print_styli_for_device (int fd, const WacomDevice *device)
 {
 	int nstyli;
 	const int *styli;
@@ -587,7 +587,7 @@ static void print_styli_for_device (int fd, WacomDevice *device)
 	dprintf(fd, \n);
 }
 
-static void print_layout_for_device (int fd, WacomDevice *device)
+static void print_layout_for_device (int fd, const WacomDevice *device)
 {
 	const char *layout_filename;
 	gchar  *base_name;
@@ -600,7 +600,7 @@ static void print_layout_for_device (int fd, WacomDevice *device)
 	}
 }
 
-static void print_supported_leds (int fd, WacomDevice *device)
+static void print_supported_leds (int 

Re: [Linuxwacom-devel] libwacom: [PATCH] data: Add caption indicators to layouts

2012-11-29 Thread Olivier Fourdan
Olivier Fourdan said the following on 11/29/2012 05:34 PM:
 Updated patch.

 Uses CW and CCW instead of Up and Down for touch rings, adds 
 (optional) arrows to show rotation on touch rings, renamed 
 indicator as leader as per previous reviews.

Patch is slightly larger than the limit for the list (40.2Kb  40Kb, 
sigh) and gets block waiting for moderator approval.

In the meantime it can be downloaded from here:

http://people.redhat.com/ofourdan/libwacom/patches/0001-data-Add-leaders-to-layouts.patch

Cheers,
Olivier.

--
Keep yourself connected to Go Parallel: 
VERIFY Test and improve your parallel project with help from experts 
and peers. http://goparallel.sourceforge.net
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] data: Add caption indicators to layouts

2012-11-29 Thread Jason Gerecke
On Thu, Nov 29, 2012 at 12:45 AM, Olivier Fourdan ofour...@redhat.comwrote:


 Hi Peter,

 Peter Hutterer said the following on 11/29/2012 06:34 AM:
  As Ping said, up/down on a ring is ambiguous. we use that
  terminology in the driver, but I do think we have the chance here to
  use CW/CCW instead.

 Right, but is is it guaranteed that {Abs,Rel}Wheel*UP as received by
 the client is always CCW on the hardware and {Abs,Rel}Wheel*Down is
 always CW, for all devices out there?

 Otherwise there would be no way to accurately match what's received
 from the driver with the CW/CWW naming convention.

 Cheers,
 Olivier.


I would consider this to be behavior you can rely on. On a dial-type
control, forward, bigger, etc. are universally achieved through CW
rotation. Even if the hardware were wired backwards for some reason, we'd
still almost certainly correct it in software to ensure an appropriate user
experience. It would be exceedingly strange for a device to *intend* for
rotation to work backwards.

Jason

---
When you're rife with devastation / There's a simple explanation:
You're a toymaker's creation / Trapped inside a crystal ball.
And whichever way he tilts it / Know that we must be resilient
We won't let them break our spirits / As we sing our silly song.




 --
 Keep yourself connected to Go Parallel:
 VERIFY Test and improve your parallel project with help from experts
 and peers. http://goparallel.sourceforge.net
 ___
 Linuxwacom-devel mailing list
 Linuxwacom-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

--
Keep yourself connected to Go Parallel: 
VERIFY Test and improve your parallel project with help from experts 
and peers. http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH] data: Add caption indicators to layouts

2012-11-29 Thread Peter Hutterer
On Thu, Nov 29, 2012 at 05:34:28PM +0100, Olivier Fourdan wrote:
 Updated patch.
 
 Uses CW and CCW instead of Up and Down for touch rings, adds
 (optional) arrows to show rotation on touch rings, renamed
 indicator as leader as per previous reviews.

ack to the leader part of it, but the other comments still stand
(change of colours, timeout change, splitting the API change for print_label
into a separate patch)


one more nitpick, but you don't have to address this one if you don't agree:
 - markup = g_strdup_printf (span foreground=\ 
 ACTIVE_COLOR \ weight=\bold\Button %c/span, button);

make this
g_strdup_printf(span foreground=\%s\ ..., ACTIVE_COLOR, button);
nicer to read and we're already using printf here anyway. should probably go
into a separate patch since you're just renaming here

Cheers,
   Peter

 From b877ff84ee108ce2115a40b4d7c8edfd47382b73 Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Tue, 27 Nov 2012 09:52:42 +0100
 Subject: [PATCH] data: Add leaders to layouts
 
 To match the buttons with their corresponding labels, the
 layout SVG must also provide a leader line for each label
 in the form of a line that links each button and its
 label.
 
 Improves the layout SVG for the Cintiq 12WX and Intuos 5 M
 by adding details and rounded buttons to match the look of
 the real device.
 
 Buttons, labels and indicators are now grouped in the SVG
 layout for better clarity of the SVG.
 
 Adds indicators to the SVG check test iprogram so that
 incomplete layouts would be detected.
 
 Replace use of ambiguous Up and Down in ring
 controls with CW (Clockwise) and CCW (Counter
 Clockwise) which are more appropriate for circular
 motion (note that CCW is used in place of Up
 and CW in place of Down).
 
 Add possible use of fake buttons to materialize
 the type of motion expected in touch strips/rings
 (optional, not mandatory as not present on the
 real device).
 
 Improves the SVG layout display sample program to show
 touch ring/touch strips labels and label indicators.
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com
 ---
  data/layouts/README  | 124 +++---
  data/layouts/cintiq-12wx.svg | 118 ++---
  data/layouts/intuos5-m.svg   |  87 +++--
  test/tablet-svg-validity.c   |  83 ++--
  tools/show-svg-image.c   | 176 
 +--
  5 files changed, 448 insertions(+), 140 deletions(-)
 
 diff --git a/data/layouts/README b/data/layouts/README
 index 37b644d..fda7814 100644
 --- a/data/layouts/README
 +++ b/data/layouts/README
 @@ -56,6 +56,56 @@ Touch rings use the following convention:
  id=Strip2
  class=Strip2 TouchStrip
  
 +Note: Additional fake buttons (ie actual controls not found on the real
 +device) can be added to touch controls to help showing the type of action
 +expected on the control, like for example circular motion on a touch ring
 +or vertical motion on a touch strip.
 +
 +These controls can be named:
 +
 + - First touch ring, rotating clockwise:
 +
 +id=RingCW
 +class=RingCW Button
 +
 + - First touch ring, rotating counter clockwise:
 +
 +id=RingCCW
 +class=RingCCW Button
 +
 + - Second touch ring, rotating clockwise:
 +
 +id=Ring2CW
 +class=Ring2CW Button
 +
 + - Second touch ring, rotating counter clockwise:
 +
 +id=Ring2CCW
 +class=Ring2CCW Button
 +
 + - First touch strip, moving up:
 +
 +id=StripUp
 +class=StripUp Button
 +
 + - First touch strip, moving down:
 +
 +id=StripDown
 +class=StripDown Button
 +
 + - Second touch strip, moving up:
 +
 +id=Strip2Up
 +class=Strip2Up Button
 +
 + - Second touch strip, moving down:
 +
 +id=Strip2Down
 +class=Strip2Down Button
 +
 +The use of those fake buttons is left at the discretion of the designer 
 +and is not mandatory nor enforced.
 +
  * Labels
  
  The role of the labels in the SVG is to give applications an indication on
 @@ -71,6 +121,7 @@ Each button's label ID in the SVG is made of the string 
 Label with ID of the
  button to which it applies, between 'A' and 'Z'.
  
  Class includes both the button ID and the string Label.
 +
  id=LabelA
  class=A Label
  
 @@ -84,23 +135,23 @@ For the special case of mode-switch buttons, the class 
 also list ModeSwitch:
  Touch-rings and touch-strips generate Up and Down events, therefore 2 
 different
  labels are needed for each touch-ring/touch-strip control.
  
 -id=LabelRingUp
 -class=RingUp Ring Label
 +id=LabelRingCCW
 +class=RingCCW Ring Label
  
and
  
 -id=LabelRingDown
 -class=RingDown Ring Label
 +id=LabelRingCW
 +class=RingCW Ring Label
  
  The second touch-ring button is identified by Ring2 in place of Ring:
  
 -id=LabelRing2Up
 -class=Ring2Up Ring2 Label
 +id=LabelRing2CCW
 +class=Ring2CCW Ring2 Label
  
and
  
 -id=LabelRingDown
 -class=Ring2Down Ring2 

Re: [Linuxwacom-devel] libwacom: [PATCH] data: Add caption indicators to layouts

2012-11-29 Thread Olivier Fourdan

Updated patch.

Uses CW and CCW instead of Up and Down for touch rings, adds 
(optional) arrows to show rotation on touch rings, renamed indicator 
as leader as per previous reviews.
From b877ff84ee108ce2115a40b4d7c8edfd47382b73 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Tue, 27 Nov 2012 09:52:42 +0100
Subject: [PATCH] data: Add leaders to layouts

To match the buttons with their corresponding labels, the
layout SVG must also provide a leader line for each label
in the form of a line that links each button and its
label.

Improves the layout SVG for the Cintiq 12WX and Intuos 5 M
by adding details and rounded buttons to match the look of
the real device.

Buttons, labels and indicators are now grouped in the SVG
layout for better clarity of the SVG.

Adds indicators to the SVG check test iprogram so that
incomplete layouts would be detected.

Replace use of ambiguous Up and Down in ring
controls with CW (Clockwise) and CCW (Counter
Clockwise) which are more appropriate for circular
motion (note that CCW is used in place of Up
and CW in place of Down).

Add possible use of fake buttons to materialize
the type of motion expected in touch strips/rings
(optional, not mandatory as not present on the
real device).

Improves the SVG layout display sample program to show
touch ring/touch strips labels and label indicators.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/layouts/README  | 124 +++---
 data/layouts/cintiq-12wx.svg | 118 ++---
 data/layouts/intuos5-m.svg   |  87 +++--
 test/tablet-svg-validity.c   |  83 ++--
 tools/show-svg-image.c   | 176 +--
 5 files changed, 448 insertions(+), 140 deletions(-)

diff --git a/data/layouts/README b/data/layouts/README
index 37b644d..fda7814 100644
--- a/data/layouts/README
+++ b/data/layouts/README
@@ -56,6 +56,56 @@ Touch rings use the following convention:
 id=Strip2
 class=Strip2 TouchStrip
 
+Note: Additional fake buttons (ie actual controls not found on the real
+device) can be added to touch controls to help showing the type of action
+expected on the control, like for example circular motion on a touch ring
+or vertical motion on a touch strip.
+
+These controls can be named:
+
+ - First touch ring, rotating clockwise:
+
+id=RingCW
+class=RingCW Button
+
+ - First touch ring, rotating counter clockwise:
+
+id=RingCCW
+class=RingCCW Button
+
+ - Second touch ring, rotating clockwise:
+
+id=Ring2CW
+class=Ring2CW Button
+
+ - Second touch ring, rotating counter clockwise:
+
+id=Ring2CCW
+class=Ring2CCW Button
+
+ - First touch strip, moving up:
+
+id=StripUp
+class=StripUp Button
+
+ - First touch strip, moving down:
+
+id=StripDown
+class=StripDown Button
+
+ - Second touch strip, moving up:
+
+id=Strip2Up
+class=Strip2Up Button
+
+ - Second touch strip, moving down:
+
+id=Strip2Down
+class=Strip2Down Button
+
+The use of those fake buttons is left at the discretion of the designer 
+and is not mandatory nor enforced.
+
 * Labels
 
 The role of the labels in the SVG is to give applications an indication on
@@ -71,6 +121,7 @@ Each button's label ID in the SVG is made of the string Label with ID of the
 button to which it applies, between 'A' and 'Z'.
 
 Class includes both the button ID and the string Label.
+
 id=LabelA
 class=A Label
 
@@ -84,23 +135,23 @@ For the special case of mode-switch buttons, the class also list ModeSwitch:
 Touch-rings and touch-strips generate Up and Down events, therefore 2 different
 labels are needed for each touch-ring/touch-strip control.
 
-id=LabelRingUp
-class=RingUp Ring Label
+id=LabelRingCCW
+class=RingCCW Ring Label
 
   and
 
-id=LabelRingDown
-class=RingDown Ring Label
+id=LabelRingCW
+class=RingCW Ring Label
 
 The second touch-ring button is identified by Ring2 in place of Ring:
 
-id=LabelRing2Up
-class=Ring2Up Ring2 Label
+id=LabelRing2CCW
+class=Ring2CCW Ring2 Label
 
   and
 
-id=LabelRingDown
-class=Ring2Down Ring2 Label
+id=LabelRingCW
+class=Ring2CW Ring2 Label
 
 Touchstrips button follow the same naming scheme, using Strip and Strip2
 to name the first and second touch-strip.
@@ -120,5 +171,60 @@ Second touch-strip:
 
   and
 
-id=LabelRingDown
+id=LabelRingCW
 class=Strip2Down Strip2 Label
+
+ - Caption leader lines
+
+To match the buttons with their corresponding labels, the SVG must also
+provide a leader line for each label in the form of a line that links
+each button and its label.
+
+Each leader line follows the same naming convention as the labels, using
+the special name Leader in place of Label, ie:
+
+id=LeaderA
+class=A Leader
+
+Touch-rings and touch-strips have 2 different labels and therefore 2 leader
+lines.
+
+id=LeaderRingCCW
+class=RingCCW Ring 

Re: [Linuxwacom-devel] libwacom: [PATCH] data: Add caption indicators to layouts

2012-11-28 Thread Peter Hutterer
On Tue, Nov 27, 2012 at 11:25:15AM +0100, Olivier Fourdan wrote:
 Hi,
 
 After review of the proposed on-screen help display window for the
 Wacom plug-in in GNOME settings daemon (aka OSD), the GNOME design
 team came back with some requirements that need an enhancement in
 the layouts definitions.
 
 Basically, what's required is a caption indicator, i.e. a line that
 goes from the button itself to its label so that there is a visual
 link between the two.
 
 As I reckon all placing/drawing/rendering should come from the
 layout, that means we need to amend the proposed definition to add
 those captions to the layout data (given that the layouts can be
 fairly complex, this needs to be done in the SVG rather than
 computed).
 
 The following patch does this:
 
   - Adds the caption indicator definition
   - Adds the caption indicators to the two existing layouts (namely
 Cintiq 12WX and Intuos5 M)
   - Modifies the check to very the presence of the caption indicators
   - Improves the renderer example to show the trip/ring actions and
 all the captions (Screenshots [1] and [2])
 
 Cheers,
 Olivier.
 
 [1] 
 http://people.redhat.com/ofourdan/libwacom/misc/Cintiq-12WX-layout-viewer.png
 [2] 
 http://people.redhat.com/ofourdan/libwacom/misc/Intuos5-M-layout-viewer.png
 
 

 From 920b8cdeaf6c7db904a5ba689f11fef431f155b9 Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Tue, 27 Nov 2012 09:52:42 +0100
 Subject: [PATCH] data: Add caption indicators to layouts
 
 To match the buttons with their corresponding labels, the
 layout SVG must also provide a caption indicator for each
 label in the form of a line that links each button and its
 label.
 
 Improves the layout SVG for the Cintiq 12WX and Intuos 5 M
 by adding details and rounded buttons to match the look of
 the real device.
 
 Buttons, labels and indicators are now grouped in the SVG
 layout for better clarity of the SVG.
 
 Adds indicators to the SVG check test so that incomplete
 layouts would be detected.
 
 Improves the SVG layout display sample program to show
 touch ring/touch strips labels and label indocators.
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com
 ---
  data/layouts/README  |  55 ++
  data/layouts/cintiq-12wx.svg | 116 ++---
  data/layouts/intuos5-m.svg   |  81 ++--
  test/tablet-svg-validity.c   |  19 +
  tools/show-svg-image.c   | 174 
 +--
  5 files changed, 323 insertions(+), 122 deletions(-)
 
 diff --git a/data/layouts/README b/data/layouts/README
 index 37b644d..570de38 100644
 --- a/data/layouts/README
 +++ b/data/layouts/README
 @@ -71,6 +71,7 @@ Each button's label ID in the SVG is made of the string 
 Label with ID of the
  button to which it applies, between 'A' and 'Z'.
  
  Class includes both the button ID and the string Label.
 +
  id=LabelA
  class=A Label
  
 @@ -122,3 +123,57 @@ Second touch-strip:
  
  id=LabelRingDown
  class=Strip2Down Strip2 Label
 +
 + - Caption indicators
 +
 +To match the buttons with their corresponding labels, the SVG must also 
 provide
 +a caption indicator for each label in the form of a line that links each 
 button
 +and its label.

I'm honestly not sure if indicator is the right word here. Maybe some
native English speakers can chime in here? 
Further confusing also by XKB using indicators for LEDs (Caps Lock, etc.)

 +
 +Each caption indicator follows the same naming convention as the labels, 
 using
 +the special name Indicator in place of Label, ie:
 +
 +id=IndicatorA
 +class=A Indicator
 +
 +Touch-rings and touch-strips have 2 different labels and therefore 2 
 indicators.
 +
 +id=IndicatorRingUp
 +class=RingUp Ring Indicator
 +
 +  and
 +
 +id=IndicatorRingDown
 +class=RingDown Ring Indicator

As Ping said, up/down on a ring is ambiguous. we use that terminology in the
driver, but I do think we have the chance here to use CW/CCW instead.

 +
 +The second touch-ring button is identified by Ring2 in place of Ring:
 +
 +id=IndicatorRing2Up
 +class=Ring2Up Ring2 Indicator
 +
 +  and
 +
 +id=IndicatorRingDown
 +class=Ring2Down Ring2 Indicator
 +
 +Touchstrips button follow the same naming scheme, using Strip and Strip2
 +to name the first and second touch-strip.
 +
 +id=IndicatorStripUp
 +class=StripUp Strip Indicator
 +
 +  and
 +
 +id=IndicatorStripDown
 +class=StripDown Strip Indicator
 +
 +Second touch-strip:
 +
 +id=IndicatorStrip2Up
 +class=Strip2Up Strip2 Indicator
 +
 +  and
 +
 +id=IndicatorRingDown
 +class=Strip2Down Strip2 Indicator
 +
 diff --git a/data/layouts/cintiq-12wx.svg b/data/layouts/cintiq-12wx.svg
 index 370283d..ef23c63 100644
 --- a/data/layouts/cintiq-12wx.svg
 +++ b/data/layouts/cintiq-12wx.svg
 @@ -3,32 +3,92 @@
  http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
  svg xmlns=http://www.w3.org/2000/svg; version=1.1
   
 

Re: [Linuxwacom-devel] libwacom: [PATCH] data: Add caption indicators to layouts

2012-11-28 Thread Favux ...
In drafting there is a technical name for lines connecting labels to
the object they reference.

Leaders
Leaders or leader lines indicate the part or area of a drawing to
which a number, note or other reference applies. They are solid lines
and usually terminate in a single arrowhead.

--
Keep yourself connected to Go Parallel: 
VERIFY Test and improve your parallel project with help from experts 
and peers. http://goparallel.sourceforge.net
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] data: Add caption indicators to layouts

2012-11-27 Thread Olivier Fourdan

Hi,

After review of the proposed on-screen help display window for the 
Wacom plug-in in GNOME settings daemon (aka OSD), the GNOME design 
team came back with some requirements that need an enhancement in the 
layouts definitions.


Basically, what's required is a caption indicator, i.e. a line that 
goes from the button itself to its label so that there is a visual 
link between the two.


As I reckon all placing/drawing/rendering should come from the layout, 
that means we need to amend the proposed definition to add those 
captions to the layout data (given that the layouts can be fairly 
complex, this needs to be done in the SVG rather than computed).


The following patch does this:

  - Adds the caption indicator definition
  - Adds the caption indicators to the two existing layouts (namely 
Cintiq 12WX and Intuos5 M)

  - Modifies the check to very the presence of the caption indicators
  - Improves the renderer example to show the trip/ring actions and 
all the captions (Screenshots [1] and [2])


Cheers,
Olivier.

[1] 
http://people.redhat.com/ofourdan/libwacom/misc/Cintiq-12WX-layout-viewer.png
[2] 
http://people.redhat.com/ofourdan/libwacom/misc/Intuos5-M-layout-viewer.png



From 920b8cdeaf6c7db904a5ba689f11fef431f155b9 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Tue, 27 Nov 2012 09:52:42 +0100
Subject: [PATCH] data: Add caption indicators to layouts

To match the buttons with their corresponding labels, the
layout SVG must also provide a caption indicator for each
label in the form of a line that links each button and its
label.

Improves the layout SVG for the Cintiq 12WX and Intuos 5 M
by adding details and rounded buttons to match the look of
the real device.

Buttons, labels and indicators are now grouped in the SVG
layout for better clarity of the SVG.

Adds indicators to the SVG check test so that incomplete
layouts would be detected.

Improves the SVG layout display sample program to show
touch ring/touch strips labels and label indocators.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/layouts/README  |  55 ++
 data/layouts/cintiq-12wx.svg | 116 ++---
 data/layouts/intuos5-m.svg   |  81 ++--
 test/tablet-svg-validity.c   |  19 +
 tools/show-svg-image.c   | 174 +--
 5 files changed, 323 insertions(+), 122 deletions(-)

diff --git a/data/layouts/README b/data/layouts/README
index 37b644d..570de38 100644
--- a/data/layouts/README
+++ b/data/layouts/README
@@ -71,6 +71,7 @@ Each button's label ID in the SVG is made of the string Label with ID of the
 button to which it applies, between 'A' and 'Z'.
 
 Class includes both the button ID and the string Label.
+
 id=LabelA
 class=A Label
 
@@ -122,3 +123,57 @@ Second touch-strip:
 
 id=LabelRingDown
 class=Strip2Down Strip2 Label
+
+ - Caption indicators
+
+To match the buttons with their corresponding labels, the SVG must also provide
+a caption indicator for each label in the form of a line that links each button
+and its label.
+
+Each caption indicator follows the same naming convention as the labels, using
+the special name Indicator in place of Label, ie:
+
+id=IndicatorA
+class=A Indicator
+
+Touch-rings and touch-strips have 2 different labels and therefore 2 indicators.
+
+id=IndicatorRingUp
+class=RingUp Ring Indicator
+
+  and
+
+id=IndicatorRingDown
+class=RingDown Ring Indicator
+
+The second touch-ring button is identified by Ring2 in place of Ring:
+
+id=IndicatorRing2Up
+class=Ring2Up Ring2 Indicator
+
+  and
+
+id=IndicatorRingDown
+class=Ring2Down Ring2 Indicator
+
+Touchstrips button follow the same naming scheme, using Strip and Strip2
+to name the first and second touch-strip.
+
+id=IndicatorStripUp
+class=StripUp Strip Indicator
+
+  and
+
+id=IndicatorStripDown
+class=StripDown Strip Indicator
+
+Second touch-strip:
+
+id=IndicatorStrip2Up
+class=Strip2Up Strip2 Indicator
+
+  and
+
+id=IndicatorRingDown
+class=Strip2Down Strip2 Indicator
+
diff --git a/data/layouts/cintiq-12wx.svg b/data/layouts/cintiq-12wx.svg
index 370283d..ef23c63 100644
--- a/data/layouts/cintiq-12wx.svg
+++ b/data/layouts/cintiq-12wx.svg
@@ -3,32 +3,92 @@
 http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd;
 svg xmlns=http://www.w3.org/2000/svg; version=1.1
  style=color:#00;stroke:#bebebe;fill:#00;stroke-linejoin:round;stroke-width:1;font-size:8
- id=cintiq-12wx width=405 height=270 
-  title id=titleWacom Cintiq 12WX/title
-  rect  id=ButtonA class=A Buttonx=40  y=54  width=11  height=17 /
-  text  id=LabelA  class=A Label x=60  y=63   A/text
-  rect  id=ButtonB class=B Button  

Re: [Linuxwacom-devel] libwacom: [PATCH 3/3] lib: add IntegratedIn to device group

2012-11-27 Thread Olivier Fourdan

Peter Hutterer said the following on 11/27/2012 12:27 AM:

[...]
+   device-integration_flags = WACOM_DEVICE_INTEGRATED_NONE;
+   for (i = 0; string_list[i]; i++) {
+   for (n = 0; n  G_N_ELEMENTS (integration_flags); n++) {
+   if (!strcmp(string_list[i], 
integration_flags[n].key)) {
+   device-integration_flags |= 
integration_flags[n].value;
+   break;
+   }
+   }
+   }
+   g_strfreev (string_list);
+   }
+
a follow-up patch could check for invalid IntegratedIn values and warn about
it.


No need to wait for a follow-up patch really, it's very useful and 
trivial to do.


Added :)


  static gboolean
-get_device_info (const char   *path,
-int  *vendor_id,
-int  *product_id,
-char**name,
-WacomBusType *bus,
-IsBuiltin*builtin,
-WacomError   *error)
+get_device_info (const char*path,
+int   *vendor_id,
+int   *product_id,
+char **name,
+WacomBusType  *bus,
+WacomIntegrationFlags *integration_flags,
+WacomError*error)
please fix up the alignment here, path is misplaced (may look correct in code,
in which case ignore this comment)


Alignment is wrong in the patch because of the tab cars in the 
following lines, yet it's just fine in the code.


I left that out.



[...]
  /**
+ * Tablet integration.
+ */
+typedef enum {
+   WACOM_DEVICE_INTEGRATED_UNSET   = -1,
mark this as internal with
WACOM_DEVICE_INTEGRATED_UNSET   = -1, /**  For internal use only */

tough tbh we should not really expose this in the public header if we don't
want clients to use it.

we should be able to
 #define WACOM_DEVICE_INTEGRATED_UNSET (WACOM_DEVICE_INTEGRATED_NONE - 1)
in libwacomint.h to avoid having this exposed.


Done.

It works, yet I'm not sure what effect that may have on the compiler 
optimization, the enul would be treated as an unsigned yet we use a 
neg value. Eanyway, gcc does not seem to complain so I guess it's OK.



[...]

+#ifndef LIBWACOM_DISABLE_DEPRECATED
  /**
   * @param device The tablet to query
- * @return non-zero if the device is built-in or zero if the device is an
- * external tablet
+ * @return non-zero if the device is built into the screen (ie a screen tablet)
+ * or zero if the device is an external tablet
+ * Deprecated: 0.7: Use libwacom_get_integration_flags() instead.
   */
  int libwacom_is_builtin(WacomDevice *device);
+#endif

my previous comments about __attribute__((deprecated)) and @deprecated still
stand :)


Oh yeah, I completely missed that in the original review, my bad :(

Done, added a LIBWACOM_DEPRECATED macro. Tested it works as expected.

That allowed me to spot the use of the deprecated function in 
test/load.c so that's now fixed as well.


The load tests for both integration fields for the integrated in 
device + screen Wacom serial now.


Updated patch attached.

Do you want all 3 patches at once so we don't miss anything?

Cheers,
Olivier.

--
əɔıʌəp əɯos ɥʇıʍ əɹəɥʍəɯos ɯoɹɟ ʇuəs

From 06748d1e713cf98872bbaabc9b93e7ca68c64ccd Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Thu, 11 Oct 2012 12:04:45 +0200
Subject: [PATCH 3/3] lib: add IntegratedIn to device group

to describe integrated system devices and screen tablets.

A bit field allows to identify the level of integration of
a device:

WACOM_DEVICE_INTEGRATED_NONEdevice is a standalone tablet
WACOM_DEVICE_INTEGRATED_DISPLAY device is a screen tablet
WACOM_DEVICE_INTEGRATED_SYSTEM  device is an ISD such as
a tablet PC.

These definitions supersede the previous libwacom_is_builtin()
API which is now deprecated.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 libwacom/libwacom-database.c |   64 --
 libwacom/libwacom.c  |   70 ++
 libwacom/libwacom.h  |   29 +++--
 libwacom/libwacomint.h   |   11 ++-
 test/load.c  |6 ++--
 5 files changed, 129 insertions(+), 51 deletions(-)

diff --git a/libwacom/libwacom-database.c b/libwacom/libwacom-database.c
index bbea114..e0ee52e 100644
--- a/libwacom/libwacom-database.c
+++ b/libwacom/libwacom-database.c
@@ -256,6 +256,14 @@ struct {
 	{ Touchstrip2,	WACOM_STATUS_LED_TOUCHSTRIP2 }
 };
 
+struct {
+	const char *key;
+	WacomIntegrationFlags   value;
+} integration_flags[] = {
+	{ Display,		WACOM_DEVICE_INTEGRATED_DISPLAY },
+	{ System,		WACOM_DEVICE_INTEGRATED_SYSTEM }
+};
+
 static void
 libwacom_parse_buttons_key(WacomDevice

Re: [Linuxwacom-devel] libwacom: [PATCH 3/3] lib: add IntegratedIn to device group

2012-11-27 Thread Peter Hutterer
On Tue, Nov 27, 2012 at 11:02:03AM +0100, Olivier Fourdan wrote:
 Peter Hutterer said the following on 11/27/2012 12:27 AM:
 [...]
 +device-integration_flags = WACOM_DEVICE_INTEGRATED_NONE;
 +for (i = 0; string_list[i]; i++) {
 +for (n = 0; n  G_N_ELEMENTS (integration_flags); n++) {
 +if (!strcmp(string_list[i], 
 integration_flags[n].key)) {
 +device-integration_flags |= 
 integration_flags[n].value;
 +break;
 +}
 +}
 +}
 +g_strfreev (string_list);
 +}
 +
 a follow-up patch could check for invalid IntegratedIn values and warn about
 it.
 
 No need to wait for a follow-up patch really, it's very useful and
 trivial to do.
 
 Added :)
 
   static gboolean
 -get_device_info (const char   *path,
 - int  *vendor_id,
 - int  *product_id,
 - char**name,
 - WacomBusType *bus,
 - IsBuiltin*builtin,
 - WacomError   *error)
 +get_device_info (const char*path,
 + int   *vendor_id,
 + int   *product_id,
 + char **name,
 + WacomBusType  *bus,
 + WacomIntegrationFlags *integration_flags,
 + WacomError*error)
 please fix up the alignment here, path is misplaced (may look correct in 
 code,
 in which case ignore this comment)
 
 Alignment is wrong in the patch because of the tab cars in the
 following lines, yet it's just fine in the code.
 
 I left that out.
 
 
 [...]
   /**
 + * Tablet integration.
 + */
 +typedef enum {
 +WACOM_DEVICE_INTEGRATED_UNSET   = -1,
 mark this as internal with
  WACOM_DEVICE_INTEGRATED_UNSET   = -1, /**  For internal use only */
 
 tough tbh we should not really expose this in the public header if we don't
 want clients to use it.
 
 we should be able to
  #define WACOM_DEVICE_INTEGRATED_UNSET (WACOM_DEVICE_INTEGRATED_NONE - 1)
 in libwacomint.h to avoid having this exposed.
 
 Done.
 
 It works, yet I'm not sure what effect that may have on the compiler
 optimization, the enul would be treated as an unsigned yet we use a
 neg value. Eanyway, gcc does not seem to complain so I guess it's
 OK.

if it's a signed enum, (0 - 1) == -1
if it's unsigned, (0 - 1) will rollover and give us the unsigned equiv of -1
 
 [...]
 +#ifndef LIBWACOM_DISABLE_DEPRECATED
   /**
* @param device The tablet to query
 - * @return non-zero if the device is built-in or zero if the device is an
 - * external tablet
 + * @return non-zero if the device is built into the screen (ie a screen 
 tablet)
 + * or zero if the device is an external tablet
 + * Deprecated: 0.7: Use libwacom_get_integration_flags() instead.
*/
   int libwacom_is_builtin(WacomDevice *device);
 +#endif
 my previous comments about __attribute__((deprecated)) and @deprecated still
 stand :)
 
 Oh yeah, I completely missed that in the original review, my bad :(
 
 Done, added a LIBWACOM_DEPRECATED macro. Tested it works as expected.
 
 That allowed me to spot the use of the deprecated function in
 test/load.c so that's now fixed as well.
 
 The load tests for both integration fields for the integrated in
 device + screen Wacom serial now.
 
 Updated patch attached.
 
 Do you want all 3 patches at once so we don't miss anything?

I've pushed 1/3 out already, 2/3 is in my tree ready to go and I've merged
this one for now (see one comment below though).
so no need to re-send.


 From 06748d1e713cf98872bbaabc9b93e7ca68c64ccd Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Thu, 11 Oct 2012 12:04:45 +0200
 Subject: [PATCH 3/3] lib: add IntegratedIn to device group
 
 to describe integrated system devices and screen tablets.
 
 A bit field allows to identify the level of integration of
 a device:
 
 WACOM_DEVICE_INTEGRATED_NONEdevice is a standalone tablet
 WACOM_DEVICE_INTEGRATED_DISPLAY device is a screen tablet
 WACOM_DEVICE_INTEGRATED_SYSTEM  device is an ISD such as
 a tablet PC.
 
 These definitions supersede the previous libwacom_is_builtin()
 API which is now deprecated.
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com
 ---
  libwacom/libwacom-database.c |   64 --
  libwacom/libwacom.c  |   70 
 ++
  libwacom/libwacom.h  |   29 +++--
  libwacom/libwacomint.h   |   11 ++-
  test/load.c  |6 ++--
  5 files changed, 129 insertions(+), 51 deletions(-)
 
 diff --git a/libwacom/libwacom-database.c b/libwacom/libwacom-database.c
 index bbea114..e0ee52e 100644
 --- a/libwacom/libwacom-database.c
 +++ b/libwacom/libwacom-database.c
 @@ -256,6 +256,14 @@ struct {
  

Re: [Linuxwacom-devel] libwacom: [PATCH] data: Add caption indicators to layouts

2012-11-27 Thread Ping Cheng
I like the layout. Thank you for your effort.

Some nitpicking inline.

Ping

On Tuesday, November 27, 2012, Olivier Fourdan wrote:

 Hi,

 After review of the proposed on-screen help display window for the Wacom
 plug-in in GNOME settings daemon (aka OSD), the GNOME design team came back
 with some requirements that need an enhancement in the layouts definitions.

 Basically, what's required is a caption indicator, i.e. a line that goes
 from the button itself to its label so that there is a visual link between
 the two.

 As I reckon all placing/drawing/rendering should come from the layout,
 that means we need to amend the proposed definition to add those captions
 to the layout data (given that the layouts can be fairly complex, this
 needs to be done in the SVG rather than computed).

 The following patch does this:

   - Adds the caption indicator definition
   - Adds the caption indicators to the two existing layouts (namely Cintiq
 12WX and Intuos5 M)
   - Modifies the check to very the presence of the caption indicators


very - verify?

  - Improves the renderer example to show the trip/ring actions and all the
 captions


strip?


 (Screenshots [1] and [2])

 Cheers,
 Olivier.

 [1] http://people.redhat.com/**ofourdan/libwacom/misc/Cintiq-**
 12WX-layout-viewer.pnghttp://people.redhat.com/ofourdan/libwacom/misc/Cintiq-12WX-layout-viewer.png
 [2] http://people.redhat.com/**ofourdan/libwacom/misc/**
 Intuos5-M-layout-viewer.pnghttp://people.redhat.com/ofourdan/libwacom/misc/Intuos5-M-layout-viewer.png


Since ring is a circle, should we indicate the direction for up and down?
Or use a layman term, such as clockwise and anti-clockwise, to make it
clear?
--
Keep yourself connected to Go Parallel: 
INSIGHTS What's next for parallel hardware, programming and related areas?
Interviews and blogs by thought leaders keep you ahead of the curve.
http://goparallel.sourceforge.net___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 3/3] lib: add IntegratedIn to device group

2012-11-26 Thread Olivier Fourdan
Olivier Fourdan said the following on 11/26/2012 08:44 AM:
 So how about making UNSET internal-only (in which case you can 
 leave it as
 -1) but filter it to NONE before returning it to the client?


 Yeap, agreed, updated patch attached. Not USER is filtered out and 
 NONE is returned to the client instead.

This sentence may have been encrypted dynamically between brain and 
fingers...

That should read Yeap, agreed, updated patch attached. _Now_ _UNSET_ 
is filtered out and NONE is returned to the client instead. 

Monday morning fog is more likely to blame. Sorry for the noise.

Cheers,
Olivier.

--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 3/3] lib: add IntegratedIn to device group

2012-11-26 Thread Peter Hutterer
On Mon, Nov 26, 2012 at 08:44:56AM +0100, Olivier Fourdan wrote:
 Hi Peter,
 
 Peter Hutterer said the following on 11/26/2012 07:47 AM:
 [...]
 I'd like to get this API right before we make it public and have clients
 depend on it, with all the lag that entails (I know you already have
 something rely on it, but... :)
 
 Oh no no, I don't. not yet... all I have is plans :)
 
 Is UNSET actually necessary outside of libwacom itself? I can see why you
 need it for the auto-detection internally, but why does a client care if
 something is UNSET or NONE? assume that for the client UNSET == NONE in any
 case (how else could you treat it?). if that not correct it's a bug that
 needs to be fixed with a database entry.
 
 So how about making UNSET internal-only (in which case you can leave it as
 -1) but filter it to NONE before returning it to the client?
 
 Yeap, agreed, updated patch attached. Not USER is filtered out and
 NONE is returned to the client instead.
 
 Thanks again
 Olivier
 
 

 From 6cd18976ef4b58a791a50218ef0e5e73dcd07f19 Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Thu, 11 Oct 2012 12:04:45 +0200
 Subject: [PATCH 3/3] lib: add IntegratedIn to device group
 
 to describe integrated system devices and screen tablets.
 
 A bit field allows to identify the level of integration of
 a device:
 
 WACOM_DEVICE_INTEGRATED_NONEdevice is a standalone tablet
 WACOM_DEVICE_INTEGRATED_DISPLAY device is a screen tablet
 WACOM_DEVICE_INTEGRATED_SYSTEM  device is an ISD such as
 a tablet PC.
 
 These definitions supersede the previous libwacom_is_builtin()
 API which is now deprecated.
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com
 ---
  libwacom/libwacom-database.c |   59 +--
  libwacom/libwacom.c  |   70 
 ++
  libwacom/libwacom.h  |   23 -
  libwacom/libwacomint.h   |   10 +-
  4 files changed, 115 insertions(+), 47 deletions(-)
 
 diff --git a/libwacom/libwacom-database.c b/libwacom/libwacom-database.c
 index bbea114..ae73239 100644
 --- a/libwacom/libwacom-database.c
 +++ b/libwacom/libwacom-database.c
 @@ -256,6 +256,14 @@ struct {
   { Touchstrip2,WACOM_STATUS_LED_TOUCHSTRIP2 }
  };
  
 +struct {
 + const char *key;
 + WacomIntegrationFlags   value;
 +} integration_flags[] = {
 + { Display,WACOM_DEVICE_INTEGRATED_DISPLAY },
 + { System, WACOM_DEVICE_INTEGRATED_SYSTEM }
 +};
 +
  static void
  libwacom_parse_buttons_key(WacomDevice  *device,
  GKeyFile *keyfile,
 @@ -329,8 +337,7 @@ libwacom_parse_tablet_keyfile(const char *datadir, const 
 char *filename)
   char *layout;
   char *class;
   char *match;
 - char **styli_list;
 - char **leds_list;
 + char **string_list;
  
   keyfile = g_key_file_new();
  
 @@ -361,31 +368,50 @@ libwacom_parse_tablet_keyfile(const char *datadir, 
 const char *filename)
   device-name = g_key_file_get_string(keyfile, DEVICE_GROUP, Name, 
 NULL);
   device-width = g_key_file_get_integer(keyfile, DEVICE_GROUP, Width, 
 NULL);
   device-height = g_key_file_get_integer(keyfile, DEVICE_GROUP, 
 Height, NULL);
 +
 + device-integration_flags = WACOM_DEVICE_INTEGRATED_UNSET;
 + string_list = g_key_file_get_string_list(keyfile, DEVICE_GROUP, 
 IntegratedIn, NULL, NULL);
 + if (string_list) {
 + guint i, n;
 +
 + device-integration_flags = WACOM_DEVICE_INTEGRATED_NONE;
 + for (i = 0; string_list[i]; i++) {
 + for (n = 0; n  G_N_ELEMENTS (integration_flags); n++) {
 + if (!strcmp(string_list[i], 
 integration_flags[n].key)) {
 + device-integration_flags |= 
 integration_flags[n].value;
 + break;
 + }
 + }
 + }
 + g_strfreev (string_list);
 + }
 +

a follow-up patch could check for invalid IntegratedIn values and warn about
it.

   layout = g_key_file_get_string(keyfile, DEVICE_GROUP, Layout, NULL);
   if (layout) {
   /* For the layout, we store the full path to the SVG layout */
   device-layout = g_build_filename (datadir, layouts, layout, 
 NULL);
   g_free (layout);
   }
 +
   class = g_key_file_get_string(keyfile, DEVICE_GROUP, Class, NULL);
   device-cls = libwacom_class_string_to_enum(class);
   g_free(class);
  
 - styli_list = g_key_file_get_string_list(keyfile, DEVICE_GROUP, Styli, 
 NULL, NULL);
 - if (styli_list) {
 + string_list = g_key_file_get_string_list(keyfile, DEVICE_GROUP, 
 Styli, NULL, NULL);
 + if (string_list) {
   GArray *array;
   guint i;
  
   array = g_array_new (FALSE, 

Re: [Linuxwacom-devel] libwacom: [PATCH 3/3] lib: add IntegratedIn to device group

2012-11-25 Thread Peter Hutterer
On Fri, Nov 23, 2012 at 09:28:26AM +0100, Olivier Fourdan wrote:
 
 Hey Peter,
 
 Peter Hutterer said the following on 11/23/2012 12:21 AM:
 
 [...]
 two things:
 I'd like to see a test that screams bloody murder when the flag is in fact
 unset. presumably if we add new devices we known whether they're built-in
 and the test should complain if we forget to add this.
 
 No, it's what is meant here.
 
 A database entry can miss the IntegratedIn filed, that's OK, many
 do actually.
 
 By Not specifying IntegratedIn in the device database, you let
 libwacom decide by using the kernel flags (see previous patch).
 
 If you specify IntegratedIn empty, then it means you actually force
 the value and ignore the kernel flags.
 
 That's how it was before with BuiltIn actually, if BuiltIn is
 set it takes precedence over the kernel flags.

OK, that makes sense. 
though given the limited set of integrated tablets in our comparatively
small database it would still make sense to add the field to all
descriptions in any case.
 
 the other thing: having UNSET as -1 for a bitmask is not a good choice, it
 requires any user to check for UNSET _and_ check for the mask set, since -1
 will always set all bits.
 
 Oh I completely agree to this.
 
 My first submitted patch was using WACOM_DEVICE_INTEGRATED_UNSET =
 (1  31) so that all lower (meaningful) bits where guaranteed to be
 zero, while we could still tell if the flags were set in the
 database definition or not (becuase we also use that to determine if
 we use the kernel flags if not set in the database definition, just
 like it was with BuiltIn).
 
 The reason I changed that to -1 as a flag is because I've been told
 to in the previous review, see [1], [2] and [3].
 
 So I'd rather not revert the change even though I agree. Unless we
 all reach some sort of a consensus (contradictory reviews somehow
 make it harder to adjust the patches).

I'd like to get this API right before we make it public and have clients
depend on it, with all the lag that entails (I know you already have
something rely on it, but... :)

Is UNSET actually necessary outside of libwacom itself? I can see why you
need it for the auto-detection internally, but why does a client care if
something is UNSET or NONE? assume that for the client UNSET == NONE in any
case (how else could you treat it?). if that not correct it's a bug that
needs to be fixed with a database entry.

So how about making UNSET internal-only (in which case you can leave it as
-1) but filter it to NONE before returning it to the client?

Cheers,
   Peter

 so either we bump all up by one so UNSET is 0 and NONE is 1, or we leave
 NONE at 0 and guarantee that we always define this and drop UNSET.
 
 I don't think we want to drop unset (at least if we want to keep
 consistent with current behavior).
 
 As to why 0 is not a good idea, well, that's because we want to tell
 if the flag is set in the database, see [2]
 
 Cheers,
 Olivier.
 
 [1]  http://permalink.gmane.org/gmane.linux.drivers.wacom.devel/5302
 [2]  http://permalink.gmane.org/gmane.linux.drivers.wacom.devel/5305
 [3]  http://permalink.gmane.org/gmane.linux.drivers.wacom.devel/5315
 

--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 3/3] lib: add IntegratedIn to device group

2012-11-23 Thread Olivier Fourdan

Hey Peter,

Peter Hutterer said the following on 11/23/2012 12:21 AM:

 [...]
 two things:
 I'd like to see a test that screams bloody murder when the flag is in fact
 unset. presumably if we add new devices we known whether they're built-in
 and the test should complain if we forget to add this.

No, it's what is meant here.

A database entry can miss the IntegratedIn filed, that's OK, many do 
actually.

By Not specifying IntegratedIn in the device database, you let 
libwacom decide by using the kernel flags (see previous patch).

If you specify IntegratedIn empty, then it means you actually force 
the value and ignore the kernel flags.

That's how it was before with BuiltIn actually, if BuiltIn is set 
it takes precedence over the kernel flags.


 the other thing: having UNSET as -1 for a bitmask is not a good choice, it
 requires any user to check for UNSET _and_ check for the mask set, since -1
 will always set all bits.

Oh I completely agree to this.

My first submitted patch was using WACOM_DEVICE_INTEGRATED_UNSET = (1 
 31) so that all lower (meaningful) bits where guaranteed to be 
zero, while we could still tell if the flags were set in the database 
definition or not (becuase we also use that to determine if we use the 
kernel flags if not set in the database definition, just like it was 
with BuiltIn).

The reason I changed that to -1 as a flag is because I've been told to 
in the previous review, see [1], [2] and [3].

So I'd rather not revert the change even though I agree. Unless we all 
reach some sort of a consensus (contradictory reviews somehow make it 
harder to adjust the patches).

 so either we bump all up by one so UNSET is 0 and NONE is 1, or we leave
 NONE at 0 and guarantee that we always define this and drop UNSET.

I don't think we want to drop unset (at least if we want to keep 
consistent with current behavior).

As to why 0 is not a good idea, well, that's because we want to tell 
if the flag is set in the database, see [2]

Cheers,
Olivier.

[1]  http://permalink.gmane.org/gmane.linux.drivers.wacom.devel/5302
[2]  http://permalink.gmane.org/gmane.linux.drivers.wacom.devel/5305
[3]  http://permalink.gmane.org/gmane.linux.drivers.wacom.devel/5315


--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 2/3] data: add the IntegratedIn field to the tablet definitions

2012-11-23 Thread Olivier Fourdan

Peter Hutterer said the following on 11/23/2012 12:27 AM:

this should be a ';' right?


Yes.

To be consistent with my previous definition of unset (and to why we 
want to differentiate devices where the flag are explicitly set and 
those where it is not), I have now added IntegratedIn= (empty) for 
the tablet definitions which previously had BuiltIn=false so that we 
remain perfectly consistent with the previous BuiltIn definitions for 
the tablets which had that set.


Updated patch attached.

Cheers,
Olivier.
From bde7fffc9ee6c47be26186f9c9ae75a7b1ad062d Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Mon, 8 Oct 2012 16:02:39 +0200
Subject: [PATCH 2/3] data: add the IntegratedIn field to the tablet definitions

If set, IntegratedIn specifies if the device is integrated
in the Display (screen tablet) and/or System (ISD, TabletPC).

This field supersedes the BuiltIn value.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/bamboo-2fg-4x5.tablet|2 +-
 data/bamboo-2fg-6x8.tablet|2 +-
 data/bamboo-2fg.tablet|2 +-
 data/bamboo-craft.tablet  |2 +-
 data/bamboo-one.tablet|2 +-
 data/bamboo-pen.tablet|2 +-
 data/cintiq-12wx.tablet   |2 +-
 data/cintiq-20wsx.tablet  |2 +-
 data/cintiq-21ux.tablet   |2 +-
 data/cintiq-21ux2.tablet  |2 +-
 data/cintiq-22hd.tablet   |2 +-
 data/cintiq-24hd-touch.tablet |2 +-
 data/cintiq-24hd.tablet   |2 +-
 data/dtf-720.tablet   |2 +-
 data/dti-520.tablet   |2 +-
 data/dtu-1631.tablet  |2 +-
 data/dtu-2231.tablet  |2 +-
 data/generic.tablet   |1 -
 data/graphire-wireless-8x6.tablet |2 +-
 data/intuos4-12x19.tablet |2 +-
 data/intuos4-4x6.tablet   |2 +-
 data/intuos4-6x9-wl.tablet|2 +-
 data/intuos4-6x9.tablet   |2 +-
 data/intuos4-8x13.tablet  |2 +-
 data/intuos5-m.tablet |2 +-
 data/intuos5-s.tablet |2 +-
 data/intuos5-touch-l.tablet   |2 +-
 data/intuos5-touch-m.tablet   |2 +-
 data/intuos5-touch-s.tablet   |2 +-
 data/isdv4-100.tablet |2 +-
 data/isdv4-101.tablet |2 +-
 data/isdv4-90.tablet  |2 +-
 data/isdv4-93.tablet  |2 +-
 data/isdv4-e3.tablet  |2 +-
 data/isdv4-e5.tablet  |2 +-
 data/isdv4-e6.tablet  |2 +-
 data/isdv4-ed.tablet  |2 +-
 data/isdv4-ef.tablet  |2 +-
 data/n-trig-pen.tablet|2 +-
 data/serial-wacf004.tablet|2 +-
 data/wacom.example|   15 ---
 41 files changed, 47 insertions(+), 47 deletions(-)

diff --git a/data/bamboo-2fg-4x5.tablet b/data/bamboo-2fg-4x5.tablet
index fb0cb90..ab7afaf 100644
--- a/data/bamboo-2fg-4x5.tablet
+++ b/data/bamboo-2fg-4x5.tablet
@@ -14,13 +14,13 @@ DeviceMatch=usb:056a:00d1
 Class=Bamboo
 Width=6
 Height=4
+IntegratedIn=
 
 [Features]
 Stylus=true
 Reversible=true
 Touch=true
 Buttons=4
-BuiltIn=false
 
 [Buttons]
 Left=A;B;C;D
diff --git a/data/bamboo-2fg-6x8.tablet b/data/bamboo-2fg-6x8.tablet
index d7bf97c..08874e4 100644
--- a/data/bamboo-2fg-6x8.tablet
+++ b/data/bamboo-2fg-6x8.tablet
@@ -14,13 +14,13 @@ DeviceMatch=usb:056a:00d3
 Class=Bamboo
 Width=9
 Height=5
+IntegratedIn=
 
 [Features]
 Stylus=true
 Reversible=true
 Touch=true
 Buttons=4
-BuiltIn=false
 
 [Buttons]
 Left=A;B;C;D
diff --git a/data/bamboo-2fg.tablet b/data/bamboo-2fg.tablet
index 4e74ccd..103af68 100644
--- a/data/bamboo-2fg.tablet
+++ b/data/bamboo-2fg.tablet
@@ -13,13 +13,13 @@ DeviceMatch=usb:056a:00d0
 Class=Bamboo
 Width=5
 Height=3
+IntegratedIn=
 
 [Features]
 Stylus=false
 Reversible=true
 Touch=true
 Buttons=4
-BuiltIn=false
 
 [Buttons]
 Left=A;B;C;D
diff --git a/data/bamboo-craft.tablet b/data/bamboo-craft.tablet
index e68ca5d..e6e36ba 100644
--- a/data/bamboo-craft.tablet
+++ b/data/bamboo-craft.tablet
@@ -14,13 +14,13 @@ DeviceMatch=usb:056a:00d2
 Class=Bamboo
 Width=6
 Height=4
+IntegratedIn=
 
 [Features]
 Stylus=true
 Reversible=true
 Touch=true
 Buttons=4
-BuiltIn=false
 
 [Buttons]
 Left=A;B;C;D
diff --git a/data/bamboo-one.tablet b/data/bamboo-one.tablet
index feacf54..888f770 100644
--- a/data/bamboo-one.tablet
+++ b/data/bamboo-one.tablet
@@ -5,6 +5,7 @@ DeviceMatch=usb:056a:0069
 Class=Bamboo
 Width=5
 Height=4
+IntegratedIn=
 
 [Features]
 Reversible=true
@@ -13,4 +14,3 @@ Touch=false
 Ring=false
 NumStrips=0
 Buttons=0
-BuiltIn=false
diff --git a/data/bamboo-pen.tablet b/data/bamboo-pen.tablet
index a5b5aea..05f1689 100644
--- a/data/bamboo-pen.tablet
+++ b/data/bamboo-pen.tablet
@@ -13,10 +13,10 @@ DeviceMatch=usb:056a:00d4
 Class=Bamboo
 Width=6
 Height=4
+IntegratedIn=
 
 [Features]
 Stylus=true
 Reversible=true
 Touch=false
 Buttons=0

Re: [Linuxwacom-devel] libwacom: [PATCH 3/3] lib: add IntegratedIn to device group

2012-11-22 Thread Peter Hutterer
On Wed, Nov 07, 2012 at 01:22:11PM +0100, Olivier Fourdan wrote:
 

 From 15f93f5d3bd9f2aefd59a5087b2ce44a3c53403c Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Thu, 11 Oct 2012 12:04:45 +0200
 Subject: [PATCH 3/3] lib: add IntegratedIn to device group
 
 to describe integrated system devices and screen tablets.
 
 A bit field allows to identify the level of integration of
 a device:
 
 WACOM_DEVICE_INTEGRATED_NONEdevice is a standalone tablet
 WACOM_DEVICE_INTEGRATED_DISPLAY device is a screen tablet
 WACOM_DEVICE_INTEGRATED_SYSTEM  device is an ISD such as
 a tablet PC.
 
 Or -1 (WACOM_DEVICE_INTEGRATED_UNSET) if the information is not
 available

two things:
I'd like to see a test that screams bloody murder when the flag is in fact
unset. presumably if we add new devices we known whether they're built-in
and the test should complain if we forget to add this.

the other thing: having UNSET as -1 for a bitmask is not a good choice, it
requires any user to check for UNSET _and_ check for the mask set, since -1
will always set all bits. 

so either we bump all up by one so UNSET is 0 and NONE is 1, or we leave
NONE at 0 and guarantee that we always define this and drop UNSET.

 
 These definitions supersede the previous libwacom_is_builtin()
 API which is now deprecated.
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com
 ---
  libwacom/libwacom-database.c |   59 ++--
  libwacom/libwacom.c  |   67 +
  libwacom/libwacom.h  |   24 ++-
  libwacom/libwacomint.h   |   10 +-
  4 files changed, 113 insertions(+), 47 deletions(-)
 
 diff --git a/libwacom/libwacom-database.c b/libwacom/libwacom-database.c
 index bbea114..ae73239 100644
 --- a/libwacom/libwacom-database.c
 +++ b/libwacom/libwacom-database.c
 @@ -256,6 +256,14 @@ struct {
   { Touchstrip2,WACOM_STATUS_LED_TOUCHSTRIP2 }
  };
  
 +struct {
 + const char *key;
 + WacomIntegrationFlags   value;
 +} integration_flags[] = {
 + { Display,WACOM_DEVICE_INTEGRATED_DISPLAY },
 + { System, WACOM_DEVICE_INTEGRATED_SYSTEM }
 +};
 +
  static void
  libwacom_parse_buttons_key(WacomDevice  *device,
  GKeyFile *keyfile,
 @@ -329,8 +337,7 @@ libwacom_parse_tablet_keyfile(const char *datadir, const 
 char *filename)
   char *layout;
   char *class;
   char *match;
 - char **styli_list;
 - char **leds_list;
 + char **string_list;
  
   keyfile = g_key_file_new();
  
 @@ -361,31 +368,50 @@ libwacom_parse_tablet_keyfile(const char *datadir, 
 const char *filename)
   device-name = g_key_file_get_string(keyfile, DEVICE_GROUP, Name, 
 NULL);
   device-width = g_key_file_get_integer(keyfile, DEVICE_GROUP, Width, 
 NULL);
   device-height = g_key_file_get_integer(keyfile, DEVICE_GROUP, 
 Height, NULL);
 +
 + device-integration_flags = WACOM_DEVICE_INTEGRATED_UNSET;
 + string_list = g_key_file_get_string_list(keyfile, DEVICE_GROUP, 
 IntegratedIn, NULL, NULL);
 + if (string_list) {
 + guint i, n;
 +
 + device-integration_flags = WACOM_DEVICE_INTEGRATED_NONE;
 + for (i = 0; string_list[i]; i++) {
 + for (n = 0; n  G_N_ELEMENTS (integration_flags); n++) {
 + if (!strcmp(string_list[i], 
 integration_flags[n].key)) {
 + device-integration_flags |= 
 integration_flags[n].value;
 + break;
 + }
 + }
 + }
 + g_strfreev (string_list);
 + }
 +
   layout = g_key_file_get_string(keyfile, DEVICE_GROUP, Layout, NULL);
   if (layout) {
   /* For the layout, we store the full path to the SVG layout */
   device-layout = g_build_filename (datadir, layouts, layout, 
 NULL);
   g_free (layout);
   }
 +
   class = g_key_file_get_string(keyfile, DEVICE_GROUP, Class, NULL);
   device-cls = libwacom_class_string_to_enum(class);
   g_free(class);
  
 - styli_list = g_key_file_get_string_list(keyfile, DEVICE_GROUP, Styli, 
 NULL, NULL);
 - if (styli_list) {
 + string_list = g_key_file_get_string_list(keyfile, DEVICE_GROUP, 
 Styli, NULL, NULL);
 + if (string_list) {
   GArray *array;
   guint i;
  
   array = g_array_new (FALSE, FALSE, sizeof(int));
   device-num_styli = 0;
 - for (i = 0; styli_list[i]; i++) {
 - glong long_value = strtol (styli_list[i], NULL, 0);
 + for (i = 0; string_list[i]; i++) {
 + glong long_value = strtol (string_list[i], NULL, 0);
   int int_value = long_value;
  
   g_array_append_val 

Re: [Linuxwacom-devel] libwacom: [PATCH] data: install layouts in the appropriate directory

2012-11-20 Thread Peter Hutterer
On Fri, Nov 16, 2012 at 02:46:19PM +0100, Olivier Fourdan wrote:
 Sorry I forgot to change the destination dir when renaming images
 to layouts , this patch fixes the issue so that the files are
 actually found where they ought to be.

 From 3242e408577aa4d08ee6a5a3b4c4503625b42287 Mon Sep 17 00:00:00 2001
 From: Olivier Fourdan ofour...@redhat.com
 Date: Fri, 16 Nov 2012 14:39:37 +0100
 Subject: [PATCH] data: install layouts in the appropriate directory
 
 Signed-off-by: Olivier Fourdan ofour...@redhat.com
 ---
  data/layouts/Makefile.am |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/data/layouts/Makefile.am b/data/layouts/Makefile.am
 index c6e1157..06487f5 100644
 --- a/data/layouts/Makefile.am
 +++ b/data/layouts/Makefile.am
 @@ -1,4 +1,4 @@
 -libwacomlayoutsdir = $(datadir)/libwacom/images
 +libwacomlayoutsdir = $(datadir)/libwacom/layouts
  dist_libwacomlayouts_DATA =  $(shell find $(top_srcdir)/data/layouts -name 
 *.svg -printf %P\n)
  
  EXTRA_DIST = README
 -- 
 1.7.1

pushed, thanks.

Cheers,
   Peter

--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


[Linuxwacom-devel] libwacom: [PATCH] data: install layouts in the appropriate directory

2012-11-16 Thread Olivier Fourdan
Sorry I forgot to change the destination dir when renaming images to 
layouts , this patch fixes the issue so that the files are actually 
found where they ought to be.
From 3242e408577aa4d08ee6a5a3b4c4503625b42287 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Fri, 16 Nov 2012 14:39:37 +0100
Subject: [PATCH] data: install layouts in the appropriate directory

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/layouts/Makefile.am |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/data/layouts/Makefile.am b/data/layouts/Makefile.am
index c6e1157..06487f5 100644
--- a/data/layouts/Makefile.am
+++ b/data/layouts/Makefile.am
@@ -1,4 +1,4 @@
-libwacomlayoutsdir = $(datadir)/libwacom/images
+libwacomlayoutsdir = $(datadir)/libwacom/layouts
 dist_libwacomlayouts_DATA =  $(shell find $(top_srcdir)/data/layouts -name *.svg -printf %P\n)
 
 EXTRA_DIST = README
-- 
1.7.1

--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


Re: [Linuxwacom-devel] libwacom: [PATCH 2/3] data: add the IntegratedIn field to the tablet definitions

2012-11-15 Thread Olivier Fourdan
Updated patch for data to include newly added definitions in master, 
namely cintiq-24hd-touch.tablet, isdv4-100.tablet, isdv4-101.tablet 
and isdv4-e5.tablet
From 2b5b09ec4691e1fa239bee43fcf038c679b3eeeb Mon Sep 17 00:00:00 2001
From: Olivier Fourdan ofour...@redhat.com
Date: Mon, 8 Oct 2012 16:02:39 +0200
Subject: [PATCH 2/3] data: add the IntegratedIn field to the tablet definitions

If set, IntegratedIn specifies if the device is integrated
in the Display (screen tablet) and/or System (ISD, TabletPC).

This field supersedes the BuiltIn value.

Signed-off-by: Olivier Fourdan ofour...@redhat.com
---
 data/bamboo-2fg-4x5.tablet|1 -
 data/bamboo-2fg-6x8.tablet|1 -
 data/bamboo-2fg.tablet|1 -
 data/bamboo-craft.tablet  |1 -
 data/bamboo-one.tablet|1 -
 data/bamboo-pen.tablet|1 -
 data/cintiq-12wx.tablet   |2 +-
 data/cintiq-20wsx.tablet  |2 +-
 data/cintiq-21ux.tablet   |2 +-
 data/cintiq-21ux2.tablet  |2 +-
 data/cintiq-22hd.tablet   |2 +-
 data/cintiq-24hd.tablet   |2 +-
 data/dtf-720.tablet   |2 +-
 data/dti-520.tablet   |2 +-
 data/dtu-1631.tablet  |2 +-
 data/dtu-2231.tablet  |2 +-
 data/generic.tablet   |1 -
 data/graphire-wireless-8x6.tablet |1 -
 data/intuos4-12x19.tablet |1 -
 data/intuos4-4x6.tablet   |1 -
 data/intuos4-6x9-wl.tablet|1 -
 data/intuos4-6x9.tablet   |1 -
 data/intuos4-8x13.tablet  |1 -
 data/intuos5-m.tablet |1 -
 data/intuos5-s.tablet |1 -
 data/intuos5-touch-l.tablet   |1 -
 data/intuos5-touch-m.tablet   |1 -
 data/intuos5-touch-s.tablet   |1 -
 data/isdv4-90.tablet  |2 +-
 data/isdv4-93.tablet  |2 +-
 data/isdv4-e3.tablet  |2 +-
 data/isdv4-e6.tablet  |2 +-
 data/isdv4-ed.tablet  |2 +-
 data/isdv4-ef.tablet  |2 +-
 data/n-trig-pen.tablet|2 +-
 data/serial-wacf004.tablet|2 +-
 data/wacom.example|   12 +---
 37 files changed, 23 insertions(+), 43 deletions(-)

diff --git a/data/bamboo-2fg-4x5.tablet b/data/bamboo-2fg-4x5.tablet
index fb0cb90..812638f 100644
--- a/data/bamboo-2fg-4x5.tablet
+++ b/data/bamboo-2fg-4x5.tablet
@@ -20,7 +20,6 @@ Stylus=true
 Reversible=true
 Touch=true
 Buttons=4
-BuiltIn=false
 
 [Buttons]
 Left=A;B;C;D
diff --git a/data/bamboo-2fg-6x8.tablet b/data/bamboo-2fg-6x8.tablet
index d7bf97c..c9288d8 100644
--- a/data/bamboo-2fg-6x8.tablet
+++ b/data/bamboo-2fg-6x8.tablet
@@ -20,7 +20,6 @@ Stylus=true
 Reversible=true
 Touch=true
 Buttons=4
-BuiltIn=false
 
 [Buttons]
 Left=A;B;C;D
diff --git a/data/bamboo-2fg.tablet b/data/bamboo-2fg.tablet
index 4e74ccd..ffea220 100644
--- a/data/bamboo-2fg.tablet
+++ b/data/bamboo-2fg.tablet
@@ -19,7 +19,6 @@ Stylus=false
 Reversible=true
 Touch=true
 Buttons=4
-BuiltIn=false
 
 [Buttons]
 Left=A;B;C;D
diff --git a/data/bamboo-craft.tablet b/data/bamboo-craft.tablet
index e68ca5d..dc1bfce 100644
--- a/data/bamboo-craft.tablet
+++ b/data/bamboo-craft.tablet
@@ -20,7 +20,6 @@ Stylus=true
 Reversible=true
 Touch=true
 Buttons=4
-BuiltIn=false
 
 [Buttons]
 Left=A;B;C;D
diff --git a/data/bamboo-one.tablet b/data/bamboo-one.tablet
index feacf54..1d553a8 100644
--- a/data/bamboo-one.tablet
+++ b/data/bamboo-one.tablet
@@ -13,4 +13,3 @@ Touch=false
 Ring=false
 NumStrips=0
 Buttons=0
-BuiltIn=false
diff --git a/data/bamboo-pen.tablet b/data/bamboo-pen.tablet
index a5b5aea..a897b71 100644
--- a/data/bamboo-pen.tablet
+++ b/data/bamboo-pen.tablet
@@ -19,4 +19,3 @@ Stylus=true
 Reversible=true
 Touch=false
 Buttons=0
-BuiltIn=false
diff --git a/data/cintiq-12wx.tablet b/data/cintiq-12wx.tablet
index 006500d..75b2457 100644
--- a/data/cintiq-12wx.tablet
+++ b/data/cintiq-12wx.tablet
@@ -38,12 +38,12 @@ Width=10
 Height=7
 Layout=cintiq-12wx.svg
 Styli=0x913;0x91b;0x813;0x81b;0x823;0x82b;0x801;0x885;
+IntegratedIn=Display
 
 [Features]
 Stylus=true
 NumStrips=2
 Buttons=10
-BuiltIn=true
 
 [Buttons]
 Left=A;B;C;D;I
diff --git a/data/cintiq-20wsx.tablet b/data/cintiq-20wsx.tablet
index 3cc6c23..4bc91d0 100644
--- a/data/cintiq-20wsx.tablet
+++ b/data/cintiq-20wsx.tablet
@@ -40,13 +40,13 @@ Class=Cintiq
 Width=17
 Height=11
 Styli=0x913;0x91b;0x813;0x81b;0x823;0x82b;0x801;0x885;
+IntegratedIn=Display
 
 [Features]
 Reversible=false
 Stylus=true
 NumStrips=2
 Buttons=14
-BuiltIn=true
 
 [Buttons]
 Left=A;B;C;D;I;K;L
diff --git a/data/cintiq-21ux.tablet b/data/cintiq-21ux.tablet
index 30d3922..1c353a4 100644
--- a/data/cintiq-21ux.tablet
+++ b/data/cintiq-21ux.tablet
@@ -33,13 +33,13 @@ Class=Cintiq
 Width=17
 Height=13
 Styli=0x913;0x91b;0x813;0x81b;0x823;0x82b;0x801;0x885;
+IntegratedIn=Display
 
 [Features]
 Reversible=false
 Stylus=true
 

[Linuxwacom-devel] libwacom: [PATCH 0/3] Resend the integration series of patches

2012-11-07 Thread Olivier Fourdan
Hi

While reviewing the pending patches here, I realised that the ones 
relative to the integration bits were never merged.

I am resending these updated to apply to current git master (after the 
merge of the layout patches)

Cheers,
Olivier.

--
LogMeIn Central: Instant, anywhere, Remote PC access and management.
Stay in control, update software, and manage PCs from one command center
Diagnose problems and improve visibility into emerging IT issues
Automate, monitor and manage. Do more in less time with Central
http://p.sf.net/sfu/logmein12331_d2d
___
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel


  1   2   >