Pokered Save Editor 2
Pokemon Red & Blue save file editor - Qt 6 C++/QML
Toggle main menu visibility
Loading...
Searching...
No Matches
fontsearchmodel.cpp
Go to the documentation of this file.
1
/*
2
* Copyright 2020 Twilight
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
21
22
#include <
pse-db/fontsdb.h
>
23
#include <
pse-db/entries/fontdbentry.h
>
24
#include <
pse-db/util/fontsearch.h
>
25
#include "
./fontsearchmodel.h
"
26
27
FontSearchModel::FontSearchModel
(
FontSearch
* search)
28
{
29
this->search = search;
30
connect(search, &FontSearch::fontCountChanged,
this
, &FontSearchModel::onDataChange);
31
}
32
33
int
FontSearchModel::rowCount
(
const
QModelIndex& parent)
const
34
{
35
// Not a tree, just a list, there's no parent
36
Q_UNUSED(parent)
37
38
// Return list count
39
return
search->getFontCount();
40
}
41
42
QVariant
FontSearchModel::data
(
const
QModelIndex& index,
int
role)
const
43
{
44
// If index is invalid in any way, return nothing
45
if
(!index.isValid())
46
return
QVariant();
47
48
if
(index.row() >= search->getFontCount())
49
return
QVariant();
50
51
// Return array index to lookup font data
52
if
(role ==
IndRole
)
53
return
search->fontAt(index.row())->getInd();
54
55
// All else fails, return nothing
56
return
QVariant();
57
}
58
59
QHash<int, QByteArray>
FontSearchModel::roleNames
()
const
60
{
61
QHash<int, QByteArray> roles;
62
63
roles[
IndRole
] =
"fontInd"
;
64
65
return
roles;
66
}
67
68
void
FontSearchModel::onDataChange()
69
{
70
// I'm not about to code in a way to figure out every little data piece change
71
beginResetModel();
72
endResetModel();
73
}
FontSearchModel::IndRole
@ IndRole
Definition
fontsearchmodel.h:38
FontSearchModel::data
virtual QVariant data(const QModelIndex &index, int role) const override
Row+role value.
Definition
fontsearchmodel.cpp:42
FontSearchModel::roleNames
virtual QHash< int, QByteArray > roleNames() const override
Role -> QML name.
Definition
fontsearchmodel.cpp:59
FontSearchModel::FontSearchModel
FontSearchModel(FontSearch *search)
Definition
fontsearchmodel.cpp:27
FontSearchModel::rowCount
virtual int rowCount(const QModelIndex &parent) const override
Row count.
Definition
fontsearchmodel.cpp:33
FontSearch
A chainable filter ("finder") over the font glyphs.
Definition
fontsearch.h:40
fontdbentry.h
fontsdb.h
fontsearch.h
fontsearchmodel.h
projects
app
src
mvc
fontsearchmodel.cpp
Generated by
1.17.0