Lioncash
1b37122b12
Sequencer: std::move studio instances in constructor
...
Avoids an unnecessary atomic reference count increment and decrement
2019-09-10 20:08:38 -04:00
Lioncash
2c75668e0a
Sequencer: Default ChannelState's destructor
2019-09-10 20:06:31 -04:00
Lioncash
9ec78d6b9f
Sequencer: Always initialize ChannelState channel ID
...
Provides a deterministic initial state for the default constructor case.
2019-09-10 20:05:05 -04:00
Lioncash
5f76f0ecbf
Sequencer: Use std::array for m_ctrlVals
...
This is the only array in the header that isn't using std::array.
2019-09-10 20:03:26 -04:00
Lioncash
f50d67eff0
Sequencer: Eliminate magic values where applicable
...
Many of them are just representative of the sizes of an array, so we can
just query the array instead.
2019-09-10 19:48:31 -04:00
Phillip Stephens
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
Phillip Stephens
d88b14c38a
Merge pull request #37 from lioncash/emitter
...
Emitter: Use std::array where applicable
2019-09-08 00:10:40 -07:00
Phillip Stephens
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
Phillip Stephens
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
Phillip Stephens
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
Phillip Stephens
9b482ba013
Merge pull request #30 from lioncash/include
...
Editor: Amend includes of ProjectModel.hpp
2019-08-28 22:30:35 -07:00
Phillip Stephens
5ee32c105b
Merge pull request #32 from lioncash/status-bar
...
StatusBarWidget: Use std::array where applicable
2019-08-28 22:29:44 -07:00
Phillip Stephens
af3f2a8d0c
Merge pull request #33 from lioncash/studio
...
StudioSetupWidget: Use std::array where applicable
2019-08-28 22:29:36 -07:00
Phillip Stephens
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
ef86e69421
(my bad!)
2019-08-27 23:40:16 -04:00
Phillip Stephens
1604cbeb70
Linux compile fixes
2019-08-27 18:02:30 -07:00
Phillip Stephens
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
Phillip Stephens
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 4fdb2bde8c
.
2019-08-26 22:40:14 -04:00
Phillip Stephens
8569cab4d7
Merge pull request #27 from AxioDL/revert-23-rotate
...
Revert "Editor/LayersEditor: Simplify moveRows implementation"
2019-08-26 18:31:36 -07:00
Phillip Stephens
4fdb2bde8c
Revert "Editor/LayersEditor: Simplify moveRows implementation"
2019-08-26 18:31:18 -07:00
Phillip Stephens
80da83eb16
Merge pull request #25 from lioncash/array
...
Envelope: Make lookup table const
2019-08-26 15:54:04 -07:00
Phillip Stephens
8f810e571c
Merge pull request #24 from lioncash/emplace
...
General: Use emplace_back where applicable
2019-08-26 15:53:55 -07:00
Phillip Stephens
8f8add1eb1
Merge pull request #23 from lioncash/rotate
...
Editor/LayersEditor: Simplify moveRows implementation
2019-08-26 15:53:46 -07:00
Phillip Stephens
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
Phillip Stephens
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
Phillip Stephens
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