aboutsummaryrefslogtreecommitdiff
path: root/favouritecollection.cpp
diff options
context:
space:
mode:
authorFelix (xq) Queißner <git@mq32.de>2020-06-06 23:14:21 +0200
committerFelix (xq) Queißner <git@mq32.de>2020-06-06 23:14:21 +0200
commit3aed883402dc8da829fc304434c5efd0570cbb97 (patch)
tree48c46ab087a950d80f78819ceb609e93d246b040 /favouritecollection.cpp
parent44e85dce678e7e36f436a6d0a25c212c9a2d3657 (diff)
downloadkristall-3aed883402dc8da829fc304434c5efd0570cbb97.tar.gz
Moves source code into subdirectory.
Diffstat (limited to 'favouritecollection.cpp')
-rw-r--r--favouritecollection.cpp140
1 files changed, 0 insertions, 140 deletions
diff --git a/favouritecollection.cpp b/favouritecollection.cpp
deleted file mode 100644
index 161eacf..0000000
--- a/favouritecollection.cpp
+++ /dev/null
@@ -1,140 +0,0 @@
-#include "favouritecollection.hpp"
-
-#include <QFile>
-
-FavouriteCollection::FavouriteCollection(QObject *parent) :
- QAbstractListModel(parent)
-{
-
-}
-
-void FavouriteCollection::add(QUrl const & url)
-{
- if(contains(url))
- return;
-
- beginInsertRows(QModelIndex{}, items.size(), items.size() + 1);
- items.push_back(url);
- endInsertRows();
-}
-
-void FavouriteCollection::remove(QUrl const & url)
-{
- for(int i = 0; i < items.size(); i++)
- {
- if(items.at(i) == url) {
- beginRemoveRows(QModelIndex{}, i, i + 1);
- items.removeAt(i);
- endRemoveRows();
- return;
- }
- }
-}
-
-bool FavouriteCollection::contains(const QUrl &url)
-{
- for(auto const & item : items) {
- if(item == url)
- return true;
- }
- return false;
-}
-
-QUrl FavouriteCollection::get(const QModelIndex &index) const
-{
- if(index.isValid()) {
- return items.at(index.row());
- } else {
- return QUrl { };
- }
-}
-
-bool FavouriteCollection::save(const QString &fileName) const
-{
- QFile file(fileName);
- if(not file.open(QFile::WriteOnly))
- return false;
-
- for(auto const & url: items)
- {
- QByteArray blob = (url.toString() + "\n").toUtf8();
-
- qint64 offset = 0;
- while(offset < blob.size())
- {
- auto len = file.write(blob.data() + offset, blob.size() - offset);
- if(len <= 0) {
- file.close();
- return false;
- }
- offset += len;
- }
- }
-
- file.close();
- return true;
-}
-
-bool FavouriteCollection::save(QSettings &settings) const
-{
- settings.beginWriteArray("favourites", items.size());
- for(int i = 0; i < items.size(); i++)
- {
- settings.setArrayIndex(i);
- settings.setValue("url", items[i].toString());
- }
- settings.endArray();
- return true;
-}
-
-bool FavouriteCollection::load(const QString &fileName)
-{
- QFile file(fileName);
- if(not file.open(QFile::ReadOnly))
- return false;
- auto data = file.readAll();
-
- beginResetModel();
-
- items.clear();
- for(auto line : data.split('\n')) {
- if(line.size() > 0) {
- items.push_back(QUrl(QString::fromUtf8(line)));
- }
- }
- endResetModel();
-
- return true;
-}
-
-bool FavouriteCollection::load(QSettings & settings)
-{
- int len = settings.beginReadArray("favourites");
- items.resize(len);
- for(int i = 0; i < items.size(); i++)
- {
- settings.setArrayIndex(i);
- items[i] = settings.value("url").toString();
- }
- settings.endArray();
- return true;
-}
-
-int FavouriteCollection::rowCount(const QModelIndex &parent) const
-{
- return items.size();
-}
-
-bool FavouriteCollection::setData(const QModelIndex &index, const QVariant &value, int role)
-{
- return false;
-}
-
-QVariant FavouriteCollection::data(const QModelIndex &index, int role) const
-{
- if(role != Qt::DisplayRole) {
- return QVariant{};
- }
- return items.at(index.row()).toString();
-}
-