1
|
|
|
import obspython as obs |
2
|
|
|
from rtgg_obs import RacetimeObs |
3
|
|
|
from . import fill_source_list |
4
|
|
|
|
5
|
|
|
|
6
|
|
|
def script_qualifier_settings(props, rtgg_obs: RacetimeObs): |
7
|
|
|
p = obs.obs_properties_add_bool( |
8
|
|
|
props, "use_qualifier", |
9
|
|
|
"Display race results as tournament qualifier?" |
10
|
|
|
) |
11
|
|
|
obs.obs_property_set_modified_callback(p, qualifier_toggled) |
12
|
|
|
qualifier_group = obs.obs_properties_create() |
13
|
|
|
obs.obs_properties_add_group( |
14
|
|
|
props, "qualifier_group", "Qualifier Mode", |
15
|
|
|
obs.OBS_GROUP_NORMAL, qualifier_group |
16
|
|
|
) |
17
|
|
|
obs.obs_property_set_visible( |
18
|
|
|
obs.obs_properties_get(props, "qualifier_group"), |
19
|
|
|
rtgg_obs.qualifier.enabled |
20
|
|
|
) |
21
|
|
|
p = obs.obs_properties_add_int_slider( |
22
|
|
|
qualifier_group, "qualifier_cutoff", |
23
|
|
|
"Use Top X as par time, where X=", 3, 10, 1 |
24
|
|
|
) |
25
|
|
|
p = obs.obs_properties_add_list( |
26
|
|
|
qualifier_group, |
27
|
|
|
"qualifier_par_source", |
28
|
|
|
"Qualifier Par Time Source", |
29
|
|
|
obs.OBS_COMBO_TYPE_EDITABLE, |
30
|
|
|
obs.OBS_COMBO_FORMAT_STRING |
31
|
|
|
) |
32
|
|
|
fill_source_list(p) |
33
|
|
|
p = obs.obs_properties_add_list( |
34
|
|
|
qualifier_group, |
35
|
|
|
"qualifier_score_source", |
36
|
|
|
"Qualifier Score Source", |
37
|
|
|
obs.OBS_COMBO_TYPE_EDITABLE, |
38
|
|
|
obs.OBS_COMBO_FORMAT_STRING |
39
|
|
|
) |
40
|
|
|
fill_source_list(p) |
41
|
|
|
|
42
|
|
|
|
43
|
|
|
def qualifier_toggled(props, prop, settings): |
44
|
|
|
vis = obs.obs_data_get_bool(settings, "use_qualifier") |
45
|
|
|
obs.obs_property_set_visible( |
46
|
|
|
obs.obs_properties_get(props, "qualifier_group"), vis) |
47
|
|
|
return True |
48
|
|
|
|
49
|
|
|
|
50
|
|
|
def script_update_qualifier_settings(settings, rtgg_obs: RacetimeObs): |
51
|
|
|
rtgg_obs.qualifier.enabled = obs.obs_data_get_bool( |
52
|
|
|
settings, "use_qualifier") |
53
|
|
|
rtgg_obs.qualifier.qualifier_cutoff = obs.obs_data_get_int( |
54
|
|
|
settings, "qualifier_cutoff") |
55
|
|
|
rtgg_obs.logger.debug( |
56
|
|
|
f"qualifier_cutoff is {rtgg_obs.qualifier.qualifier_cutoff}") |
57
|
|
|
rtgg_obs.qualifier.par_source = obs.obs_data_get_string( |
58
|
|
|
settings, "qualifier_par_source") |
59
|
|
|
rtgg_obs.qualifier.score_source = obs.obs_data_get_string( |
60
|
|
|
settings, "qualifier_score_source") |
61
|
|
|
|