提交 31b73f80 编写于 作者: C Clayton Groeneveld 提交者: jp9000

UI: Add ability to set properties spinbox suffix

上级 8789b346
...@@ -333,12 +333,14 @@ void OBSPropertiesView::AddInt(obs_property_t *prop, QFormLayout *layout, ...@@ -333,12 +333,14 @@ void OBSPropertiesView::AddInt(obs_property_t *prop, QFormLayout *layout,
int minVal = obs_property_int_min(prop); int minVal = obs_property_int_min(prop);
int maxVal = obs_property_int_max(prop); int maxVal = obs_property_int_max(prop);
int stepVal = obs_property_int_step(prop); int stepVal = obs_property_int_step(prop);
const char *suffix = obs_property_int_suffix(prop);
spin->setMinimum(minVal); spin->setMinimum(minVal);
spin->setMaximum(maxVal); spin->setMaximum(maxVal);
spin->setSingleStep(stepVal); spin->setSingleStep(stepVal);
spin->setValue(val); spin->setValue(val);
spin->setToolTip(QT_UTF8(obs_property_long_description(prop))); spin->setToolTip(QT_UTF8(obs_property_long_description(prop)));
spin->setSuffix(QT_UTF8(suffix));
WidgetInfo *info = new WidgetInfo(this, prop, spin); WidgetInfo *info = new WidgetInfo(this, prop, spin);
children.emplace_back(info); children.emplace_back(info);
...@@ -382,12 +384,14 @@ void OBSPropertiesView::AddFloat(obs_property_t *prop, QFormLayout *layout, ...@@ -382,12 +384,14 @@ void OBSPropertiesView::AddFloat(obs_property_t *prop, QFormLayout *layout,
double minVal = obs_property_float_min(prop); double minVal = obs_property_float_min(prop);
double maxVal = obs_property_float_max(prop); double maxVal = obs_property_float_max(prop);
double stepVal = obs_property_float_step(prop); double stepVal = obs_property_float_step(prop);
const char *suffix = obs_property_float_suffix(prop);
spin->setMinimum(minVal); spin->setMinimum(minVal);
spin->setMaximum(maxVal); spin->setMaximum(maxVal);
spin->setSingleStep(stepVal); spin->setSingleStep(stepVal);
spin->setValue(val); spin->setValue(val);
spin->setToolTip(QT_UTF8(obs_property_long_description(prop))); spin->setToolTip(QT_UTF8(obs_property_long_description(prop)));
spin->setSuffix(QT_UTF8(suffix));
WidgetInfo *info = new WidgetInfo(this, prop, spin); WidgetInfo *info = new WidgetInfo(this, prop, spin);
children.emplace_back(info); children.emplace_back(info);
......
...@@ -463,7 +463,10 @@ OBSBasicSettings::OBSBasicSettings(QWidget *parent) ...@@ -463,7 +463,10 @@ OBSBasicSettings::OBSBasicSettings(QWidget *parent)
HookWidget(ui->autoRemux, CHECK_CHANGED, ADV_CHANGED); HookWidget(ui->autoRemux, CHECK_CHANGED, ADV_CHANGED);
ui->simpleOutputVBitrate->setSingleStep(50); ui->simpleOutputVBitrate->setSingleStep(50);
ui->simpleOutputVBitrate->setSuffix(" Kbps");
ui->advOutFFVBitrate->setSingleStep(50); ui->advOutFFVBitrate->setSingleStep(50);
ui->advOutFFVBitrate->setSuffix(" Kbps");
ui->advOutFFABitrate->setSuffix(" Kbps");
#if !defined(_WIN32) && !defined(__APPLE__) #if !defined(_WIN32) && !defined(__APPLE__)
delete ui->enableAutoUpdates; delete ui->enableAutoUpdates;
......
...@@ -874,14 +874,18 @@ static obs_properties_t *vt_h264_properties(void *unused) ...@@ -874,14 +874,18 @@ static obs_properties_t *vt_h264_properties(void *unused)
obs_properties_t *props = obs_properties_create(); obs_properties_t *props = obs_properties_create();
obs_property_t *p; 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", p = obs_properties_add_bool(props, "limit_bitrate",
TEXT_USE_MAX_BITRATE); TEXT_USE_MAX_BITRATE);
obs_property_set_modified_callback(p, limit_bitrate_modified); 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); 10000000, 50);
obs_property_int_set_suffix(p, " Kbps");
obs_properties_add_float(props, "max_bitrate_window", obs_properties_add_float(props, "max_bitrate_window",
TEXT_MAX_BITRATE_WINDOW, 0.10f, 10.0f, 0.25f); TEXT_MAX_BITRATE_WINDOW, 0.10f, 10.0f, 0.25f);
......
...@@ -451,10 +451,12 @@ obs_properties_t *nvenc_properties_internal(bool ffmpeg) ...@@ -451,10 +451,12 @@ obs_properties_t *nvenc_properties_internal(bool ffmpeg)
obs_property_set_modified_callback(p, rate_control_modified); 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_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_module_text("MaxBitrate"), 50, 300000, 50);
obs_property_int_set_suffix(p, " Kbps");
obs_properties_add_int(props, "cqp", obs_module_text("NVENC.CQLevel"), obs_properties_add_int(props, "cqp", obs_module_text("NVENC.CQLevel"),
1, 30, 1); 1, 30, 1);
......
...@@ -490,8 +490,10 @@ static obs_properties_t *vaapi_properties(void *unused) ...@@ -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, "720p60/1080p30 (4.1)", 41);
obs_property_list_add_int(list, "1080p60 (4.2)", 42); 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); 300000, 50);
obs_property_int_set_suffix(p, " Kbps");
obs_properties_add_int(props, "keyint_sec", obs_properties_add_int(props, "keyint_sec",
obs_module_text("Keyframe Interval (seconds)"), 0, 20, obs_module_text("Keyframe Interval (seconds)"), 0, 20,
......
...@@ -260,10 +260,15 @@ static obs_properties_t *obs_qsv_props(void *unused) ...@@ -260,10 +260,15 @@ static obs_properties_t *obs_qsv_props(void *unused)
add_rate_controls(list, qsv_ratecontrols); add_rate_controls(list, qsv_ratecontrols);
obs_property_set_modified_callback(list, rate_control_modified); 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); 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); 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, "accuracy", TEXT_ACCURACY, 0, 10000, 1);
obs_properties_add_int(props, "convergence", TEXT_CONVERGENCE, 0, 10, 1); obs_properties_add_int(props, "convergence", TEXT_CONVERGENCE, 0, 10, 1);
obs_properties_add_int(props, "qpi", "QPI", 1, 51, 1); obs_properties_add_int(props, "qpi", "QPI", 1, 51, 1);
......
...@@ -179,7 +179,9 @@ static obs_properties_t *obs_x264_props(void *unused) ...@@ -179,7 +179,9 @@ static obs_properties_t *obs_x264_props(void *unused)
obs_property_set_modified_callback(list, rate_control_modified); 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); p = obs_properties_add_bool(props, "use_bufsize", TEXT_CUSTOM_BUF);
obs_property_set_modified_callback(p, use_bufsize_modified); obs_property_set_modified_callback(p, use_bufsize_modified);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册