Browse Source

UI: Add ability to set properties spinbox suffix

Clayton Groeneveld 6 years ago
parent
commit
31b73f8025

+ 4 - 0
UI/properties-view.cpp

@@ -333,12 +333,14 @@ void OBSPropertiesView::AddInt(obs_property_t *prop, QFormLayout *layout,
 	int minVal = obs_property_int_min(prop);
 	int maxVal = obs_property_int_max(prop);
 	int stepVal = obs_property_int_step(prop);
+	const char *suffix = obs_property_int_suffix(prop);
 
 	spin->setMinimum(minVal);
 	spin->setMaximum(maxVal);
 	spin->setSingleStep(stepVal);
 	spin->setValue(val);
 	spin->setToolTip(QT_UTF8(obs_property_long_description(prop)));
+	spin->setSuffix(QT_UTF8(suffix));
 
 	WidgetInfo *info = new WidgetInfo(this, prop, spin);
 	children.emplace_back(info);
@@ -382,12 +384,14 @@ void OBSPropertiesView::AddFloat(obs_property_t *prop, QFormLayout *layout,
 	double minVal = obs_property_float_min(prop);
 	double maxVal = obs_property_float_max(prop);
 	double stepVal = obs_property_float_step(prop);
+	const char *suffix = obs_property_float_suffix(prop);
 
 	spin->setMinimum(minVal);
 	spin->setMaximum(maxVal);
 	spin->setSingleStep(stepVal);
 	spin->setValue(val);
 	spin->setToolTip(QT_UTF8(obs_property_long_description(prop)));
+	spin->setSuffix(QT_UTF8(suffix));
 
 	WidgetInfo *info = new WidgetInfo(this, prop, spin);
 	children.emplace_back(info);

+ 3 - 0
UI/window-basic-settings.cpp

@@ -463,7 +463,10 @@ OBSBasicSettings::OBSBasicSettings(QWidget *parent)
 	HookWidget(ui->autoRemux,            CHECK_CHANGED,  ADV_CHANGED);
 
 	ui->simpleOutputVBitrate->setSingleStep(50);
+	ui->simpleOutputVBitrate->setSuffix(" Kbps");
 	ui->advOutFFVBitrate->setSingleStep(50);
+	ui->advOutFFVBitrate->setSuffix(" Kbps");
+	ui->advOutFFABitrate->setSuffix(" Kbps");
 
 #if !defined(_WIN32) && !defined(__APPLE__)
 	delete ui->enableAutoUpdates;

+ 6 - 2
plugins/mac-vth264/encoder.c

@@ -874,14 +874,18 @@ static obs_properties_t *vt_h264_properties(void *unused)
 	obs_properties_t *props = obs_properties_create();
 	obs_property_t *p;
 
-	obs_properties_add_int(props, "bitrate", TEXT_BITRATE, 50, 10000000, 50);
+	p = obs_properties_add_int(props, "bitrate",
+			TEXT_BITRATE, 50, 10000000, 50);
+	obs_property_int_set_suffix(p, " Kbps");
 
 	p = obs_properties_add_bool(props, "limit_bitrate",
 			TEXT_USE_MAX_BITRATE);
 	obs_property_set_modified_callback(p, limit_bitrate_modified);
 
-	obs_properties_add_int(props, "max_bitrate", TEXT_MAX_BITRATE, 50,
+	p = obs_properties_add_int(props, "max_bitrate", TEXT_MAX_BITRATE, 50,
 			10000000, 50);
+	obs_property_int_set_suffix(p, " Kbps");
+
 	obs_properties_add_float(props, "max_bitrate_window",
 			TEXT_MAX_BITRATE_WINDOW, 0.10f, 10.0f, 0.25f);
 

+ 4 - 2
plugins/obs-ffmpeg/obs-ffmpeg-nvenc.c

@@ -451,10 +451,12 @@ obs_properties_t *nvenc_properties_internal(bool ffmpeg)
 
 	obs_property_set_modified_callback(p, rate_control_modified);
 
-	obs_properties_add_int(props, "bitrate",
+	p = obs_properties_add_int(props, "bitrate",
 			obs_module_text("Bitrate"), 50, 300000, 50);
-	obs_properties_add_int(props, "max_bitrate",
+	obs_property_int_set_suffix(p, " Kbps");
+	p = obs_properties_add_int(props, "max_bitrate",
 			obs_module_text("MaxBitrate"), 50, 300000, 50);
+	obs_property_int_set_suffix(p, " Kbps");
 
 	obs_properties_add_int(props, "cqp", obs_module_text("NVENC.CQLevel"),
 			1, 30, 1);

+ 3 - 1
plugins/obs-ffmpeg/obs-ffmpeg-vaapi.c

@@ -490,8 +490,10 @@ static obs_properties_t *vaapi_properties(void *unused)
 	obs_property_list_add_int(list, "720p60/1080p30 (4.1)", 41);
 	obs_property_list_add_int(list, "1080p60 (4.2)", 42);
 
-	obs_properties_add_int(props, "bitrate", obs_module_text("Bitrate"), 0,
+	obs_property_t *p;
+	p = obs_properties_add_int(props, "bitrate", obs_module_text("Bitrate"), 0,
 			300000, 50);
+	obs_property_int_set_suffix(p, " Kbps");
 
 	obs_properties_add_int(props, "keyint_sec",
 			obs_module_text("Keyframe Interval (seconds)"), 0, 20,

+ 7 - 2
plugins/obs-qsv11/obs-qsv11.c

@@ -260,10 +260,15 @@ static obs_properties_t *obs_qsv_props(void *unused)
 	add_rate_controls(list, qsv_ratecontrols);
 	obs_property_set_modified_callback(list, rate_control_modified);
 
-	obs_properties_add_int(props, "bitrate", TEXT_TARGET_BITRATE, 50,
+	obs_property_t *p;
+	p = obs_properties_add_int(props, "bitrate", TEXT_TARGET_BITRATE, 50,
 			10000000, 50);
-	obs_properties_add_int(props, "max_bitrate", TEXT_MAX_BITRATE, 50,
+	obs_property_int_set_suffix(p, " Kbps");
+
+	p = obs_properties_add_int(props, "max_bitrate", TEXT_MAX_BITRATE, 50,
 			10000000, 50);
+	obs_property_int_set_suffix(p, " Kbps");
+
 	obs_properties_add_int(props, "accuracy", TEXT_ACCURACY, 0, 10000, 1);
 	obs_properties_add_int(props, "convergence", TEXT_CONVERGENCE, 0, 10, 1);
 	obs_properties_add_int(props, "qpi", "QPI", 1, 51, 1);

+ 3 - 1
plugins/obs-x264/obs-x264.c

@@ -179,7 +179,9 @@ static obs_properties_t *obs_x264_props(void *unused)
 
 	obs_property_set_modified_callback(list, rate_control_modified);
 
-	obs_properties_add_int(props, "bitrate", TEXT_BITRATE, 50, 10000000, 50);
+	p = obs_properties_add_int(props, "bitrate",
+			TEXT_BITRATE, 50, 10000000, 50);
+	obs_property_int_set_suffix(p, " Kbps");
 
 	p = obs_properties_add_bool(props, "use_bufsize", TEXT_CUSTOM_BUF);
 	obs_property_set_modified_callback(p, use_bufsize_modified);