117 lines
3.5 KiB
C++
117 lines
3.5 KiB
C++
#include "ephotoattr.h"
|
||
#include "ui_ephotoattr.h"
|
||
#include "ephoto.h"
|
||
#include <LoUIClass/x_uimsgboxok.h>
|
||
ePhotoAttr::ePhotoAttr(const ePhoto::Data &data, QWidget *parent) :
|
||
eAttr(parent),
|
||
ui(new Ui::ePhotoAttr)
|
||
{
|
||
ui->setupUi(this);
|
||
|
||
ui->wFile ->setText (data.name);
|
||
|
||
ui->wPlayDuration ->setValue (data.playDuration);
|
||
ui->wPlayTimes ->setValue (data.playTimes);
|
||
ui->wEnterStyle ->setCurrentIndex(data.enterStyle);
|
||
ui->wEnterDuration->setValue (data.enterDuration);
|
||
|
||
connect(ui->wPlayDuration, SIGNAL(valueChanged(int)), this, SLOT(onAttrChanged()));
|
||
connect(ui->wPlayTimes, SIGNAL(valueChanged(int)), this, SLOT(onAttrChanged()));
|
||
connect(ui->wEnterStyle, SIGNAL(currentIndexChanged(int)), this, SLOT(onAttrChanged()));
|
||
connect(ui->wEnterDuration, SIGNAL(valueChanged(int)), this, SLOT(onAttrChanged()));
|
||
connect(ui->bnSelectFile, SIGNAL(clicked(bool)), this, SLOT(onSelectFile()));
|
||
//我们的m2m文件结构中没有图片播放次数的参数,所以设置这两个为不可见,以免客户误解
|
||
ui->label_7->setVisible(false);
|
||
ui->wPlayTimes->setVisible(false);
|
||
bool bFileExistFlag=true;
|
||
QFileInfo file1(data.path+"/"+data.yuanshi_name);
|
||
|
||
if(!file1.exists())
|
||
{
|
||
QFileInfo file2(data.computer_pic_file);
|
||
if(!file2.exists())
|
||
{
|
||
bFileExistFlag=false;
|
||
}
|
||
else {
|
||
|
||
if(file2.isDir())
|
||
{
|
||
bFileExistFlag=false;
|
||
}
|
||
else {
|
||
ui->wFile->setText(QFileInfo(data.computer_pic_file).fileName());
|
||
emit sResChanged(data.computer_pic_file);
|
||
|
||
}
|
||
}
|
||
|
||
|
||
}
|
||
else {
|
||
if(file1.isDir())
|
||
{
|
||
QFileInfo file2(data.computer_pic_file);
|
||
if(!file2.exists())
|
||
{
|
||
bFileExistFlag=false;
|
||
}
|
||
else {
|
||
|
||
if(file2.isDir())
|
||
{
|
||
bFileExistFlag=false;
|
||
}
|
||
else {
|
||
ui->wFile->setText(QFileInfo(data.computer_pic_file).fileName());
|
||
emit sResChanged(data.computer_pic_file);
|
||
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
if(bFileExistFlag==false)
|
||
{
|
||
X_UIMsgBoxOk *dlg=new X_UIMsgBoxOk(tr("Attention"),tr("file(")+data.path+"/"+data.name+tr(") is not exist"),this,1);
|
||
dlg->exec();
|
||
}
|
||
|
||
}
|
||
|
||
ePhotoAttr::~ePhotoAttr()
|
||
{
|
||
delete ui;
|
||
}
|
||
|
||
void ePhotoAttr::onSelectFile()
|
||
{
|
||
QString file = LoAppTools::getInstance()->selectFile(ePhoto::filters(), this);
|
||
if(!file.isNull()) {
|
||
ui->wFile->setText(QFileInfo(file).fileName());
|
||
emit sResChanged(file);
|
||
}
|
||
}
|
||
|
||
void ePhotoAttr::onAttrChanged()
|
||
{
|
||
ePhoto::Data data;
|
||
data.playDuration = ui->wPlayDuration->value();
|
||
data.playTimes = ui->wPlayTimes->value();
|
||
|
||
|
||
data.enterStyle = ui->wEnterStyle->currentIndex();
|
||
data.enterDuration = ui->wEnterDuration->value();
|
||
|
||
if(data.enterDuration>data.playDuration)
|
||
{
|
||
X_UIMsgBoxOk *dlg=new X_UIMsgBoxOk(tr("Tip Info"),tr("Effect time cannot be longer than duration time"),this,0);
|
||
dlg->exec();
|
||
data.enterDuration=data.playDuration/2;
|
||
ui->wEnterDuration->setValue(data.enterDuration);
|
||
}
|
||
emit sAttrChanged(data);
|
||
|
||
|
||
}
|