Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Montagne <montagne29@wanadoo.fr>2016-01-08 13:05:39 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2016-01-08 13:13:58 +0300
commit4ef918d661510610728fe9bbebb3df1fb565eef2 (patch)
tree8b131ff6428e16763b945143c0819317eb03a050 /source/blender/editors/space_view3d/view3d_ops.c
parent5c69345edc0819f5b518ab06438cc72d4dfa86ca (diff)
Koro request: add 'active layer' and 'selected' options to view3D' paste operator.
Those two are ON by default, since I think it's most common expected behavior (as with append/link ops).
Diffstat (limited to 'source/blender/editors/space_view3d/view3d_ops.c')
-rw-r--r--source/blender/editors/space_view3d/view3d_ops.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/source/blender/editors/space_view3d/view3d_ops.c b/source/blender/editors/space_view3d/view3d_ops.c
index 8c668b2b8e0..bebaa5e5203 100644
--- a/source/blender/editors/space_view3d/view3d_ops.c
+++ b/source/blender/editors/space_view3d/view3d_ops.c
@@ -49,6 +49,7 @@
#include "BKE_report.h"
#include "RNA_access.h"
+#include "RNA_define.h"
#include "WM_api.h"
#include "WM_types.h"
@@ -102,9 +103,15 @@ static void VIEW3D_OT_copybuffer(wmOperatorType *ot)
static int view3d_pastebuffer_exec(bContext *C, wmOperator *op)
{
char str[FILE_MAX];
+ short flag = 0;
+
+ if (RNA_boolean_get(op->ptr, "autoselect"))
+ flag |= FILE_AUTOSELECT;
+ if (RNA_boolean_get(op->ptr, "active_layer"))
+ flag |= FILE_ACTIVELAY;
BLI_make_file_string("/", str, BKE_tempdir_base(), "copybuffer.blend");
- if (BKE_copybuffer_paste(C, str, op->reports)) {
+ if (BKE_copybuffer_paste(C, str, flag, op->reports)) {
WM_event_add_notifier(C, NC_WINDOW, NULL);
BKE_report(op->reports, RPT_INFO, "Objects pasted from buffer");
@@ -131,6 +138,9 @@ static void VIEW3D_OT_pastebuffer(wmOperatorType *ot)
/* flags */
ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
+
+ RNA_def_boolean(ot->srna, "autoselect", true, "Select", "Select pasted objects");
+ RNA_def_boolean(ot->srna, "active_layer", true, "Active Layer", "Put pasted objects on the active layer");
}
/* ************************** registration **********************************/