Skip to content

updating my copy#32

Merged
atari2600tim merged 60 commits intoatari2600tim:developmentfrom
Mudlet:development
Jul 28, 2020
Merged

updating my copy#32
atari2600tim merged 60 commits intoatari2600tim:developmentfrom
Mudlet:development

Conversation

@atari2600tim
Copy link
Copy Markdown
Owner

Brief overview of PR changes/additions

Motivation for adding to Mudlet

Other info (issues closed, discussion etc)

mudlet-machine-account and others added 30 commits June 6, 2020 11:29
* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Russian)

* New translations mudlet-lua.json (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (German)

* New translations mudlet.ts (French)

* New translations mudlet-lua.json (Spanish)

* New translations mudlet-lua.json (Pirate English)

* New translations mudlet-lua.json (Portuguese, Brazilian)

* New translations mudlet-lua.json (Chinese Traditional)

* New translations mudlet-lua.json (Chinese Simplified)

* New translations mudlet-lua.json (Turkish)

* New translations mudlet-lua.json (Portuguese)

* New translations mudlet-lua.json (Polish)

* New translations mudlet-lua.json (Dutch)

* New translations mudlet-lua.json (Greek)

* New translations mudlet.ts (Pirate English)

* New translations mudlet.ts (German)

* New translations mudlet.ts (German)

* New translations mudlet.ts (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (German)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Pirate English)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (German)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet-lua.json (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (German)

* New translations mudlet.ts (French)

* New translations mudlet-lua.json (Spanish)

* New translations mudlet-lua.json (Pirate English)

* New translations mudlet-lua.json (Portuguese, Brazilian)

* New translations mudlet-lua.json (Chinese Traditional)

* New translations mudlet-lua.json (Chinese Simplified)

* New translations mudlet-lua.json (Turkish)

* New translations mudlet-lua.json (Portuguese)

* New translations mudlet-lua.json (Polish)

* New translations mudlet-lua.json (Dutch)

* New translations mudlet-lua.json (Greek)

* New translations mudlet.ts (Pirate English)

* New translations mudlet-lua.json (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (German)

* New translations mudlet.ts (French)

* New translations mudlet-lua.json (Spanish)

* New translations mudlet-lua.json (Pirate English)

* New translations mudlet-lua.json (Portuguese, Brazilian)

* New translations mudlet-lua.json (Chinese Traditional)

* New translations mudlet-lua.json (Chinese Simplified)

* New translations mudlet-lua.json (Turkish)

* New translations mudlet-lua.json (Portuguese)

* New translations mudlet-lua.json (Polish)

* New translations mudlet-lua.json (Dutch)

* New translations mudlet-lua.json (Greek)

* New translations mudlet.ts (Pirate English)
* deal with empty strings

* Update src/mudlet-lua/lua/Other.lua

Co-authored-by: Kebap <leckerkebap@gmx.li>

Co-authored-by: Kebap <leckerkebap@gmx.li>
Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
I was trying to be too clever and return a reference to an object.
I think I might have been able to extend the life-time of the item
concerned if I had made it a `const` but all in all it is simpler just to
use the normal return action that a compiler can use RVO to avoid making a
unneeded copy of the item.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
* Enhance: make multiView persistent & compact input line act on all profiles

Makes the compact input line a toggle (so now it also has constant text).

Makes the multi-view stay active when `<Ctrl>+<Tab>` / `<Ctrl>+Number`
switching between - or clicking on the tab bars.

Also disables the (now a toggle) control for multi-view when there is less
than two profiles active.

This should close #1111 #1831 #3136 #3204 #2400, it may also improve #2099

It also disables dragging the tabs around so will prevent the issue
mentioned in #1456 pending a fix that can also rearrange the main
`TConsole`s to match.

Also improve layout of the Multi-view tool-tip for both the toolbar and
menu instances of the control.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Revoke: remove changes disassociated with the multi-view issues

Required to simplify this PR and so they can be moved to a separate
PR.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Enhance: improve active tab indication in multi-view

Examining the situations in which clicking on a part of the UI does not
cause the indication of the active tab to reflect the profile that the
widget is part of has shown a few places which are addressed in this
commit:
* 2D Mapper
* 3D Mapper
* Search term entry widget in the commandl ine
* either `TTextEdit` in the Main or User Window `TConsole`
* `TLabels` in any `TConsole`

All of the above will now call a new mudlet::activateProfile(Host*) which
will ensure that the correct tab is selected, and that the member:
`(Host*) mudlet::mpCurrentActiveHost` is updated to also reflect that.

Also, if multi-view is active than there is not need to highlight the
tabs of profiles that have seen any changes - which is just as well as the
code to clear the tab is dependent on the user clicking on the affected
tab to show the tab and clear it - which is less likely to happen when in
the multi-view mode.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
…ers (#3890)

* Bugfix: prevent build failure with libzip 1.70.0 with no version numbers

As the Travis MacOs CI builds are using the latest libzip which is
currently the one which doesn't have LIBZIP_MAJOR and other version numbers
they were encountering a #error situation and aborting the build.

This is being fixed upstream so 1.70.1 should be okay.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Check for defines of LIBZIP_VERSION_MINOR

Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
* Bugfix: prevent build failure with libzip 1.70.0 with no version numbers (#3890)

* Bugfix: prevent build failure with libzip 1.70.0 with no version numbers

As the Travis MacOs CI builds are using the latest libzip which is
currently the one which doesn't have LIBZIP_MAJOR and other version numbers
they were encountering a #error situation and aborting the build.

This is being fixed upstream so 1.70.1 should be okay.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Check for defines of LIBZIP_VERSION_MINOR

Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
(cherry picked from commit bcbf8a0)

* 4.9.0 release!

* Back to -dev

Co-authored-by: Stephen Lyons <slysven@virginmedia.com>
* Adding spairs function for iterating over tables in a sorted fashion. Also adding tests for same

* Minor test change just to force appveyor to start over
* Added getClipboardText and setClipboardText functions to allow scripts to interact with the clipboard.

* A little bit of arranging so this code is matching the style of other Lua functions.

* Added references to the function's pages on the wiki.
This adds a white outline around the otherwise entirely black icons so that
they becomes visible when used with a dark desktop theme.

For the record this icon was created from scratch on a 256x256 transparent
background using The G.I.M.P. to draw "X=" in text in black using the
"Serif" or "Sans serif" font at a size of 150 (for two of the text based ones
the third had to be reduced to fit), that image was then redrawn in white four
times and each of them was offset by +/-4 in complimentary X and Y
directions (and the gaps at the ends filled in and blurred) so that they
expanded the background white around the black foreground.

The reason for expanding from the original 48x48 pixel size was to make the
anti-aliasing take up a much smaller proportion of the image - so it will
appear sharper even at higher resolutions.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
*Total -- 150.01kb -> 128.86kb (14.1%)

/src/icons/variables.png -- 15.69kb -> 7.79kb (50.32%)
/src/icons/table.png -- 1.60kb -> 0.85kb (46.89%)
/src/icons/function.png -- 39.66kb -> 31.92kb (19.53%)
/src/icons/variable.png -- 30.14kb -> 26.13kb (13.31%)
/src/icons/mudlet_ptb_256px.png -- 62.92kb -> 62.16kb (1.2%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
- Bug was caused by index out of range when processing MXP SEND tags with more commands than associated hints
- The solution uses HREF instead of HINT when the number of available hints is one and smaller than the number of commands
* prevent height/width of 0

* better solution still keeps hbox at 0

* small correction
- In TTextEdit code was looking for links and tooltips associated to the main console
* Bugfix: prevent build failure with libzip 1.70.0 with no version numbers (#3890)

* Bugfix: prevent build failure with libzip 1.70.0 with no version numbers

As the Travis MacOs CI builds are using the latest libzip which is
currently the one which doesn't have LIBZIP_MAJOR and other version numbers
they were encountering a #error situation and aborting the build.

This is being fixed upstream so 1.70.1 should be okay.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Check for defines of LIBZIP_VERSION_MINOR

Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
(cherry picked from commit bcbf8a0)

* 4.9.0 release!

* Back to -dev

* Fix crash loading MMP map (#3899)

(cherry picked from commit 510c3be)

* Fixes #3900, bug on MXP SEND tags (#3908)

- Bug was caused by index out of range when processing MXP SEND tags with more commands than associated hints
- The solution uses HREF instead of HINT when the number of available hints is one and smaller than the number of commands

(cherry picked from commit 46320c3)

* Fix for Geyser HBox/VBox with width/height at 0 (#3909)

* prevent height/width of 0

* better solution still keeps hbox at 0

* small correction

(cherry picked from commit a7dc3a2)

* Fixes bug #3886 with links in miniconsoles (#3904)

- In TTextEdit code was looking for links and tooltips associated to the main console

(cherry picked from commit 547c658)

* 4.9.1 bugfix release

* Back to -dev

Co-authored-by: Stephen Lyons <slysven@virginmedia.com>
Co-authored-by: Gustavo Sousa <gustavocms@gmail.com>
Co-authored-by: Manuel Wegmann <60551052+Edru2@users.noreply.github.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
…nd be saved for each profile (#3866)

This message is an edited compilation of the individual commits that
made up the eventual squashed and merged PR:

Makes the compact input line a toggle (so now it also has constant text).
The previous code only considered the currently active profile which
was contradicted by the fact that the state - which was maintained
between sessions - was stored centrally as an application setting rather
than a per profile one.

This was split out of a larger PR that originally included it:
#3844 .

Because of the poor tracking of `(Host*) mudlet::mCurrentActiveHost`
the use of the short-cut or menu item to toggle the state of the input line
did not fully track which profile is active yet. That was improved when
PR 3844  went in.

BugFix: clicking on a different profile needs to update compact input line

Although clicking on the tab bar changed the currently active host and that
would update the compact input line menu item state to match the newly made
active profile the same thing was not happening if the profile was made
active by being clicked on in other places when in multi-view. This was
only discovered after PR 3844 was applied.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
* New translations mudlet.ts (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (German)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Pirate English)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (German)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Simplified)
* Remove Camel Case Requirement from Client.Media

* Remove Camel Case Requirement from Client.Media
* Don't call Lua functions with too many arguments

* Show a warning when trimming
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
This will close Issue: #2706.

Also fix a couple of warnings for the `dlgConnectionProfiles` class:
* an out of order initialisation list
* an unused argument in:
 `(void) dlgConnectionProfiles::slot_update_name(const QString&)`

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
SlySven and others added 25 commits July 1, 2020 21:49
This revises cTelnet::sendData(...) so that it does NOT create a
`sysDataSendRequest` with the password when called from:
`cTelnet::slot_send_pass()` .

Also, in passing also found that similar mudlet class slot methods:
`mudlet::::slot_send_login()` and `mudlet::::slot_send_pass()` are not used
so can be pruned and then three `QQueue<QString>` in that same class are
not used either.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
…ale (#3917)

* BugFix: make date display of profile's history follow selected UI locale

This PR adds a `QLocale` object to the `mudlet` class that is set to the
user's selection of UI locale (language + country) so that items that need
to return data in a locale aware form can use:
`(const QLocale&) mudlet::getUserLocale()`
in order to present their information in their selected form rather than
using what they or their OS/DE has set system/desktop-wide.

In this PR it is used to format and present in the correct language the
date and time entries for the profile's history but it can be used
elsewhere within the Mudlet application as needed.

Also:
* reorder some items in `dlgConnectionProfile`'s class to be correct.
* mark an unused argument in `dlgConnectionProfile::slot_update_name(...)`
as unused to prevent a warning.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Revise: exclude the display of a time zone in the profile's history

It takes up extra space which is tight in that widget and (apart from the
time around a DST change) does not impart much information to the display.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Apply suggestions from code review

Removed unwanted ellipses from debug texts...

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
We have been trying to hide the text associated with the `QListWidgetItems`
in the connection dialogue by setting the font size to the minimum of `1`
and by setting it's colour to be white. This is not effective when the
background is not white - which is likely for a "Dark" desktop environment.
The only way to successfully hide the text is, I think, to not have any!

However the text was being used programmatically, so the best way to use
a `QListWidget` in this mannar is to store the text elsewhere in each
item's structure. Fortunately Qt provides for this with the user data
functionality which allows multiple data items (based on the `QVariant`
class) to be stored within each `QListWidgetItem` using an integer key to
denote the type of the data. Ironically the text, icon and other details
for each item are ALSO stored in this way - however for non-Qt internal
use the lowest integer key that is to be used is `Qt::UserRole` - which
I have assigned to the `(const int) dlgConnectionProfiles::csmNameRole`
static value. It is quite possible that a redesign of the Connect Profiles
dialogue may use this system to store/cache more details about each profile
in the future!

The only issue with this is the lack of a:
`QListWidget::findData(const QVarient&data, int role = Qt::UserRole ...)`
method (c.f. `QComboBox::findData(...)`) so I have had to provide a:
`(QList<QListWidgetItem*>) findData(const QListWidget&, const QVariant&,
                                      const int role = Qt::UserRole) const;
method to fill in this gap and to replace the previous
`QListWidget::find(...)` that examined each item's text.

Also removed local `(QString) profile` from:
`(void) dlgConnectionProfiles::slot_item_clicked(QListWidgetItem*)` as it
is merely a redundent duplicate of another local `(QString) profile_name`.

Renamed local `(QListWidgetItem*) pM` from:
`(void) dlgConnectionProfiles::fillout_form()` to:
`(QListWidgetItem*) pItem` as that reflects the name used throughout the
rest of the class for this type of variable.

Changed a `(QLabel*)::setText(tr(""))` call to the more explicit and less
stupid `(QLabel*)::clear()`. Similarly changed a
`(QWidget*)::setToolTip("")` to a `(QWidget*)::setToolTip(QString())`.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (German)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Pirate English)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (German)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet-lua.json (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
Remove unneeded command as per peer-review suggestion.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
CodeFactor says that the `static` keyword should come first (before the `const` one).

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
…nises

This is so that a text is displayed instead of a fall-back of the locale
code.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
…eFromIcons

Refactor: remove minute visible name from Connection dialogue icons
I got the logic reversed in the original #1519 for
`(bool) cTelnet::mmIsReplayRunFromLua` so the ending message was not being
displayed when it should have been.

This will close #2793.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
* Update Linux builds to Qt 5.12.9

* Update .travis.yml
* Allow string.split("my string", "") with strings > 32 characters
Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
* Add cfeedTriggers, dfeedTriggers, and hfeedTriggers
* add apt update back to linux github build runner
* Giving in because too tired to argue
* Add TELOPT_CHARSET (42) Support

* Add TELOPT_CHARSET (42) Support

* Add TELOPT_CHARSET (42) Support

* Add TELOPT_CHARSET (42) Support

* Add TELOPT_CHARSET (42) Support

* Add TELOPT_CHARSET (42) Support
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
@AppVeyorBot
Copy link
Copy Markdown

Build Mudlet 1.0.100 completed (commit ad1b053aa4 by @smurfix)

@AppVeyorBot
Copy link
Copy Markdown

Build Mudlet 1.0.101 completed (commit c719fb7511 by @mpconley)

@atari2600tim atari2600tim merged commit c29335b into atari2600tim:development Jul 28, 2020
atari2600tim pushed a commit that referenced this pull request Oct 1, 2020
    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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.