Mike-Solar
bb40b4923e
style: unify identifier naming per updated conventions
...
Automated with clang-tidy readability-identifier-naming (config added to
.clang-tidy) plus scripted passes, per the updated rules now documented
in CONTRIBUTING.md:
- types (class/struct/enum/alias/template params): PascalCase
- functions, variables, members: snake_case (incl. rational -> Rational)
- private/protected members: trailing underscore; static member
variables likewise (instance_, available_themes_)
- constants and enum values: snake_case (kLinear -> k_linear,
F32P -> f32p); ALL_CAPS reserved for macros
- macros: OAK_ prefix (OLIVE_ADD_TEST/OLIVE_ASSERT/OLIVE_CONFIG ->
OAK_ADD_TEST/OAK_ASSERT/OAK_CONFIG, GL_PREAMBLE -> OAK_GL_PREAMBLE,
include guards -> OAK_*)
- file names: all lowercase (Current/Plugin/OliveHost/OliveClip/
OlivePluginInstance -> current/plugin/olivehost/oliveclip/
oliveplugininstance)
- getters share the member name sans underscore, setters set_foo()
- Qt and third-party (OpenFX) virtual overrides and framework callbacks
keep their original names (exempt in .clang-tidy)
Manual follow-ups required where automation could not reach:
- string-based QMetaObject/SIGNAL/SLOT references updated to renamed
methods (AddTask, CreatedFile, DeleteSpecificFile, moveSelectionUp, ...)
- macro bodies referencing renamed methods (OLIVE_CONFIG,
NODE_DEFAULT_DESTRUCTOR, MANAGEDDISPLAYWIDGET_*)
- self-shadowing locals renamed where signals/methods became same-named
(size_changed, worker_count, selected_items, import param, filters)
- third_party OFX member/namespace usages restored (OFX::Host::*,
_created, _clipPrefsDirty, createInstance, clearPersistentMessage)
- STL protocol aliases restored (const_iterator) with .clang-tidy
ignore rules; qHash overloads restored
Full build and test suite pass: ctest 4/4, ~1960 gtest cases green.
2026-07-19 16:10:54 +08:00
Mike-Solar
bfb1b2fce4
update copyright back
2026-01-16 21:22:05 +08:00
Mike-Solar
b8669f6a11
Change project name;
2026-01-05 16:22:26 +08:00
Mike Solar
6fdfd03ffd
update: update copyright
2025-08-05 17:12:49 +08:00
Mike Solar
74f73ab3be
change: change code style to Linux style except indent.
2025-08-03 03:09:40 +08:00
itsmattkc
2c2df99963
name every undo command
2023-03-12 00:49:03 -08:00
itsmattkc
11e4e051c3
move undo files around for better organization
2023-02-20 16:09:22 -08:00
itsmattkc
e7982239b8
timeline: when rippling, don't create gap between clip and transition
2023-01-12 08:19:56 -08:00
itsmattkc
4b366a9b73
update copyright year to 2022
2022-05-10 10:38:56 -07:00
itsmattkc
25d0196094
timeline: add links when trimming adjacent gaps
...
Fixes #1808
2022-04-12 00:32:15 -07:00
itsmattkc
930d8309d3
timeline: implemented nudging #1692
2021-07-30 19:17:26 -07:00
itsmattkc
c41047ab02
timeline: reorganized undo commands
...
Split commands between several files rather than having them all in two monolithic ones.
2021-07-16 01:38:20 -07:00
itsmattkc
269fa6d905
remove block enum
...
Replaced with dynamic casts.
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
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
ad4b83a098
new undo system
...
Also enables undoing when working with node input arrays
2021-01-29 16:10:34 +11:00
itsmattkc
835b82205f
ripple: when choosing gaps on other tracks, use after or at instead of before
...
Fixes some edge cases
2021-01-18 16:40:05 +11:00
itsmattkc
9bc0629346
rewrote timeline ripple tool command
...
Cleaner code and fixes a bunch of issues and whatnot
2021-01-18 16:33:27 +11:00
itsmattkc
91740dd823
reworked all timeline commands
...
I'll be honest, this stuff probably caused a lot of crashes. Objects were constantly created and destroyed without the foresight that other commands might be using them. This should fix a lot of that.
2021-01-15 14:36:21 +11:00
itsmattkc
f7883bd02c
began some rewrites to timeline drawing
2021-01-14 10:30:20 +11:00
itsmattkc
8f729203fc
some timeline refactoring, preparing for rewrites
2021-01-09 11:41:33 +11:00
itsmattkc
75d4cd899b
use hardcoded namespace
...
The macro defined namespaces confused the hell out of lupdate and more or less broke translations permanently. Looks like the only way we can do it is to have a hardcoded namespace, which goes against my instinct, but honestly how likely is it that we'll change the namespace anyway (I guess forks might want to do it, but that's their problem ;) )
2020-11-17 20:24:42 +11:00
itsmattkc
d241090a9f
finally updated the copyright year
2020-11-17 20:13:22 +11:00
itsmattkc
90199b7b57
timeline: updated selection changes for trimming and rippling
2020-10-03 22:59:07 +10:00
itsmattkc
a8d714b6e2
timeline: moved tools to separate source files
2020-10-03 22:33:29 +10:00
itsmattkc
dd3d11c7e0
timeline: moved tools to separate files
...
Code cleanup, TimelineWidget header was getting a little too bloated.
2020-10-02 22:02:18 +10:00
itsmattkc
023ded1fb5
timeline: overhauled pointer tool again
...
Allows dynamic switching between pointer/roll/slide since occasionally this
behavior is interchangeable. Fixes a lot of transition behavior (but not
all of it).
2020-07-23 18:37:57 +10:00
itsmattkc
ce353ccbed
timeline: various work to improve timeline behavior, particularly when dealing with transitions
2020-07-22 18:09:57 +10:00
itsmattkc
a239fa0e2f
timeline: fixed some ripple tool behavior bugs
2020-07-07 18:06:49 +10:00
itsmattkc
f2050a0342
timeline: optimized rippling workarea, rippling to in/out, and the ripple tool
...
Use cache shift functionality introduced in previous commit to optimize
timeline usage.
2020-06-02 04:24:12 +10:00
itsmattkc
001b7179c5
timeline: cleaned up pointer tool derivatives and fixed bug introduced by earlier behavior improvement
2020-06-01 17:38:24 +10:00
itsmattkc
c2e47a296c
timeline: heavily optimized and improved nearly all timeline optimizations
...
Features a lot of timeline-related cache optimizations as well as general
optimizations and improvements in timeline behavior. Should improve
usability significantly.
2020-06-01 04:42:59 +10:00
itsmattkc
863ae1b913
a first attempt at a new render system
2020-05-14 14:43:03 +10:00
itsmattkc
1aa87cbda6
various: encapsulate all code in the olive namespace to avoid name collisions
...
Large-scale code cleanup. Also adds a license to the top of all files that were
missing it.
2020-04-06 15:29:53 +10:00
itsmattkc
17c1493aa7
all time-based panels are now derived from a common base class
...
Cuts down on a lot of duplicate code between
TimelineWidget/ViewerWidget/CurveWidget/NodeParamView
and TimelinePanel/ViewerPanel/CurvePanel/ParamPanel since they all use similar
time functions.
2020-02-01 19:39:43 +11:00
itsmattkc
1dfac0ea7f
timeline: removed unused variable in undo command
2020-01-19 23:52:23 +11:00
itsmattkc
61c60e00d6
various small code cleanups and improvements
...
Largely refactoring work to make the code somewhat nicer to work with.
2019-12-26 19:00:08 +11:00
itsmattkc
05e10962f9
added convenience undo command for removing a node and its exclusive deps
2019-12-19 01:44:18 +11:00
itsmattkc
4ba024e3ae
implemented media out value to allow speed changes in clips
2019-12-16 18:29:35 +11:00
itsmattkc
323718bc11
moved timeline undoable commands to using the new NodeAddCommand
...
Previous iteration used some "magic code" that added clips automatically to the
timeline. This was functional but ultimately outside of the undo commands'
control meaning nodes could be infinitely added and abandoned. This makes the
add process part of the undo command which means it's all undoable as the user
would expect.
2019-12-14 00:04:57 +11:00
itsmattkc
79ee3bc3df
implemented new block system
...
Fixes recurring design issue that the Blocks were a frequent exception to the
DAG concept. The Blocks connecting to each others inputs/outputs while not
necessarily being "dependent" on each other to produce an image continually
causes issues while trying to create a rendering code path. This redesign
should provide a more "directed" approach to the directed acyclic graph.
2019-12-02 00:37:03 +11:00
itsmattkc
6f4e5a04e4
reimplemented pointer default functionality
2019-10-12 06:37:53 +11:00