mirror of
https://github.com/X11Libre/xserver.git
synced 2026-10-15 00:13:28 +00:00
xfree86: Add option parsing for percent options.
In some cases, an option of "50%" would be preferable over fixed value configuration - especially if the actual values are autoprobed. Add a new set of functions to parse percent values from configurations. The percent value parsing differs slightly - if the option is not to marked as used (e.g. xf86CheckPercentOption()), no warning is emitted to the log file if the value is not a percent value. This allows double-options (either as % or as absolute number) without warnings. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Dan Nicholson <dbn.lists@gmail.com> Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
parent
673eb707ce
commit
d88ba7721d
7 changed files with 102 additions and 1 deletions
|
|
@ -51,6 +51,7 @@ typedef enum {
|
|||
OPTV_ANYSTR, /* Any string, including an empty one */
|
||||
OPTV_REAL,
|
||||
OPTV_BOOLEAN,
|
||||
OPTV_PERCENT,
|
||||
OPTV_FREQ
|
||||
} OptionValueType;
|
||||
|
||||
|
|
@ -72,10 +73,12 @@ extern _X_EXPORT int xf86SetIntOption(pointer optlist, const char *name, int def
|
|||
extern _X_EXPORT double xf86SetRealOption(pointer optlist, const char *name, double deflt);
|
||||
extern _X_EXPORT char *xf86SetStrOption(pointer optlist, const char *name, char *deflt);
|
||||
extern _X_EXPORT int xf86SetBoolOption(pointer list, const char *name, int deflt );
|
||||
extern _X_EXPORT double xf86SetPercentOption(pointer list, const char *name, double deflt );
|
||||
extern _X_EXPORT int xf86CheckIntOption(pointer optlist, const char *name, int deflt);
|
||||
extern _X_EXPORT double xf86CheckRealOption(pointer optlist, const char *name, double deflt);
|
||||
extern _X_EXPORT char *xf86CheckStrOption(pointer optlist, const char *name, char *deflt);
|
||||
extern _X_EXPORT int xf86CheckBoolOption(pointer list, const char *name, int deflt );
|
||||
extern _X_EXPORT double xf86CheckPercentOption(pointer list, const char *name, double deflt );
|
||||
extern _X_EXPORT pointer xf86AddNewOption(pointer head, const char *name, const char *val );
|
||||
extern _X_EXPORT pointer xf86NewOption(char *name, char *value );
|
||||
extern _X_EXPORT pointer xf86NextOption(pointer list );
|
||||
|
|
@ -109,5 +112,6 @@ extern _X_EXPORT char *xf86NormalizeName(const char *s);
|
|||
extern _X_EXPORT pointer xf86ReplaceIntOption(pointer optlist, const char *name, const int val);
|
||||
extern _X_EXPORT pointer xf86ReplaceRealOption(pointer optlist, const char *name, const double val);
|
||||
extern _X_EXPORT pointer xf86ReplaceBoolOption(pointer optlist, const char *name, const Bool val);
|
||||
extern _X_EXPORT pointer xf86ReplacePercentOption(pointer optlist, const char *name, const double val);
|
||||
extern _X_EXPORT pointer xf86ReplaceStrOption(pointer optlist, const char *name, const char* val);
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in a new issue