fix - File name pattern editor 'Clear' and 'Reset' behavior (configuration window)

(cherry picked from commit 116c807f166841e1ba2745e32ae1ef5fd7f25276)
This commit is contained in:
Yuriy Puchkov
2021-02-25 21:27:48 +02:00
parent 1c5dbb3c9e
commit d32ed7704b
4 changed files with 18 additions and 6 deletions

View File

@@ -33,16 +33,17 @@ QString FileNameHandler::parsedPattern()
QString FileNameHandler::parseFilename(const QString& name)
{
QString res = name;
// remove trailing characters '%' in the pattern
if (name.isEmpty()) {
res = QLatin1String("%F_%H-%M");
res = ConfigHandler().filenamePatternDefault();
}
// remove trailing characters '%' in the pattern
while (res.endsWith('%')) {
res.chop(1);
}
std::time_t t = std::time(NULL);
char* tempData = QStringTocharArr(res);
char* tempData = QStringToCharArr(res);
char data[MAX_CHARACTERS] = { 0 };
std::strftime(data, sizeof(data), tempData, std::localtime(&t));
res = QString::fromLocal8Bit(data, (int)strlen(data));
@@ -92,7 +93,7 @@ QString FileNameHandler::charArrToQString(const char* c)
return QString::fromLocal8Bit(c, MAX_CHARACTERS);
}
char* FileNameHandler::QStringTocharArr(const QString& s)
char* FileNameHandler::QStringToCharArr(const QString& s)
{
QByteArray ba = s.toLocal8Bit();
return const_cast<char*>(strdup(ba.constData()));