86 { |
86 { |
87 return (x << 20) | ((x >> 12) & 0x000000ff); |
87 return (x << 20) | ((x >> 12) & 0x000000ff); |
88 } |
88 } |
89 |
89 |
90 template<typename T, typename... Rest> |
90 template<typename T, typename... Rest> |
91 QString format(const QString &format_string, T&& arg, Rest&&... rest) |
91 QString format(const QString& format_string, T&& arg, Rest&&... rest) |
92 { |
92 { |
93 return format(format_string.arg(arg), std::forward<Rest>(rest)...); |
93 return format(format_string.arg(arg), std::forward<Rest>(rest)...); |
94 } |
94 } |
95 |
95 |
96 template<typename T> |
96 template<typename T> |
97 QString format(const QString &format_string, T&& arg) |
97 QString format(const QString& format_string, T&& arg) |
98 { |
98 { |
99 return format_string.arg(arg); |
99 return format_string.arg(arg); |
100 } |
100 } |
|
101 |
|
102 inline QString quoted(QString string) |
|
103 { |
|
104 if (string.contains("'")) |
|
105 { |
|
106 string.replace("\"", "\\\""); |
|
107 string = "\"" + string + "\""; |
|
108 } |
|
109 else |
|
110 { |
|
111 string = "'" + string + "'"; |
|
112 } |
|
113 return string; |
|
114 } |