79 lines
2.5 KiB
C++
79 lines
2.5 KiB
C++
#include "dialog_imageinfo.h"
|
|
#include "ui_dialog_imageinfo.h"
|
|
|
|
Dialog_ImageInfo::Dialog_ImageInfo(const QStringList& file_keys, const QStringList& file_values,
|
|
const QStringList& image_keys, const QStringList& image_values, QWidget *parent) :
|
|
QDialog(parent)
|
|
, ui(new Ui::Dialog_ImageInfo)
|
|
, m_file_keys(file_keys)
|
|
, m_file_values(file_values)
|
|
, m_image_keys(image_keys)
|
|
, m_image_values(image_values)
|
|
{
|
|
ui->setupUi(this);
|
|
|
|
this->resize(600,400);
|
|
setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint);
|
|
|
|
ui->treeWidget->header()->resizeSections(QHeaderView::ResizeToContents);
|
|
ui->treeWidget->setColumnCount(2);
|
|
ui->treeWidget->setColumnWidth(0,180);
|
|
ui->treeWidget->setAlternatingRowColors(true);
|
|
|
|
ui->buttonBox->button(QDialogButtonBox::Ok)->setText(tr("ok"));
|
|
|
|
//set primery directory
|
|
QStringList list;
|
|
list<<tr("File");
|
|
QTreeWidgetItem *class1 = new QTreeWidgetItem(ui->treeWidget,list);
|
|
ui->treeWidget->addTopLevelItem(class1);
|
|
list.clear();
|
|
list<<tr("Image");
|
|
QTreeWidgetItem *class2 = new QTreeWidgetItem(ui->treeWidget,list);
|
|
ui->treeWidget->addTopLevelItem(class2);
|
|
|
|
QList<QTreeWidgetItem*> list_class;
|
|
|
|
//set class1 secondary directory
|
|
m_file_values = makeList(m_file_keys, m_file_values);
|
|
for(int i=0;i< m_file_keys.size();i++)
|
|
{
|
|
QStringList list_string;
|
|
list_string<< m_file_keys[i]<< m_file_values[i];
|
|
QTreeWidgetItem *class1_child = new QTreeWidgetItem(class1, list_string);
|
|
list_class.append(class1_child);
|
|
}
|
|
class1->addChildren(list_class);
|
|
|
|
//set class2 secondary directory
|
|
list_class.clear();
|
|
m_image_values = makeList(m_image_keys, m_image_values);
|
|
for(int i=0;i< m_image_keys.size();i++)
|
|
{
|
|
QStringList list_string;
|
|
list_string<< m_image_keys[i]<< m_image_values[i];
|
|
QTreeWidgetItem *class2_child = new QTreeWidgetItem(class2, list_string);
|
|
list_class.append(class2_child);
|
|
}
|
|
class2->addChildren(list_class);
|
|
|
|
ui->treeWidget->expandAll();
|
|
}
|
|
|
|
Dialog_ImageInfo::~Dialog_ImageInfo()
|
|
{
|
|
delete ui;
|
|
}
|
|
|
|
QStringList Dialog_ImageInfo::makeList(const QStringList& keys, QStringList values)
|
|
{
|
|
if (keys.size() < values.size())
|
|
return values.mid(0, keys.size());
|
|
else if (keys.size() > values.size())
|
|
{
|
|
for (int i = 0; i < keys.size() - values.size(); i++)
|
|
values.append(tr("None"));
|
|
}
|
|
return values;
|
|
}
|