mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-30 12:49:40 +00:00
frei0r: Set the default property values correctly
This commit is contained in:
parent
3d6d1c2ed2
commit
cd6422a372
1 changed files with 38 additions and 9 deletions
|
@ -86,51 +86,71 @@ gst_frei0r_klass_install_properties (GObjectClass * gobject_class,
|
|||
case F0R_PARAM_BOOL:
|
||||
g_object_class_install_property (gobject_class, count++,
|
||||
g_param_spec_boolean (prop_name, param_info->name,
|
||||
param_info->explanation, FALSE,
|
||||
param_info->explanation, properties[i].default_value.data.b,
|
||||
G_PARAM_READWRITE | GST_PARAM_CONTROLLABLE));
|
||||
properties[i].n_prop_ids = 1;
|
||||
break;
|
||||
case F0R_PARAM_DOUBLE:
|
||||
case F0R_PARAM_DOUBLE:{
|
||||
gdouble def = properties[i].default_value.data.d;
|
||||
|
||||
/* If the default is NAN, +-INF we use 0.0 */
|
||||
if (!(def <= G_MAXDOUBLE && def >= -G_MAXDOUBLE))
|
||||
def = 0.0;
|
||||
|
||||
g_object_class_install_property (gobject_class, count++,
|
||||
g_param_spec_double (prop_name, param_info->name,
|
||||
param_info->explanation, -G_MAXDOUBLE, G_MAXDOUBLE, 0.0,
|
||||
param_info->explanation, -G_MAXDOUBLE, G_MAXDOUBLE, def,
|
||||
G_PARAM_READWRITE | GST_PARAM_CONTROLLABLE));
|
||||
properties[i].n_prop_ids = 1;
|
||||
break;
|
||||
}
|
||||
case F0R_PARAM_STRING:
|
||||
g_object_class_install_property (gobject_class, count++,
|
||||
g_param_spec_string (prop_name, param_info->name,
|
||||
param_info->explanation, NULL,
|
||||
param_info->explanation, properties[i].default_value.data.s,
|
||||
G_PARAM_READWRITE | GST_PARAM_CONTROLLABLE));
|
||||
properties[i].n_prop_ids = 1;
|
||||
break;
|
||||
case F0R_PARAM_COLOR:{
|
||||
gchar *prop_name_full;
|
||||
gchar *prop_nick_full;
|
||||
gdouble def;
|
||||
|
||||
def = properties[i].default_value.data.color.r;
|
||||
/* If the default is out of range we use 0.0 */
|
||||
if (!(def <= 1.0 && def >= 0.0))
|
||||
def = 0.0;
|
||||
prop_name_full = g_strconcat (prop_name, "-r", NULL);
|
||||
prop_nick_full = g_strconcat (param_info->name, "-R", NULL);
|
||||
g_object_class_install_property (gobject_class, count++,
|
||||
g_param_spec_float (prop_name_full, prop_nick_full,
|
||||
param_info->explanation, 0.0, 1.0, 0.0,
|
||||
param_info->explanation, 0.0, 1.0, def,
|
||||
G_PARAM_READWRITE | GST_PARAM_CONTROLLABLE));
|
||||
g_free (prop_name_full);
|
||||
g_free (prop_nick_full);
|
||||
|
||||
def = properties[i].default_value.data.color.g;
|
||||
/* If the default is out of range we use 0.0 */
|
||||
if (!(def <= 1.0 && def >= 0.0))
|
||||
def = 0.0;
|
||||
prop_name_full = g_strconcat (prop_name, "-g", NULL);
|
||||
prop_nick_full = g_strconcat (param_info->name, "-G", NULL);
|
||||
g_object_class_install_property (gobject_class, count++,
|
||||
g_param_spec_float (prop_name_full, param_info->name,
|
||||
param_info->explanation, 0.0, 1.0, 0.0,
|
||||
param_info->explanation, 0.0, 1.0, def,
|
||||
G_PARAM_READWRITE | GST_PARAM_CONTROLLABLE));
|
||||
g_free (prop_name_full);
|
||||
g_free (prop_nick_full);
|
||||
|
||||
def = properties[i].default_value.data.color.b;
|
||||
/* If the default is out of range we use 0.0 */
|
||||
if (!(def <= 1.0 && def >= 0.0))
|
||||
def = 0.0;
|
||||
prop_name_full = g_strconcat (prop_name, "-b", NULL);
|
||||
prop_nick_full = g_strconcat (param_info->name, "-B", NULL);
|
||||
g_object_class_install_property (gobject_class, count++,
|
||||
g_param_spec_float (prop_name_full, param_info->name,
|
||||
param_info->explanation, 0.0, 1.0, 0.0,
|
||||
param_info->explanation, 0.0, 1.0, def,
|
||||
G_PARAM_READWRITE | GST_PARAM_CONTROLLABLE));
|
||||
g_free (prop_name_full);
|
||||
g_free (prop_nick_full);
|
||||
|
@ -141,21 +161,30 @@ gst_frei0r_klass_install_properties (GObjectClass * gobject_class,
|
|||
case F0R_PARAM_POSITION:{
|
||||
gchar *prop_name_full;
|
||||
gchar *prop_nick_full;
|
||||
gdouble def;
|
||||
|
||||
def = properties[i].default_value.data.position.x;
|
||||
/* If the default is out of range we use 0.0 */
|
||||
if (!(def <= 1.0 && def >= 0.0))
|
||||
def = 0.0;
|
||||
prop_name_full = g_strconcat (prop_name, "-x", NULL);
|
||||
prop_nick_full = g_strconcat (param_info->name, "-X", NULL);
|
||||
g_object_class_install_property (gobject_class, count++,
|
||||
g_param_spec_double (prop_name_full, param_info->name,
|
||||
param_info->explanation, 0.0, 1.0, 0.0,
|
||||
param_info->explanation, 0.0, 1.0, def,
|
||||
G_PARAM_READWRITE | GST_PARAM_CONTROLLABLE));
|
||||
g_free (prop_name_full);
|
||||
g_free (prop_nick_full);
|
||||
|
||||
def = properties[i].default_value.data.position.y;
|
||||
/* If the default is out of range we use 0.0 */
|
||||
if (!(def <= 1.0 && def >= 0.0))
|
||||
def = 0.0;
|
||||
prop_name_full = g_strconcat (prop_name, "-Y", NULL);
|
||||
prop_nick_full = g_strconcat (param_info->name, "-X", NULL);
|
||||
g_object_class_install_property (gobject_class, count++,
|
||||
g_param_spec_double (prop_name_full, param_info->name,
|
||||
param_info->explanation, 0.0, 1.0, 0.0,
|
||||
param_info->explanation, 0.0, 1.0, def,
|
||||
G_PARAM_READWRITE | GST_PARAM_CONTROLLABLE));
|
||||
g_free (prop_name_full);
|
||||
g_free (prop_nick_full);
|
||||
|
|
Loading…
Reference in a new issue