351 Commits

Author SHA1 Message Date
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
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
6850f0b2c9
Add missing include 2019-08-25 09:25:27 -07:00
c08dd97cbf
Merge pull request #19 from lioncash/key-array
Editor/KeymapEditor: Use std::array where applicable
2019-08-25 09:00:31 -07:00
8da26720d1
Merge pull request #18 from lioncash/fwd
General: Clean up inclusions
2019-08-25 09:00:23 -07:00
db9e911a23
Merge pull request #17 from lioncash/curve
CurveEditor: Use std::array where applicable
2019-08-25 09:00:15 -07:00
2b09d86df4
Merge pull request #16 from lioncash/const
ADSREditor: Make colors const
2019-08-25 09:00:07 -07:00
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
bc8218e183
Merge pull request #14 from lioncash/cmake
CMakeLists: Add source files directly to amuse target
2019-08-25 01:39:02 -07:00
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
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
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
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
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
Jack Andersen
a74caa5fb0 New lzokay API 2019-06-14 14:36:28 -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
Jack Andersen
aeaba9366d Support for compiling against libc++ 2019-04-06 18:55:39 -10:00
Jack Andersen
e04603bb7d Fix SoundMacro generation for SampleView 2019-03-09 23:13:17 -10:00
Jack Andersen
aa5abd5ff5 Multiple StartSample bug fix 2019-03-08 22:58:02 -10:00
Jack Andersen
a4b8946ee2 Ensure all ObjectIDs are unique project-wide 2019-02-28 10:34:26 -10:00
Jack Andersen
9f2bb1b371 Implicit switch fallthrough refactor 2019-02-17 19:45:24 -10:00
Jack Andersen
54ef2dd73b Correct SCALEVOLUME behavior 2019-02-07 15:07:46 -10:00