Phillip Stephens
0a869db665
Fix animated scans
2021-06-04 02:06:24 -07:00
Phillip Stephens
8f1b39c27f
Revert change in CTextExecuteBuffer to fix intro text
2021-06-03 23:21:36 -07:00
Phillip Stephens
0c6813d952
Implement CCredits, minor text parser fixes
2021-06-03 16:24:02 -07:00
Luke Street
4e804d0bc2
Add Items window
2021-05-29 18:45:08 -04:00
Luke Street
94f10bb002
Remove Editor & specter
2021-05-29 18:45:07 -04:00
Phillip Stephens
9bae2f943e
Rename everything
2021-04-10 01:42:06 -07:00
Luke Street
76de1541f2
Runtime: Resolve -Wrange-loop-analysis warnings (part 2)
2020-09-18 17:04:50 -04:00
Luke Street
330eeebf08
CRasterFont: Remove ignored maybe_unused attributes
2020-05-27 12:40:35 -04:00
Lioncash
1158a171e7
CFontImageDef: Collapse IsLoaded() into a std::all_of call
...
Same behavior, less code. C++20 ranges will allow shortening this in the
future.
2020-05-21 01:40:31 -04:00
Lioncash
6063ec2540
CFontRenderState: Eliminate sign conversion in SetColor()
...
Same behavior, minus a sign conversion warning.
2020-05-21 01:33:39 -04:00
Lioncash
5f80504e6e
CCompoundTargetReticle: Silence unused variable warning
2020-05-09 22:26:46 -04:00
Lioncash
b3d6901f56
CGuiPane: Make static resolving of virtual function in ctor explicit
...
virtual functions statically resolve in the constructor and destructor.
This makes it explicit to the user that this static resolving behavior
is indeed what is intended
2020-05-09 22:23:44 -04:00
Lioncash
5d209c8dc8
General: Mark a handful of deduced const variables as const explicitly
...
Same behavior, but makes it explicit to the reader that these are const.
Prevents cases where the reader might assume that just because the
variable isn't const qualified that it must be mutable, when it actually
isn't.
2020-05-08 18:41:29 -04:00
Lioncash
6658be66c2
CTextParser: Mark parameter to u16stof as const
...
The data being pointed to isn't modified.
2020-05-08 18:34:51 -04:00
Lioncash
748dbb8740
CTargetingManager: Mark CheckLoadComplete() as const
...
This member function doesn't alter internal member state.
2020-05-02 21:56:58 -04:00
Lioncash
6c475b6764
CGuiWidgetDrawParms: Make constexpr constructible
...
We can allow this structure to be constructed in a constexpr context.
This also allows us to remove the cpp file, given it's no longer
necessary.
2020-04-26 01:15:04 -04:00
Lioncash
96070f0c89
CGuiTextPane: Eliminate implicit float->int conversions
2020-04-25 02:28:52 -04:00
Lioncash
6d53912770
CStringTable: Make use of [[maybe_unused]] where applicable
2020-04-23 21:24:39 -04:00
Lioncash
ee0762db32
CRasterFont: Make use of [[maybe_unused]] where applicable
2020-04-23 21:23:17 -04:00
Lioncash
419d40051d
CGuiTextSupport: Make enum formatting consistent
2020-04-23 02:41:22 -04:00
Lioncash
b700da547e
CGuiTextSupport: Invert conditionals where applicable
...
Unindents code and allows for easier placement of breakpoints when the
conditions are equal to the early exit path.
2020-04-23 02:39:39 -04:00
Lioncash
787fc3276f
CGuiTextSupport: Use const references where applicable
2020-04-23 02:36:45 -04:00
Lioncash
a21fb1da35
CGuiObject: Remove unused includes
2020-04-23 02:27:11 -04:00
Luke Street
d3a44259c3
Merge pull request #315 from lioncash/init
...
RuntimeCommonB: Make use of bitfield initializers where applicable
2020-04-21 00:56:39 -04:00
Lioncash
554893ef85
RuntimeCommonB: Make use of bitfield initializers where applicable
...
Given that we now target C++20, we can make use of bitfield initializers
where applicable.
2020-04-20 15:57:25 -04:00
Luke Street
7b1e041123
Merge pull request #301 from AxioDL/omegapirate
...
OmegaPirate implementation
2020-04-20 03:21:04 -04:00
Lioncash
2103c38f54
CCompoundTargetReticle: Remove unused variable
...
This is only used in COrbitPointMarker.
2020-04-20 00:48:29 -04:00
Luke Street
32c44cbf05
Merge branch 'master' into omegapirate
...
# Conflicts:
# Runtime/GuiSys/CAuiImagePane.cpp
2020-04-19 22:12:18 -04:00
Lioncash
f0133c9eef
CAuiImagePane: Eliminate implicit conversions
...
We can make them explicit instead.
2020-04-19 22:06:30 -04:00
Luke Street
24acb585f8
MSVC & zeus fixes; update hecl-gui
2020-04-19 21:09:30 -04:00
Luke Street
4e88f503ac
COmegaPirate: Implement CFlash
2020-04-19 02:47:25 -04:00
Luke Street
e50d363e88
CPlayerGun: Rename EMissileState; minor CMotionState::Update fix
2020-04-19 00:26:53 -04:00
Lioncash
3c8ce3dc99
CGuiTextSupport: Amend typo in debug group label
...
This is within the Render() function, so we can rename the group name.
2020-04-14 13:34:50 -04:00
Luke Street
112322be5a
Merge pull request #311 from lioncash/sign
...
CScanDisplay: Eliminate implicit sign conversions
2020-04-14 02:10:13 -04:00
Lioncash
2c7d10c4b4
CCompoundTargetReticle: Brace statements where applicable
2020-04-13 17:16:23 -04:00
Lioncash
85f930ef2e
CCompoundTargetReticle: Convert unnecessary floats into bools
...
Using floats here is extremely suspect and almost certainly
unintentional.
2020-04-13 16:54:45 -04:00
Lioncash
1767338aba
CCompoundTargetReticle: Make eliminate hardcoded size
...
We can just query the capacity to dehardcode it.
2020-04-13 16:52:01 -04:00
Lioncash
e26afe887f
CCompoundTargetReticle: Make use of std::array where applicable
...
Same behavior, stronger typing.
While we're at it, we can eliminate a case of variable shadowing.
2020-04-13 16:50:37 -04:00
Lioncash
c6278c0e9f
CCompoundTargetReticle: Initialize all data members
...
Provides deterministic initial state.
2020-04-13 16:41:28 -04:00
Lioncash
786675f307
CTextExecuteBuffer: Move initialization of xa8_curWordIt into initializer list
2020-04-13 16:18:38 -04:00
Lioncash
50ba80247b
CTextExecuteBuffer: Initialize xac_curY and xb0_curX in the constructor
...
Provides a deterministic initial state upon construction for easier
debugging.
2020-04-13 16:18:02 -04:00
Lioncash
6806d4914c
CHudBossEnergyInterface: Initialize x0_alpha on construction
...
Provides a deterministic initial state which is helpful for debugging.
2020-04-13 15:00:44 -04:00
Lioncash
67786721ff
CHudBossEnergyInterface: Make use of structured bindings in constructor
...
Same behavior, minus a verbose type name.
2020-04-13 14:59:47 -04:00
Lioncash
4e6150acc4
CHudDecoInterface: Make missed virtual call in constructor explicit
...
Missed this one in the previous commit.
2020-04-13 14:54:15 -04:00
Lioncash
c8be142846
CHudDecoInterface: Make virtual calls in constructor explicitly qualified
...
Virtual functions called in a constructor or destructor are statically
resolved. Given this is a potential source of bugs, we qualify these
functions to make it explicit that this is indeed the kind of behavior
desired.
2020-04-13 14:52:34 -04:00
Lioncash
3a5a3e2011
CHudRadarInterface: Make use of const where applicable
...
Same behavior, but makes it obvious some references are only used in a
read-only manner.
2020-04-13 14:25:59 -04:00
Lioncash
0a01a30bf5
CScanDisplay: Eliminate implicit sign conversions
...
Removes implicit sign conversions and also dehardcodes quite a bit of
sizes.
2020-04-12 22:05:52 -04:00
Lioncash
96e3eaf726
CSplashScreen: Make use of std::array where applicable
...
Same behavior, stronger typing.
2020-04-12 11:30:09 -04:00
Lioncash
d5e57b5348
CCompoundTargetReticle: Make skZeroRenderState constexpr
...
Allows eliding runtime initializers where applicable. Particularly for
the static data.
2020-04-12 04:19:53 -04:00
Jack Andersen
5b4441ac36
Update fmtlib
2020-04-11 12:51:39 -10:00
Luke Street
e38a7f97bd
Runtime/GuiSys: Replace bitfield unions with constructor initializers
2020-04-10 15:11:10 -04:00
Lioncash
1e6b6622fe
CGuiFrame: Remove unnecessary mutable specifiers
...
We can just drop the const qualifier on ProcessMouseInput() to make the
mutable specifier unnecessary.
2020-04-10 02:17:50 -04:00
Lioncash
2fadaf544d
CCompoundTargetReticle: Remove mutable specifier on x28_noDrawTicks
...
This is no longer needed at all.
2020-04-09 21:35:16 -04:00
Lioncash
b72d217a68
CCompoundTargetingReticle: Remove mutable specifier on m_scanRetRenderer
...
This can be trivially resolved by dropping const qualifiers on the
necessary member functions.
2020-04-09 21:31:22 -04:00
Lioncash
35ca901784
CHudRadarInterface: Remove mutable specifiers from class members
...
We can just drop the const qualifiers on the relevant member functions
to make these unnecessary.
2020-04-09 21:23:50 -04:00
Lioncash
db0091e9cd
CWordBreakTables: Make use of std::array where applicable
...
Same behavior, but allows directly querying iterators. We can also make
these arrays constexpr.
2020-04-07 13:24:23 -04:00
Lioncash
f7962cb3f7
CRasterFont: Extend CFontInfo buffer to 64 characters
...
GM8E v0 seems to be using at least a buffer 64 characters in size, not
40.
2020-04-06 06:59:22 -04:00
Lioncash
94264f6fe6
CRasterFont: Collapse loop into a std::find_if in InternalGetGlyph()
...
Same behavior, less code.
2020-04-05 06:01:29 -04:00
Lioncash
67f6666ea1
Runtime: Add more usages of explicit
...
Prevents error-prone implicit conversions where applicable.
This targets the regular RuntimeCommon target this time around.
2020-03-31 03:53:49 -04:00
Lioncash
6dce70895c
CIOWin: Make Draw() non-const
...
Allows removing several const_cast usages within the codebase.
2020-03-29 21:56:49 -04:00
Lioncash
0d3bab4c14
CScanDisplay: Remove use of const_cast
...
The draw function is essentially not fully const in behavior, so we can
remove the const qualifiers where necessary.
2020-03-29 21:44:10 -04:00
Lioncash
2d8e94911a
CGuiTextSupport: Eliminate the use of const_cast
...
We can supply a const and non-const variant to eliminate the need to
const_cast here.
2020-03-29 21:37:11 -04:00
Lioncash
f3afcf7299
CGuiTextPane: Remove stray unnecessary const_cast in Draw()
...
Draw() isn't const qualified, so there's no need to cast away const
here.
2020-03-29 21:25:47 -04:00
Lioncash
603942daaf
CTextRenderBuffer: Remove use of const_cast in Render()
...
Makes for much less casting.
2020-03-29 20:27:04 -04:00
Lioncash
04a42980ab
Revert "Revert "CTextRenderBuffer: Forward declare structs where applicable""
...
This reverts commit 16745f3a7b
.
We can simply default the move constructor and move assignment operator
to make this work.
2020-03-29 20:09:16 -04:00
Phillip Stephens
16745f3a7b
Revert "CTextRenderBuffer: Forward declare structs where applicable"
2020-03-29 16:35:02 -07:00
Phillip Stephens
f3721844b9
Merge pull request #282 from lioncash/struct
...
CTextRenderBuffer: Forward declare structs where applicable
2020-03-29 16:04:32 -07:00
Lioncash
232ae12802
CGuiTextPane: Make use of std::array where applicable
...
Same behavior, but with stronger typing and allows removing of a
hardcoded array size.
2020-03-29 08:00:40 -04:00
Lioncash
0aff4dc21e
CTextRenderBuffer: Remove use of const_cast within Render()
...
Same behavior but way less casting.
2020-03-29 04:42:58 -04:00
Lioncash
20b74c4818
CTextRenderBuffer: Forward declare structs where applicable
...
These are only used internally, so we can completely hide these structs
from external view.
This allows their implementation to be changed without needing to
recompile all the headers that include it.
2020-03-29 03:54:29 -04:00
Lioncash
fda08db9b1
CHudVisorBeamMenu: Dehardcode array sizes
...
Same behavior, but queries the container for the size rather than
hardcoding it in loop bounds.
2020-03-29 03:08:41 -04:00
Lioncash
413483a996
CHudFreeLookInterfaceXRay: Assign free look and control held flags in SetFreeLookState()
...
GM8Ev0 does this.
2020-03-29 02:08:51 -04:00
Lioncash
ad07b993c8
CHudFreeLookInterface: Collapse conditional within SetFreeLookState()
...
Same behavior, less code.
2020-03-29 02:03:20 -04:00
Lioncash
59fbefbd58
CGuiWidget: Provide names for all function prototypes
...
Makes parameter introspection nicer with IDEs and also renames ambiguous
"v" names to something more self-descriptive.
2020-03-29 01:52:23 -04:00
Lioncash
194cdf145f
Runtime: Use nullptr where applicable
...
Same behavior, but no magic 0 value.
While we're in the same area, we can do minor cosmetic changes.
2020-03-27 20:18:54 -04:00
Phillip Stephens
e0fe365dfd
Merge pull request #278 from lioncash/explicit
...
General: Make use of explicit constructors where applicable
2020-03-27 14:10:19 -07:00
Lioncash
241a66dc0a
General: Make use of explicit constructors where applicable
...
Gets rid of potential error prone implicitly constructing constructors.
2020-03-27 06:00:17 -04:00
Lioncash
fcf70aeb2a
CGuiWidgetIdDB: Remove redundant std::make_pair funcs
...
Same behavior, less code.
2020-03-26 03:55:28 -04:00
Lioncash
f4b3fb947e
CScanDisplay: Make constructor explicit
...
Prevents error-prone implicit construction from occurring.
2020-03-25 20:46:08 -04:00
Luke Street
8314d5b6ef
Merge branch 'pr-255'
2020-03-25 02:09:02 -04:00
Luke Street
3734a09ed3
CGuiWidget: Make GetIsFinishedLoading non-const
2020-03-25 02:01:47 -04:00
Lioncash
40fc3f9dd8
CModelBoo: Remove usages of const_cast
...
Many functions are modifying internals of CBooModel and const-casting
is performed in order to work around functions being const when they
really shouldn't be.
This amends the function signatures in order to allow these functions to
exist without const_cast, making code much nicer to read.
2020-03-25 02:01:46 -04:00
Lioncash
fc4df76afc
General: Make use of emplace_back where applicable
...
Allows for in-place construction. Also results in less code to read in
certain usages.
2020-03-21 00:30:12 -04:00
Luke Street
44325a5ad4
Merge pull request #248 from lioncash/slider
...
CGuiSliderGroup: Make use of std::array where applicable
2020-03-18 01:05:30 -04:00
Luke Street
b13a6b491b
Merge pull request #245 from lioncash/drawstring
...
CDrawStringOptions: Resize vector within constructor
2020-03-18 01:04:08 -04:00
Luke Street
7c8de88fd7
Merge pull request #244 from lioncash/pane
...
CAui*: Make use of std::array where applicable
2020-03-18 01:03:50 -04:00
Lioncash
9d5857e139
CGuiSliderGroup: Make use of std::array where applicable
...
Same behavior, stronger typing.
2020-03-17 22:22:06 -04:00
Lioncash
1d6354ba26
CDrawStringOptions: Resize vector within constructor
...
Same behavior, but constructs the vector with the necessary size, rather
than constructing and resizing after the fact.
2020-03-17 21:35:08 -04:00
Lioncash
fa6006003d
CAuiEnergyBarT01: Make use of std::array where applicable
...
Same behavior, but allows dehardcoding array sizes.
2020-03-17 21:26:57 -04:00
Lioncash
e534f00706
CAuiEnergyBarT01: Convert typedef into using alias
...
Same behavior, but nicer to read.
2020-03-17 21:24:01 -04:00
Lioncash
15e4d4aa01
CAuiImagePane: Make use of std::array where applicable
...
Same behavior, stronger typing.
2020-03-17 21:22:17 -04:00
Luke Street
eeb09f512d
Merge pull request #220 from lioncash/array
...
CHud*: Make use of std::array where applicable
2020-03-15 19:56:33 -04:00
Luke Street
e1d622d47b
Merge pull request #221 from lioncash/emplace
...
CFontImageDef: Make use of emplace_back where applicable
2020-03-15 19:44:23 -04:00
Lioncash
e64dfe76b2
CFontImageDef: Make use of emplace_back where applicable
...
Same behavior, but constructs the instances directly within the
container.
2020-03-14 18:45:37 -04:00
Lioncash
e0392d69c4
CHudEnergyInterface: Make use of std::array where applicable
2020-03-14 17:59:39 -04:00
Lioncash
c4796ed090
CHudMissileInterface: Make use of std::array where applicable
2020-03-14 17:57:05 -04:00
Lioncash
9fafb24fb9
CHudVisorBeamMenu: Make use of std::array where applicable
2020-03-14 17:52:30 -04:00
Lioncash
07542ff335
CHudThreatInterface: Make use of std::array where applicable
...
Same behavior, but with stronger typing.
2020-03-14 17:38:57 -04:00
Lioncash
097d4a4422
Runtime: Collapse emplace_back() calls where applicable
...
Same behavior, but with less code.
2020-03-13 17:14:44 -04:00
Phillip Stephens
b492c91ccf
Merge pull request #197 from lioncash/cond
...
CFontRenderState: Collapse common switch cases in RefreshColor()
2020-03-08 18:03:17 -07:00