Prechádzať zdrojové kódy

frontend-tools: Automatically select scripts

When script is added, automatically select script. Also when the dialog is opened,
select previous used script.
Clayton Groeneveld 5 rokov pred
rodič
commit
a4cfb7ab59

+ 11 - 0
UI/frontend-plugins/frontend-tools/scripts.cpp

@@ -199,10 +199,19 @@ ScriptsTool::ScriptsTool() : QWidget(nullptr), ui(new Ui_ScriptsTool)
 	propertiesView->setSizePolicy(QSizePolicy::Expanding,
 	propertiesView->setSizePolicy(QSizePolicy::Expanding,
 				      QSizePolicy::Expanding);
 				      QSizePolicy::Expanding);
 	ui->propertiesLayout->addWidget(propertiesView);
 	ui->propertiesLayout->addWidget(propertiesView);
+
+	config_t *global_config = obs_frontend_get_global_config();
+	int row =
+		config_get_int(global_config, "scripts-tool", "prevScriptRow");
+	ui->scripts->setCurrentRow(row);
 }
 }
 
 
 ScriptsTool::~ScriptsTool()
 ScriptsTool::~ScriptsTool()
 {
 {
+	config_t *global_config = obs_frontend_get_global_config();
+	config_set_int(global_config, "scripts-tool", "prevScriptRow",
+		       ui->scripts->currentRow());
+
 	delete ui;
 	delete ui;
 }
 }
 
 
@@ -331,6 +340,8 @@ void ScriptsTool::on_addScripts_clicked()
 				obs_script_get_properties(script);
 				obs_script_get_properties(script);
 			obs_properties_apply_settings(prop, settings);
 			obs_properties_apply_settings(prop, settings);
 			obs_properties_destroy(prop);
 			obs_properties_destroy(prop);
+
+			ui->scripts->setCurrentItem(item);
 		}
 		}
 	}
 	}
 }
 }