]> diplodocus.org Git - xorg-xinput/blobdiff - src/list.c
Bump to 1.4.99.3
[xorg-xinput] / src / list.c
index 52ffba52677a50e79722e7eca7626cefb9fa003d..0abde7a8a04ea2dd18b46204dce7c4478c181e88 100644 (file)
@@ -161,7 +161,16 @@ print_classes_xi2(Display* display, XIAnyClassInfo **classes,
             case XIButtonClass:
                 {
                     XIButtonClassInfo *b = (XIButtonClassInfo*)classes[i];
+                    char *name;
                     printf("\t\tButtons supported: %d\n", b->num_buttons);
+                    printf("\t\tButton labels:");
+                    for (j = 0; j < b->num_buttons; j++)
+                    {
+                        name = (b->labels[j]) ? XGetAtomName(display, b->labels[j]) : NULL;
+                        printf(" %s", (name) ? name : "None");
+                        XFree(name);
+                    }
+                    printf("\n");
                     printf("\t\tButton state:");
                     for (j = 0; j < b->state.mask_len * 8; j++)
                         if (XIMaskIsSet(b->state.mask, j))
@@ -179,12 +188,17 @@ print_classes_xi2(Display* display, XIAnyClassInfo **classes,
             case XIValuatorClass:
                 {
                     XIValuatorClassInfo *v = (XIValuatorClassInfo*)classes[i];
+                    char *name = v->label ?  XGetAtomName(display, v->label) : NULL;
+
                     printf("\t\tDetail for Valuator %d:\n", v->number);
-                    printf("\t\t  Name: %s\n", XGetAtomName(display, v->name));
+                    printf("\t\t  Label: %s\n",  (name) ? name : "None");
                     printf("\t\t  Range: %f - %f\n", v->min, v->max);
                     printf("\t\t  Resolution: %d units/m\n", v->resolution);
                     printf("\t\t  Mode: %s\n", v->mode == Absolute ? "absolute" :
                             "relative");
+                    if (v->mode == Absolute)
+                        printf("\t\t  Current value: %f\n", v->value);
+                    XFree(name);
                 }
                 break;
         }