diff options
Diffstat (limited to 'source/blender/editors')
19 files changed, 55 insertions, 52 deletions
diff --git a/source/blender/editors/animation/anim_filter.c b/source/blender/editors/animation/anim_filter.c index e5846e270f0..718e85c0e27 100644 --- a/source/blender/editors/animation/anim_filter.c +++ b/source/blender/editors/animation/anim_filter.c @@ -515,7 +515,7 @@ bool ANIM_animdata_get_context(const bContext *C, bAnimContext *ac) * 2A) nla tracks: include animdata block's data as there are NLA tracks+strips there * 2B) actions to convert to nla: include animdata block's data as there is an action that can be * converted to a new NLA strip, and the filtering options allow this - * 2C) allow non-animated datablocks to be included so that datablocks can be added + * 2C) allow non-animated data-blocks to be included so that data-blocks can be added * 3) drivers: include drivers from animdata block (for Drivers mode in Graph Editor) * 4A) nla strip keyframes: these are the per-strip controls for time and influence * 4B) normal keyframes: only when there is an active action @@ -1618,7 +1618,7 @@ static size_t animfilter_block_data( AnimData *adt = BKE_animdata_from_id(id); size_t items = 0; - /* image object datablocks have no anim-data so check for NULL */ + /* image object data-blocks have no anim-data so check for NULL */ if (adt) { IdAdtTemplate *iat = (IdAdtTemplate *)id; @@ -1704,7 +1704,7 @@ static size_t animdata_filter_shapekey(bAnimContext *ac, return items; } -/* Helper for Grease Pencil - layers within a datablock */ +/* Helper for Grease Pencil - layers within a data-block. */ static size_t animdata_filter_gpencil_layers_data(ListBase *anim_data, bDopeSheet *ads, bGPdata *gpd, @@ -1737,7 +1737,7 @@ static size_t animdata_filter_gpencil_layers_data(ListBase *anim_data, return items; } -/* Helper for Grease Pencil - Grease Pencil datablock - GP Frames */ +/* Helper for Grease Pencil - Grease Pencil data-block - GP Frames. */ static size_t animdata_filter_gpencil_data(ListBase *anim_data, bDopeSheet *ads, bGPdata *gpd, @@ -1746,8 +1746,8 @@ static size_t animdata_filter_gpencil_data(ListBase *anim_data, size_t items = 0; /* When asked from "AnimData" blocks (i.e. the top-level containers for normal animation), - * for convenience, this will return GP Datablocks instead. This may cause issues down - * the track, but for now, this will do... + * for convenience, this will return GP Data-blocks instead. + * This may cause issues down the track, but for now, this will do. */ if (filter_mode & ANIMFILTER_ANIMDATA) { /* just add GPD as a channel - this will add everything needed */ @@ -1781,7 +1781,7 @@ static size_t animdata_filter_gpencil_data(ListBase *anim_data, return items; } -/* Grab all Grease Pencil datablocks in file */ +/* Grab all Grease Pencil data-blocks in file. */ // TODO: should this be amalgamated with the dopesheet filtering code? static size_t animdata_filter_gpencil(bAnimContext *ac, ListBase *anim_data, @@ -1847,7 +1847,7 @@ static size_t animdata_filter_gpencil(bAnimContext *ac, } } - /* finally, include this object's grease pencil datablock */ + /* finally, include this object's grease pencil data-block. */ /* XXX: Should we store these under expanders per item? */ items += animdata_filter_gpencil_data(anim_data, ads, ob->data, filter_mode); } @@ -1856,7 +1856,7 @@ static size_t animdata_filter_gpencil(bAnimContext *ac, else { bGPdata *gpd; - /* Grab all Grease Pencil datablocks directly from main, + /* Grab all Grease Pencil data-blocks directly from main, * but only those that seem to be useful somewhere */ for (gpd = ac->bmain->gpencils.first; gpd; gpd = gpd->id.next) { /* only show if gpd is used by something... */ @@ -1864,7 +1864,7 @@ static size_t animdata_filter_gpencil(bAnimContext *ac, continue; } - /* add GP frames from this datablock */ + /* add GP frames from this data-block. */ items += animdata_filter_gpencil_data(anim_data, ads, gpd, filter_mode); } } @@ -1983,7 +1983,7 @@ static size_t animdata_filter_mask(Main *bmain, Mask *mask; size_t items = 0; - /* for now, grab mask datablocks directly from main */ + /* For now, grab mask data-blocks directly from main. */ // XXX: this is not good... for (mask = bmain->masks.first; mask; mask = mask->id.next) { ListBase tmp_data = {NULL, NULL}; @@ -2004,7 +2004,7 @@ static size_t animdata_filter_mask(Main *bmain, if (tmp_items) { /* include data-expand widget first */ if (filter_mode & ANIMFILTER_LIST_CHANNELS) { - /* add mask datablock as channel too (if for drawing, and it has layers) */ + /* add mask data-block as channel too (if for drawing, and it has layers) */ ANIMCHANNEL_NEW_CHANNEL(mask, ANIMTYPE_MASKDATABLOCK, NULL, NULL); } @@ -3030,7 +3030,7 @@ static bool animdata_filter_base_is_ok(bDopeSheet *ads, Base *base, int filter_m } /* if only F-Curves with visible flags set can be shown, check that - * datablock hasn't been set to invisible + * data-block hasn't been set to invisible. */ if (filter_mode & ANIMFILTER_CURVE_VISIBLE) { if ((ob->adt) && (ob->adt->flag & ADT_CURVES_NOT_VISIBLE)) { diff --git a/source/blender/editors/animation/drivers.c b/source/blender/editors/animation/drivers.c index fe079eb59a0..7ca0f95d6c4 100644 --- a/source/blender/editors/animation/drivers.c +++ b/source/blender/editors/animation/drivers.c @@ -182,7 +182,7 @@ static int add_driver_with_target(ReportList *UNUSED(reports), /* Set driver expression, so that the driver works out of the box * - * The following checks define a bit of "autodetection magic" we use + * The following checks define a bit of "auto-detection magic" we use * to ensure that the drivers will behave as expected out of the box * when faced with properties with different units. */ diff --git a/source/blender/editors/animation/keyframes_edit.c b/source/blender/editors/animation/keyframes_edit.c index 884a8c20b19..f8328e9f07f 100644 --- a/source/blender/editors/animation/keyframes_edit.c +++ b/source/blender/editors/animation/keyframes_edit.c @@ -334,7 +334,7 @@ static short summary_keyframes_loop(KeyframeEditData *ked, case ALE_FCURVE: default: { if (ked && ked->iterflags) { - /* make backups of the current values, so that a localised fix + /* make backups of the current values, so that a localized fix * (e.g. NLA time remapping) can be applied to these values */ float f1 = ked->f1; diff --git a/source/blender/editors/gpencil/gpencil_armature.c b/source/blender/editors/gpencil/gpencil_armature.c index 068a77b769c..08f752bb72e 100644 --- a/source/blender/editors/gpencil/gpencil_armature.c +++ b/source/blender/editors/gpencil/gpencil_armature.c @@ -15,11 +15,12 @@ * * The Original Code is Copyright (C) 2018, Blender Foundation * This is a new part of Blender - * Operators for dealing with armatures and GP datablocks */ /** \file * \ingroup edgpencil + * + * Operators for dealing with armatures and GP data-blocks. */ #include <stdio.h> diff --git a/source/blender/editors/gpencil/gpencil_data.c b/source/blender/editors/gpencil/gpencil_data.c index ca5c8ae70e4..a7072facf36 100644 --- a/source/blender/editors/gpencil/gpencil_data.c +++ b/source/blender/editors/gpencil/gpencil_data.c @@ -15,11 +15,12 @@ * * The Original Code is Copyright (C) 2008, Blender Foundation * This is a new part of Blender - * Operators for dealing with GP datablocks and layers */ /** \file * \ingroup edgpencil + * + * Operators for dealing with GP data-blocks and layers. */ #include <stdio.h> @@ -539,7 +540,7 @@ static int gp_layer_duplicate_object_exec(bContext *C, wmOperator *op) Material *ma_src = give_current_material(ob_src, gps_src->mat_nr + 1); int idx = BKE_gpencil_object_material_ensure(bmain, ob_dst, ma_src); - /* reasign the stroke material to the right slot in destination object */ + /* Reassign the stroke material to the right slot in destination object. */ gps_dst->mat_nr = idx; /* add new stroke to frame */ @@ -1077,7 +1078,7 @@ static int gp_isolate_layer_exec(bContext *C, wmOperator *op) } /* Set/Clear flags as appropriate */ - /* TODO: Include onionskinning on this list? */ + /* TODO: Include onion-skinning on this list? */ if (isolate) { /* Set flags on all "other" layers */ for (gpl = gpd->layers.first; gpl; gpl = gpl->next) { @@ -2322,7 +2323,7 @@ int ED_gpencil_join_objects_exec(bContext *C, wmOperator *op) for (bGPDframe *gpf = gpl_new->frames.first; gpf; gpf = gpf->next) { for (bGPDstroke *gps = gpf->strokes.first; gps; gps = gps->next) { - /* reasign material. Look old material and try to find in dst */ + /* Reassign material. Look old material and try to find in destination. */ ma_src = give_current_material(ob_src, gps->mat_nr + 1); gps->mat_nr = BKE_gpencil_object_material_ensure(bmain, ob_dst, ma_src); diff --git a/source/blender/editors/gpencil/gpencil_edit.c b/source/blender/editors/gpencil/gpencil_edit.c index 9366eb6bc2b..9588d4bb570 100644 --- a/source/blender/editors/gpencil/gpencil_edit.c +++ b/source/blender/editors/gpencil/gpencil_edit.c @@ -994,7 +994,7 @@ ListBase gp_strokes_copypastebuf = {NULL, NULL}; /* Hash for hanging on to all the colors used by strokes in the buffer * - * This is needed to prevent dangling and unsafe pointers when pasting across datablocks, + * This is needed to prevent dangling and unsafe pointers when pasting across data-blocks, * or after a color used by a stroke in the buffer gets deleted (via user action or undo). */ static GHash *gp_strokes_copypastebuf_colors = NULL; @@ -4026,7 +4026,7 @@ static int gp_stroke_separate_exec(bContext *C, wmOperator *op) /* make copy of source stroke */ bGPDstroke *gps_dst = BKE_gpencil_stroke_duplicate(gps); - /* reasign material */ + /* Reassign material. */ gps_dst->mat_nr = idx; /* link to destination frame */ @@ -4052,7 +4052,7 @@ static int gp_stroke_separate_exec(bContext *C, wmOperator *op) gps->prev = gps->next = NULL; /* relink to destination frame */ BLI_addtail(&gpf_dst->strokes, gps); - /* reasign material */ + /* Reassign material. */ gps->mat_nr = idx; } } diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c index 85e5ea1aee4..e59431d265d 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -7182,8 +7182,10 @@ void UI_but_tooltip_refresh(bContext *C, uiBut *but) } } -/* removes tooltip timer from active but - * (meaning tooltip is disabled until it's reenabled again) */ +/** + * Removes tool-tip timer from active but + * (meaning tool-tip is disabled until it's re-enabled again). + */ void UI_but_tooltip_timer_remove(bContext *C, uiBut *but) { uiHandleButtonData *data; @@ -8511,7 +8513,7 @@ static void ui_handle_button_return_submenu(bContext *C, const wmEvent *event, u /** * Function used to prevent losing the open menu when using nested pull-downs, - * when moving mouse towards the pulldown menu over other buttons that could + * when moving mouse towards the pull-down menu over other buttons that could * steal the highlight from the current button, only checks: * * - while mouse moves in triangular area defined old mouse position and diff --git a/source/blender/editors/interface/interface_query.c b/source/blender/editors/interface/interface_query.c index b0fd0cdc35f..462183b4245 100644 --- a/source/blender/editors/interface/interface_query.c +++ b/source/blender/editors/interface/interface_query.c @@ -528,8 +528,8 @@ bool ui_region_contains_point_px(const ARegion *ar, int x, int y) return false; } - /* also, check that with view2d, that the mouse is not over the scrollbars - * NOTE: care is needed here, since the mask rect may include the scrollbars + /* also, check that with view2d, that the mouse is not over the scroll-bars + * NOTE: care is needed here, since the mask rect may include the scroll-bars * even when they are not visible, so we need to make a copy of the mask to * use to check */ diff --git a/source/blender/editors/interface/interface_templates.c b/source/blender/editors/interface/interface_templates.c index d1a50cd5234..4efa024ac77 100644 --- a/source/blender/editors/interface/interface_templates.c +++ b/source/blender/editors/interface/interface_templates.c @@ -3079,7 +3079,7 @@ static void colorband_update_cb(bContext *UNUSED(C), void *bt_v, void *coba_v) uiBut *bt = bt_v; ColorBand *coba = coba_v; - /* sneaky update here, we need to sort the colorband points to be in order, + /* Sneaky update here, we need to sort the color-band points to be in order, * however the RNA pointer then is wrong, so we update it */ BKE_colorband_update_sort(coba); bt->rnapoin.data = coba->data + coba->cur; diff --git a/source/blender/editors/interface/interface_widgets.c b/source/blender/editors/interface/interface_widgets.c index f654fbcdc1e..6c9c36c0d7f 100644 --- a/source/blender/editors/interface/interface_widgets.c +++ b/source/blender/editors/interface/interface_widgets.c @@ -1654,7 +1654,7 @@ float UI_text_clip_middle_ex(const uiFontStyle *fstyle, if ((okwidth > 0.0f) && (strwidth > okwidth)) { /* utf8 two-dots leader '..' (shorter than ellipsis '...'), - * some compilers complain with real litteral string. */ + * some compilers complain with real literal string. */ const char sep[] = {0xe2, 0x80, 0xA5, 0x0}; const int sep_len = sizeof(sep) - 1; const float sep_strwidth = BLF_width(fstyle->uifont_id, sep, sep_len + 1); @@ -3800,7 +3800,7 @@ static void widget_swatch( if (state & (UI_BUT_DISABLED | UI_BUT_INACTIVE)) { /* Now we reduce alpha of the inner color (i.e. the color shown) * so that this setting can look grayed out, while retaining - * the checkboard (for transparent values). This is needed + * the checkerboard (for transparent values). This is needed * here as the effects of ui_widget_color_disabled() are overwritten. */ wcol->inner[3] /= 2; diff --git a/source/blender/editors/interface/resources.c b/source/blender/editors/interface/resources.c index 26beb08dd28..cbda4767722 100644 --- a/source/blender/editors/interface/resources.c +++ b/source/blender/editors/interface/resources.c @@ -247,8 +247,7 @@ const uchar *UI_ThemeGetColorPtr(bTheme *btheme, int spacetype, int colorid) cp = ts->header; break; case TH_HEADERDESEL: - /* we calculate a dynamic builtin header deselect color, - * also for pulldowns... */ + /* We calculate a dynamic builtin header deselect color, also for pull-downs. */ cp = ts->header; headerdesel[0] = cp[0] > 10 ? cp[0] - 10 : 0; headerdesel[1] = cp[1] > 10 ? cp[1] - 10 : 0; diff --git a/source/blender/editors/interface/view2d_ops.c b/source/blender/editors/interface/view2d_ops.c index 8931060abee..7d9b722fcc0 100644 --- a/source/blender/editors/interface/view2d_ops.c +++ b/source/blender/editors/interface/view2d_ops.c @@ -2031,7 +2031,7 @@ static int scroller_activate_invoke(bContext *C, wmOperator *op, const wmEvent * const char in_scroller = UI_view2d_mouse_in_scrollers(ar, v2d, event->x, event->y); /* if in a scroller, init customdata then set modal handler which will - * catch mousedown to start doing useful stuff */ + * catch mouse-down to start doing useful stuff */ if (in_scroller) { v2dScrollerMove *vsm; diff --git a/source/blender/editors/sculpt_paint/paint_image_proj.c b/source/blender/editors/sculpt_paint/paint_image_proj.c index bae79d5ea60..6f20b853881 100644 --- a/source/blender/editors/sculpt_paint/paint_image_proj.c +++ b/source/blender/editors/sculpt_paint/paint_image_proj.c @@ -3912,7 +3912,7 @@ static void proj_paint_state_thread_init(ProjPaintState *ps, const bool reset_th /* Thread stuff * - * very small brushes run a lot slower multithreaded since the advantage with + * very small brushes run a lot slower multi-threaded since the advantage with * threads is being able to fill in multiple buckets at once. * Only use threads for bigger brushes. */ @@ -5104,7 +5104,7 @@ static void image_paint_partial_redraw_expand(ImagePaintPartialRedraw *cell, cell->y2 = max_ii(cell->y2, (int)projPixel->y_px + 1); } -/* run this for single and multithreaded painting */ +/* Run this for single and multi-threaded painting. */ static void do_projectpaint_thread(TaskPool *__restrict UNUSED(pool), void *ph_v, int UNUSED(threadid)) diff --git a/source/blender/editors/space_action/action_select.c b/source/blender/editors/space_action/action_select.c index fc2970f4c31..7cc222ea529 100644 --- a/source/blender/editors/space_action/action_select.c +++ b/source/blender/editors/space_action/action_select.c @@ -1739,7 +1739,7 @@ static void mouse_action_keys(bAnimContext *ac, if (column) { /* select all keyframes in the same frame as the one we hit on the active channel * [T41077]: "frame" not "selx" here (i.e. no NLA corrections yet) as the code here - * does that itself again as it needs to work on multiple datablocks + * does that itself again as it needs to work on multiple data-blocks. */ actkeys_mselect_column(ac, select_mode, frame); } diff --git a/source/blender/editors/space_file/filelist.c b/source/blender/editors/space_file/filelist.c index f2d1b6eab83..9004eaa7bf6 100644 --- a/source/blender/editors/space_file/filelist.c +++ b/source/blender/editors/space_file/filelist.c @@ -2094,7 +2094,7 @@ static bool file_is_blend_backup(const char *str) } /* TODO: Maybe we should move this to BLI? - * On the other hand, it's using defines from spacefile area, so not sure... */ + * On the other hand, it's using defines from space-file area, so not sure... */ int ED_path_extension_type(const char *path) { if (BLO_has_bfile_extension(path)) { diff --git a/source/blender/editors/space_outliner/outliner_draw.c b/source/blender/editors/space_outliner/outliner_draw.c index d994152ba67..feff1dc5f4a 100644 --- a/source/blender/editors/space_outliner/outliner_draw.c +++ b/source/blender/editors/space_outliner/outliner_draw.c @@ -2574,7 +2574,7 @@ static void outliner_draw_iconrow_doit(uiBlock *block, /** * Return the index to use based on the TreeElement ID and object type * - * We use a continuum of indices until we get to the object datablocks + * We use a continuum of indices until we get to the object data-blocks * and we then make room for the object types. */ static int tree_element_id_type_to_index(TreeElement *te) @@ -3197,7 +3197,7 @@ static void outliner_draw_highlights_recursive(unsigned pos, else { if (is_searching && (tselem->flag & TSE_SEARCHMATCH)) { /* search match highlights - * we don't expand items when searching in the datablocks but we + * we don't expand items when searching in the data-blocks but we * still want to highlight any filter matches. */ immUniformColor4fv(col_searchmatch); immRecti(pos, start_x, start_y, end_x, start_y + UI_UNIT_Y); diff --git a/source/blender/editors/space_outliner/outliner_intern.h b/source/blender/editors/space_outliner/outliner_intern.h index ab9e29a9105..fa28d119244 100644 --- a/source/blender/editors/space_outliner/outliner_intern.h +++ b/source/blender/editors/space_outliner/outliner_intern.h @@ -179,7 +179,7 @@ typedef enum { * - Flag options defined in DNA_outliner_types.h * - SO_SEARCH_RECURSIVE defined in DNA_space_types.h * - * - NOT in datablocks view - searching all datablocks takes way too long + * - NOT in data-blocks view - searching all data-blocks takes way too long * to be useful * - not searching into RNA items helps but isn't the complete solution */ diff --git a/source/blender/editors/space_outliner/outliner_tree.c b/source/blender/editors/space_outliner/outliner_tree.c index 4e07be7d915..2a0bc470bcb 100644 --- a/source/blender/editors/space_outliner/outliner_tree.c +++ b/source/blender/editors/space_outliner/outliner_tree.c @@ -109,7 +109,7 @@ static void outliner_storage_cleanup(SpaceOutliner *soops) } /* cleanup only after reading file or undo step, and always for - * RNA datablocks view in order to save memory */ + * RNA data-blocks view in order to save memory */ if (soops->storeflag & SO_TREESTORE_CLEANUP) { soops->storeflag &= ~SO_TREESTORE_CLEANUP; @@ -835,7 +835,7 @@ static TreeElement *outliner_add_element( if (type == 0) { TreeStoreElem *tsepar = parent ? TREESTORE(parent) : NULL; - /* ID datablock */ + /* ID data-block. */ if (tsepar == NULL || tsepar->type != TSE_ID_BASE || soops->filter_id_type) { outliner_add_id_contents(soops, te, tselem, id); } @@ -1277,7 +1277,7 @@ static TreeElement *outliner_add_library_contents(Main *mainvar, if (id) { if (!tenlib) { - /* Create library tree element on demand, depending if there are any datablocks. */ + /* Create library tree element on demand, depending if there are any data-blocks. */ if (lib) { tenlib = outliner_add_element(soops, lb, lib, NULL, 0, 0); } @@ -1287,7 +1287,7 @@ static TreeElement *outliner_add_library_contents(Main *mainvar, } } - /* Create datablock list parent element on demand. */ + /* Create data-block list parent element on demand. */ if (filter_id_type) { ten = tenlib; } @@ -1328,7 +1328,7 @@ static void outliner_add_orphaned_datablocks(Main *mainvar, SpaceOutliner *soops if (lbarray[a] && lbarray[a]->first) { ID *id = lbarray[a]->first; - /* check if there are any datablocks of this type which are orphans */ + /* check if there are any data-blocks of this type which are orphans */ for (; id; id = id->next) { if (ID_REAL_USERS(id) <= 0) { break; @@ -1336,7 +1336,7 @@ static void outliner_add_orphaned_datablocks(Main *mainvar, SpaceOutliner *soops } if (id) { - /* header for this type of datablock */ + /* header for this type of data-block */ if (filter_id_type) { ten = NULL; } @@ -1346,7 +1346,7 @@ static void outliner_add_orphaned_datablocks(Main *mainvar, SpaceOutliner *soops ten->name = outliner_idcode_to_plural(GS(id->name)); } - /* add the orphaned datablocks - these will not be added with any subtrees attached */ + /* add the orphaned data-blocks - these will not be added with any subtrees attached */ for (id = lbarray[a]->first; id; id = id->next) { if (ID_REAL_USERS(id) <= 0) { outliner_add_element(soops, (ten) ? &ten->subtree : &soops->tree, id, ten, 0, 0); @@ -2218,7 +2218,7 @@ void outliner_build_tree( int show_opened = !soops->treestore || !BLI_mempool_len(soops->treestore); /* Are we looking for something - we want to tag parents to filter child matches - * - NOT in datablocks view - searching all datablocks takes way too long to be useful + * - NOT in data-blocks view - searching all data-blocks takes way too long to be useful * - this variable is only set once per tree build */ if (soops->search_string[0] != 0 && soops->outlinevis != SO_DATA_API) { soops->search_flags |= SO_SEARCH_RECURSIVE; diff --git a/source/blender/editors/space_sequencer/sequencer_edit.c b/source/blender/editors/space_sequencer/sequencer_edit.c index 0328bf3fb6a..5510b981899 100644 --- a/source/blender/editors/space_sequencer/sequencer_edit.c +++ b/source/blender/editors/space_sequencer/sequencer_edit.c @@ -3390,7 +3390,7 @@ static int sequencer_copy_exec(bContext *C, wmOperator *op) } /* Replace datablock pointers with copies, to keep things working in case - * datablocks get deleted or another .blend file is opened. */ + * data-blocks get deleted or another .blend file is opened. */ BKE_sequencer_base_clipboard_pointers_store(bmain, &seqbase_clipboard); return OPERATOR_FINISHED; @@ -3424,9 +3424,9 @@ static int sequencer_paste_exec(bContext *C, wmOperator *UNUSED(op)) ED_sequencer_deselect_all(scene); ofs = scene->r.cfra - seqbase_clipboard_frame; - /* Copy strips, temporarily restoring pointers to actual datablocks. This + /* Copy strips, temporarily restoring pointers to actual data-blocks. This * must happen on the clipboard itself, so that copying does user counting - * on the actual datablocks. */ + * on the actual data-blocks. */ BKE_sequencer_base_clipboard_pointers_restore(&seqbase_clipboard, bmain); BKE_sequence_base_dupli_recursive( scene, scene, &nseqbase, &seqbase_clipboard, SEQ_DUPE_UNIQUE_NAME, 0); |