preferences: use std::string in struct preferences

This is a messy commit, because the "qPref" system relies
heavily on QString, which means lots of conversions between
the two worlds. Ultimately, I plan to base the preferences
system on std::string and only convert to QString when
pushing through Qt's property system or when writing into
Qt's settings.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2024-06-13 22:59:32 +02:00 committed by bstoeger
parent 82fc9de40b
commit ccdd92aeb7
78 changed files with 645 additions and 694 deletions

View file

@ -27,11 +27,6 @@ static inline bool empty_string(const char *s)
return !s || !*s;
}
static inline char *copy_string(const char *s)
{
return (s && *s) ? strdup(s) : NULL;
}
extern double permissive_strtod(const char *str, const char **ptr);
extern double ascii_strtod(const char *str, const char **ptr);
@ -47,6 +42,16 @@ inline bool contains(std::string_view s, char c)
return s.find(c) != std::string::npos;
}
inline bool contains(std::string_view haystack, const char *needle)
{
return haystack.find(needle) != std::string::npos;
}
inline bool contains(std::string_view haystack, const std::string &needle)
{
return haystack.find(needle) != std::string::npos;
}
std::string join(const std::vector<std::string> &l, const std::string &separator, bool skip_empty = false);
#endif // SUBSURFACE_STRING_H