Use a shorter/simpler license convention, stops the header taking so much space. Follow the SPDX license specification: https://spdx.org/licenses - C/C++/objc/objc++ - Python - Shell Scripts - CMake, GNUmakefile While most of the source tree has been included - `./extern/` was left out. - `./intern/cycles` & `./intern/atomic` are also excluded because they use different header conventions. doc/license/SPDX-license-identifiers.txt has been added to list SPDX all used identifiers. See P2788 for the script that automated these edits. Reviewed By: brecht, mont29, sergey Ref D14069
153 lines
3.8 KiB
C++
153 lines
3.8 KiB
C++
/* SPDX-License-Identifier: GPL-2.0-or-later
|
|
* Copyright 2009 Blender Foundation, Joshua Leung. All rights reserved. */
|
|
|
|
/** \file
|
|
* \ingroup spnla
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
/* internal exports only */
|
|
|
|
/* **************************************** */
|
|
/* Macros, etc. only used by NLA */
|
|
|
|
/* **************************************** */
|
|
/* space_nla.c / nla_buttons.c */
|
|
|
|
bool nla_panel_context(const bContext *C,
|
|
PointerRNA *adt_ptr,
|
|
PointerRNA *nlt_ptr,
|
|
PointerRNA *strip_ptr);
|
|
|
|
void nla_buttons_register(ARegionType *art);
|
|
|
|
/* **************************************** */
|
|
/* nla_draw.c */
|
|
|
|
void draw_nla_main_data(bAnimContext *ac, SpaceNla *snla, ARegion *region);
|
|
void draw_nla_channel_list(const bContext *C, bAnimContext *ac, ARegion *region);
|
|
|
|
/* **************************************** */
|
|
/* nla_select.c */
|
|
|
|
/* defines for left-right select tool */
|
|
enum eNlaEdit_LeftRightSelect_Mode {
|
|
NLAEDIT_LRSEL_TEST = -1,
|
|
NLAEDIT_LRSEL_NONE,
|
|
NLAEDIT_LRSEL_LEFT,
|
|
NLAEDIT_LRSEL_RIGHT,
|
|
};
|
|
|
|
/* --- */
|
|
|
|
void NLA_OT_select_all(wmOperatorType *ot);
|
|
void NLA_OT_select_box(wmOperatorType *ot);
|
|
void NLA_OT_select_leftright(wmOperatorType *ot);
|
|
void NLA_OT_click_select(wmOperatorType *ot);
|
|
|
|
/* **************************************** */
|
|
/* nla_edit.c */
|
|
|
|
/* defines for snap strips */
|
|
enum eNlaEdit_Snap_Mode {
|
|
NLAEDIT_SNAP_CFRA = 1,
|
|
NLAEDIT_SNAP_NEAREST_FRAME,
|
|
NLAEDIT_SNAP_NEAREST_SECOND,
|
|
NLAEDIT_SNAP_NEAREST_MARKER,
|
|
};
|
|
|
|
/* --- */
|
|
|
|
/**
|
|
* NLA Editor internal API function for exiting tweak-mode.
|
|
*/
|
|
bool nlaedit_disable_tweakmode(bAnimContext *ac, bool do_solo);
|
|
|
|
void NLA_OT_tweakmode_enter(wmOperatorType *ot);
|
|
void NLA_OT_tweakmode_exit(wmOperatorType *ot);
|
|
|
|
/* --- */
|
|
|
|
void NLA_OT_previewrange_set(wmOperatorType *ot);
|
|
|
|
void NLA_OT_view_all(wmOperatorType *ot);
|
|
void NLA_OT_view_selected(wmOperatorType *ot);
|
|
void NLA_OT_view_frame(wmOperatorType *ot);
|
|
|
|
void NLA_OT_actionclip_add(wmOperatorType *ot);
|
|
void NLA_OT_transition_add(wmOperatorType *ot);
|
|
void NLA_OT_soundclip_add(wmOperatorType *ot);
|
|
|
|
void NLA_OT_meta_add(wmOperatorType *ot);
|
|
void NLA_OT_meta_remove(wmOperatorType *ot);
|
|
|
|
void NLA_OT_duplicate(wmOperatorType *ot);
|
|
void NLA_OT_delete(wmOperatorType *ot);
|
|
void NLA_OT_split(wmOperatorType *ot);
|
|
|
|
void NLA_OT_mute_toggle(wmOperatorType *ot);
|
|
|
|
void NLA_OT_swap(wmOperatorType *ot);
|
|
void NLA_OT_move_up(wmOperatorType *ot);
|
|
void NLA_OT_move_down(wmOperatorType *ot);
|
|
|
|
void NLA_OT_action_sync_length(wmOperatorType *ot);
|
|
|
|
void NLA_OT_make_single_user(wmOperatorType *ot);
|
|
|
|
void NLA_OT_apply_scale(wmOperatorType *ot);
|
|
void NLA_OT_clear_scale(wmOperatorType *ot);
|
|
|
|
void NLA_OT_snap(wmOperatorType *ot);
|
|
|
|
void NLA_OT_fmodifier_add(wmOperatorType *ot);
|
|
void NLA_OT_fmodifier_copy(wmOperatorType *ot);
|
|
void NLA_OT_fmodifier_paste(wmOperatorType *ot);
|
|
|
|
/* **************************************** */
|
|
/* nla_channels.c */
|
|
|
|
/**
|
|
* Helper - add NLA Tracks alongside existing ones.
|
|
*/
|
|
bool nlaedit_add_tracks_existing(bAnimContext *ac, bool above_sel);
|
|
/**
|
|
* helper - add NLA Tracks to empty (and selected) AnimData blocks.
|
|
*/
|
|
bool nlaedit_add_tracks_empty(bAnimContext *ac);
|
|
|
|
/* --- */
|
|
|
|
void NLA_OT_channels_click(wmOperatorType *ot);
|
|
|
|
void NLA_OT_action_pushdown(wmOperatorType *ot);
|
|
void NLA_OT_action_unlink(wmOperatorType *ot);
|
|
|
|
void NLA_OT_tracks_add(wmOperatorType *ot);
|
|
void NLA_OT_tracks_delete(wmOperatorType *ot);
|
|
|
|
void NLA_OT_selected_objects_add(wmOperatorType *ot);
|
|
|
|
/* **************************************** */
|
|
/* nla_ops.c */
|
|
|
|
/**
|
|
* Tweak-mode is NOT enabled.
|
|
*/
|
|
bool nlaop_poll_tweakmode_off(bContext *C);
|
|
/**
|
|
* Tweak-mode IS enabled.
|
|
*/
|
|
bool nlaop_poll_tweakmode_on(bContext *C);
|
|
|
|
/**
|
|
* Is tweak-mode enabled - for use in NLA operator code.
|
|
*/
|
|
bool nlaedit_is_tweakmode_on(bAnimContext *ac);
|
|
|
|
/* --- */
|
|
|
|
void nla_operatortypes(void);
|
|
void nla_keymap(wmKeyConfig *keyconf);
|