The Battle for Wesnoth 1.21.0-dev
 
Loading...
Searching...
No Matches
state.hpp
Go to the documentation of this file.
1/*
2 Copyright (C) 2012 - 2025
3 by Iris Morelle <shadowm2006@gmail.com>
4 Part of the Battle for Wesnoth Project https://www.wesnoth.org/
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY.
12
13 See the COPYING file for more details.
14*/
15
16#pragma once
17
18#include "addon/info.hpp"
19#include <map>
20
21/** Defines various add-on installation statuses. */
23 /** Add-on is not installed. */
25 /** Version in the server matches local installation. */
27 /** Version in the server is newer than local installation. */
29 /** Version in the server is older than local installation. */
31 /** No version in the server. */
33 /** Dependencies not satisfied.
34 * @todo This option isn't currently implemented! */
36 /** No tracking information available. */
38};
39
44
45/** Stores additional status information about add-ons. */
63
64typedef std::map<std::string, addon_tracking_info> addons_tracking_list;
65
66/**
67 * Get information about an add-on comparing its local state with the add-ons server entry.
68 *
69 * The add-on doesn't need to be locally installed; this is part of
70 * the retrieved information.
71 *
72 * @param addon The add-ons server entry information.
73 * @return The local tracking status information.
74 */
76
77/**
78 * Add-on installation status filters for the user interface.
79 *
80 * These are not currently an exact match with the @a ADDON_STATUS
81 * enum type in order to keep the UI aspect simple for the user.
82 * This might change later.
83 */
Represents version numbers.
bool is_installed_addon_status(ADDON_STATUS s)
Definition state.hpp:40
ADDON_STATUS
Defines various add-on installation statuses.
Definition state.hpp:22
@ ADDON_NOT_TRACKED
No tracking information available.
Definition state.hpp:37
@ ADDON_INSTALLED_OUTDATED
Version in the server is older than local installation.
Definition state.hpp:30
@ ADDON_NONE
Add-on is not installed.
Definition state.hpp:24
@ ADDON_INSTALLED_UPGRADABLE
Version in the server is newer than local installation.
Definition state.hpp:28
@ ADDON_INSTALLED
Version in the server matches local installation.
Definition state.hpp:26
@ ADDON_INSTALLED_LOCAL_ONLY
No version in the server.
Definition state.hpp:32
@ ADDON_INSTALLED_BROKEN
Dependencies not satisfied.
Definition state.hpp:35
addon_tracking_info get_addon_tracking_info(const addon_info &addon)
Get information about an add-on comparing its local state with the add-ons server entry.
Definition state.cpp:25
ADDON_STATUS_FILTER
Add-on installation status filters for the user interface.
Definition state.hpp:84
@ FILTER_INSTALLED
Definition state.hpp:86
@ FILTER_PUBLISHABLE
Definition state.hpp:88
@ FILTER_NOT_INSTALLED
Definition state.hpp:89
@ FILTER_ALL
Definition state.hpp:85
@ FILTER_COUNT
Definition state.hpp:90
@ FILTER_UPGRADABLE
Definition state.hpp:87
std::map< std::string, addon_tracking_info > addons_tracking_list
Definition state.hpp:64
Stores additional status information about add-ons.
Definition state.hpp:47
version_info remote_version
Definition state.hpp:61
ADDON_STATUS state
Definition state.hpp:57
version_info installed_version
Definition state.hpp:60
bool in_version_control
Definition state.hpp:59
static map_location::direction s