Skip to content

Commit 6faecdb

Browse files
committed
Merge branch 'Text-Wrapping' of https://github.com/hhsiao/Mudlet into Text-Wrapping
2 parents 83d19fd + 56da7b1 commit 6faecdb

44 files changed

Lines changed: 33894 additions & 30527 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/CONTRIBUTING.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,10 @@ If you just need to use a plain .arg() call, use multiple arguments within it an
8181

8282
([source](https://meetingcpp.com/tl_files/mcpp/2015/talks/Marc-Mutz-MC++15-Effective-Qt.pdf))
8383

84+
## Naming things? Check against antipatterns
85+
86+
Check https://www.linguistic-antipatterns.com when naming anything to help ensure it can be understood intuitively.
87+
8488
# Internationalization do's and don'ts
8589

8690
Do:

.github/workflows/build-mudlet.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,11 @@ jobs:
3535
compiler: clang_64
3636
qt: '5.14.2'
3737
deploy: 'deploy'
38-
# - os: windows-2019
39-
# buildname: 'windows'
40-
# triplet: x64-mingw-dynamic
41-
# # compiler: flag not used in windows pipeline
42-
# qt: '5.14.2'
38+
- os: windows-2019
39+
buildname: 'windows'
40+
triplet: x64-mingw-dynamic
41+
# compiler: flag not used in windows pipeline
42+
qt: '5.14.2'
4343

4444
env:
4545
BOOST_ROOT: ${{github.workspace}}/3rdparty/boost

3rdparty/cmake-scripts/sanitizers.cmake

Lines changed: 96 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (C) 2018 by George Cave - gcave@stablecoder.ca
2+
# Copyright (C) 2018-2022 by George Cave - gcave@stablecoder.ca
33
#
44
# Licensed under the Apache License, Version 2.0 (the "License"); you may not
55
# use this file except in compliance with the License. You may obtain a copy of
@@ -19,7 +19,7 @@ set(USE_SANITIZER
1919
""
2020
CACHE
2121
STRING
22-
"Compile with a sanitizer. Options are: Address, Memory, MemoryWithOrigins, Undefined, Thread, Leak, 'Address;Undefined'"
22+
"Compile with a sanitizer. Options are: Address, Memory, MemoryWithOrigins, Undefined, Thread, Leak, 'Address;Undefined', CFI"
2323
)
2424

2525
function(append value)
@@ -30,15 +30,23 @@ function(append value)
3030
endforeach(variable)
3131
endfunction()
3232

33+
function(append_quoteless value)
34+
foreach(variable ${ARGN})
35+
set(${variable}
36+
${${variable}} ${value}
37+
PARENT_SCOPE)
38+
endforeach(variable)
39+
endfunction()
40+
3341
function(test_san_flags return_var flags)
34-
set(QUIET_BACKUP ${CMAKE_REQUIRED_QUIET})
35-
set(CMAKE_REQUIRED_QUIET TRUE)
36-
unset(${return_var} CACHE)
37-
set(FLAGS_BACKUP ${CMAKE_REQUIRED_FLAGS})
38-
set(CMAKE_REQUIRED_FLAGS "${flags}")
39-
check_cxx_source_compiles("int main() { return 0; }" ${return_var})
40-
set(CMAKE_REQUIRED_FLAGS "${FLAGS_BACKUP}")
41-
set(CMAKE_REQUIRED_QUIET "${QUIET_BACKUP}")
42+
set(QUIET_BACKUP ${CMAKE_REQUIRED_QUIET})
43+
set(CMAKE_REQUIRED_QUIET TRUE)
44+
unset(${return_var} CACHE)
45+
set(FLAGS_BACKUP ${CMAKE_REQUIRED_FLAGS})
46+
set(CMAKE_REQUIRED_FLAGS "${flags}")
47+
check_cxx_source_compiles("int main() { return 0; }" ${return_var})
48+
set(CMAKE_REQUIRED_FLAGS "${FLAGS_BACKUP}")
49+
set(CMAKE_REQUIRED_QUIET "${QUIET_BACKUP}")
4250
endfunction()
4351

4452
if(USE_SANITIZER)
@@ -57,11 +65,18 @@ if(USE_SANITIZER)
5765
message(STATUS "Testing with Address sanitizer")
5866
set(SANITIZER_ADDR_FLAG "-fsanitize=address")
5967
test_san_flags(SANITIZER_ADDR_AVAILABLE ${SANITIZER_ADDR_FLAG})
60-
if (SANITIZER_ADDR_AVAILABLE)
68+
if(SANITIZER_ADDR_AVAILABLE)
6169
message(STATUS " Building with Address sanitizer")
6270
append("${SANITIZER_ADDR_FLAG}" SANITIZER_SELECTED_FLAGS)
71+
72+
if(AFL)
73+
append_quoteless(AFL_USE_ASAN=1 CMAKE_C_COMPILER_LAUNCHER
74+
CMAKE_CXX_COMPILER_LAUNCHER)
75+
endif()
6376
else()
64-
message(FATAL_ERROR "Address sanitizer not available for ${CMAKE_CXX_COMPILER}")
77+
message(
78+
FATAL_ERROR
79+
"Address sanitizer not available for ${CMAKE_CXX_COMPILER}")
6580
endif()
6681
endif()
6782

@@ -75,15 +90,23 @@ if(USE_SANITIZER)
7590
message(STATUS "Testing with Memory sanitizer")
7691
endif()
7792
test_san_flags(SANITIZER_MEM_AVAILABLE ${SANITIZER_MEM_FLAG})
78-
if (SANITIZER_MEM_AVAILABLE)
93+
if(SANITIZER_MEM_AVAILABLE)
7994
if(USE_SANITIZER MATCHES "([Mm]emory[Ww]ith[Oo]rigins)")
80-
message(STATUS " Building with MemoryWithOrigins sanitizer")
95+
message(STATUS " Building with MemoryWithOrigins sanitizer")
8196
else()
82-
message(STATUS " Building with Memory sanitizer")
97+
message(STATUS " Building with Memory sanitizer")
8398
endif()
8499
append("${SANITIZER_MEM_FLAG}" SANITIZER_SELECTED_FLAGS)
100+
101+
if(AFL)
102+
append_quoteless(AFL_USE_MSAN=1 CMAKE_C_COMPILER_LAUNCHER
103+
CMAKE_CXX_COMPILER_LAUNCHER)
104+
endif()
85105
else()
86-
message(FATAL_ERROR "Memory [With Origins] sanitizer not available for ${CMAKE_CXX_COMPILER}")
106+
message(
107+
FATAL_ERROR
108+
"Memory [With Origins] sanitizer not available for ${CMAKE_CXX_COMPILER}"
109+
)
87110
endif()
88111
endif()
89112

@@ -94,50 +117,99 @@ if(USE_SANITIZER)
94117
append("-fsanitize-blacklist=${BLACKLIST_FILE}" SANITIZER_UB_FLAG)
95118
endif()
96119
test_san_flags(SANITIZER_UB_AVAILABLE ${SANITIZER_UB_FLAG})
97-
if (SANITIZER_UB_AVAILABLE)
120+
if(SANITIZER_UB_AVAILABLE)
98121
message(STATUS " Building with Undefined Behaviour sanitizer")
99122
append("${SANITIZER_UB_FLAG}" SANITIZER_SELECTED_FLAGS)
123+
124+
if(AFL)
125+
append_quoteless(AFL_USE_UBSAN=1 CMAKE_C_COMPILER_LAUNCHER
126+
CMAKE_CXX_COMPILER_LAUNCHER)
127+
endif()
100128
else()
101-
message(FATAL_ERROR "Undefined Behaviour sanitizer not available for ${CMAKE_CXX_COMPILER}")
129+
message(
130+
FATAL_ERROR
131+
"Undefined Behaviour sanitizer not available for ${CMAKE_CXX_COMPILER}"
132+
)
102133
endif()
103134
endif()
104135

105136
if(USE_SANITIZER MATCHES "([Tt]hread)")
106137
message(STATUS "Testing with Thread sanitizer")
107138
set(SANITIZER_THREAD_FLAG "-fsanitize=thread")
108139
test_san_flags(SANITIZER_THREAD_AVAILABLE ${SANITIZER_THREAD_FLAG})
109-
if (SANITIZER_THREAD_AVAILABLE)
140+
if(SANITIZER_THREAD_AVAILABLE)
110141
message(STATUS " Building with Thread sanitizer")
111142
append("${SANITIZER_THREAD_FLAG}" SANITIZER_SELECTED_FLAGS)
143+
144+
if(AFL)
145+
append_quoteless(AFL_USE_TSAN=1 CMAKE_C_COMPILER_LAUNCHER
146+
CMAKE_CXX_COMPILER_LAUNCHER)
147+
endif()
112148
else()
113-
message(FATAL_ERROR "Thread sanitizer not available for ${CMAKE_CXX_COMPILER}")
149+
message(
150+
FATAL_ERROR "Thread sanitizer not available for ${CMAKE_CXX_COMPILER}"
151+
)
114152
endif()
115153
endif()
116154

117155
if(USE_SANITIZER MATCHES "([Ll]eak)")
118156
message(STATUS "Testing with Leak sanitizer")
119157
set(SANITIZER_LEAK_FLAG "-fsanitize=leak")
120158
test_san_flags(SANITIZER_LEAK_AVAILABLE ${SANITIZER_LEAK_FLAG})
121-
if (SANITIZER_LEAK_AVAILABLE)
159+
if(SANITIZER_LEAK_AVAILABLE)
122160
message(STATUS " Building with Leak sanitizer")
123161
append("${SANITIZER_LEAK_FLAG}" SANITIZER_SELECTED_FLAGS)
162+
163+
if(AFL)
164+
append_quoteless(AFL_USE_LSAN=1 CMAKE_C_COMPILER_LAUNCHER
165+
CMAKE_CXX_COMPILER_LAUNCHER)
166+
endif()
124167
else()
125-
message(FATAL_ERROR "Thread sanitizer not available for ${CMAKE_CXX_COMPILER}")
168+
message(
169+
FATAL_ERROR "Thread sanitizer not available for ${CMAKE_CXX_COMPILER}"
170+
)
171+
endif()
172+
endif()
173+
174+
if(USE_SANITIZER MATCHES "([Cc][Ff][Ii])")
175+
message(STATUS "Testing with Control Flow Integrity(CFI) sanitizer")
176+
set(SANITIZER_CFI_FLAG "-fsanitize=cfi")
177+
test_san_flags(SANITIZER_CFI_AVAILABLE ${SANITIZER_CFI_FLAG})
178+
if(SANITIZER_CFI_AVAILABLE)
179+
message(STATUS " Building with Control Flow Integrity(CFI) sanitizer")
180+
append("${SANITIZER_LEAK_FLAG}" SANITIZER_SELECTED_FLAGS)
181+
182+
if(AFL)
183+
append_quoteless(AFL_USE_CFISAN=1 CMAKE_C_COMPILER_LAUNCHER
184+
CMAKE_CXX_COMPILER_LAUNCHER)
185+
endif()
186+
else()
187+
message(
188+
FATAL_ERROR
189+
"Control Flow Integrity(CFI) sanitizer not available for ${CMAKE_CXX_COMPILER}"
190+
)
126191
endif()
127192
endif()
128193

129194
message(STATUS "Sanitizer flags: ${SANITIZER_SELECTED_FLAGS}")
130195
test_san_flags(SANITIZER_SELECTED_COMPATIBLE ${SANITIZER_SELECTED_FLAGS})
131-
if (SANITIZER_SELECTED_COMPATIBLE)
196+
if(SANITIZER_SELECTED_COMPATIBLE)
132197
message(STATUS " Building with ${SANITIZER_SELECTED_FLAGS}")
133198
append("${SANITIZER_SELECTED_FLAGS}" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
134199
else()
135-
message(FATAL_ERROR " Sanitizer flags ${SANITIZER_SELECTED_FLAGS} are not compatible.")
200+
message(
201+
FATAL_ERROR
202+
" Sanitizer flags ${SANITIZER_SELECTED_FLAGS} are not compatible.")
136203
endif()
137204
elseif(MSVC)
138205
if(USE_SANITIZER MATCHES "([Aa]ddress)")
139206
message(STATUS "Building with Address sanitizer")
140207
append("-fsanitize=address" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
208+
209+
if(AFL)
210+
append_quoteless(AFL_USE_ASAN=1 CMAKE_C_COMPILER_LAUNCHER
211+
CMAKE_CXX_COMPILER_LAUNCHER)
212+
endif()
141213
else()
142214
message(
143215
FATAL_ERROR

3rdparty/qt-ordered-map

3rdparty/vcpkg

Submodule vcpkg updated 4624 files

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ This software wouldnt've been possible without these open source packages:
120120
- [DBLSQD](https://www.dblsqd.com/)
121121
- [argparse](https://github.com/luarocks/argparse)
122122
- [Boost Graph Library](https://www.boost.org/doc/libs/1_77_0/libs/graph/doc/)
123-
- [Busted](http://olivinelabs.com/busted/)
123+
- [Busted](https://lunarmodules.github.io/busted/)
124124
- [Ccache](https://ccache.dev/)
125125
- [Communi](https://communi.github.io/)
126126
- [Hunspell](https://hunspell.github.io/)

src/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,7 @@ elseif(UNIX AND NOT APPLE)
163163
list(APPEND mudlet_SRCS AnnouncerLinux.cpp)
164164
elseif(WIN32)
165165
list(APPEND mudlet_SRCS AnnouncerWindows.cpp)
166+
list(APPEND mudlet_SRCS uiawrapper.cpp)
166167
endif()
167168

168169
# This is for compiled UI files, not those used at runtime
@@ -320,6 +321,10 @@ set(mudlet_HDRS
320321
XMLexport.h
321322
XMLimport.h)
322323

324+
if(WIN32)
325+
list(APPEND mudlet_HDRS uiawrapper.h)
326+
endif()
327+
323328
if(USE_UPDATER)
324329
list(APPEND mudlet_SRCS updater.cpp)
325330
list(APPEND mudlet_HDRS updater.h)

src/Host.cpp

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1032,7 +1032,7 @@ void Host::check_for_mappingscript()
10321032
return;
10331033
}
10341034

1035-
connect(dialog, &QDialog::accepted, mudlet::self(), &mudlet::slot_open_mappingscripts_page);
1035+
connect(dialog, &QDialog::accepted, mudlet::self(), &mudlet::slot_openMappingScriptsPage);
10361036

10371037
dialog->show();
10381038
dialog->raise();
@@ -1628,11 +1628,6 @@ bool Host::killTrigger(const QString& name)
16281628
return mTriggerUnit.killTrigger(name);
16291629
}
16301630

1631-
void Host::connectToServer()
1632-
{
1633-
mTelnet.connectIt(mUrl, mPort);
1634-
}
1635-
16361631
void Host::closingDown()
16371632
{
16381633
mIsClosingDown = true;

src/Host.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,6 @@ class Host : public QObject
219219
KeyUnit* getKeyUnit() { return &mKeyUnit; }
220220
ScriptUnit* getScriptUnit() { return &mScriptUnit; }
221221

222-
void connectToServer();
223222
void send(QString cmd, bool wantPrint = true, bool dontExpandAliases = false);
224223

225224
int getHostID()

src/T2DMap.cpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -136,11 +136,12 @@ void T2DMap::slot_shiftDown()
136136
update();
137137
}
138138

139-
void T2DMap::toggleShiftMode()
140-
{
141-
mShiftMode = !mShiftMode;
142-
update();
143-
}
139+
// Not used:
140+
//void T2DMap::slot_toggleShiftMode()
141+
//{
142+
// mShiftMode = !mShiftMode;
143+
// update();
144+
//}
144145

145146
void T2DMap::slot_shiftUp()
146147
{

0 commit comments

Comments
 (0)