390 Commits

Author SHA1 Message Date
Lioncash
a8c9d555fe VolumeTable: Use std::array where applicable
Makes the arrays strongly typed.
2019-09-10 20:29:44 -04:00
Lioncash
7bc23b7190 VolumeTable: Remove unnecessary Common include
We can just include <algorithm> directly to eliminate an indirect
include.
2019-09-10 20:27:10 -04:00
6c07ec907a
Merge pull request #38 from lioncash/athena
General: Be explicit about athena's Endian/SeekOrigin type
2019-09-08 17:51:10 -07:00
Lioncash
b6f0201fbb General: Be explicit about athena's Endian type
Allows this code to still compile if the enum is ever changed into an
enum class.
2019-09-08 17:22:38 -04:00
Lioncash
d10a0ac7f1 General: Be explicit about athena's SeekOrigin type
Allows the code to still compile if the enum is turned into an enum
class.
2019-09-08 16:59:29 -04:00
d88b14c38a
Merge pull request #37 from lioncash/emitter
Emitter: Use std::array where applicable
2019-09-08 00:10:40 -07:00
8b411b35a1
Merge pull request #36 from lioncash/bool
General: Make operator bool() instances explicit
2019-09-08 00:10:33 -07:00
Lioncash
29e7d8bc1e Emitter: Use std::array where applicable
Makes the data more strongly-typed and prevents implicit array->pointer
decay
2019-09-07 20:55:26 -04:00
Lioncash
7600f8ad27 General: Make operator bool() instances explicit
Prevents error-prone implicit conversions to bool.
2019-09-07 11:27:43 -04:00
0be0ca2911
Merge pull request #35 from lioncash/clamp
General: Amend clamp parameter order
2019-09-07 07:04:40 -07:00
Lioncash
50c4b5cdab General: Amend clamp parameter order
Batch replace on switching to standardized variants assumed common
ordering, which evidently wasn't the case
2019-09-07 06:40:20 -04:00
5da58eb1da
Merge pull request #34 from lioncash/adsr
ADSREditor: Use std::array for m_percentTexts
2019-08-30 00:55:16 -07:00
Lioncash
344dbea31a ADSREditor: Use std::array for m_percentTexts
Same behavior, but allows for stronger typing and dehardcoding of sizes.
2019-08-30 02:24:41 -04:00
9b482ba013
Merge pull request #30 from lioncash/include
Editor: Amend includes of ProjectModel.hpp
2019-08-28 22:30:35 -07:00
5ee32c105b
Merge pull request #32 from lioncash/status-bar
StatusBarWidget: Use std::array where applicable
2019-08-28 22:29:44 -07:00
af3f2a8d0c
Merge pull request #33 from lioncash/studio
StudioSetupWidget: Use std::array where applicable
2019-08-28 22:29:36 -07:00
8d944ac5b0
Merge pull request #31 from lioncash/array
Editor/KeyboardWidget: Make use of std::array where applicable
2019-08-28 22:29:27 -07:00
Lioncash
792199897c StudioSetupWidget: Move definition of EffectIntrospection into the cpp file
Nothing in the header file requires the complete definition, so we can
use a forward declaration and move the type into the cpp file.
2019-08-28 01:31:27 -04:00
Lioncash
bfdb504457 StudioSetupWidget: Use std::array where applicable
Makes the type of the array strongly-typed.
2019-08-28 01:15:31 -04:00
Lioncash
9c2c2be8eb StatusBarWidget: Use std::array where applicable
A fairly basic replacement to make the type of the array strongly typed.
2019-08-28 00:17:54 -04:00
Lioncash
e6af69f882 Editor/KeyboardWidget: Make use of std::array where applicable
Makes the types of the lookup tables and widget arrays strongly typed.
This also makes it a little more straightforward to dehardcode some
magic values related to the array sizes.
2019-08-28 00:06:57 -04:00
Lioncash
ce70df2e8f Editor: Amend includes of ProjectModel.hpp
This was missed when organizing includes in commit
ef86e69421dc8fbae4bb20ca597f79f64e5700c0 (my bad!)
2019-08-27 23:40:16 -04:00
1604cbeb70
Linux compile fixes 2019-08-27 18:02:30 -07:00
3b7d577f73
Merge pull request #29 from lioncash/gui
Editor: Include headers where necessary
2019-08-27 18:00:02 -07:00
Lioncash
ef86e69421 Editor: Include headers where necessary
Avoids propagating dependencies through indirect inclusions, and also
gets rid of some header dependencies entirely.
2019-08-27 20:57:02 -04:00
107ddeb5a9
Merge pull request #28 from lioncash/revert
Revert "Revert "Editor/LayersEditor: Simplify moveRows implementation""
2019-08-26 20:00:23 -07:00
Lioncash
bf872e9037 Editor/LayersEditor: Use regular iterators instead of move iterators
Same behavior, but compatible with GCC
2019-08-26 22:41:40 -04:00
Lioncash
a178d55007 Revert "Revert "Editor/LayersEditor: Simplify moveRows implementation""
This reverts commit 4fdb2bde8c06c0d2055615f5af637fbaadeacb9f.
2019-08-26 22:40:14 -04:00
8569cab4d7
Merge pull request #27 from AxioDL/revert-23-rotate
Revert "Editor/LayersEditor: Simplify moveRows implementation"
2019-08-26 18:31:36 -07:00
4fdb2bde8c
Revert "Editor/LayersEditor: Simplify moveRows implementation" 2019-08-26 18:31:18 -07:00
80da83eb16
Merge pull request #25 from lioncash/array
Envelope: Make lookup table const
2019-08-26 15:54:04 -07:00
8f810e571c
Merge pull request #24 from lioncash/emplace
General: Use emplace_back where applicable
2019-08-26 15:53:55 -07:00
8f8add1eb1
Merge pull request #23 from lioncash/rotate
Editor/LayersEditor: Simplify moveRows implementation
2019-08-26 15:53:46 -07:00
401c977378
Merge pull request #26 from lioncash/clamp
Common: Replace amuse::clamp with std::clamp
2019-08-26 15:53:35 -07:00
Lioncash
eaf62288a2 Common: Replace amuse::clamp with std::clamp
We can use the standardized facility for this now with C++17
2019-08-26 05:14:21 -04:00
Lioncash
e31dfc6f98 Envelope: Make lookup table const
This is only ever read from, so we can allow the compiler to toss it
into the read-only segment.
2019-08-26 04:38:36 -04:00
Lioncash
176493c539 General: Use emplace_back where applicable
Same thing, less reading.
2019-08-26 03:41:29 -04:00
Lioncash
7ef7562b06 Editor/LayersEditor: Simplify moveRows implementation
We can leverage std::rotate to make shuffling around the mappings less
complex by defining a begin, end, and a pivot point and using them with
it.
2019-08-26 02:35:28 -04:00
88c017926b
Merge pull request #22 from lioncash/str
Editor/ProjectModel: Use std::move where applicable
2019-08-25 23:09:14 -07:00
Lioncash
a380d4da21 Editor/ProjectModel: Use std::move where applicable
Amends the node interfaces to utilize std::move where applicable. This
allows avoiding some string copies altogether, as well as some IObj
atomic reference count increments and decrements.
2019-08-26 00:51:09 -04:00
9cc47aa803
Merge pull request #21 from lioncash/flags
Editor/CMakeLists: Add a few Qt compilation definitions to enforce correctness
2019-08-25 20:25:15 -07:00
Lioncash
8b4a096b50 Editor/CMakeLists: Add QT_NO_CAST_FROM_BYTEARRAY
Disables implicit conversions from QByteArray, instead requiring such
conversions to be explicit.
2019-08-25 23:06:55 -04:00
Lioncash
f269b66f85 Editor/CMakeLists: Add QT_NO_PROCESS_COMBINED_ARGUMENT_START
Disables an error-prone start() overload for QProcess. This prevents
cases where arguments to a process may be split unintentionally.
2019-08-25 22:59:47 -04:00
Lioncash
694ecdd9c3 Editor/CMakeLists: Add QT_NO_URL_CAST_FROM_STRING
Prevents implicit conversion from QString to QUrl in order to avoid
potentially incorrect conversions from being performed. This makes all
such conversions explicit.
2019-08-25 22:56:50 -04:00
Lioncash
e3dc475d7d Editor/CMakeLists: Add QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
Requires narrowing conversions to be made explicitly.
2019-08-25 22:54:20 -04:00
Lioncash
da54ade80b Editor/CMakeLists: Add QT_NO_CAST_FROM/TO_ASCII
Prevents implicit conversions to QString, requiring the conversions to
be made explicitly. Prevents potentially incompatible encodings from
being intermixed with one another.
2019-08-25 22:53:16 -04:00
Lioncash
658c33eb0d Editor/CMakeLists: Add QT_USE_QSTRINGBUILDER definition 2019-08-25 21:37:48 -04:00
ea84a7e35b
Merge pull request #20 from lioncash/cmake
Editor/CMakeLists: Enable AUTOMOC, AUTORCC, and AUTOUI
2019-08-25 18:24:33 -07:00
Lioncash
56a7d842b5 CMakeLists: Set CMAKE_AUTORCC
Allows the build system to automatically handle qrc resource files
automatically without having to do all the manual book keeping.
2019-08-25 18:55:00 -04:00
Lioncash
f452516f12 CMakeLists: Set CMAKE_AUTOUIC
Allows the build system to automatically handle invoking uic for UI
files. This is beneficial since CMake will cache runs of uic, avoiding
running it again if its not necessary (no modifications were made to the
file, etc). This also means we don't need to keep track of all the UI
files explicitly in the CMake file.
2019-08-25 18:33:41 -04:00