[Bf-blender-cvs] [d430d12123d] blender2.8: Merge branch 'master' into blender2.8
Campbell Barton
noreply at git.blender.org
Wed Mar 14 08:00:37 CET 2018
Commit: d430d12123d88780480e1523340af7a0cddacf96
Author: Campbell Barton
Date: Wed Mar 14 18:08:37 2018 +1100
Branches: blender2.8
https://developer.blender.org/rBd430d12123d88780480e1523340af7a0cddacf96
Merge branch 'master' into blender2.8
===================================================================
===================================================================
diff --cc source/blender/editors/mesh/editmesh_select.c
index ca1002c7268,c84ba93ec0d..a6bbebb834e
--- a/source/blender/editors/mesh/editmesh_select.c
+++ b/source/blender/editors/mesh/editmesh_select.c
@@@ -207,8 -218,8 +222,8 @@@ bool EDBM_backbuf_border_init
if (vc->obedit == NULL || !V3D_IS_ZBUF(vc->v3d)) {
return false;
}
-
+
- buf = ED_view3d_backbuf_read(vc, xmin, ymin, xmax, ymax);
+ buf = ED_view3d_backbuf_read(eval_ctx, vc, xmin, ymin, xmax, ymax);
if ((buf == NULL) || (bm_vertoffs == 0)) {
return false;
}
@@@ -267,20 -278,20 +282,20 @@@ static void edbm_mask_lasso_px_cb(int x
/* mcords is a polygon mask
* - grab backbuffer,
- * - draw with black in backbuffer,
+ * - draw with black in backbuffer,
* - grab again and compare
- * returns 'OK'
+ * returns 'OK'
*/
-bool EDBM_backbuf_border_mask_init(ViewContext *vc, const int mcords[][2], short tot, short xmin, short ymin, short xmax, short ymax)
+bool EDBM_backbuf_border_mask_init(const struct EvaluationContext *eval_ctx, ViewContext *vc, const int mcords[][2], short tot, short xmin, short ymin, short xmax, short ymax)
{
unsigned int *dr, *dr_mask, *dr_mask_arr;
struct ImBuf *buf;
int a;
struct LassoMaskData lasso_mask_data;
-
+
/* method in use for face selecting too */
if (vc->obedit == NULL) {
- if (!BKE_paint_select_elem_test(vc->obact)) {
+ if (!BKE_paint_select_elem_test(vc->obact, eval_ctx->object_mode)) {
return false;
}
}
@@@ -329,10 -338,10 +344,10 @@@ bool EDBM_backbuf_circle_init
unsigned int *dr;
short xmin, ymin, xmax, ymax, xc, yc;
int radsq;
-
+
/* method in use for face selecting too */
if (vc->obedit == NULL) {
- if (!BKE_paint_select_elem_test(vc->obact)) {
+ if (!BKE_paint_select_elem_test(vc->obact, eval_ctx->object_mode)) {
return false;
}
}
@@@ -451,14 -460,14 +466,14 @@@ BMVert *EDBM_vert_find_nearest_ex
float dist_test;
unsigned int index;
BMVert *eve;
-
+
/* No afterqueue (yet), so we check it now, otherwise the bm_xxxofs indices are bad. */
- ED_view3d_backbuf_validate(vc);
+ ED_view3d_backbuf_validate(eval_ctx, vc);
index = ED_view3d_backbuf_sample_rect(
- vc, vc->mval, dist_px, bm_wireoffs, 0xFFFFFF, &dist_test);
+ eval_ctx, vc, vc->mval, dist_px, bm_wireoffs, 0xFFFFFF, &dist_test);
eve = index ? BM_vert_at_index_find_or_table(bm, index - 1) : NULL;
-
+
if (eve) {
if (dist_test < *r_dist) {
*r_dist = dist_test;
@@@ -813,11 -822,11 +828,11 @@@ BMFace *EDBM_face_find_nearest_ex
unsigned int index;
BMFace *efa;
- ED_view3d_backbuf_validate(vc);
+ ED_view3d_backbuf_validate(eval_ctx, vc);
- index = ED_view3d_backbuf_sample(vc, vc->mval[0], vc->mval[1]);
+ index = ED_view3d_backbuf_sample(eval_ctx, vc, vc->mval[0], vc->mval[1]);
efa = index ? BM_face_at_index_find_or_table(bm, index - 1) : NULL;
-
+
if (r_efa_zbuf) {
*r_efa_zbuf = efa;
}
@@@ -1572,10 -1591,8 +1599,9 @@@ static void mouse_mesh_loop_edge(BMEdit
}
}
-
static bool mouse_mesh_loop(bContext *C, const int mval[2], bool extend, bool deselect, bool toggle, bool ring)
{
+ EvaluationContext eval_ctx;
ViewContext vc;
BMEditMesh *em;
BMEdge *eed;
@@@ -1839,13 -1873,17 +1883,18 @@@ void MESH_OT_select_interior_faces(wmOp
ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
}
+ /** \} */
+
+ /* -------------------------------------------------------------------- */
+ /** \name Select Picking API
+ *
+ * Here actual select happens,
+ * Gets called via generic mouse select operator.
+ * \{ */
- /* ************************************************** */
- /* here actual select happens */
- /* gets called via generic mouse select operator */
bool EDBM_select_pick(bContext *C, const int mval[2], bool extend, bool deselect, bool toggle)
{
+ EvaluationContext eval_ctx;
ViewContext vc;
BMVert *eve = NULL;
BMEdge *eed = NULL;
diff --cc source/blender/editors/mesh/editmesh_tools.c
index a71b03b6ff7,84299f12cef..ce7610b5d69
--- a/source/blender/editors/mesh/editmesh_tools.c
+++ b/source/blender/editors/mesh/editmesh_tools.c
@@@ -868,10 -905,14 +910,16 @@@ void MESH_OT_mark_seam(wmOperatorType *
prop = RNA_def_boolean(ot->srna, "clear", 0, "Clear", "");
RNA_def_property_flag(prop, PROP_SKIP_SAVE);
+
+ WM_operatortype_props_advanced_begin(ot);
}
+ /** \} */
+
+ /* -------------------------------------------------------------------- */
+ /** \name Mark Edge (Sharp) Operator
+ * \{ */
+
static int edbm_mark_sharp_exec(bContext *C, wmOperator *op)
{
Object *obedit = CTX_data_edit_object(C);
@@@ -3301,10 -3452,9 +3468,10 @@@ static int edbm_separate_exec(bContext
{
Main *bmain = CTX_data_main(C);
Scene *scene = CTX_data_scene(C);
+ ViewLayer *view_layer = CTX_data_view_layer(C);
const int type = RNA_enum_get(op->ptr, "type");
int retval = 0;
-
+
if (ED_operator_editmesh(C)) {
Base *base = CTX_data_active_base(C);
BMEditMesh *em = BKE_editmesh_from_object(base->object);
More information about the Bf-blender-cvs
mailing list