rem: g_object_class_install_property ( gobject_class, ARG_AUTO_RESIZE, g_param_spec_boolean ( "auto_resize", "auto resize", "Is the video widget resizing automatically", FALSE, G_PARAM_READWRITE));  g_object_class_install_property ( gobject_class, ARG_VISIBLE_CURSOR, g_param_spec_boolean ( "visible_cursor", "visible cursor", "Is the mouse pointer (cursor) visible or not", TRUE, G_PARAM_READWRITE));  g_object_class_install_property ( gobject_class, ARG_LOGO_FOCUSED, g_param_spec_boolean ( "logo_focused", "logo is focused", "Is the logo focused or not", TRUE, G_PARAM_READWRITE));  g_object_class_install_property ( gobject_class, ARG_EVENT_CATCHER, g_param_spec_boolean ( "event_catcher", "Event catcher", "Should the widget catch events over the video window", TRUE, G_PARAM_READWRITE));  g_object_class_install_property ( gobject_class, ARG_XID, g_param_spec_ulong ( "video_xid", "video window xid", "Video playback Xwindow XID", 0, G_MAXLONG, 1, G_PARAM_READWRITE));  g_object_class_install_property ( gobject_class, ARG_SOURCE_WIDTH, g_param_spec_int ( "source_width", "video source width", "Video playback source width", 0, G_MAXINT, 1, G_PARAM_READWRITE));  g_object_class_install_property ( gobject_class, ARG_SOURCE_HEIGHT, g_param_spec_int ( "source_height", "video source height", "Video playback source height", 0, G_MAXINT, 1, G_PARAM_READWRITE));  g_object_class_install_property ( gobject_class, ARG_LOGO, g_param_spec_object ( "logo", "Logo", "Picture that should appear as a logo when no video", gdk_pixbuf_get_type (), G_PARAM_READWRITE));
add: gobject_class->set_property = gst_video_widget_set_property; gobject_class->get_property = gst_video_widget_get_property;
context: gst_video_widget_class_init (GstVideoWidgetClass *klass){	GObjectClass *gobject_class;	GtkWidgetClass *widget_class;	gobject_class = (GObjectClass*) klass;	widget_class = (GtkWidgetClass*) klass;	parent_class = gtk_type_class (gtk_widget_get_type ());		gobject_class->set_property = gst_video_widget_set_property;	gobject_class->get_property = gst_video_widget_get_property;		g_object_class_install_property (				gobject_class,				ARG_SCALE_FACTOR,				g_param_spec_float (						"scale_factor",						"scale factor",						"size the video should be scaled to",						0, G_MAXFLOAT / G_MAXINT, 1, G_PARAM_READWRITE));	g_object_class_install_property (				gobject_class,				ARG_AUTO_RESIZE,				g_param_spec_boolean (						"auto_resize",						"auto resize",						"Is the video widget resizing automatically",						FALSE, G_PARAM_READWRITE));		g_object_class_install_property (				gobject_class,				ARG_VISIBLE_CURSOR,				g_param_spec_boolean (						"visible_cursor",						"visible cursor",						"Is the mouse pointer (cursor) visible or not",						TRUE, G_PARAM_READWRITE));							g_object_class_install_property (				gobject_class,				ARG_LOGO_FOCUSED,				g_param_spec_boolean (						"logo_focused",						"logo is focused",						"Is the logo focused or not",						TRUE, G_PARAM_READWRITE));		g_object_class_install_property (				gobject_class,				ARG_EVENT_CATCHER,				g_param_spec_boolean (						"event_catcher",						"Event catcher",						"Should the widget catch events over the video window",						TRUE, G_PARAM_READWRITE));		g_object_class_install_property (				gobject_class,				ARG_XID,				g_param_spec_ulong (						"video_xid",						"video window xid",						"Video playback Xwindow XID",						0, G_MAXLONG, 1, G_PARAM_READWRITE));		g_object_class_install_property (				gobject_class,				ARG_SOURCE_WIDTH,				g_param_spec_int (						"source_width",						"video source width",						"Video playback source width",						0, G_MAXINT, 1, G_PARAM_READWRITE));							g_object_class_install_property (				gobject_class,				ARG_SOURCE_HEIGHT,				g_param_spec_int (						"source_height",						"video source height",						"Video playback source height",						0, G_MAXINT, 1, G_PARAM_READWRITE));		 g_object_class_install_property (	 			gobject_class,				ARG_LOGO,				g_param_spec_object (						"logo",						"Logo",						"Picture that should appear as a logo when no video",						gdk_pixbuf_get_type (), G_PARAM_READWRITE));	widget_class->realize = gst_video_widget_realize;	widget_class->unrealize = gst_video_widget_unrealize;	widget_class->expose_event = gst_video_widget_expose;	widget_class->size_request = gst_video_widget_size_request;	widget_class->size_allocate = gst_video_widget_allocate;}