GPv3: Set keyframe type #111472
|
@ -27,6 +27,16 @@
|
|||
|
||||
namespace blender::ed::greasepencil {
|
||||
|
||||
void set_selected_frames_type(bke::greasepencil::Layer &layer,
|
||||
const eBezTriple_KeyframeType key_type)
|
||||
{
|
||||
for (GreasePencilFrame &frame : layer.frames_for_write().values()) {
|
||||
if (frame.is_selected()) {
|
||||
frame.type = key_type;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool remove_all_selected_frames(GreasePencil &grease_pencil, bke::greasepencil::Layer &layer)
|
||||
{
|
||||
Vector<int> frames_to_remove;
|
||||
|
|
|
@ -47,6 +47,9 @@ eAttrDomain ED_grease_pencil_selection_domain_get(bContext *C);
|
|||
|
||||
namespace blender::ed::greasepencil {
|
||||
|
||||
void set_selected_frames_type(bke::greasepencil::Layer &layer,
|
||||
const eBezTriple_KeyframeType key_type);
|
||||
|
||||
bool remove_all_selected_frames(GreasePencil &grease_pencil, bke::greasepencil::Layer &layer);
|
||||
|
||||
void select_layer_channel(GreasePencil &grease_pencil, bke::greasepencil::Layer *layer);
|
||||
|
|
|
@ -1662,7 +1662,10 @@ static void setkeytype_action_keys(bAnimContext *ac, short mode)
|
|||
break;
|
||||
|
||||
case ANIMTYPE_GREASE_PENCIL_LAYER:
|
||||
/* GPv3: To be implemented. */
|
||||
blender::ed::greasepencil::set_selected_frames_type(
|
||||
static_cast<GreasePencilLayer *>(ale->data)->wrap(),
|
||||
static_cast<eBezTriple_KeyframeType>(mode));
|
||||
ale->update |= ANIM_UPDATE_DEPS;
|
||||
break;
|
||||
|
||||
case ANIMTYPE_FCURVE:
|
||||
|
|
Loading…
Reference in New Issue