Label %mFileName% file name punctuation. Closes #188
This commit is contained in:
parent
c026f42689
commit
111d8950fd
|
@ -54,6 +54,7 @@
|
||||||
- Support for custom known measurements.
|
- Support for custom known measurements.
|
||||||
- Allow negative values.
|
- Allow negative values.
|
||||||
- Tape app. New feature: Always keep on top.
|
- Tape app. New feature: Always keep on top.
|
||||||
|
- [smart-pattern/valentina#188] Label %mFileName% file name punctuation.
|
||||||
|
|
||||||
# Valentina 0.7.52 September 12, 2022
|
# Valentina 0.7.52 September 12, 2022
|
||||||
- Fix crash when default locale is ru.
|
- Fix crash when default locale is ru.
|
||||||
|
|
|
@ -66,6 +66,31 @@ Q_GLOBAL_STATIC(QVector<TextLine>, m_patternLabelLinesCache) // NOLINT
|
||||||
|
|
||||||
QT_WARNING_POP
|
QT_WARNING_POP
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
auto FileBaseName(const QString &filePath) -> QString
|
||||||
|
{
|
||||||
|
// Known suffixes to check for
|
||||||
|
QStringList knownSuffixes = {".val", ".vst", ".vit"};
|
||||||
|
|
||||||
|
QFileInfo fileInfo(filePath);
|
||||||
|
|
||||||
|
// Check if the file has one of the known suffixes
|
||||||
|
for (const QString &suffix : knownSuffixes)
|
||||||
|
{
|
||||||
|
if (fileInfo.completeSuffix().endsWith(suffix, Qt::CaseInsensitive))
|
||||||
|
{
|
||||||
|
// Remove the known suffix and return the modified file name
|
||||||
|
QString modifiedFileName = fileInfo.fileName();
|
||||||
|
modifiedFileName.chop(suffix.length());
|
||||||
|
return modifiedFileName;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fallback to QFileInfo::baseName if no known suffix is found
|
||||||
|
return fileInfo.baseName();
|
||||||
|
}
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
auto SplitTextByWidth(const QString &text, const QFont &font, int maxWidth) -> QStringList
|
auto SplitTextByWidth(const QString &text, const QFont &font, int maxWidth) -> QStringList
|
||||||
{
|
{
|
||||||
QFontMetrics fontMetrics(font);
|
QFontMetrics fontMetrics(font);
|
||||||
|
@ -467,8 +492,8 @@ auto PreparePlaceholders(const VAbstractPattern *doc, const VContainer *data, bo
|
||||||
PrepareCustomerPlaceholders(doc, placeholders);
|
PrepareCustomerPlaceholders(doc, placeholders);
|
||||||
|
|
||||||
placeholders.insert(pl_pExt, QStringLiteral("val"));
|
placeholders.insert(pl_pExt, QStringLiteral("val"));
|
||||||
placeholders.insert(pl_pFileName, QFileInfo(VAbstractValApplication::VApp()->GetPatternPath()).baseName());
|
placeholders.insert(pl_pFileName, FileBaseName(VAbstractValApplication::VApp()->GetPatternPath()));
|
||||||
placeholders.insert(pl_mFileName, QFileInfo(doc->MPath()).baseName());
|
placeholders.insert(pl_mFileName, FileBaseName(doc->MPath()));
|
||||||
|
|
||||||
PrepareDimensionPlaceholders(placeholders);
|
PrepareDimensionPlaceholders(placeholders);
|
||||||
|
|
||||||
|
|
|
@ -55,6 +55,33 @@
|
||||||
|
|
||||||
using namespace Qt::Literals::StringLiterals;
|
using namespace Qt::Literals::StringLiterals;
|
||||||
|
|
||||||
|
namespace
|
||||||
|
{
|
||||||
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
auto FileBaseName(const QString &filePath) -> QString
|
||||||
|
{
|
||||||
|
// Known suffixes to check for
|
||||||
|
QStringList knownSuffixes = {".val", ".vst", ".vit"};
|
||||||
|
|
||||||
|
QFileInfo fileInfo(filePath);
|
||||||
|
|
||||||
|
// Check if the file has one of the known suffixes
|
||||||
|
for (const QString &suffix : knownSuffixes)
|
||||||
|
{
|
||||||
|
if (fileInfo.completeSuffix().endsWith(suffix, Qt::CaseInsensitive))
|
||||||
|
{
|
||||||
|
// Remove the known suffix and return the modified file name
|
||||||
|
QString modifiedFileName = fileInfo.fileName();
|
||||||
|
modifiedFileName.chop(suffix.length());
|
||||||
|
return modifiedFileName;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fallback to QFileInfo::baseName if no known suffix is found
|
||||||
|
return fileInfo.baseName();
|
||||||
|
}
|
||||||
|
} // namespace
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
DialogEditLabel::DialogEditLabel(const VAbstractPattern *doc, const VContainer *data, QWidget *parent)
|
DialogEditLabel::DialogEditLabel(const VAbstractPattern *doc, const VContainer *data, QWidget *parent)
|
||||||
: QDialog(parent),
|
: QDialog(parent),
|
||||||
|
@ -556,12 +583,9 @@ void DialogEditLabel::InitPlaceholders()
|
||||||
}
|
}
|
||||||
|
|
||||||
m_placeholders.insert(pl_pExt, qMakePair(tr("Pattern extension"), QStringLiteral("val")));
|
m_placeholders.insert(pl_pExt, qMakePair(tr("Pattern extension"), QStringLiteral("val")));
|
||||||
|
m_placeholders.insert(pl_pFileName, qMakePair(tr("Pattern file name"),
|
||||||
const QString patternFilePath = QFileInfo(VAbstractValApplication::VApp()->GetPatternPath()).baseName();
|
FileBaseName(VAbstractValApplication::VApp()->GetPatternPath())));
|
||||||
m_placeholders.insert(pl_pFileName, qMakePair(tr("Pattern file name"), patternFilePath));
|
m_placeholders.insert(pl_mFileName, qMakePair(tr("Measurements file name"), FileBaseName(m_doc->MPath())));
|
||||||
|
|
||||||
const QString measurementsFilePath = QFileInfo(m_doc->MPath()).baseName();
|
|
||||||
m_placeholders.insert(pl_mFileName, qMakePair(tr("Measurements file name"), measurementsFilePath));
|
|
||||||
|
|
||||||
QString heightValue = QString::number(VAbstractValApplication::VApp()->GetDimensionHeight());
|
QString heightValue = QString::number(VAbstractValApplication::VApp()->GetDimensionHeight());
|
||||||
m_placeholders.insert(pl_height, qMakePair(tr("Height", "dimension"), heightValue));
|
m_placeholders.insert(pl_height, qMakePair(tr("Height", "dimension"), heightValue));
|
||||||
|
|
Loading…
Reference in New Issue
Block a user