mirror of https://github.com/mpv-player/mpv
Add a m_property_flag_ro function for the default behaviour of a
read-only flag. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27679 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
0189fa7cac
commit
70901aa006
15
m_property.c
15
m_property.c
|
@ -245,6 +245,17 @@ int m_property_choice(const m_option_t* prop,int action,
|
|||
return m_property_int_range(prop,action,arg,var);
|
||||
}
|
||||
|
||||
int m_property_flag_ro(const m_option_t* prop,int action,
|
||||
void* arg,int var) {
|
||||
switch(action) {
|
||||
case M_PROPERTY_PRINT:
|
||||
if(!arg) return 0;
|
||||
*(char**)arg = strdup((var > prop->min) ? MSGTR_Enabled : MSGTR_Disabled);
|
||||
return 1;
|
||||
}
|
||||
return m_property_int_ro(prop,action,arg,var);
|
||||
}
|
||||
|
||||
int m_property_flag(const m_option_t* prop,int action,
|
||||
void* arg,int* var) {
|
||||
switch(action) {
|
||||
|
@ -253,9 +264,7 @@ int m_property_flag(const m_option_t* prop,int action,
|
|||
*var = *var == prop->min ? prop->max : prop->min;
|
||||
return 1;
|
||||
case M_PROPERTY_PRINT:
|
||||
if(!arg) return 0;
|
||||
*(char**)arg = strdup((*var > prop->min) ? MSGTR_Enabled : MSGTR_Disabled);
|
||||
return 1;
|
||||
return m_property_flag_ro(prop, action, arg, *var);
|
||||
}
|
||||
return m_property_int_range(prop,action,arg,var);
|
||||
}
|
||||
|
|
|
@ -169,6 +169,9 @@ int m_property_int_range(const m_option_t* prop,int action,
|
|||
int m_property_choice(const m_option_t* prop,int action,
|
||||
void* arg,int* var);
|
||||
|
||||
int m_property_flag_ro(const m_option_t* prop,int action,
|
||||
void* arg,int var);
|
||||
|
||||
/// Switch betwen min and max.
|
||||
int m_property_flag(const m_option_t* prop,int action,
|
||||
void* arg,int* var);
|
||||
|
|
Loading…
Reference in New Issue