Atlas Game Manager
A game manager for f95 and dlsite written in c++
Loading...
Searching...
No Matches
BatchImportModel.hpp
Go to the documentation of this file.
1//
2// Created by kj16609 on 3/26/23.
3//
4
5#pragma once
6#ifndef ATLAS_BATCHIMPORTMODEL_HPP
7#define ATLAS_BATCHIMPORTMODEL_HPP
8
9#include <QAbstractTableModel>
10
11#include <filesystem>
12
14
15class BatchImportModel final : public QAbstractTableModel
16{
17 std::vector< GameImportData > m_data {};
18
19 public:
20
33
34 enum Roles
35 {
36 ExecutablesEditRole = Qt::UserRole + 1,
38 };
39
40 const std::vector< GameImportData >& getData() const { return m_data; }
41
42 int rowCount( const QModelIndex& parent = QModelIndex() ) const override;
43 int columnCount( const QModelIndex& parent = QModelIndex() ) const override;
44 QVariant data( const QModelIndex& index, int role = Qt::DisplayRole ) const override;
45 QVariant headerData( int section, Qt::Orientation orientation, int role ) const override;
46 Qt::ItemFlags flags( const QModelIndex& index ) const override;
47 bool setData( const QModelIndex& index, const QVariant& value, int role = Qt::EditRole ) override;
48 void sort( int idx, Qt::SortOrder order = Qt::AscendingOrder ) override;
49
50 bool removeRows( int row, int count, const QModelIndex& parent = {} ) override;
51
52 void clearData();
53
55 bool isGood() const;
56
57 public slots:
58 void addGame( GameImportData data );
59 void addGames( std::vector< GameImportData > data );
60
61 friend class BatchImportDelegate;
62};
63
64#endif //ATLAS_BATCHIMPORTMODEL_HPP
Definition BatchImportModel.hpp:16
int rowCount(const QModelIndex &parent=QModelIndex()) const override
Definition BatchImportModel.cpp:18
std::vector< GameImportData > m_data
Definition BatchImportModel.hpp:17
void addGames(std::vector< GameImportData > data)
Definition BatchImportModel.cpp:157
Qt::ItemFlags flags(const QModelIndex &index) const override
Definition BatchImportModel.cpp:227
ImportColumns
Definition BatchImportModel.hpp:22
@ COLUMNS_MAX
Definition BatchImportModel.hpp:30
@ ENGINE
Definition BatchImportModel.hpp:25
@ SIZE
Definition BatchImportModel.hpp:28
@ IS_CONFLICTING
Definition BatchImportModel.hpp:31
@ VERSION
Definition BatchImportModel.hpp:26
@ EXECUTABLE
Definition BatchImportModel.hpp:27
@ FOLDER_PATH
Definition BatchImportModel.hpp:29
@ TITLE
Definition BatchImportModel.hpp:23
@ CREATOR
Definition BatchImportModel.hpp:24
QVariant headerData(int section, Qt::Orientation orientation, int role) const override
Definition BatchImportModel.cpp:164
bool isGood() const
Returns true if we are okay to import.
Definition BatchImportModel.cpp:430
const std::vector< GameImportData > & getData() const
Definition BatchImportModel.hpp:40
void clearData()
Definition BatchImportModel.cpp:330
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const override
Definition BatchImportModel.cpp:23
int columnCount(const QModelIndex &parent=QModelIndex()) const override
Definition BatchImportModel.cpp:13
void sort(int idx, Qt::SortOrder order=Qt::AscendingOrder) override
Definition BatchImportModel.cpp:337
Roles
Definition BatchImportModel.hpp:35
@ TitleIcons
Definition BatchImportModel.hpp:37
@ ExecutablesEditRole
Definition BatchImportModel.hpp:36
void addGame(GameImportData data)
Definition BatchImportModel.cpp:150
friend class BatchImportDelegate
Definition BatchImportModel.hpp:61
bool removeRows(int row, int count, const QModelIndex &parent={}) override
Definition BatchImportModel.cpp:440
bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
Definition BatchImportModel.cpp:255