File indexing completed on 2025-01-05 04:55:03

0001 /*
0002     Copyright (c) 2017 Christian Mollekopf <mollekopf@kolabsys.com>
0003 
0004     This library is free software; you can redistribute it and/or modify it
0005     under the terms of the GNU Library General Public License as published by
0006     the Free Software Foundation; either version 2 of the License, or (at your
0007     option) any later version.
0008 
0009     This library is distributed in the hope that it will be useful, but WITHOUT
0010     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0011     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
0012     License for more details.
0013 
0014     You should have received a copy of the GNU Library General Public License
0015     along with this library; see the file COPYING.LIB.  If not, write to the
0016     Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
0017     02110-1301, USA.
0018 */
0019 
0020 #include "file.h"
0021 #include <QFile>
0022 #include <QDir>
0023 #include <QUrl>
0024 #include <QDebug>
0025 
0026 using namespace Kube;
0027 
0028 QString File::data()
0029 {
0030     return mData;
0031 }
0032 
0033 void File::setPath(const QString &path)
0034 {
0035     mPath = path;
0036     mData = read(path);
0037     emit dataChanged();
0038 }
0039 
0040 QString File::read(const QString &path)
0041 {
0042     QFile file(QDir::isAbsolutePath(path) ? path : QDir::homePath() + "/" + path);
0043     if (file.open(QIODevice::ReadOnly)) {
0044         return file.readAll();
0045     }
0046     qWarning() << "Failed to open the file " << file.fileName() << file.errorString();
0047     return {};
0048 }
0049