QTfrontend/pageplayrecord.cpp
changeset 6060 fdfc01419815
parent 6059 ddf020d0941a
child 6061 15b4b485a1c5
--- a/QTfrontend/pageplayrecord.cpp	Wed Sep 28 06:24:10 2011 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,165 +0,0 @@
-/*
- * Hedgewars, a free turn based strategy game
- * Copyright (c) 2006-2011 Andrey Korotaev <unC0Rr@gmail.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
- */
-
-#include <QFont>
-#include <QGridLayout>
-#include <QPushButton>
-#include <QListWidget>
-#include <QListWidgetItem>
-#include <QFileInfo>
-#include <QMessageBox>
-#include <QInputDialog>
-
-#include "hwconsts.h"
-#include "pageplayrecord.h"
-
-QLayout * PagePlayDemo::bodyLayoutDefinition()
-{
-    QGridLayout * pageLayout = new QGridLayout();
-    
-    pageLayout->setColumnStretch(0, 1);
-    pageLayout->setColumnStretch(1, 2);
-    pageLayout->setColumnStretch(2, 1);
-    pageLayout->setRowStretch(2, 100);
-
-    BtnPlayDemo = new QPushButton(this);
-    BtnPlayDemo->setFont(*font14);
-    BtnPlayDemo->setText(QPushButton::tr("Play demo"));
-    pageLayout->addWidget(BtnPlayDemo, 3, 2);
-
-    BtnRenameRecord = new QPushButton(this);
-    BtnRenameRecord->setText(QPushButton::tr("Rename"));
-    pageLayout->addWidget(BtnRenameRecord, 0, 2);
-
-    BtnRemoveRecord = new QPushButton(this);
-    BtnRemoveRecord->setText(QPushButton::tr("Delete"));
-    pageLayout->addWidget(BtnRemoveRecord, 1, 2);
-
-    DemosList = new QListWidget(this);
-    DemosList->setGeometry(QRect(170, 10, 311, 311));
-    pageLayout->addWidget(DemosList, 0, 1, 3, 1);
-
-    return pageLayout;
-}
-
-void PagePlayDemo::connectSignals()
-{
-    connect(BtnRenameRecord, SIGNAL(clicked()), this, SLOT(renameRecord()));
-    connect(BtnRemoveRecord, SIGNAL(clicked()), this, SLOT(removeRecord()));
-}
-
-PagePlayDemo::PagePlayDemo(QWidget* parent) : AbstractPage(parent)
-{
-    initPage();
-}
-
-void PagePlayDemo::FillFromDir(RecordType rectype)
-{
-    QDir dir;
-    QString extension;
-
-    recType = rectype;
-
-    dir.cd(cfgdir->absolutePath());
-    if (rectype == RT_Demo)
-    {
-        dir.cd("Demos");
-        extension = "hwd";
-        BtnPlayDemo->setText(QPushButton::tr("Play demo"));
-    } else
-    {
-        dir.cd("Saves");
-        extension = "hws";
-        BtnPlayDemo->setText(QPushButton::tr("Load"));
-    }
-    dir.setFilter(QDir::Files);
-
-    QStringList sl = dir.entryList(QStringList(QString("*.%2.%1").arg(extension, *cProtoVer)));
-    sl.replaceInStrings(QRegExp(QString("^(.*)\\.%2\\.%1$").arg(extension, *cProtoVer)), "\\1");
-
-    DemosList->clear();
-    DemosList->addItems(sl);
-
-    for (int i = 0; i < DemosList->count(); ++i)
-    {
-        DemosList->item(i)->setData(Qt::UserRole, dir.absoluteFilePath(QString("%1.%3.%2").arg(sl[i], extension, *cProtoVer)));
-        DemosList->item(i)->setIcon(recType == RT_Demo ? QIcon(":/res/file_demo.png") : QIcon(":/res/file_save.png"));
-    }
-}
-
-void PagePlayDemo::renameRecord()
-{
-    QListWidgetItem * curritem = DemosList->currentItem();
-    if (!curritem)
-    {
-        QMessageBox::critical(this,
-                tr("Error"),
-                tr("Please select record from the list"),
-                tr("OK"));
-        return ;
-    }
-    QFile rfile(curritem->data(Qt::UserRole).toString());
-
-    QFileInfo finfo(rfile);
-
-    bool ok;
-
-    QString newname = QInputDialog::getText(this, tr("Rename dialog"), tr("Enter new file name:"), QLineEdit::Normal, finfo.completeBaseName().replace("." + *cProtoVer, ""), &ok);
-
-    if(ok && newname.size())
-    {
-        QString newfullname = QString("%1/%2.%3.%4")
-                                      .arg(finfo.absolutePath())
-                                      .arg(newname)
-                                      .arg(*cProtoVer)
-                                      .arg(finfo.suffix());
-
-        ok = rfile.rename(newfullname);
-        if(!ok)
-            QMessageBox::critical(this, tr("Error"), tr("Cannot rename to") + newfullname);
-        else
-            FillFromDir(recType);
-    }
-}
-
-void PagePlayDemo::removeRecord()
-{
-    QListWidgetItem * curritem = DemosList->currentItem();
-    if (!curritem)
-    {
-        QMessageBox::critical(this,
-                tr("Error"),
-                tr("Please select record from the list"),
-                tr("OK"));
-        return ;
-    }
-    QFile rfile(curritem->data(Qt::UserRole).toString());
-
-    bool ok;
-
-    ok = rfile.remove();
-    if(!ok)
-        QMessageBox::critical(this, tr("Error"), tr("Cannot delete file"));
-    else
-        FillFromDir(recType);
-}
-
-bool PagePlayDemo::isSave()
-{
-    return recType == RT_Save;
-}