Files
mediasystem/ClippingStation/Importer/imageoutputformatdialog.cpp
T
2022-12-13 09:18:00 -06:00

52 lines
1.9 KiB
C++

//! \file imageoutputformatdialog.cpp
#include "imageoutputformatdialog.h"
#include "ui_imageoutputformatdialog.h"
ImageOutputFormatDialog::ImageOutputFormatDialog(QWidget *parent, QStringList list, bool keeppagenumber, int startpagenumber) :
QDialog(parent),
m_ui(new Ui::ImageOutputFormatDialog)
{
m_ui->setupUi(this);
//create the structure
//we have 2 situations, either we want to keep the images names as they, or we would like to rename them sequentially
// if we want to keep the names as they were!
if( keeppagenumber )
{
//first show the user how everything will look like, and make sure its correct, and thats what he really want!
for(int i=0; i< list.count(); i++)
{
QString name = list[i];
//the newName value will be stripped down from all NON numeric character, and will output the name in the format dddd.jpg, where d is digit (0-9)
QString destinationName = QString("%1.jpg").arg(name.remove(QRegExp("[^\\d]")), 4, QChar('0'));
outputFileNames << destinationName;
}
}
else
{
for(int i=0; i< list.count(); i++)
{
QString destinationName = QString("%1.jpg").arg(QString::number(i+startpagenumber), 4, QChar('0'));
outputFileNames << destinationName;
}
}
//create top level item and insert it to the treewidget
QTreeWidgetItem *dirItem = new QTreeWidgetItem(QStringList(tr("Image names will look like this")));
m_ui->treeWidget->insertTopLevelItem(0, dirItem);
for(int i=0; i < outputFileNames.count(); i++)
{
QTreeWidgetItem *item = new QTreeWidgetItem(QStringList( outputFileNames[i] ) );
m_ui->treeWidget->itemAt(0,0)->addChild(item); //insert items from the list to treewidget
}
m_ui->treeWidget->expandAll();
}
ImageOutputFormatDialog::~ImageOutputFormatDialog()
{
delete m_ui;
}