質問

Currently i have this gtk2 code:

GList *input_devices = gdk_devices_list();
while(input_devices)
{
  GdkDevice *device = (GdkDevice*)input_devices->data;
  for(int i = 0; i < gdk_device_get_n_axes(device); i++)
  {
    GdkDeviceAxis* axis = &device->axes[i];
    printf("[%f .. %f]\n", axis->min, axis->max);
  }
  input_devices = g_list_next(input_devices);
}

I'm trying to port that to gtk3, and i do not understand how to get axis minimal and maximal values.

Is it even possible with current GDK3 API?

役に立ちましたか?

解決

The axis limit API accidentially ended up as private, upstream is aware of it and looks into making it publically available in GTK+ 3.10.

他のヒント

AFAIK, there is no GDK 3, GDK has been mostly replaced by cairo. There's a GTK 2 to GTK 3 porting guide, but input devices seem not covered. So you're asking a good question...

The min and max values don't seem to be exposed in the GDK 3 API. However, looking at the source code, it seems that the X and Y tilt axes can range from -1.0 to 1.0, and pressure and wheel axes can range from 0.0 to 1.0. Presumably, X and Y coordinate axes are screen-dependent.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top