libobs: Implement flags for properties
OBS_PROPERTIES_DEFER_UPDATE: Makes it so the properties are not updated until editing of the properties is complete.master
parent
c539c16ecc
commit
ef4ee1fd1a
|
@ -105,6 +105,7 @@ struct obs_property {
|
|||
struct obs_properties {
|
||||
void *param;
|
||||
void (*destroy)(void *param);
|
||||
uint32_t flags;
|
||||
|
||||
struct obs_property *first_property;
|
||||
struct obs_property **last;
|
||||
|
@ -131,6 +132,17 @@ void obs_properties_set_param(obs_properties_t *props,
|
|||
props->destroy = destroy;
|
||||
}
|
||||
|
||||
void obs_properties_set_flags(obs_properties_t *props, uint32_t flags)
|
||||
{
|
||||
if (props)
|
||||
props->flags = flags;
|
||||
}
|
||||
|
||||
uint32_t obs_properties_get_flags(obs_properties_t *props)
|
||||
{
|
||||
return props ? props->flags : 0;
|
||||
}
|
||||
|
||||
void *obs_properties_get_param(obs_properties_t *props)
|
||||
{
|
||||
return props ? props->param : NULL;
|
||||
|
|
|
@ -38,6 +38,9 @@
|
|||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** Only update when the user presses OK or Apply */
|
||||
#define OBS_PROPERTIES_DEFER_UPDATE (1<<0)
|
||||
|
||||
enum obs_property_type {
|
||||
OBS_PROPERTY_INVALID,
|
||||
OBS_PROPERTY_BOOL,
|
||||
|
@ -92,6 +95,9 @@ EXPORT obs_properties_t *obs_properties_create_param(void *param,
|
|||
void (*destroy)(void *param));
|
||||
EXPORT void obs_properties_destroy(obs_properties_t *props);
|
||||
|
||||
EXPORT void obs_properties_set_flags(obs_properties_t *props, uint32_t flags);
|
||||
EXPORT uint32_t obs_properties_get_flags(obs_properties_t *props);
|
||||
|
||||
EXPORT void obs_properties_set_param(obs_properties_t *props,
|
||||
void *param, void (*destroy)(void *param));
|
||||
EXPORT void *obs_properties_get_param(obs_properties_t *props);
|
||||
|
|
Loading…
Reference in New Issue