diff options
author | Julian Eisel <julian@blender.org> | 2022-07-19 17:14:42 +0300 |
---|---|---|
committer | Julian Eisel <julian@blender.org> | 2022-07-19 17:31:23 +0300 |
commit | 5bee991132ea8aa7fea827df5b5153f3211a3431 (patch) | |
tree | 91bded82247b2dfcba4dd3c7b318d68e48f628da /source/blender/editors/interface/interface_anim.c | |
parent | 348ec37f52452614cb26baa8be40a161e1446b15 (diff) |
UI: Port view item features to base class, merge view item button types
No user visible changes expected.
Merges the tree row and grid tile button types, which were mostly doing
the same things. The idea is that there is a button type for
highlighting, as well as supporting general view item features (e.g.
renaming, drag/drop, etc.). So instead there is a view item button type
now. Also ports view item features like renaming, custom context menus,
drag controllers and drop controllers to `ui::AbstractViewItem` (the new
base class for all view items).
This should be quite an improvement because:
- Merges code that was duplicated over view items.
- Mentioned features (renaming, drag & drop, ...) are much easier to
implement in new view types now. Most of it comes "for free".
- Further features will immediately become availalbe to all views (e.g.
selection).
- Simplifies APIs, there don't have to be functions for individual view
item types anymore.
- View item classes are split and thus less overwhelming visually.
- View item buttons now share all code (drawing, handling, etc.)
- We're soon running out of available button types, this commit merges
two into one.
I was hoping I could do this in multiple smaller commits, but things
were quite intertwined so that would've taken quite some effort.
Diffstat (limited to 'source/blender/editors/interface/interface_anim.c')
0 files changed, 0 insertions, 0 deletions