aboutsummaryrefslogtreecommitdiff
path: root/src/serverdata.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/serverdata.h')
-rw-r--r--src/serverdata.h255
1 files changed, 129 insertions, 126 deletions
diff --git a/src/serverdata.h b/src/serverdata.h
index 0c342660..99351852 100644
--- a/src/serverdata.h
+++ b/src/serverdata.h
@@ -5,149 +5,152 @@
#include <QString>
#include <QStringList>
-namespace server {
- Q_NAMESPACE
+namespace server
+{
+Q_NAMESPACE
- /// The base feature set that almost all servers are supposed to support.
- enum class BASE_FEATURE_SET {
- YELLOWTEXT, ///< Yellow text in in-character messages.
+/// The base feature set that almost all servers are supposed to support.
+enum class BASE_FEATURE_SET
+{
+ YELLOWTEXT, ///< Yellow text in in-character messages.
///< @since 2.1.0
- FLIPPING, ///< The ability to mirror a character in-game.
+ FLIPPING, ///< The ability to mirror a character in-game.
///< @since 2.1.0
- CUSTOMOBJECTIONS, ///< Enables the use of a single custom objection named
+ CUSTOMOBJECTIONS, ///< Enables the use of a single custom objection named
///< `custom`.
///< @since 2.1.0
- FASTLOADING, ///< Enables the use of "fast loading" instead of the legacy
- ///< loading protocol.
- ///< @since 2.1.0
- NOENCRYPTION, ///< Disables "FantaCrypt" for the remainder of the session.
- ///< @since 2.1.0
- DESKMOD, ///< Allows forcing the appearance or disappearance of the desk.
- ///< @since 2.3 to 2.5
- EVIDENCE, ///< Allows creating and presenting evidence.
- ///< @since 2.3 to 2.5
- CCCC_IC_SUPPORT, ///< The ability to pair up with another user's character,
- ///< the ability to change one's displayed name
- ///< in-character ("showname"), and the ability to perform
- ///< "immediate" preanimations (ones that happen alongside
- ///< text display).
- ///< @since 2.6.0
- ARUP, ///< Areas have more data about them than just their name (including
- ///< their status, their "lockedness", and who is the Case Master in
- ///< the area), and sets the client up to receive and send ARUP
- ///< packets.
- ///< @since 2.6.0
- CASING_ALERTS, ///< The client gains a new window to announce cases with,
- ///< and the settings to set itself up to receive case alerts
- ///< based on casing preferences. No longer used.
- ///< @since 2.6.0
- MODCALL_REASON, ///< Enables entering a custom reason for calling
- ///< moderators.
- ///< @since 2.6.0
- LOOPING_SFX, ///< Enables looping SFX extensions for the in-character
- ///< command.
- ///< @since 2.8.0
- ADDITIVE, ///< Enables "additive" text that allows in-character messages to
- ///< concatenate to the previous one sent by the same character.
- ///< @since 2.8.0
- EFFECTS, ///< Enables effect overlays.
- ///< @since 2.8.0
- Y_OFFSET, ///< Enables support for vertical offsets.
- ///< @since 2.9.0
- EXPANDED_DESK_MODS, ///< Enables desk modifiers 2 through 5.
- ///< @since 2.9.0
- AUTH_PACKET, ///< Enables the use of the AUTH packet.
- ///< @since 2.9.1
- PREZOOM, ///< Preanim zoom.
- CUSTOM_BLIPS ///< Allows the in-character messages to contain data about
- ///< what blips to use for the character's current message.
- };
- Q_ENUM_NS(BASE_FEATURE_SET)
+ FASTLOADING, ///< Enables the use of "fast loading" instead of the legacy
+ ///< loading protocol.
+ ///< @since 2.1.0
+ NOENCRYPTION, ///< Disables "FantaCrypt" for the remainder of the session.
+ ///< @since 2.1.0
+ DESKMOD, ///< Allows forcing the appearance or disappearance of the desk.
+ ///< @since 2.3 to 2.5
+ EVIDENCE, ///< Allows creating and presenting evidence.
+ ///< @since 2.3 to 2.5
+ CCCC_IC_SUPPORT, ///< The ability to pair up with another user's character,
+ ///< the ability to change one's displayed name
+ ///< in-character ("showname"), and the ability to perform
+ ///< "immediate" preanimations (ones that happen alongside
+ ///< text display).
+ ///< @since 2.6.0
+ ARUP, ///< Areas have more data about them than just their name (including
+ ///< their status, their "lockedness", and who is the Case Master in
+ ///< the area), and sets the client up to receive and send ARUP
+ ///< packets.
+ ///< @since 2.6.0
+ CASING_ALERTS, ///< The client gains a new window to announce cases with,
+ ///< and the settings to set itself up to receive case alerts
+ ///< based on casing preferences. No longer used.
+ ///< @since 2.6.0
+ MODCALL_REASON, ///< Enables entering a custom reason for calling
+ ///< moderators.
+ ///< @since 2.6.0
+ LOOPING_SFX, ///< Enables looping SFX extensions for the in-character
+ ///< command.
+ ///< @since 2.8.0
+ ADDITIVE, ///< Enables "additive" text that allows in-character messages to
+ ///< concatenate to the previous one sent by the same character.
+ ///< @since 2.8.0
+ EFFECTS, ///< Enables effect overlays.
+ ///< @since 2.8.0
+ Y_OFFSET, ///< Enables support for vertical offsets.
+ ///< @since 2.9.0
+ EXPANDED_DESK_MODS, ///< Enables desk modifiers 2 through 5.
+ ///< @since 2.9.0
+ AUTH_PACKET, ///< Enables the use of the AUTH packet.
+ ///< @since 2.9.1
+ PREZOOM, ///< Preanim zoom.
+ CUSTOM_BLIPS ///< Allows the in-character messages to contain data about
+ ///< what blips to use for the character's current message.
+};
+Q_ENUM_NS(BASE_FEATURE_SET)
+/**
+ * @brief Arranges data about the server the client is connected to.
+ */
+class ServerData
+{
+public:
/**
- * @brief Arranges data about the server the client is connected to.
+ * @brief Returns true if one of the standard features exists on the server.
+ *
+ * @details Internally, this calls get_feature(const QString &f_feature)
+ * with the enum's value converted to string.
+ *
+ * @param f_feature The feature to check for.
+ *
+ * @return True if the feature exists on the server.
*/
- class ServerData {
- public:
- /**
- * @brief Returns true if one of the standard features exists on the server.
- *
- * @details Internally, this calls get_feature(const QString &f_feature)
- * with the enum's value converted to string.
- *
- * @param f_feature The feature to check for.
- *
- * @return True if the feature exists on the server.
- */
- bool get_feature(const BASE_FEATURE_SET &f_feature) const;
+ bool get_feature(const BASE_FEATURE_SET &f_feature) const;
- /**
- * @brief Returns true if the feature exists on the server.
- *
- * @param f_feature The feature to check for. Case insensitive.
- *
- * @return True if the feature exists on the server.
- */
- bool get_feature(const QString &f_feature) const;
+ /**
+ * @brief Returns true if the feature exists on the server.
+ *
+ * @param f_feature The feature to check for. Case insensitive.
+ *
+ * @return True if the feature exists on the server.
+ */
+ bool get_feature(const QString &f_feature) const;
- /**
- * @brief Sets the feature list, overwriting the existing one.
- *
- * @param f_feature_list The new feature list of the server.
- */
- void set_features(const QStringList &f_feature_list);
+ /**
+ * @brief Sets the feature list, overwriting the existing one.
+ *
+ * @param f_feature_list The new feature list of the server.
+ */
+ void set_features(const QStringList &f_feature_list);
- /**
- * @brief Self-explanatory: gets the software the server is running on.
- *
- * @return As brief description.
- */
- QString get_server_software() const;
+ /**
+ * @brief Self-explanatory: gets the software the server is running on.
+ *
+ * @return As brief description.
+ */
+ QString get_server_software() const;
- /**
- * @brief Self-explanatory: setter for server software.
- *
- * @param f_software The new server software.
- */
- void set_server_software(const QString &f_software);
+ /**
+ * @brief Self-explanatory: setter for server software.
+ *
+ * @param f_software The new server software.
+ */
+ void set_server_software(const QString &f_software);
- /**
- * @brief Getter for the server's asset URL.
- *
- * @return As brief description.
- *
- * @see m_asset_url
- */
- QString get_asset_url() const;
+ /**
+ * @brief Getter for the server's asset URL.
+ *
+ * @return As brief description.
+ *
+ * @see m_asset_url
+ */
+ QString get_asset_url() const;
- /**
- * @brief Attempts to set the new asset URL for the server.
- *
- * @details The function converts the sole parameter into UTF-8, then
- * attempts to percent decode it. The URL is only set if all these steps
- * successfully happen.
- *
- * @param f_asset_url A QString that contains the URL.
- */
- void set_asset_url(const QString &f_asset_url);
+ /**
+ * @brief Attempts to set the new asset URL for the server.
+ *
+ * @details The function converts the sole parameter into UTF-8, then
+ * attempts to percent decode it. The URL is only set if all these steps
+ * successfully happen.
+ *
+ * @param f_asset_url A QString that contains the URL.
+ */
+ void set_asset_url(const QString &f_asset_url);
- private:
- /// The features available on the server. Determines what
- QStringList m_features;
+private:
+ /// The features available on the server. Determines what
+ QStringList m_features;
- /// The software the server is running.
- QString m_server_software;
+ /// The software the server is running.
+ QString m_server_software;
- /**
- * @brief A QString of an URL that defines the content repository
- * send by the server.
- *
- * @details Introduced in Version 2.9.2.
- * Addresses the issue of contenturl devlivery for WebAO
- * without relying on someone adding the link manually.
- */
- QString m_asset_url;
- };
+ /**
+ * @brief A QString of an URL that defines the content repository
+ * send by the server.
+ *
+ * @details Introduced in Version 2.9.2.
+ * Addresses the issue of contenturl devlivery for WebAO
+ * without relying on someone adding the link manually.
+ */
+ QString m_asset_url;
+};
} // namespace server
#endif // SERVERDATA_H