summaryrefslogtreecommitdiffstats
path: root/sigmodr/SpriteUI.cpp
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2009-02-23 11:20:47 -0500
committerBen Boeckel <MathStuf@gmail.com>2009-02-23 11:20:47 -0500
commit7aff48012c3040a675543a0ff3d23af6cb8a8638 (patch)
tree6dd17b90d1f1c6ba9b0b7c5ddc40c2a849c25286 /sigmodr/SpriteUI.cpp
parent25ec942048336dde5e1a17e6c75e15e4f8d8290d (diff)
downloadsigen-7aff48012c3040a675543a0ff3d23af6cb8a8638.tar.gz
sigen-7aff48012c3040a675543a0ff3d23af6cb8a8638.tar.xz
sigen-7aff48012c3040a675543a0ff3d23af6cb8a8638.zip
Started restructuring how sigmodr is built and moving things into libraries
Diffstat (limited to 'sigmodr/SpriteUI.cpp')
-rw-r--r--sigmodr/SpriteUI.cpp118
1 files changed, 0 insertions, 118 deletions
diff --git a/sigmodr/SpriteUI.cpp b/sigmodr/SpriteUI.cpp
deleted file mode 100644
index acd249bb..00000000
--- a/sigmodr/SpriteUI.cpp
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- * Copyright 2008 Ben Boeckel <MathStuf@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, either version 3 of the License, or
- * (at your option) any later version.
- *
- * 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, see <http://www.gnu.org/licenses/>.
- */
-
-// Header include
-#include "SpriteUI.h"
-
-// Sigmod includes
-#include "../sigmod/Sigmod.h"
-#include "../sigmod/Sprite.h"
-
-// KDE includes
-#include <KFileDialog>
-#include <KImageFilePreview>
-#include <KMessageBox>
-#include <KIO/NetAccess>
-
-Sigmodr::SpriteUI::SpriteUI(Sigmod::Sprite* sprite, QWidget* parent) :
- ObjectUI(parent)
-{
- setupUi(this);
- setObjects(sprite, new Sigmod::Sprite(*sprite));
-}
-
-Sigmodr::SpriteUI::~SpriteUI()
-{
-}
-
-void Sigmodr::SpriteUI::initGui()
-{
- buttonBrowse->setIcon(KIcon("document-open"));
-}
-
-void Sigmodr::SpriteUI::setGui()
-{
- varName->setText(qobject_cast<Sigmod::Sprite*>(modified())->name());
- QPixmap icon;
- icon.loadFromData(qobject_cast<Sigmod::Sprite*>(modified())->sprite());
- varSprite->setPixmap(icon);
-}
-
-void Sigmodr::SpriteUI::apply()
-{
- *qobject_cast<Sigmod::Sprite*>(original()) = *qobject_cast<Sigmod::Sprite*>(modified());
- emit(changed(false));
-}
-
-void Sigmodr::SpriteUI::discard()
-{
- *qobject_cast<Sigmod::Sprite*>(modified()) = *qobject_cast<Sigmod::Sprite*>(original());
- setGui();
- emit(changed(false));
-}
-
-void Sigmodr::SpriteUI::on_varName_textChanged(const QString& name)
-{
- const int cursor = varName->cursorPosition();
- qobject_cast<Sigmod::Sprite*>(modified())->setName(name);
- varName->setCursorPosition(cursor);
-}
-
-void Sigmodr::SpriteUI::on_buttonBrowse_pressed()
-{
- KFileDialog* dialog = new KFileDialog(KUrl("kfiledialog:///image"), "image/png image/jpeg image/tiff image/bmp image/gif", this);
- dialog->setCaption("Use Image File");
- dialog->setOperationMode(KFileDialog::Opening);
- dialog->setPreviewWidget(new KImageFilePreview);
- if (dialog->exec() == QDialog::Accepted)
- {
- KUrl url = dialog->selectedFile();
- if (url.isValid())
- {
- QString path;
- bool load = true;
- bool removeTempFile = false;
- if (url.isLocalFile())
- path = url.path();
- else
- {
- if (KIO::NetAccess::download(url, path, this))
- removeTempFile = true;
- else
- {
- KMessageBox::error(this, KIO::NetAccess::lastErrorString(), "KIO Error");
- load = false;
- }
- }
- if (load)
- {
- QImage image(url.path());
- QByteArray bytes;
- QBuffer buffer(&bytes);
- buffer.open(QIODevice::WriteOnly);
- image.save(&buffer);
- qobject_cast<Sigmod::Sprite*>(modified())->setSprite(bytes);
- setGui();
- }
- if (removeTempFile)
- KIO::NetAccess::removeTempFile(path);
- }
- else
- KMessageBox::error(this, "The URL is not valid", "Malformed URL");
- }
- delete dialog;
-}