Commit Graph
266 Commits
Author SHA1 Message Date
itsmattkc 3929004535 cmake: reworked everything and add unit tests 2021-04-22 11:50:24 +10:00
itsmattkc 77d4b18a60 updated copyright year for 2021 [skip ci] 2021-04-17 18:56:50 +10:00
itsmattkc 9328539373 slider: reworked sliderbase and derivatives
Mostly cleaning up code, SliderBase was fairly messy.
2021-04-17 12:49:21 +10:00
Simran fca485bd69 Fix plural handling for translations (#1424)
* .arg() doesn't handle plurals, replace %1 with %n and pass number to tr(), but only if there is an accompanying word for that we want singular/plural translations and only for whole numbers.

* Qt's translation methods only accept integers and we don't know what grammatical number form would be correct for floating-point numbers in different languages anyway.

* Add optional 2nd argument to SliderBase::SetFormat() to activate deferred plural handling:
  SetFormat(QT_TRANSLATE_N_NOOP("olive::SliderBase", "%n unit(s)"), true)

* Generate en_US.ts with lupdate's -pluralonly option. Only source strings that require plural handling need to be translated (as long as the source language is American English).
2021-04-13 00:58:46 +02:00
itsmattkc 17f40cf91f preferencesdialog: reimplemented default sequence settings
I'm not sure why this was removed, it's a pretty important thing
to be able to configure, but anyway it's back now.
2021-04-12 22:50:34 +10:00
itsmattkc 82d2a253d9 preferences: revised audio tab
Cleaned up and improved the audio tab.

Fixes #1546. Kind of. There doesn't seem to be much need for a
sample rate selection for our current high-level audio system.
If we implement higher end audio backends in the future (e.g.
ASIO, JACK), those can be given a sample rate setting.
2021-04-11 20:20:01 +10:00
itsmattkc f9b60538fc project: removed footage comparison code that had been stubbed anyway 2021-04-11 18:52:12 +10:00
itsmattkc 792b3b7a44 explicitly state character encoding in crash reports 2021-04-10 13:22:05 +10:00
itsmattkc 0cb8da3de1 use WindowModal on all crash handler messageboxes
Improves appearance on macOS.
2021-04-09 08:47:09 +10:00
itsmattkc 11548b3a74 added missing semicolon 2021-04-08 22:38:42 +10:00
itsmattkc ec3ee9e964 fix symbol discovery on macOS 2021-04-08 20:00:28 +10:00
itsmattkc cb75e37e77 moved several files around
Mostly moved classes that became node derivatives into the node/ folder.
2021-04-08 12:15:59 +10:00
itsmattkc bb32048c65 use frame rate and timebase less interchangeably 2021-04-07 13:08:25 +10:00
itsmattkc 898ea25e89 finished merge of viewer and footage 2021-04-06 13:08:56 +10:00
itsmattkc 57ddae8920 h264section: set min bit rate on target file size 2021-04-06 12:38:31 +10:00
itsmattkc 4066fcba90 began merging footage and viewer 2021-04-05 16:41:37 +10:00
itsmattkc 9be014c0b6 refactored so sequence is again a derivative of viewer 2021-04-05 14:41:59 +10:00
itsmattkc 748f45b7b8 merged new crashpad implementation 2021-04-05 13:33:21 +10:00
itsmattkc b42b728d8e fixed autorecovery index issue 2021-04-05 13:01:59 +10:00
itsmattkc 5b10faee84 try symbol path without .. 2021-04-01 17:16:18 +11:00
itsmattkc 2d20673fe8 fixed human error in crash handler 2021-04-01 16:27:42 +11:00
itsmattkc 636daddc61 cleaned up crashpad code 2021-04-01 16:15:50 +11:00
itsmattkc 0ee98a47ea project: implemented autorecovery core
Not done yet, but nearly.
2021-04-01 13:10:43 +11:00
itsmattkc 5a2db656b6 fixed human error in crashhandler 2021-04-01 11:59:31 +11:00
itsmattkc 6abe38b629 ci: dump crashpad symbols on linux 2021-04-01 11:47:31 +11:00
itsmattkc 4681db5919 fixed access after delete
Fixes #1538
Fixes #1541
2021-03-31 12:07:57 +11:00
itsmattkc 7e00ffa88c more improvements to crash dialog 2021-03-23 18:41:07 +11:00
itsmattkc 9a2949cf4d fixed crash handler bug 2021-03-23 17:54:31 +11:00
itsmattkc 62332eb216 keysequenceeditor: override backspace and esc behavior
Fixes #1455
2021-03-21 23:26:33 +11:00
itsmattkc ac39c6a461 fixed erroneous call to qbytearray 2021-03-21 01:15:39 +11:00
itsmattkc 43318647ac fixed multiple definitions in crash handler 2021-03-21 01:12:40 +11:00
itsmattkc 551ca40dea new style of crashpad report 2021-03-21 01:01:23 +11:00
itsmattkc feab5e8936 package crashpad symbols with app and use them 2021-03-21 00:21:20 +11:00
itsmattkc c6a2349ad6 improved slider ladders 2021-03-15 13:43:04 +11:00
itsmattkc b21271534f added UI for editing video parameters in nodes 2021-02-20 13:27:56 +11:00
itsmattkc cc9747ede4 moved ColorManager to a node
Reduces code by reusing the existing node infrastructure. Also
helps prevent race conditions since the node/render system is
designed for multithreading.
2021-02-18 14:33:08 +11:00
itsmattkc d7c5ac4b44 implement entire project in nodes
Project items are now represented directly in nodes opening up more versatility and possibilities. This is the first iteration of this and will be buggy. Need to test thoroughly.
2021-02-15 21:31:57 +11:00
itsmattkc 81c1922911 use strings to connect nodes
This makes the node system somewhat more high-level with the intent of making
working with them far more flexible and stable. By making the architecture more
abstracted, it becomes far less rigid which should allow us to do even more
with it and make it much less crash prone.
2021-02-09 15:48:37 +11:00
itsmattkc ad4b83a098 new undo system
Also enables undoing when working with node input arrays
2021-01-29 16:10:34 +11:00
itsmattkc b4dd976e90 revised UI color system when showing nodes
Olive now has a set of colors that categories can be "assigned" to. The timeline also shares the same colors as the NodeView. Colors can be configured per node (aka per clip).
2021-01-15 18:44:34 +11:00
itsmattkc 181235f6ce began new infrastructure
Yep, this is another one of my "famous" sweeping rewrites. Expect things to break.

Goals for this are:
- Greatly simplify node connections (particularly with arrays) so the code requires less maintenance/is more stable
- Redesign node structure to address issues where UI would stall for lengthy periods of time
- Less reliance on shared ptrs/greater reliance on QObject system for inheritance/memory management
- General code cleanup and improvements
2021-01-05 11:20:38 +11:00
itsmattkc 3024d68d59 fixed unused variable warning 2020-12-30 18:08:43 +11:00
itsmattkc 6cb6407bd8 don't use shared ptrs on streams 2020-12-16 13:46:19 +11:00
itsmattkc e12013e2fb don't use shared ptrs for project items 2020-12-16 10:28:43 +11:00
itsmattkc 1cd07bc1f7 improved footage relink
Interface improvements and uses more heuristics to relink files faster.
2020-12-13 14:27:47 +11:00
itsmattkc 0699795c6f export: implemented audio bit rate setting
The UI for this isn't perfect, I just wrote this in because I needed it. But the backend is solid.
2020-12-04 01:01:50 +11:00
itsmattkc 56b17dd69f exportdialog: prioritize preview area when resizing 2020-11-28 10:21:35 +11:00
itsmattkc a2d855b102 improve UI feedback when cancelling a task 2020-11-27 14:47:31 +11:00
itsmattkc 992b6eb952 added plural forms to translatable strings
Fixes #1421
2020-11-27 13:04:49 +11:00
itsmattkc 82cc590423 updated splash url in about dialog
Fixes #1246
2020-11-17 23:15:32 +11:00