added a "name" property. Dispatch events only if the controller is

2004-06-16  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcontroller.[ch]: added a "name" property.
	Dispatch events only if the controller is enabled.

	* app/widgets/gimpcontrollerwheel.c: added controller events for
	all possible modifier combinations.

	* etc/Makefile.am
	* etc/controllerrc: default controllerrc which maps all unused
	wheel+modifier combinations to more-or-less usefull stuff.
This commit is contained in:
Michael Natterer
2004-06-16 00:52:28 +00:00
committed by Michael Natterer
parent d0117ef5b9
commit f3b7f4161c
6 changed files with 111 additions and 21 deletions

View File

@ -35,6 +35,7 @@
enum
{
PROP_0,
PROP_NAME,
PROP_ENABLED
};
@ -115,6 +116,11 @@ gimp_controller_class_init (GimpControllerClass *klass)
object_class->set_property = gimp_controller_set_property;
object_class->get_property = gimp_controller_get_property;
g_object_class_install_property (object_class, PROP_NAME,
g_param_spec_string ("name", NULL, NULL,
"Unnamed Controller",
G_PARAM_READWRITE |
G_PARAM_CONSTRUCT));
g_object_class_install_property (object_class, PROP_ENABLED,
g_param_spec_boolean ("enabled", NULL, NULL,
TRUE,
@ -149,6 +155,11 @@ gimp_controller_set_property (GObject *object,
switch (property_id)
{
case PROP_NAME:
if (controller->name)
g_free (controller->name);
controller->name = g_value_dup_string (value);
break;
case PROP_ENABLED:
controller->enabled = g_value_get_boolean (value);
break;
@ -168,6 +179,9 @@ gimp_controller_get_property (GObject *object,
switch (property_id)
{
case PROP_NAME:
g_value_set_string (value, controller->name);
break;
case PROP_ENABLED:
g_value_set_boolean (value, controller->enabled);
break;
@ -245,8 +259,9 @@ gimp_controller_event (GimpController *controller,
g_return_val_if_fail (GIMP_IS_CONTROLLER (controller), FALSE);
g_return_val_if_fail (event != NULL, FALSE);
g_signal_emit (controller, controller_signals[EVENT], 0,
event, &retval);
if (controller->enabled)
g_signal_emit (controller, controller_signals[EVENT], 0,
event, &retval);
return retval;
}