export bug fixed, UI updated
This commit is contained in:
parent
59b8ba8835
commit
330f0e3984
7 changed files with 211 additions and 159 deletions
|
@ -37,7 +37,7 @@ void ExportThread::run()
|
||||||
{
|
{
|
||||||
if (widget->isSelected())
|
if (widget->isSelected())
|
||||||
{
|
{
|
||||||
if (profileMap[widget] == "SnapmaticWidget")
|
if (widget->getWidgetType() == "SnapmaticWidget")
|
||||||
{
|
{
|
||||||
SnapmaticWidget *picWidget = (SnapmaticWidget*)widget;
|
SnapmaticWidget *picWidget = (SnapmaticWidget*)widget;
|
||||||
SnapmaticPicture *picture = picWidget->getPicture();
|
SnapmaticPicture *picture = picWidget->getPicture();
|
||||||
|
@ -73,7 +73,7 @@ void ExportThread::run()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (profileMap[widget] == "SavegameWidget")
|
else if (widget->getWidgetType() == "SavegameWidget")
|
||||||
{
|
{
|
||||||
SavegameWidget *sgdWidget = (SavegameWidget*)widget;
|
SavegameWidget *sgdWidget = (SavegameWidget*)widget;
|
||||||
SavegameData *savegame = sgdWidget->getSavegame();
|
SavegameData *savegame = sgdWidget->getSavegame();
|
||||||
|
|
|
@ -56,8 +56,8 @@ PictureDialog::PictureDialog(ProfileDatabase *profileDB, QWidget *parent) :
|
||||||
|
|
||||||
// Export menu
|
// Export menu
|
||||||
exportMenu = new QMenu(this);
|
exportMenu = new QMenu(this);
|
||||||
exportMenu->addAction(tr("Export as &picture...", "Export as picture"), this, SLOT(exportSnapmaticPicture()));
|
exportMenu->addAction(tr("Export as &JPG picture..."), this, SLOT(exportSnapmaticPicture()));
|
||||||
exportMenu->addAction(tr("Export for &import...", "Export for import"), this, SLOT(copySnapmaticPicture()));
|
exportMenu->addAction(tr("Export as >A Snapmatic..."), this, SLOT(copySnapmaticPicture()));
|
||||||
ui->cmdExport->setMenu(exportMenu);
|
ui->cmdExport->setMenu(exportMenu);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
||||||
<horstretch>0</horstretch>
|
<horstretch>0</horstretch>
|
||||||
<verstretch>0</verstretch>
|
<verstretch>1</verstretch>
|
||||||
</sizepolicy>
|
</sizepolicy>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
|
@ -85,6 +85,32 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QVBoxLayout" name="vlButtons">
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>5</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>5</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<spacer name="vsButtons">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeType">
|
||||||
|
<enum>QSizePolicy::Expanding</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="hlButtons">
|
||||||
<item>
|
<item>
|
||||||
<widget class="QPushButton" name="cmdExport">
|
<widget class="QPushButton" name="cmdExport">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
|
@ -106,6 +132,10 @@
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
|
|
|
@ -310,7 +310,7 @@ fileDialogPreOpen:
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
QMessageBox::warning(this, tr("Import copy"), tr("Failed to read Snapmatic picture"));
|
QMessageBox::warning(this, tr("Import"), tr("Failed to read Snapmatic picture"));
|
||||||
picture->deleteLater();
|
picture->deleteLater();
|
||||||
delete picture;
|
delete picture;
|
||||||
goto fileDialogPreOpen;
|
goto fileDialogPreOpen;
|
||||||
|
@ -325,7 +325,7 @@ fileDialogPreOpen:
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
QMessageBox::warning(this, tr("Import copy"), tr("Failed to read Savegame file"));
|
QMessageBox::warning(this, tr("Import"), tr("Failed to read Savegame file"));
|
||||||
savegame->deleteLater();
|
savegame->deleteLater();
|
||||||
delete savegame;
|
delete savegame;
|
||||||
goto fileDialogPreOpen;
|
goto fileDialogPreOpen;
|
||||||
|
@ -353,20 +353,20 @@ fileDialogPreOpen:
|
||||||
picture->deleteLater();
|
picture->deleteLater();
|
||||||
delete savegame;
|
delete savegame;
|
||||||
delete picture;
|
delete picture;
|
||||||
QMessageBox::warning(this, tr("Import copy"), tr("Can't import %1 because of not valid file format").arg("\""+selectedFileName+"\""));
|
QMessageBox::warning(this, tr("Import"), tr("Can't import %1 because of not valid file format").arg("\""+selectedFileName+"\""));
|
||||||
goto fileDialogPreOpen;
|
goto fileDialogPreOpen;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
QMessageBox::warning(this, tr("Import copy"), tr("No valid file is selected"));
|
QMessageBox::warning(this, tr("Import"), tr("No valid file is selected"));
|
||||||
goto fileDialogPreOpen;
|
goto fileDialogPreOpen;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
QMessageBox::warning(this, tr("Import copy"), tr("No valid file is selected"));
|
QMessageBox::warning(this, tr("Import"), tr("No valid file is selected"));
|
||||||
goto fileDialogPreOpen;
|
goto fileDialogPreOpen;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -381,7 +381,7 @@ bool ProfileInterface::importSnapmaticPicture(SnapmaticPicture *picture, QString
|
||||||
QString picFileName = picFileInfo.fileName();
|
QString picFileName = picFileInfo.fileName();
|
||||||
if (picFileName.left(4) != "PGTA")
|
if (picFileName.left(4) != "PGTA")
|
||||||
{
|
{
|
||||||
QMessageBox::warning(this, tr("Import copy"), tr("Failed to import copy of Snapmatic picture because the file not begin with PGTA"));
|
QMessageBox::warning(this, tr("Import"), tr("Failed to import the Snapmatic picture, file not begin with PGTA"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
else if (QFile::copy(picPath, profileFolder + "/" + picFileName))
|
else if (QFile::copy(picPath, profileFolder + "/" + picFileName))
|
||||||
|
@ -391,7 +391,7 @@ bool ProfileInterface::importSnapmaticPicture(SnapmaticPicture *picture, QString
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
QMessageBox::warning(this, tr("Import copy"), tr("Failed to import copy of Snapmatic picture because the copy failed"));
|
QMessageBox::warning(this, tr("Import"), tr("Failed to import the Snapmatic picture, can't copy the file into profile"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -427,13 +427,13 @@ bool ProfileInterface::importSavegameData(SavegameData *savegame, QString sgdPat
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
QMessageBox::warning(this, tr("Import copy"), tr("Failed to import copy of Savegame file because the copy failed"));
|
QMessageBox::warning(this, tr("Import"), tr("Failed to import the Savegame, can't copy the file into profile"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
QMessageBox::warning(this, tr("Import copy"), tr("Failed to import copy of Savegame file because no free Savegame slot left"));
|
QMessageBox::warning(this, tr("Import"), tr("Failed to import the Savegame, no Savegame slot is left"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -481,6 +481,8 @@ void ProfileInterface::deselectAllWidgets()
|
||||||
}
|
}
|
||||||
|
|
||||||
void ProfileInterface::exportSelected()
|
void ProfileInterface::exportSelected()
|
||||||
|
{
|
||||||
|
if (selectedWidgts != 0)
|
||||||
{
|
{
|
||||||
int exportCount = 0;
|
int exportCount = 0;
|
||||||
int exportPictures = 0;
|
int exportPictures = 0;
|
||||||
|
@ -499,7 +501,7 @@ void ProfileInterface::exportSelected()
|
||||||
{
|
{
|
||||||
exportPictures++;
|
exportPictures++;
|
||||||
}
|
}
|
||||||
else if (widget->getWidgetType() == "SavegameWidgets")
|
else if (widget->getWidgetType() == "SavegameWidget")
|
||||||
{
|
{
|
||||||
exportSavegames++;
|
exportSavegames++;
|
||||||
}
|
}
|
||||||
|
@ -510,27 +512,32 @@ void ProfileInterface::exportSelected()
|
||||||
{
|
{
|
||||||
QInputDialog inputDialog;
|
QInputDialog inputDialog;
|
||||||
QStringList inputDialogItems;
|
QStringList inputDialogItems;
|
||||||
inputDialogItems << tr("Export and Copy pictures");
|
inputDialogItems << tr("JPG pictures and GTA Snapmatic");
|
||||||
inputDialogItems << tr("Export pictures");
|
inputDialogItems << tr("JPG pictures only");
|
||||||
inputDialogItems << tr("Copy pictures");
|
inputDialogItems << tr("GTA Snapmatic only");
|
||||||
|
|
||||||
bool itemSelected = false;
|
bool itemSelected = false;
|
||||||
QString selectedItem = inputDialog.getItem(this, tr("Export selected"), tr("How should we deal with the Snapmatic pictures?"), inputDialogItems, 0, false, &itemSelected, inputDialog.windowFlags()^Qt::WindowContextHelpButtonHint);
|
QString selectedItem = inputDialog.getItem(this, tr("Export selected"), tr("Export Snapmatic pictures\n\nJPG pictures make it possible to open the picture with a Image Viewer\nGTA Snapmatic make it possible to import the picture into the game\n\nExport as:"), inputDialogItems, 0, false, &itemSelected, inputDialog.windowFlags()^Qt::WindowContextHelpButtonHint);
|
||||||
if (itemSelected)
|
if (itemSelected)
|
||||||
{
|
{
|
||||||
if (selectedItem == tr("Export and Copy pictures"))
|
if (selectedItem == tr("JPG pictures and GTA Snapmatic"))
|
||||||
{
|
{
|
||||||
pictureExportEnabled = true;
|
pictureExportEnabled = true;
|
||||||
pictureCopyEnabled = true;
|
pictureCopyEnabled = true;
|
||||||
}
|
}
|
||||||
else if (selectedItem == tr("Export pictures"))
|
else if (selectedItem == tr("JPG pictures only"))
|
||||||
{
|
{
|
||||||
pictureExportEnabled = true;
|
pictureExportEnabled = true;
|
||||||
}
|
}
|
||||||
else if (selectedItem == tr("Copy pictures"))
|
else if (selectedItem == tr("GTA Snapmatic only"))
|
||||||
{
|
{
|
||||||
pictureCopyEnabled = true;
|
pictureCopyEnabled = true;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pictureExportEnabled = true;
|
||||||
|
pictureCopyEnabled = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -605,10 +612,17 @@ void ProfileInterface::exportSelected()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
QMessageBox::information(this, tr("Export selected"), tr("No Snapmatic pictures or Savegames files are selected"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void ProfileInterface::deleteSelected()
|
void ProfileInterface::deleteSelected()
|
||||||
{
|
{
|
||||||
if (QMessageBox::Yes == QMessageBox::warning(this, tr("Delete selected"), tr("You really want delete the selected content?"), QMessageBox::Yes | QMessageBox::No, QMessageBox::No))
|
if (selectedWidgts != 0)
|
||||||
|
{
|
||||||
|
if (QMessageBox::Yes == QMessageBox::warning(this, tr("Remove selected"), tr("You really want remove the selected Snapmatic picutres and Savegame files?"), QMessageBox::Yes | QMessageBox::No, QMessageBox::No))
|
||||||
{
|
{
|
||||||
foreach (ProfileWidget *widget, widgets.keys())
|
foreach (ProfileWidget *widget, widgets.keys())
|
||||||
{
|
{
|
||||||
|
@ -638,7 +652,12 @@ void ProfileInterface::deleteSelected()
|
||||||
}
|
}
|
||||||
if (selectedWidgts != 0)
|
if (selectedWidgts != 0)
|
||||||
{
|
{
|
||||||
QMessageBox::warning(this, tr("Delete selected"), tr("Failed at delete all selected content"));
|
QMessageBox::warning(this, tr("Remove selected"), tr("Failed at remove the complete selected Snapmatic pictures and/or Savegame files"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
QMessageBox::information(this, tr("Remove selected"), tr("No Snapmatic pictures or Savegames files are selected"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -14,6 +14,9 @@
|
||||||
<string>Profile Interface</string>
|
<string>Profile Interface</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="vlProfileInterface">
|
<layout class="QVBoxLayout" name="vlProfileInterface">
|
||||||
|
<property name="spacing">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
|
@ -106,7 +109,7 @@
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>398</width>
|
<width>398</width>
|
||||||
<height>251</height>
|
<height>257</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="vlProfile">
|
<layout class="QVBoxLayout" name="vlProfile">
|
||||||
|
|
|
@ -176,8 +176,8 @@ void SnapmaticWidget::contextMenuEvent(QContextMenuEvent *ev)
|
||||||
{
|
{
|
||||||
QMenu contextMenu(this);
|
QMenu contextMenu(this);
|
||||||
QMenu exportMenu(tr("&Export"), this);
|
QMenu exportMenu(tr("&Export"), this);
|
||||||
exportMenu.addAction(tr("Export as &picture...", "Export as picture"), this, SLOT(on_cmdExport_clicked()));
|
exportMenu.addAction(tr("Export as &JPG picture"), this, SLOT(on_cmdExport_clicked()));
|
||||||
exportMenu.addAction(tr("Export for &import...", "Export for import"), this, SLOT(on_cmdCopy_clicked()));
|
exportMenu.addAction(tr("Export as >A Snapmatic"), this, SLOT(on_cmdCopy_clicked()));
|
||||||
contextMenu.addAction(tr("&View"), this, SLOT(on_cmdView_clicked()));
|
contextMenu.addAction(tr("&View"), this, SLOT(on_cmdView_clicked()));
|
||||||
contextMenu.addMenu(&exportMenu);
|
contextMenu.addMenu(&exportMenu);
|
||||||
contextMenu.addAction(tr("&Remove"), this, SLOT(on_cmdDelete_clicked()));
|
contextMenu.addAction(tr("&Remove"), this, SLOT(on_cmdDelete_clicked()));
|
||||||
|
|
|
@ -166,7 +166,7 @@
|
||||||
</action>
|
</action>
|
||||||
<action name="actionExport_selected">
|
<action name="actionExport_selected">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>&Export selected</string>
|
<string>&Export selected...</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="shortcut">
|
<property name="shortcut">
|
||||||
<string>Ctrl+E</string>
|
<string>Ctrl+E</string>
|
||||||
|
|
Loading…
Reference in a new issue