From 6679f5cffa9d35a23b76605ddfbf3257f882b6ee Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Thu, 17 Apr 2008 23:34:36 +0000 Subject: [FIX] Frac -> Fraction [FIX] ImageCache and Ini removed [FIX] Fraction/Point widgets moved to pokemodr [FIX] Copy ctors made for pokemod classes [FIX] Ctors in pokemod fixed [FIX] Copyright headers fixed in pokemodr [FIX] PokeModr updated to new API and fixed in some places git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@99 6ecfd1a5-f3ed-3746-8530-beee90d26b22 --- pokemodr/FileDialog.cpp | 70 ++++++++++++++++++++++--------------------------- 1 file changed, 31 insertions(+), 39 deletions(-) (limited to 'pokemodr/FileDialog.cpp') diff --git a/pokemodr/FileDialog.cpp b/pokemodr/FileDialog.cpp index 858fbaab..3261bd9b 100644 --- a/pokemodr/FileDialog.cpp +++ b/pokemodr/FileDialog.cpp @@ -1,66 +1,58 @@ -///////////////////////////////////////////////////////////////////////////// -// Name: pokegen/FileDialog.cpp -// Purpose: Dialog to open files -// Author: Ben Boeckel -// Modified by: Ben Boeckel -// Created: Fri Feb 1 08:34:34 2008 -// Copyright: ©2007-2008 Ben Boeckel and Nerdy Productions -// Licence: -// 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 . -///////////////////////////////////////////////////////////////////////////// +/* + * Copyright 2008 Ben Boeckel + * + * 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 . + */ +// KDE includes #include #include #include +// Qt includes #include -#include +#include #include +// Header include #include "FileDialog.h" -KUrl FileDialog::latestDir = KUrl(); - -FileDialog::FileDialog(const QString& filter, const QSize& imgSize) : - QObject(NULL), - dlg(NULL) +FileDialog::FileDialog(const QSize& size) : + KFileDialog(KUrl("kfiledialog:///image"), "", NULL) { - if (latestDir == "") - latestDir = KUrl(QString("%1/.kde/share/apps/pokegen/images").arg(QDir::homePath())); - size = imgSize; - dlg = new KFileDialog(latestDir, filter, NULL); - dlg->setOperationMode(KFileDialog::Opening); - if (size.isValid()) + m_size = size; + setOperationMode(KFileDialog::Opening); + if (m_size.isValid()) { - dlg->setPreviewWidget(new KImageFilePreview()); - connect(static_cast(dlg->fileWidget())->findChild(), SIGNAL(dirActivated(const KFileItem&)), this, SLOT(sizeFilter(const FileItem&))); + setPreviewWidget(new KImageFilePreview()); + // FIXME: KDirOperator is failing here on linking :( +// connect(findChild(), SIGNAL(dirActivated(const KFileItem&)), this, SLOT(sizeFilter(const FileItem&))); } } void FileDialog::sizeFilter(const KFileItem& item) { QString filter; - QStringList files(QDir(item.url().path()).entryList(QStringList() << "*.png", QDir::Files)); + QStringList files(QDir(item.url().path()).entryList(QStringList() << "*.png" << "*.jpg" << "*.jpeg", QDir::Files)); for (int i = 0; i < files.size(); ++i) { - if (QImage(files.at(i)).size() == size) + if (QPixmap(files.at(i)).size() == m_size) { if (filter.length()) filter.append(" "); filter.append(files.at(i)); } } - filter.append("|Valid PNG Files"); - dlg->setFilter(filter); + setFilter(QString("%1|Valid files").arg(filter)); } -- cgit