Remove filter.hpp, which wasn't included by any file, and relied on
pane.hpp indirectly via one of the lines removed in this commit. The sorting
functionality seems to have moved into pane.cpp when matrix.hpp was added.
Note: there are two other unrelated `filter.hpp` files.
Header pane.hpp is only used by matrix.hpp, pane.cpp, and window_builder.cpp;
the class is also used via a forward-declaration in window.hpp, which friends
it, allowing a call to window::layout_linked_widgets. The class is also made
accessible via REGISTER_WIDGET.
Part of #6540.
This additionally:
* Makes all copyright notices identical aside from the starting year for Wesnoth-specific source files. Files not included: mariadbpp, lua, spirit po, xbrz, and bcrypt (crypt_blowfish).
* Removes all attribution from the files, since the vast majority of them are outdated or seemingly just outright incorrect. For example, I would guess that Dave is no longer the sole author of the majority of Wesnoth's current code.
The existing PblWML specification includes a comma-separated list of tags.
Until now there are no official tag names, but some of the 1.14 add-ons already
have some unofficial ones. If this feature is included in 1.16 then I assume
many UMC authors will use the newly-official tags.
For a larger add-on list than the dev server has, use port 15014 which will
connect to the 1.14 server instead (in the connect dialog change the address to
addons.wesnoth.org:15014).
Show the contents of PblWML's "tags" attribute in the add-ons dialog. They're
shown at the bottom of the right-hand panel (only if the window size is large
enough to trigger that dialog's two-panel layout).
NOTE: This does not do any validation of the existing documentation for whether it's correct or complete. That would be the job of someone who actually knows the code being documented. This is simply a format conversion to have everything now use the doxygen format.
The URL widgets (textbox + copy button + browse button) predate the
implementation of link-awareness in labels and they sort of got carried
over into the new design magically without there being a real need for
that. Now that we have a visible cursor change when hovering links it's
even less necessary to draw unnecessary attention to the link with a
clunky and unintuitive (greyed out textbox...) interface.
This dropdown allows the player to sort add-ons by name, author, size,
download count, type, or the time of last update or original upload.
Sorting by the last two hasn't been possible in the GUI2 add-on manager
before.
Closes#1747.
Turns out I mistook @celticminstrel's opinion that we should use include guards over pragma (737916e).
Since all major compilers support `#pragma once`, there's no reason not to use it.
For future mergability reasons, this excludes src/spirit_po and src/xBRZ. It also excludes src/boost-patched.
Previously double-clicking always installed the add-on, even if installing
wasn't a sensible choice (e.g. for add-ons which are already installed).
Now double-click always does something sensible, e.g. it uninstalls add-ons
which are already installed.
The problem was that reloading the add-on list invalidated the string
reference. Fixed by receiving the add-on ID by value instead.
I also fixed that status and type filters weren't honored after reloading
the list.
All the useful filter options have been migrated to in-dialog widgets, so the Options dialog isn't needed anymore.
Do note that the default filter order and ascending/descending options weren't migrated, but they could still be
if it was deemed necessary.
This works by changing the assumption that any addon with addon_info provided is a remote one. Instead, we
construct a addon_info object locally and consider it along with the rest of the addons.
This also fixes a few crashes when using filters in the manager.
This fixes two bugs:
* publishable add-ons were shown in the "Install Dependencies" dialog
* the game crashed when the player attempted to filter the list if
publishable add-ons were present