Commit graph

5 commits

Author SHA1 Message Date
Vadim Peretokin
39a91d3bdf
Infrastructure: Add short qsl macro to stand in for 'QStringLiteral' (#5640) 2021-12-07 06:21:39 +01:00
Stephen Lyons
d5e71353e5
Cleanup: prevent unused value warnings (again!) (#4415)
Using `Q_UNUSED` will silence the warnings that CMake gives us, though
we have disabled them for ages in the QMake build process.

Also remove some unused methods and variables.

Unlike the previous attempt in PR #4383 that had to be reverted by PR #4404
this does NOT remove a pair of methods from the `TTreeWidget` class that
did not seem to be being called - it turns out that they override methods
in the base `QTreeWidget` class and as such they will be called by Qt
library code when certain things happen to the class.

This reduces the warnings count (if they are shown by the compiler) from a
starting point of about 2718 down to around 696.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
2020-11-28 10:37:24 +00:00
Vadim Peretokin
5ffac37c2e
Fix broken editor regression (#4404)
This reverts commit b33b6c8dc3.
2020-11-26 15:00:30 +01:00
Stephen Lyons
b33b6c8dc3 Cleanup_prevent unused value warnings
Using `Q_UNUSED` will silence the warnings that CMake gives us, though
we have disabled them for ages in the QMake build process.

Also remove some unused methods and variables.

This reduces the warnings count (if they are shown by the compiler) from a
starting point of about 2718 down to around 696.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
2020-11-24 22:52:27 +00:00
Gustavo Sousa
102491a743
Refactoring/reimplementation of MXP support (#3625)
Refactoring/reimplementation of MXP protocol
        Extracts MXP support from TBuffer
        Separates input parsing from protocol processing: input is parsed into MxpTag objects by the MxpNodeBuilder and are passed to be handled by the MxpTagProcessor
        Class hierarchy of MxpTagHandler for implementing support for each tag: allows for a clear separation of the implementation of each tag and makes it easier for adding support for new tags
        Defines a clear interface (MxpClient) separating the MXP implementation from other parts of the code
        Solves some limitations of previous implementation such as supporting element definitions not only for<SEND> tags, interpolating named and positional attributes and interpolating &text; placeholder by tag content
        Includes support for COLOR tag
        Handles FONT, U, I, B, VAR and !ENTITY tags, but so far no defined behavior (can be implemented in MxpMudlet)
        Attributes that hold MXP state are now in the Host class to avoid needless copies when TBuffer is copied around
        Introduces QtTests for some of the classes
    Other refactorings intended to simplify TBuffer class, extracting responbilities that aren't directly related to the buffer mgmt
        Extracted TEncodingTable from TBuffer, this class is responsible for mapping encoding names to tables. It also removes some bloat from TBuffer.
        TLinkStore to manage links and associated hints to be displayed.
        TEntityResolver to map character entities, such as &gt; &#32; &#x20; to their associated string values; supports interpolating strings replacing the entity placeholders by their values
2020-05-03 19:09:42 +02:00