Age | Commit message (Collapse) | Author |
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
This parses the pack format ID and the description from the local file,
from both a ZIP and a folder, and hooks it into the model.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Adds pack format id and description to ResourcePack, that'll be parsed
from pack.mcmeta.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
This allows us to hook our own resource type, that possibly has more
content than the base Resource, to it.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
TIL that zip resource packs, when disabled, actually have the effect of
not showing up in the game at all. Since this can be useful to someone,
I moved the logic for it to the resources.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
No need to keep track of pointers left and right. A single one already
gives enough headaches!
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
If the update never ends, the signal is not emitted and we become stuck
in the event loop forever. So a very lenient timer is added to prevent
that.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
It causes some weird problems and adds refcounting overhead.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
In order to access the ModFolderModel from the ModFolderPage, i created
a new m_model for the correct type, shadowing the m_model of type
ResourceFolderModel. This creates two shared_ptr references to the same object,
but since they will have the same lifetime, it doesn't generate a memory
leak.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
This moves the QSortFilterProxyModel to the resource model files,
acessible via a factory method, and moves the sorting and filtering to
the objects themselves, decoupling the code a bit.
This also adds a basic implementation of methods in the
ResourceFolderModel, simplifying the process of constructing a new model
from it.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Makes the method order in the cpp file the same as in the header file.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
This aims to continue decoupling other types of resources (e.g. resource
packs, shader packs, etc) from mods, so that we don't have to
continuously watch our backs for changes to one of them affecting the
others.
To do so, this creates a more general list model for resources, based on
the mods one, that allows you to extend it with functionality for other
resources.
I had to do some template and preprocessor stuff to get around the
QObject limitation of not allowing templated classes, so that's sadge :c
On the other hand, I tried cleaning up most general-purpose code in the
mod model, and added some documentation, because it looks nice :D
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
This allows us to create other resources that are not Mods, but can
still share a significant portion of code.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
This avoids deleting the metadata while one is updating their mods.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Just as my master has taught me. :gun:
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Co-authored-by: timoreo <contact@timoreo.fr>
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Qt6 removed Qlist::toStdList() :sob:
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Prevents problems when copying it around!
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
- Use slug instead of name
- Keep temporary status before having local details
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
This is, in many cases, more reliable than name comparisons, so it's
useful specially in cases where a mod changes name between versions
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
|
|
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
|
|
Preventing undefined behaviour hooray! :D
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Refactor tests
|
|
Hide index folder on Windows
|
|
|
|
Fix mod metadata tests
|
|
Co-authored-by: flow <flowlnlnln@gmail.com>
|
|
This maintains the previous behaviour
|
|
im stupid
|
|
(i.e. mods without ModDetails that may have metadata)
|
|
|
|
|
|
|
|
|
|
Prevents a massive inload of Scrumplex ditto's :)
I didn't add it to every file modified in this PR because the other
changes are pretty minor, and would explode the diff of the PR. I hope
that's not a problem O_O
|
|
also fix: wrong parameter name in LocalModUpdateTask's constructor
also fix: correct hash_format in CF
|
|
Shows a more helpful message if there's a parsing error when reading the
index file.
Also fixes a clazy warning with using the `.data()` method in a
temporary QByteArray object.
|
|
Some stylistic changes, and get hashes from the mod providers when
building the metadata.
|
|
|