| 307 | } |
| 308 | |
| 309 | void MacroActionStreamEdit::GetCurrentValueClicked() |
| 310 | { |
| 311 | if (!_entryData) { |
| 312 | return; |
| 313 | } |
| 314 | switch (_entryData->_action) { |
| 315 | case MacroActionStream::Action::KEYFRAME_INTERVAL: { |
| 316 | const auto configPath = |
| 317 | GetPathInProfileDir("streamEncoder.json"); |
| 318 | OBSDataAutoRelease settings = |
| 319 | obs_data_create_from_json_file_safe(configPath.c_str(), |
| 320 | "bak"); |
| 321 | if (!settings) { |
| 322 | break; |
| 323 | } |
| 324 | _keyFrameInterval->SetFixedValue( |
| 325 | (int)obs_data_get_int(settings, "keyint_sec")); |
| 326 | break; |
| 327 | } |
| 328 | case MacroActionStream::Action::SERVER: |
| 329 | case MacroActionStream::Action::STREAM_KEY: |
| 330 | case MacroActionStream::Action::USERNAME: |
| 331 | case MacroActionStream::Action::PASSWORD: { |
| 332 | static const std::map<MacroActionStream::Action, const char *> |
| 333 | settingsKeys = { |
| 334 | {MacroActionStream::Action::SERVER, "server"}, |
| 335 | {MacroActionStream::Action::STREAM_KEY, "key"}, |
| 336 | {MacroActionStream::Action::USERNAME, |
| 337 | "username"}, |
| 338 | {MacroActionStream::Action::PASSWORD, |
| 339 | "password"}, |
| 340 | }; |
| 341 | auto service = obs_frontend_get_streaming_service(); |
| 342 | OBSDataAutoRelease settings = obs_service_get_settings(service); |
| 343 | if (!settings) { |
| 344 | obs_service_release(service); |
| 345 | break; |
| 346 | } |
| 347 | const char *val = obs_data_get_string( |
| 348 | settings, settingsKeys.at(_entryData->_action)); |
| 349 | if (val) { |
| 350 | _stringValue->setText(QString(val)); |
| 351 | } |
| 352 | break; |
| 353 | } |
| 354 | default: |
| 355 | break; |
| 356 | } |
| 357 | } |
| 358 | |
| 359 | void MacroActionStreamEdit::ActionChanged(int value) |
| 360 | { |
nothing calls this directly
no test coverage detected