Age | Commit message (Collapse) | Author |
|
|
|
epic PR
|
|
Signed-off-by: Erogig <erogigabyte@gmail.com>
|
|
Projects with no icon return a null icon URL in Modrinth's API.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
more info! \ ^-^/
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
THis fixes a FIXME, now that we fixed the issue :o
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
While working on pack updating, instance naming always gets in the way,
since we need both way of respecting the user's name choice, and a
standarized way of getting the original pack name / version.
This tries to circunvent such problems by abstracting away the naming
schema into it's own struct, holding both the original name / version,
and the user-defined name, so that everyone can be happy and world peace
can be achieved! (at least that's what i'd hope :c).
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
This is so that 1. Code is more cleanly separated, and 2. Allows to more
easily add instance updating :)
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
|
|
Signed-off-by: jopejoe1 <johannes@joens.email>
|
|
|
|
Add basic resource pack parsing and fix issues
|
|
This takes most expensive operations out of the constructors.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Some more UI / UX improvements to the mod downloader!
|
|
Reduce code duplication in tasks, fix some bugs and add some tests
|
|
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Avoids lots of code duplication
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
|
|
Signed-off-by: DioEgizio <83089242+DioEgizio@users.noreply.github.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>
|
|
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>
|
|
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>
|
|
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
|
|
|
|
|
|
Signed-off-by: Robb <computerguy440+gh@gmail.com>
|
|
instead of always saying 'Copy World'
Signed-off-by: Robb <computerguy440+gh@gmail.com>
|
|
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
|
|
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
|
|
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
|
|
selecting mods
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
|
|
Co-authored-by: flow <flowlnlnln@gmail.com>
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
|
|
Since network requests are, for the most part, asynchronous, there's a
chance a request only comes through after the request sender has already
been deleted.
This adds a global (read static) hash table relating models for the mod
downloader to their status (true = alive, false = destroyed). It is a
bit of a hack, but I couldn't come up with a better way of doing this.
To reproduce the issue before this commit: scroll really quickly through
CF mods, to trigger network requests for their versions and description.
Then, in the middle of it close the mod downloader. Sometimes this will
create a crash.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
|
|
Signed-off-by: Gingeh <39150378+Gingeh@users.noreply.github.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
I've discovered even more functional programming! :^)
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
I've discovered functional programming :^)
This makes this route more fit for general use.
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
mod downloader
Signed-off-by: flow <flowlnlnln@gmail.com>
|
|
It has a delay of 350ms from the last typed character to search, in
order to cache small changes while typing.
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>
|
|
This allows us to define custom painting for list view items. In
particular, this is applied to the mod downloader, in order to allow
displaying both the mod name and mod description, and settings their
effects (like bold or underline) independent of each other.
Signed-off-by: flow <flowlnlnln@gmail.com>
|