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
Phillip Stephens
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
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
8da26720d1
Merge pull request #18 from lioncash/fwd
...
General: Clean up inclusions
2019-08-25 09:00:23 -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
Phillip Stephens
3310bf5b6e
Merge pull request #15 from lioncash/cmake
...
CMakeLists: Migrate Qt checking over to using components
2019-08-25 08:59:50 -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
d7aaff25d0
General: Clean up inclusions
...
Ensures that each header includes all of its dependencies that can't be
forward declared.
2019-08-25 07:34:27 -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
bc8218e183
Merge pull request #14 from lioncash/cmake
...
CMakeLists: Add source files directly to amuse target
2019-08-25 01:39:02 -07: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
ddc5661a38
CMakeLists: Migrate off directly modifying CMAKE_CXX_FLAGS
...
We can just use add_compile_options to append the compilation flag to
the directory property.
2019-08-25 04:28:27 -04:00
Lioncash
6d7665ecd6
CMakeLists: Add source files directly to amuse target
...
Same thing, less to read.
2019-08-25 04:26:04 -04: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
Phillip Stephens
cbf331823f
Merge pull request #12 from lioncash/override
...
General: Make use of override where applicable
2019-08-24 23:47:53 -07:00
Lioncash
67c64a2d4e
General: Make use of override where applicable
...
Continues the use of override.
2019-08-25 01:28:36 -04:00
Phillip Stephens
82d1a8d214
Merge pull request #11 from lioncash/shadow
...
General: Eliminate instances of shadowing
2019-08-24 21:38:45 -07:00
Lioncash
051e4b1704
General: Eliminate instances of shadowing
...
Avoids instances of local variable shadowing (which also silences some
-Wshadow warnings).
2019-08-25 00:33:58 -04:00
Phillip Stephens
520061a3bb
Merge pull request #10 from lioncash/noexcept
...
Common: Make interfaces constexpr and noexcept where applicable
2019-08-24 21:16:04 -07:00
Lioncash
a8f4c1d34a
Common: Less strict memory ordering requirements for IObj
...
Applies the same relaxed restrictions as applied to boo in
4d91a1b3c3
and
84f62a0f2c
2019-08-25 00:09:48 -04:00
Lioncash
c46bb3f72b
Common: Make interfaces constexpr and noexcept where applicable
...
Many of these types are trivial helper types. These can be made
constexpr and noexcept to allow using them with other interfaces in a
more flexible manner.
2019-08-25 00:04:01 -04:00
Phillip Stephens
529efa72b4
Fixes for `override`
2019-08-10 17:48:04 -07:00
Jack Andersen
1e35db90aa
Windows build fixes
2019-07-27 15:18:09 -10:00
Jack Andersen
b0e4973c64
Massive fmtlib refactor
2019-07-19 18:23:25 -10:00