Add convenience wrapper for log translation
This commit is contained in:
parent
a848ed4894
commit
f22108fe03
39
AdaptiveBrightness/log_tr.hpp
Normal file
39
AdaptiveBrightness/log_tr.hpp
Normal file
@ -0,0 +1,39 @@
|
||||
#pragma once
|
||||
|
||||
#include <utility>
|
||||
|
||||
#include <QByteArray>
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
|
||||
namespace detail {
|
||||
|
||||
class LogTr {
|
||||
public:
|
||||
LogTr() = delete;
|
||||
LogTr(const char* strLiteral) : m_string(QObject::tr(strLiteral)) {}
|
||||
|
||||
operator const char *()
|
||||
{
|
||||
m_utf8String = m_string.toUtf8();
|
||||
return m_utf8String.constData();
|
||||
}
|
||||
|
||||
template<typename... Args>
|
||||
LogTr& arg(Args&&... args)
|
||||
{
|
||||
m_string = m_string.arg(std::forward<Args>(args)...);
|
||||
return *this;
|
||||
}
|
||||
|
||||
private:
|
||||
QString m_string;
|
||||
QByteArray m_utf8String;
|
||||
};
|
||||
|
||||
} // namespace detail
|
||||
|
||||
detail::LogTr ltr(const char* formatString)
|
||||
{
|
||||
return detail::LogTr(formatString);
|
||||
}
|
@ -4,6 +4,7 @@
|
||||
#include <QtGlobal>
|
||||
|
||||
#include "log_to_file.hpp"
|
||||
#include "log_tr.hpp"
|
||||
#include "main_window.hpp"
|
||||
#include "sensor_driver.hpp"
|
||||
|
||||
@ -21,10 +22,10 @@ int main(int argc, char* argv[])
|
||||
const auto sensorRange = sensor.readRange();
|
||||
const auto sensorValues = sensor.readValues();
|
||||
|
||||
qInfo("Sensor range: [%d,%d]", sensorRange.first, sensorRange.second);
|
||||
qInfo(ltr("Sensor range: [%1,%2]").arg(sensorRange.first).arg(sensorRange.second));
|
||||
|
||||
for(size_t i = 0; i < sensorValues.size(); ++i) {
|
||||
qInfo("Sensor value %d: %d", i, sensorValues[i]);
|
||||
qInfo(ltr("Sensor value %1: %2").arg(i).arg(sensorValues[i]));
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user