mirror of
https://github.com/RetroShare/RetroShare.git
synced 2024-10-01 02:35:48 -04:00
50ebd781e5
* Added few more file type icons for "cpp", "h" nd "c" * Corrected some strings * Moved Uploads to Downloads Tab. git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6986 b45a01b8-16f6-495d-af2f-9b41ad6348cc
95 lines
5.0 KiB
C++
95 lines
5.0 KiB
C++
/****************************************************************
|
|
* This file is distributed under the following license:
|
|
*
|
|
* Copyright (c) 2011, RetroShare Team
|
|
*
|
|
* 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 2
|
|
* 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, write to the Free Software
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
* Boston, MA 02110-1301, USA.
|
|
****************************************************************/
|
|
|
|
#include <QApplication>
|
|
#include <QFileInfo>
|
|
|
|
#include "FilesDefs.h"
|
|
#include "RsCollectionFile.h"
|
|
|
|
static QString getInfoFromFilename(const QString& filename, bool anyForUnknown, bool image)
|
|
{
|
|
QString ext = QFileInfo(filename).suffix().toLower();
|
|
|
|
if (ext == "jpg" || ext == "jpeg" || ext == "tif" || ext == "tiff" || ext == "png" || ext == "gif" || ext == "bmp" || ext == "ico" || ext == "svg") {
|
|
return image ? ":/images/FileTypePicture.png" : QApplication::translate("FilesDefs", "Picture");
|
|
} else if (ext == "avi" || ext == "mpg" || ext == "mpeg" || ext == "wmv" || ext == "divx" || ext == "ts" ||
|
|
ext == "mkv" || ext == "mp4" || ext == "flv" || ext == "mov" || ext == "asf" || ext == "xvid" ||
|
|
ext == "vob" || ext == "qt" || ext == "rm" || ext == "3gp" || ext == "ogm") {
|
|
return image ? ":/images/FileTypeVideo.png" : QApplication::translate("FilesDefs", "Video");
|
|
} else if (ext == "ogg" || ext == "mp3" || ext == "mp1" || ext == "mp2" || ext == "wav" || ext == "wma" || ext == "m4a" || ext == "flac" ||ext == "xpm") {
|
|
return image ? ":/images/FileTypeAudio.png" : QApplication::translate("FilesDefs", "Audio");
|
|
} else if (ext == "tar" || ext == "bz2" || ext == "zip" || ext == "gz" || ext == "7z" || ext == "msi" ||
|
|
ext == "rar" || ext == "rpm" || ext == "ace" || ext == "jar" || ext == "tgz" || ext == "lha" ||
|
|
ext == "cab" || ext == "cbz"|| ext == "cbr" || ext == "alz" || ext == "sit" || ext == "arj" || ext == "deb") {
|
|
return image ? ":/images/FileTypeArchive.png" : QApplication::translate("FilesDefs", "Archive");
|
|
} else if (ext == "app" || ext == "bat" || ext == "cgi" || ext == "com" ||
|
|
ext == "exe" || ext == "js" || ext == "pif" ||
|
|
ext == "py" || ext == "pl" || ext == "sh" || ext == "vb" || ext == "ws") {
|
|
return image ? ":/images/FileTypeProgram.png" : QApplication::translate("FilesDefs", "Program");
|
|
} else if (ext == "iso" || ext == "nrg" || ext == "mdf" || ext == "img" || ext == "dmg" || ext == "bin" || ext == "uif") {
|
|
return image ? ":/images/FileTypeCDImage.png" : QApplication::translate("FilesDefs", "CD/DVD-Image");
|
|
} else if (ext == "txt" || ext == "ui" ||
|
|
ext == "doc" || ext == "rtf" || ext == "sxw" || ext == "xls" || ext == "pps" || ext == "xml" || ext == "nfo" ||
|
|
ext == "reg" || ext == "sxc" || ext == "odt" || ext == "ods" || ext == "dot" || ext == "ppt" || ext == "css" || ext == "crt" ||
|
|
ext == "html" || ext == "htm" || ext == "php") {
|
|
return image ? ":/images/FileTypeDocument.png" : QApplication::translate("FilesDefs", "Document");
|
|
} else if (ext == "pdf") {
|
|
return image ? ":/images/mimetypes/pdf.png" : QApplication::translate("FilesDefs", "Document");
|
|
} else if (ext == RsCollectionFile::ExtensionString) {
|
|
return image ? ":/images/mimetypes/rscollection-16.png" : QApplication::translate("FilesDefs", "RetroShare collection file");
|
|
} else if (ext == "sub" || ext == "srt") {
|
|
return image ? ":/images/FileTypeAny.png" : QApplication::translate("FilesDefs", "Subtitles");
|
|
} else if (ext == "nds") {
|
|
return image ? ":/images/FileTypeAny.png" : QApplication::translate("FilesDefs", "Nintendo DS Rom");
|
|
} else if (ext == "patch" || ext == "diff") {
|
|
return image ? ":/images/mimetypes/patch.png" : QApplication::translate("FilesDefs", "Patch");
|
|
} else if (ext == "cpp") {
|
|
return image ? ":/images/mimetypes/source_cpp.png" : QApplication::translate("FilesDefs", "C++");
|
|
} else if (ext == "h") {
|
|
return image ? ":/images/mimetypes/source_h.png" : QApplication::translate("FilesDefs", "Header");
|
|
} else if (ext == "c") {
|
|
return image ? ":/images/mimetypes/source_c.png" : QApplication::translate("FilesDefs", "C ");
|
|
}
|
|
|
|
|
|
if (anyForUnknown) {
|
|
return image ? ":/images/FileTypeAny.png" : "";
|
|
}
|
|
|
|
return "";
|
|
}
|
|
|
|
QString FilesDefs::getImageFromFilename(const QString& filename, bool anyForUnknown)
|
|
{
|
|
return getInfoFromFilename(filename, anyForUnknown, true);
|
|
}
|
|
|
|
QIcon FilesDefs::getIconFromFilename(const QString& filename)
|
|
{
|
|
return QIcon(getInfoFromFilename(filename, true, true));
|
|
}
|
|
|
|
QString FilesDefs::getNameFromFilename(const QString &filename)
|
|
{
|
|
return getInfoFromFilename(filename, false, false);
|
|
}
|