Phillip Stephens
757defee7a
Merge pull request #43 from lioncash/array2
...
AudioGroupPool: Use std::array where applicable
2019-09-10 23:53:38 -07:00
Lioncash
321a229dfd
AudioGroupPool: Use std::array where applicable
...
Makes the array types strongly-typed and also allows for size querying.
2019-09-10 21:09:10 -04:00
Lioncash
60dad60448
CMakeLists: Add MSVC standards conformance flags
...
Applies flags to make MSVC's compiler be more standards compliant.
2019-09-10 20:43:37 -04: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
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
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
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
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
4fdb2bde8c
Revert "Editor/LayersEditor: Simplify moveRows implementation"
2019-08-26 18:31:18 -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
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
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
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
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
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
Lioncash
f140972920
CMakeLists: Set CMAKE_AUTOMOC
...
This allows the build system to automatically invoke moc for us when
building the GUI. Now we don't need to manually keep track of which
files need to be wrapped, simplifying the CMake file a little bit more.
2019-08-25 18:33:41 -04:00
Lioncash
07b4f02d1d
CMakeLists: Migrate off separate variables for source files where applicable
...
We can append the sources to the target with target_sources() instead.
2019-08-25 18:33:41 -04:00
Lioncash
771abb3390
CMakeLists: Organize GUI source listings
...
Alphabetizes and sorts the entries for linear readability.
2019-08-25 18:33:37 -04:00
Phillip Stephens
6850f0b2c9
Add missing include
2019-08-25 09:25:27 -07:00
Phillip Stephens
c08dd97cbf
Merge pull request #19 from lioncash/key-array
...
Editor/KeymapEditor: Use std::array where applicable
2019-08-25 09:00:31 -07:00
Phillip Stephens
db9e911a23
Merge pull request #17 from lioncash/curve
...
CurveEditor: Use std::array where applicable
2019-08-25 09:00:15 -07:00
Phillip Stephens
2b09d86df4
Merge pull request #16 from lioncash/const
...
ADSREditor: Make colors const
2019-08-25 09:00:07 -07:00
Lioncash
db805075d9
Editor/KeymapEditor: Use std::array where applicable
...
Strongly enforces the type of the array and allows removing quite a few
hardcoded size values.
2019-08-25 08:23:23 -04:00
Lioncash
b1ab67f8c2
CurveEditor: Use std::array where applicable
...
Allows simplifying how redo/undo data gets moved around and also
eliminates a few hardcoded magic values for sizes.
2019-08-25 06:08:15 -04:00
Lioncash
532f3a5265
ADSREditor: Use const where applicable
...
Enforces immutability and makes for less mental book-keeping in drawing
code.
2019-08-25 05:30:37 -04:00
Lioncash
c736fdd00d
ADSREditor: Make colors const
...
These aren't intended to be modified by anything, so these can be made
const.
2019-08-25 05:11:55 -04:00
Lioncash
a016b72ea6
CMakeLists: Migrate Qt checking over to using components
...
Qt has since made their library usable with the components system within
CMake, so we can just use that to simplify the library finding and linking.
2019-08-25 05:02:32 -04:00
Phillip Stephens
cec062797e
Merge pull request #13 from lioncash/qt
...
Editor: Use Qt-5 signal/slot connections where applicable
2019-08-25 01:38:49 -07:00
Lioncash
43eff31412
Editor: Use Qt 5 signal/slot connections where applicable
...
Migrates the UI signals and slots over to the new Qt 5 syntax. This
syntax is nicer, as the compiler can report errors at compile-time, as
opposed to the other method which would require a runtime error to
indicate any issues with the signals and slots.
2019-08-25 04:13:36 -04:00
Lioncash
67c64a2d4e
General: Make use of override where applicable
...
Continues the use of override.
2019-08-25 01:28:36 -04:00
Jack Andersen
b0e4973c64
Massive fmtlib refactor
2019-07-19 18:23:25 -10:00
Jack Andersen
2a3444400e
Better CMake dependency handling
2019-06-11 16:02:52 -10:00
Jack Andersen
1b10016369
Fix some compilation warnings
2019-04-06 18:59:49 -10:00