mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 12:11:13 +00:00
fix glib2's complaining on the params of some plugins there's still some work to be done: s/-$//g; && s/\(.*$//;
Original commit message from CVS: fix glib2's complaining on the params of some plugins there's still some work to be done: s/-$//g; && s/\(.*$//;
This commit is contained in:
parent
58394455d8
commit
cce1fb13d6
1 changed files with 12 additions and 5 deletions
|
@ -119,7 +119,7 @@ gst_ladspa_class_init (GstLADSPAClass *klass)
|
|||
gint hintdesc;
|
||||
gint argtype,argperms;
|
||||
GParamSpec *paramspec = NULL;
|
||||
gchar *argname;
|
||||
gchar *argname, *tempstr;
|
||||
|
||||
gobject_class = (GObjectClass*)klass;
|
||||
gstelement_class = (GstElementClass*)klass;
|
||||
|
@ -254,10 +254,16 @@ gst_ladspa_class_init (GstLADSPAClass *klass)
|
|||
|
||||
klass->control_info[i].name = g_strdup(desc->PortNames[current_portnum]);
|
||||
argname = g_strdup(klass->control_info[i].name);
|
||||
// this is the same thing that param_spec_* will do
|
||||
/* this is the same thing that param_spec_* will do */
|
||||
g_strcanon (argname, G_CSET_A_2_Z G_CSET_a_2_z G_CSET_DIGITS "-", '-');
|
||||
/* satisfy glib2 (argname[0] must be [A-Za-z]) */
|
||||
if (!((argname[0] >= 'a' && argname[0] <= 'z') || (argname[0] >= 'A' && argname[0] <= 'Z'))) {
|
||||
tempstr = argname;
|
||||
argname = g_strconcat("param-", argname, NULL);
|
||||
g_free (tempstr);
|
||||
}
|
||||
|
||||
// check for duplicate property names
|
||||
/* check for duplicate property names */
|
||||
if (g_object_class_find_property(G_OBJECT_CLASS(klass), argname) != NULL){
|
||||
gint numarg=1;
|
||||
gchar *numargname = g_strdup_printf("%s_%d",argname,numarg++);
|
||||
|
@ -268,6 +274,8 @@ gst_ladspa_class_init (GstLADSPAClass *klass)
|
|||
argname = numargname;
|
||||
}
|
||||
|
||||
g_print("adding arg %s from %s\n",argname, klass->control_info[i].name);
|
||||
|
||||
if (argtype==G_TYPE_BOOLEAN){
|
||||
paramspec = g_param_spec_boolean(argname,argname,argname, FALSE, argperms);
|
||||
} else if (argtype==G_TYPE_INT){
|
||||
|
@ -278,9 +286,8 @@ gst_ladspa_class_init (GstLADSPAClass *klass)
|
|||
klass->control_info[i].lowerbound, klass->control_info[i].upperbound,
|
||||
(klass->control_info[i].lowerbound + klass->control_info[i].upperbound) / 2.0f, argperms);
|
||||
}
|
||||
g_object_class_install_property(G_OBJECT_CLASS(klass), i+ARG_LAST, paramspec);
|
||||
|
||||
g_print("added arg %s from %s\n",argname, klass->control_info[i].name);
|
||||
g_object_class_install_property(G_OBJECT_CLASS(klass), i+ARG_LAST, paramspec);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue