Cleanup: rename UV selection options

- Remove the `SI_` prefix from sticky UV selection options.
  This was left in from when the option was part of "SpaceImage"
  which is no longer the case.
- Use *_SELECT_SYNC, _SELECT_ISLAND (matching RNA identifiers).
- Use "VERT" abbreviation.
This commit is contained in:
Campbell Barton
2025-09-28 15:13:54 +10:00
parent 8de2e6f9fb
commit 1453871dea
17 changed files with 207 additions and 207 deletions

View File

@@ -809,7 +809,7 @@ void blo_do_versions_250(FileData *fd, Library * /*lib*/, Main *bmain)
if (ts->autokey_mode == 0) {
ts->autokey_mode = 2; /* 'add/replace' but not on */
}
ts->uv_selectmode = UV_SELECT_VERTEX;
ts->uv_selectmode = UV_SELECT_VERT;
ts->vgroup_weight = 1.0f;
}
}

View File

@@ -2732,8 +2732,8 @@ void blo_do_versions_500(FileData *fd, Library * /*lib*/, Main *bmain)
LISTBASE_FOREACH (Scene *, scene, &bmain->scenes) {
ToolSettings *ts = scene->toolsettings;
if (ts->uv_selectmode & uv_select_island) {
ts->uv_selectmode = UV_SELECT_VERTEX;
ts->uv_flag |= UV_FLAG_ISLAND_SELECT;
ts->uv_selectmode = UV_SELECT_VERT;
ts->uv_flag |= UV_FLAG_SELECT_ISLAND;
}
}
}

View File

@@ -604,9 +604,9 @@ class MeshUVs : Overlay {
const bool hide_faces = space_image->flag & SI_NO_DRAWFACES;
select_face_ = !show_mesh_analysis_ && !hide_faces;
if (tool_setting->uv_flag & UV_FLAG_SYNC_SELECT) {
if (tool_setting->uv_flag & UV_FLAG_SELECT_SYNC) {
const char sel_mode_3d = tool_setting->selectmode;
if (tool_setting->uv_sticky == SI_STICKY_VERTEX) {
if (tool_setting->uv_sticky == UV_STICKY_VERT) {
/* NOTE: Ignore #SCE_SELECT_VERTEX because a single selected edge
* on the mesh may cause single UV vertices to be selected. */
select_vert_ = true;

View File

@@ -1249,7 +1249,7 @@ void DRW_mesh_batch_cache_create_requested(TaskGraph &task_graph,
if ((batch_requested & MBC_EDITUV) || cd_uv_update) {
/* Discard UV batches if sync_selection changes */
const bool is_uvsyncsel = ts && (ts->uv_flag & UV_FLAG_SYNC_SELECT);
const bool is_uvsyncsel = ts && (ts->uv_flag & UV_FLAG_SELECT_SYNC);
if (cd_uv_update || (cache.is_uvsyncsel != is_uvsyncsel)) {
cache.is_uvsyncsel = is_uvsyncsel;
FOREACH_MESH_BUFFER_CACHE (cache, mbc) {

View File

@@ -164,7 +164,7 @@ static gpu::IndexBufPtr extract_edituv_tris_mesh(const MeshRenderData &mr,
gpu::IndexBufPtr extract_edituv_tris(const MeshRenderData &mr, const bool edit_uvs)
{
const bool sync_selection = edit_uvs ? (mr.toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) : false;
const bool sync_selection = edit_uvs ? (mr.toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) : false;
if (mr.extract_type == MeshExtractType::BMesh) {
return extract_edituv_tris_bm(mr, sync_selection);
}
@@ -244,7 +244,7 @@ static gpu::IndexBufPtr extract_edituv_tris_subdiv_mesh(const MeshRenderData &mr
gpu::IndexBufPtr extract_edituv_tris_subdiv(const MeshRenderData &mr,
const DRWSubdivCache &subdiv_cache)
{
const bool sync_selection = (mr.toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool sync_selection = (mr.toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
if (mr.extract_type == MeshExtractType::BMesh) {
return extract_edituv_tris_subdiv_bm(mr, subdiv_cache, sync_selection);
}
@@ -369,7 +369,7 @@ gpu::IndexBufPtr extract_edituv_lines(const MeshRenderData &mr, const UvExtracti
sync_selection = true;
break;
case UvExtractionMode::Edit:
sync_selection = ((mr.toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) != 0);
sync_selection = ((mr.toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) != 0);
break;
case UvExtractionMode::Selection:
sync_selection = false;
@@ -484,7 +484,7 @@ gpu::IndexBufPtr extract_edituv_lines_subdiv(const MeshRenderData &mr,
sync_selection = true;
break;
case UvExtractionMode::Edit:
sync_selection = ((mr.toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) != 0);
sync_selection = ((mr.toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) != 0);
break;
case UvExtractionMode::Selection:
sync_selection = false;
@@ -551,7 +551,7 @@ static void extract_edituv_points_mesh(const MeshRenderData &mr,
gpu::IndexBufPtr extract_edituv_points(const MeshRenderData &mr)
{
const bool sync_selection = (mr.toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool sync_selection = (mr.toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
GPUIndexBufBuilder builder;
GPU_indexbuf_init(&builder, GPU_PRIM_POINTS, mr.corners_num, mr.corners_num);
@@ -621,7 +621,7 @@ static void extract_edituv_points_subdiv_mesh(const MeshRenderData &mr,
gpu::IndexBufPtr extract_edituv_points_subdiv(const MeshRenderData &mr,
const DRWSubdivCache &subdiv_cache)
{
const bool sync_selection = (mr.toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool sync_selection = (mr.toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
GPUIndexBufBuilder builder;
GPU_indexbuf_init(
@@ -692,7 +692,7 @@ static gpu::IndexBufPtr extract_edituv_face_dots_mesh(const MeshRenderData &mr,
gpu::IndexBufPtr extract_edituv_face_dots(const MeshRenderData &mr)
{
const bool sync_selection = (mr.toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool sync_selection = (mr.toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
if (mr.extract_type == MeshExtractType::BMesh) {
return extract_edituv_face_dots_bm(mr, sync_selection);
}

View File

@@ -170,8 +170,8 @@ void uvedit_face_select_shared_vert(
* Selects UV edges and shared vertices according to sticky_flag.
*
* \param sticky_flag:
* - #SI_STICKY_LOC: selects all UV edges that share the same mesh vertices and UV coordinates.
* - #SI_STICKY_VERTEX: selects all UV edges sharing the same mesh vertices.
* - #UV_STICKY_LOCATION: selects all UV edges that share the same mesh vertices and UV coords.
* - #UV_STICKY_VERT: selects all UV edges sharing the same mesh vertices.
*/
void uvedit_edge_select_shared_vert(const Scene *scene,
BMesh *bm,
@@ -183,8 +183,8 @@ void uvedit_edge_select_shared_vert(const Scene *scene,
* Selects shared UVs based on #sticky_flag.
*
* \param sticky_flag: Type of sticky selection:
* - #SI_STICKY_LOC: selects all UVs sharing same mesh vertex and UV coordinates.
* - #SI_STICKY_VERTEX: selects all UVs sharing same mesh vertex.
* - #UV_STICKY_LOCATION: selects all UVs sharing same mesh vertex and UV coords.
* - #UV_STICKY_VERT: selects all UVs sharing same mesh vertex.
*/
void uvedit_uv_select_shared_vert(const Scene *scene,
BMesh *bm,
@@ -247,7 +247,7 @@ BMLoop *ED_uvedit_active_edge_loop_get(BMesh *bm);
/**
* Intentionally don't return #UV_SELECT_ISLAND as it's not an element type.
* In this case return #UV_SELECT_VERTEX as a fallback.
* In this case return #UV_SELECT_VERT as a fallback.
*/
char ED_uvedit_select_mode_get(const Scene *scene);
bool ED_uvedit_select_island_check(const ToolSettings *ts);

View File

@@ -1556,7 +1556,7 @@ static wmOperatorStatus edbm_select_mode_invoke(bContext *C, wmOperator *op, con
/* Bypass when in UV non sync-select mode, fall through to keymap that edits. */
if (CTX_wm_space_image(C)) {
ToolSettings *ts = CTX_data_tool_settings(C);
if ((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0) {
if ((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0) {
return OPERATOR_PASS_THROUGH;
}
/* Bypass when no action is needed. */

View File

@@ -761,7 +761,7 @@ static void bm_uv_build_islands(UvElementMap *element_map,
const BMUVOffsets uv_offsets = BM_uv_map_offsets_get(bm);
const bool use_uv_edge_connectivity = scene->toolsettings->uv_flag & UV_FLAG_SYNC_SELECT ?
const bool use_uv_edge_connectivity = scene->toolsettings->uv_flag & UV_FLAG_SELECT_SYNC ?
scene->toolsettings->selectmode & SCE_SELECT_EDGE :
scene->toolsettings->uv_selectmode & UV_SELECT_EDGE;
if (use_uv_edge_connectivity) {
@@ -983,7 +983,7 @@ UvElementMap *BM_uv_element_map_create(BMesh *bm,
const bool do_islands)
{
/* In uv sync selection, all UVs (from unhidden geometry) are visible. */
const bool face_selected = !(scene->toolsettings->uv_flag & UV_FLAG_SYNC_SELECT);
const bool face_selected = !(scene->toolsettings->uv_flag & UV_FLAG_SELECT_SYNC);
BMVert *ev;
BMFace *efa;

View File

@@ -206,7 +206,7 @@ void ED_uvedit_foreach_uv(const Scene *scene,
FunctionRef<void(float[2])> user_fn)
{
/* Check selection for quick return. */
const bool synced_selection = (scene->toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool synced_selection = (scene->toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
if (synced_selection && bm->totvertsel == (selected ? 0 : bm->totvert)) {
return;
}
@@ -1632,7 +1632,7 @@ static wmOperatorStatus uv_pin_exec(bContext *C, wmOperator *op)
const ToolSettings *ts = scene->toolsettings;
const bool clear = RNA_boolean_get(op->ptr, "clear");
const bool invert = RNA_boolean_get(op->ptr, "invert");
const bool synced_selection = (ts->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
Vector<Object *> objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs(
scene, view_layer, nullptr);
@@ -1763,7 +1763,7 @@ static wmOperatorStatus uv_hide_exec(bContext *C, wmOperator *op)
BMLoop *l;
BMIter iter, liter;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -1774,7 +1774,7 @@ static wmOperatorStatus uv_hide_exec(bContext *C, wmOperator *op)
}
const BMUVOffsets offsets = BM_uv_map_offsets_get(em->bm);
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (EDBM_mesh_hide(em, swap)) {
Mesh *mesh = static_cast<Mesh *>(ob->data);
EDBMUpdate_Params params = {0};
@@ -1836,7 +1836,7 @@ static wmOperatorStatus uv_hide_exec(bContext *C, wmOperator *op)
BM_face_select_set(em->bm, efa, false);
break;
}
if (UV_VERT_SEL_TEST(l, !swap) && (ts->uv_selectmode == UV_SELECT_VERTEX)) {
if (UV_VERT_SEL_TEST(l, !swap) && (ts->uv_selectmode == UV_SELECT_VERT)) {
BM_face_select_set(em->bm, efa, false);
break;
}
@@ -1936,7 +1936,7 @@ static wmOperatorStatus uv_reveal_exec(bContext *C, wmOperator *op)
BMLoop *l;
BMIter iter, liter;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -1953,7 +1953,7 @@ static wmOperatorStatus uv_reveal_exec(bContext *C, wmOperator *op)
* visibility checks internally. Current implementation handles each case separately. */
/* call the mesh function if we are in mesh sync sel */
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (EDBM_mesh_reveal(em, select)) {
Mesh *mesh = static_cast<Mesh *>(ob->data);
EDBMUpdate_Params params = {0};
@@ -2248,7 +2248,7 @@ static wmOperatorStatus uv_mark_seam_exec(bContext *C, wmOperator *op)
BMIter iter, liter;
const bool flag_set = !RNA_boolean_get(op->ptr, "clear");
const bool synced_selection = (ts->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
Vector<Object *> objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs(
scene, view_layer, nullptr);

View File

@@ -518,7 +518,7 @@ static bool uv_shortest_path_pick_ex(Scene *scene,
if (flush != 0) {
const bool select = (flush == 1);
BMesh *bm = BKE_editmesh_from_object(obedit)->bm;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
ED_uvedit_select_sync_flush(scene->toolsettings, bm, select);
}
else {
@@ -526,7 +526,7 @@ static bool uv_shortest_path_pick_ex(Scene *scene,
}
}
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
DEG_id_tag_update(static_cast<ID *>(obedit->data), ID_RECALC_SELECT);
}
else {
@@ -611,7 +611,7 @@ static wmOperatorStatus uv_shortest_path_pick_invoke(bContext *C,
else if (uv_selectmode & UV_SELECT_EDGE) {
/* Edge selection. */
BMLoop *l_src = nullptr;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
BMEdge *e_src = BM_mesh_active_edge_get(bm);
if (e_src != nullptr) {
l_src = uv_find_nearest_loop_from_edge(scene, obedit, e_src, co);
@@ -634,7 +634,7 @@ static wmOperatorStatus uv_shortest_path_pick_invoke(bContext *C,
else {
/* Vertex selection. */
BMLoop *l_src = nullptr;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
BMVert *v_src = BM_mesh_active_vert_get(bm);
if (v_src != nullptr) {
l_src = uv_find_nearest_loop_from_vert(scene, obedit, v_src, co);

View File

@@ -901,7 +901,7 @@ static wmOperatorStatus uv_rip_exec(bContext *C, wmOperator *op)
Scene *scene = CTX_data_scene(C);
ViewLayer *view_layer = CTX_data_view_layer(C);
if (scene->toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) {
if (scene->toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) {
/* "Rip" is logically incompatible with sync-select.
* Report an error instead of "poll" so this is reported when the tool is used,
* with #131642 implemented, this can be made to work. */

View File

@@ -156,11 +156,11 @@ BMLoop *ED_uvedit_active_edge_loop_get(BMesh *bm)
char ED_uvedit_select_mode_get(const Scene *scene)
{
const ToolSettings *ts = scene->toolsettings;
char uv_selectmode = UV_SELECT_VERTEX;
char uv_selectmode = UV_SELECT_VERT;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode & SCE_SELECT_VERTEX) {
uv_selectmode = UV_SELECT_VERTEX;
uv_selectmode = UV_SELECT_VERT;
}
else if (ts->selectmode & SCE_SELECT_EDGE) {
uv_selectmode = UV_SELECT_EDGE;
@@ -170,8 +170,8 @@ char ED_uvedit_select_mode_get(const Scene *scene)
}
}
else {
if (ts->uv_selectmode & UV_SELECT_VERTEX) {
uv_selectmode = UV_SELECT_VERTEX;
if (ts->uv_selectmode & UV_SELECT_VERT) {
uv_selectmode = UV_SELECT_VERT;
}
else if (ts->uv_selectmode & UV_SELECT_EDGE) {
uv_selectmode = UV_SELECT_EDGE;
@@ -185,7 +185,7 @@ char ED_uvedit_select_mode_get(const Scene *scene)
bool ED_uvedit_select_island_check(const ToolSettings *ts)
{
if ((ts->uv_flag & UV_FLAG_ISLAND_SELECT) == 0) {
if ((ts->uv_flag & UV_FLAG_SELECT_ISLAND) == 0) {
return false;
}
@@ -196,7 +196,7 @@ bool ED_uvedit_select_island_check(const ToolSettings *ts)
const bool strict = false;
if (strict) {
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode & (SCE_SELECT_VERTEX | SCE_SELECT_EDGE)) {
return false;
}
@@ -209,7 +209,7 @@ bool ED_uvedit_select_island_check(const ToolSettings *ts)
void ED_uvedit_select_sync_flush(const ToolSettings *ts, BMesh *bm, const bool select)
{
/* bmesh API handles flushing but not on de-select */
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode != SCE_SELECT_FACE) {
if (select == false) {
BM_mesh_select_flush_from_verts(bm, false);
@@ -252,7 +252,7 @@ static void uvedit_vertex_select_tagged(BMesh *bm,
bool uvedit_face_visible_test_ex(const ToolSettings *ts, const BMFace *efa)
{
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
return (BM_elem_flag_test(efa, BM_ELEM_HIDDEN) == 0);
}
return (BM_elem_flag_test(efa, BM_ELEM_HIDDEN) == 0 && BM_elem_flag_test(efa, BM_ELEM_SELECT));
@@ -268,12 +268,12 @@ bool uvedit_face_select_test_ex(const ToolSettings *ts,
{
BLI_assert(offsets.select_vert >= 0);
BLI_assert(offsets.select_edge >= 0);
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
return BM_elem_flag_test(efa, BM_ELEM_SELECT);
}
const int cd_offset = (ts->uv_selectmode & UV_SELECT_VERTEX) ? offsets.select_vert :
offsets.select_edge;
const int cd_offset = (ts->uv_selectmode & UV_SELECT_VERT) ? offsets.select_vert :
offsets.select_edge;
const BMLoop *l_first = BM_FACE_FIRST_LOOP(efa);
const BMLoop *l_iter = l_first;
do {
@@ -293,7 +293,7 @@ void uvedit_face_select_set_with_sticky(
{
const ToolSettings *ts = scene->toolsettings;
const char sticky = ts->uv_sticky;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
uvedit_face_select_set(scene, bm, efa, select, offsets);
return;
}
@@ -303,12 +303,12 @@ void uvedit_face_select_set_with_sticky(
/* NOTE: Previously face selections done in sticky vertex mode selected stray UV vertices
* (not part of any face selections). This now uses the sticky location mode logic instead. */
switch (sticky) {
case SI_STICKY_DISABLE: {
case UV_STICKY_DISABLE: {
uvedit_face_select_set(scene, bm, efa, select, offsets);
break;
}
default: {
/* SI_STICKY_LOC and SI_STICKY_VERTEX modes. */
/* UV_STICKY_LOCATION and UV_STICKY_VERT modes. */
uvedit_face_select_shared_vert(scene, bm, efa, select, offsets);
}
}
@@ -323,12 +323,12 @@ void uvedit_face_select_shared_vert(
BM_ITER_ELEM (l, &liter, efa, BM_LOOPS_OF_FACE) {
if (select) {
BM_ELEM_CD_SET_BOOL(l, offsets.select_edge, true);
uvedit_uv_select_shared_vert(scene, bm, l, select, SI_STICKY_LOC, offsets);
uvedit_uv_select_shared_vert(scene, bm, l, select, UV_STICKY_LOCATION, offsets);
}
else {
BM_ELEM_CD_SET_BOOL(l, offsets.select_edge, false);
if (!uvedit_vert_is_face_select_any_other(scene->toolsettings, l, offsets)) {
uvedit_uv_select_shared_vert(scene, bm, l, select, SI_STICKY_LOC, offsets);
uvedit_uv_select_shared_vert(scene, bm, l, select, UV_STICKY_LOCATION, offsets);
}
}
}
@@ -354,7 +354,7 @@ void uvedit_face_select_enable(const Scene *scene,
BLI_assert(offsets.select_edge >= 0);
const ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
BM_face_select_set(bm, efa, true);
}
else {
@@ -377,7 +377,7 @@ void uvedit_face_select_disable(const Scene *scene,
BLI_assert(offsets.select_edge >= 0);
const ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
BM_face_select_set(bm, efa, false);
}
else {
@@ -397,11 +397,11 @@ bool uvedit_edge_select_test_ex(const ToolSettings *ts,
{
BLI_assert(offsets.select_vert >= 0);
BLI_assert(offsets.select_edge >= 0);
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode == SCE_SELECT_FACE) {
/* Face only is a special case that can respect sticky modes. */
switch (ts->uv_sticky) {
case SI_STICKY_LOC: {
case UV_STICKY_LOCATION: {
if (BM_elem_flag_test(l->f, BM_ELEM_SELECT)) {
return true;
}
@@ -410,11 +410,11 @@ bool uvedit_edge_select_test_ex(const ToolSettings *ts,
}
return false;
}
case SI_STICKY_DISABLE: {
case UV_STICKY_DISABLE: {
return BM_elem_flag_test_bool(l->f, BM_ELEM_SELECT);
}
default: {
/* #SI_STICKY_VERTEX */
/* #UV_STICKY_VERT */
return BM_elem_flag_test_bool(l->e, BM_ELEM_SELECT);
}
}
@@ -431,7 +431,7 @@ bool uvedit_edge_select_test_ex(const ToolSettings *ts,
BM_elem_flag_test(l->next->v, BM_ELEM_SELECT);
}
if (ts->uv_selectmode & UV_SELECT_VERTEX) {
if (ts->uv_selectmode & UV_SELECT_VERT) {
return BM_ELEM_CD_GET_BOOL(l, offsets.select_vert) &&
BM_ELEM_CD_GET_BOOL(l->next, offsets.select_vert);
}
@@ -447,26 +447,26 @@ void uvedit_edge_select_set_with_sticky(
const Scene *scene, BMesh *bm, BMLoop *l, const bool select, const BMUVOffsets &offsets)
{
const ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
uvedit_edge_select_set(scene, bm, l, select, offsets);
return;
}
const int sticky = ts->uv_sticky;
switch (sticky) {
case SI_STICKY_DISABLE: {
case UV_STICKY_DISABLE: {
if (uvedit_face_visible_test(scene, l->f)) {
uvedit_edge_select_set(scene, bm, l, select, offsets);
}
break;
}
case SI_STICKY_VERTEX: {
uvedit_edge_select_shared_vert(scene, bm, l, select, SI_STICKY_VERTEX, offsets);
case UV_STICKY_VERT: {
uvedit_edge_select_shared_vert(scene, bm, l, select, UV_STICKY_VERT, offsets);
break;
}
default: {
/* SI_STICKY_LOC (Fallback) */
uvedit_edge_select_shared_vert(scene, bm, l, select, SI_STICKY_LOC, offsets);
/* UV_STICKY_LOCATION (Fallback) */
uvedit_edge_select_shared_vert(scene, bm, l, select, UV_STICKY_LOCATION, offsets);
break;
}
}
@@ -479,7 +479,7 @@ void uvedit_edge_select_shared_vert(const Scene *scene,
const int sticky_flag,
const BMUVOffsets &offsets)
{
BLI_assert(ELEM(sticky_flag, SI_STICKY_LOC, SI_STICKY_VERTEX));
BLI_assert(ELEM(sticky_flag, UV_STICKY_LOCATION, UV_STICKY_VERT));
/* Set edge flags. Rely on this for face visibility checks */
uvedit_edge_select_set_noflush(scene, l, select, sticky_flag, offsets);
@@ -488,22 +488,23 @@ void uvedit_edge_select_shared_vert(const Scene *scene,
do {
if (select) {
if (BM_ELEM_CD_GET_BOOL(l_iter, offsets.select_edge)) {
uvedit_uv_select_shared_vert(scene, bm, l_iter, true, SI_STICKY_LOC, offsets);
uvedit_uv_select_shared_vert(scene, bm, l_iter->next, true, SI_STICKY_LOC, offsets);
uvedit_uv_select_shared_vert(scene, bm, l_iter, true, UV_STICKY_LOCATION, offsets);
uvedit_uv_select_shared_vert(scene, bm, l_iter->next, true, UV_STICKY_LOCATION, offsets);
}
}
else {
if (!BM_ELEM_CD_GET_BOOL(l_iter, offsets.select_edge)) {
if (!uvedit_vert_is_edge_select_any_other(scene->toolsettings, l, offsets)) {
uvedit_uv_select_shared_vert(scene, bm, l_iter, false, SI_STICKY_LOC, offsets);
uvedit_uv_select_shared_vert(scene, bm, l_iter, false, UV_STICKY_LOCATION, offsets);
}
if (!uvedit_vert_is_edge_select_any_other(scene->toolsettings, l->next, offsets)) {
uvedit_uv_select_shared_vert(scene, bm, l_iter->next, false, SI_STICKY_LOC, offsets);
uvedit_uv_select_shared_vert(
scene, bm, l_iter->next, false, UV_STICKY_LOCATION, offsets);
}
}
}
} while (((l_iter = l_iter->radial_next) != l) && (sticky_flag != SI_STICKY_LOC));
} while (((l_iter = l_iter->radial_next) != l) && (sticky_flag != UV_STICKY_LOCATION));
}
void uvedit_edge_select_set_noflush(const Scene *scene,
@@ -517,12 +518,11 @@ void uvedit_edge_select_set_noflush(const Scene *scene,
BMLoop *l_iter = l;
do {
if (uvedit_face_visible_test(scene, l_iter->f)) {
if ((sticky_flag == SI_STICKY_VERTEX) || BM_loop_uv_share_edge_check(l, l_iter, offsets.uv))
{
if ((sticky_flag == UV_STICKY_VERT) || BM_loop_uv_share_edge_check(l, l_iter, offsets.uv)) {
BM_ELEM_CD_SET_BOOL(l_iter, offsets.select_edge, select);
}
}
} while (((l_iter = l_iter->radial_next) != l) && (sticky_flag != SI_STICKY_DISABLE));
} while (((l_iter = l_iter->radial_next) != l) && (sticky_flag != UV_STICKY_DISABLE));
}
void uvedit_edge_select_set(
@@ -546,7 +546,7 @@ void uvedit_edge_select_enable(const Scene *scene,
BLI_assert(offsets.select_vert >= 0);
BLI_assert(offsets.select_edge >= 0);
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode & SCE_SELECT_FACE) {
BM_face_select_set(bm, l->f, true);
}
@@ -574,7 +574,7 @@ void uvedit_edge_select_disable(const Scene *scene,
BLI_assert(offsets.select_vert >= 0);
BLI_assert(offsets.select_edge >= 0);
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode & SCE_SELECT_FACE) {
BM_face_select_set(bm, l->f, false);
}
@@ -588,7 +588,7 @@ void uvedit_edge_select_disable(const Scene *scene,
}
else {
BM_ELEM_CD_SET_BOOL(l, offsets.select_edge, false);
if ((ts->uv_selectmode & UV_SELECT_VERTEX) == 0) {
if ((ts->uv_selectmode & UV_SELECT_VERT) == 0) {
/* Deselect UV vertex if not part of another edge selection */
if (!BM_ELEM_CD_GET_BOOL(l->next, offsets.select_edge)) {
BM_ELEM_CD_SET_BOOL(l->next, offsets.select_vert, false);
@@ -607,12 +607,12 @@ void uvedit_edge_select_disable(const Scene *scene,
bool uvedit_uv_select_test_ex(const ToolSettings *ts, const BMLoop *l, const BMUVOffsets &offsets)
{
BLI_assert(offsets.select_vert >= 0);
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode == SCE_SELECT_FACE) {
/* Face only is a special case that can respect sticky modes. */
switch (ts->uv_sticky) {
case SI_STICKY_LOC: {
case UV_STICKY_LOCATION: {
if (BM_elem_flag_test(l->f, BM_ELEM_SELECT)) {
return true;
}
@@ -621,11 +621,11 @@ bool uvedit_uv_select_test_ex(const ToolSettings *ts, const BMLoop *l, const BMU
}
return false;
}
case SI_STICKY_DISABLE: {
case UV_STICKY_DISABLE: {
return BM_elem_flag_test_bool(l->f, BM_ELEM_SELECT);
}
default: {
/* #SI_STICKY_VERTEX */
/* #UV_STICKY_VERT */
return BM_elem_flag_test_bool(l->v, BM_ELEM_SELECT);
}
}
@@ -635,7 +635,7 @@ bool uvedit_uv_select_test_ex(const ToolSettings *ts, const BMLoop *l, const BMU
if ((ts->selectmode & ~SCE_SELECT_FACE) == SCE_SELECT_EDGE) {
/* Edge/Face is a special case that can respect sticky modes. */
switch (ts->uv_sticky) {
case SI_STICKY_LOC: {
case UV_STICKY_LOCATION: {
if (BM_elem_flag_test(l->f, BM_ELEM_SELECT)) {
return true;
}
@@ -644,12 +644,12 @@ bool uvedit_uv_select_test_ex(const ToolSettings *ts, const BMLoop *l, const BMU
}
return false;
}
case SI_STICKY_DISABLE: {
case UV_STICKY_DISABLE: {
return BM_elem_flag_test(l->e, BM_ELEM_SELECT) ||
BM_elem_flag_test(l->prev->e, BM_ELEM_SELECT);
}
default: {
/* #SI_STICKY_VERTEX */
/* #UV_STICKY_VERT */
return BM_elem_flag_test_bool(l->v, BM_ELEM_SELECT);
}
}
@@ -685,26 +685,26 @@ void uvedit_uv_select_set_with_sticky(
const Scene *scene, BMesh *bm, BMLoop *l, const bool select, const BMUVOffsets &offsets)
{
const ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
uvedit_uv_select_set(scene, bm, l, select, offsets);
return;
}
const int sticky = ts->uv_sticky;
switch (sticky) {
case SI_STICKY_DISABLE: {
case UV_STICKY_DISABLE: {
if (uvedit_face_visible_test(scene, l->f)) {
uvedit_uv_select_set(scene, bm, l, select, offsets);
}
break;
}
case SI_STICKY_VERTEX: {
uvedit_uv_select_shared_vert(scene, bm, l, select, SI_STICKY_VERTEX, offsets);
case UV_STICKY_VERT: {
uvedit_uv_select_shared_vert(scene, bm, l, select, UV_STICKY_VERT, offsets);
break;
}
default: {
/* SI_STICKY_LOC. */
uvedit_uv_select_shared_vert(scene, bm, l, select, SI_STICKY_LOC, offsets);
/* UV_STICKY_LOCATION. */
uvedit_uv_select_shared_vert(scene, bm, l, select, UV_STICKY_LOCATION, offsets);
break;
}
}
@@ -717,7 +717,7 @@ void uvedit_uv_select_shared_vert(const Scene *scene,
const int sticky_flag,
const BMUVOffsets &offsets)
{
BLI_assert(ELEM(sticky_flag, SI_STICKY_LOC, SI_STICKY_VERTEX));
BLI_assert(ELEM(sticky_flag, UV_STICKY_LOCATION, UV_STICKY_VERT));
BLI_assert(offsets.uv >= 0);
BMEdge *e_first, *e_iter;
@@ -731,7 +731,7 @@ void uvedit_uv_select_shared_vert(const Scene *scene,
if (l_radial_iter->v == l->v) {
if (uvedit_face_visible_test(scene, l_radial_iter->f)) {
bool do_select = false;
if (sticky_flag == SI_STICKY_VERTEX) {
if (sticky_flag == UV_STICKY_VERT) {
do_select = true;
}
else if (BM_loop_uv_share_vert_check(l, l_radial_iter, offsets.uv)) {
@@ -767,7 +767,7 @@ void uvedit_uv_select_enable(const Scene *scene, BMesh *bm, BMLoop *l, const BMU
/* Are you looking for `uvedit_edge_select_set(...)` instead? */
}
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode & SCE_SELECT_FACE) {
BM_face_select_set(bm, l->f, true);
}
@@ -785,7 +785,7 @@ void uvedit_uv_select_disable(const Scene *scene, BMesh *bm, BMLoop *l, const BM
const ToolSettings *ts = scene->toolsettings;
BLI_assert(offsets.select_vert >= 0);
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode & SCE_SELECT_FACE) {
BM_face_select_set(bm, l->f, false);
}
@@ -1247,7 +1247,7 @@ BMLoop *uv_find_nearest_loop_from_edge(Scene *scene, Object *obedit, BMEdge *e,
void uvedit_select_prepare_custom_data(const Scene *scene, BMesh *bm)
{
const ToolSettings *ts = scene->toolsettings;
BLI_assert((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0);
BLI_assert((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0);
UNUSED_VARS_NDEBUG(ts);
const char *active_uv_name = CustomData_get_active_layer_name(&bm->ldata, CD_PROP_FLOAT2);
BM_uv_map_attr_vert_select_ensure(bm, active_uv_name);
@@ -1374,14 +1374,14 @@ static void bm_clear_uv_vert_selection(const Scene *scene, BMesh *bm, const BMUV
void ED_uvedit_selectmode_flush(const Scene *scene, BMesh *bm)
{
const ToolSettings *ts = scene->toolsettings;
BLI_assert((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0);
BLI_assert((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0);
UNUSED_VARS_NDEBUG(ts);
uvedit_select_prepare_custom_data(scene, bm);
const BMUVOffsets offsets = BM_uv_map_offsets_get(bm);
/* Vertex Mode only. */
if (ts->uv_selectmode & UV_SELECT_VERTEX) {
if (ts->uv_selectmode & UV_SELECT_VERT) {
BMFace *efa;
BMLoop *l;
BMIter iter, liter;
@@ -1407,7 +1407,7 @@ void ED_uvedit_selectmode_flush(const Scene *scene, BMesh *bm)
void uvedit_select_flush_from_verts(const Scene *scene, BMesh *bm, const bool select)
{
const ToolSettings *ts = scene->toolsettings;
BLI_assert((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0);
BLI_assert((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0);
UNUSED_VARS_NDEBUG(ts);
uvedit_select_prepare_custom_data(scene, bm);
const BMUVOffsets offsets = BM_uv_map_offsets_get(bm);
@@ -1686,7 +1686,7 @@ static int uv_select_edgeloop(Scene *scene, Object *obedit, UvNearestHit *hit, c
BMLoop *l_iter;
BM_ITER_ELEM (l_iter, &liter, f, BM_LOOPS_OF_FACE) {
if (BM_elem_flag_test(l_iter, BM_ELEM_TAG)) {
if (ts->uv_selectmode == UV_SELECT_VERTEX) {
if (ts->uv_selectmode == UV_SELECT_VERT) {
uvedit_uv_select_set_with_sticky(scene, bm, l_iter, select, offsets);
uvedit_uv_select_set_with_sticky(scene, bm, l_iter->next, select, offsets);
}
@@ -1713,7 +1713,7 @@ static int uv_select_faceloop(Scene *scene, Object *obedit, UvNearestHit *hit, c
BMesh *bm = BKE_editmesh_from_object(obedit)->bm;
bool select;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -1780,15 +1780,15 @@ static int uv_select_edgering(Scene *scene, Object *obedit, UvNearestHit *hit, c
{
const ToolSettings *ts = scene->toolsettings;
BMesh *bm = BKE_editmesh_from_object(obedit)->bm;
const bool use_face_select = (ts->uv_flag & UV_FLAG_SYNC_SELECT) ?
const bool use_face_select = (ts->uv_flag & UV_FLAG_SELECT_SYNC) ?
(ts->selectmode & SCE_SELECT_FACE) :
(ts->uv_selectmode & UV_SELECT_FACE);
const bool use_vertex_select = (ts->uv_flag & UV_FLAG_SYNC_SELECT) ?
const bool use_vertex_select = (ts->uv_flag & UV_FLAG_SELECT_SYNC) ?
(ts->selectmode & SCE_SELECT_VERTEX) :
(ts->uv_selectmode & UV_SELECT_VERTEX);
(ts->uv_selectmode & UV_SELECT_VERT);
bool select;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -1895,7 +1895,7 @@ static void uv_select_linked_multi(Scene *scene,
BLI_assert(hflag == BM_ELEM_SELECT);
}
const bool uv_sync_select = (scene->toolsettings->uv_flag & UV_FLAG_SYNC_SELECT);
const bool uv_sync_select = (scene->toolsettings->uv_flag & UV_FLAG_SELECT_SYNC);
/* loop over objects, or just use hit->ob */
for (const int ob_index : objects.index_range()) {
@@ -2219,7 +2219,7 @@ static wmOperatorStatus uv_select_more_less(bContext *C, const bool select)
bool changed = false;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -2227,7 +2227,7 @@ static wmOperatorStatus uv_select_more_less(bContext *C, const bool select)
}
const BMUVOffsets offsets = BM_uv_map_offsets_get(bm);
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
BMEditMesh *em = BKE_editmesh_from_object(obedit);
if (select) {
EDBM_select_more(em, true);
@@ -2388,7 +2388,7 @@ bool uvedit_select_is_any_selected(const Scene *scene, BMesh *bm)
BMLoop *l;
BMIter iter, liter;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
return (bm->totvertsel || bm->totedgesel || bm->totfacesel);
}
@@ -2423,7 +2423,7 @@ bool uvedit_select_is_any_selected_multi(const Scene *scene, const Span<Object *
static void uv_select_all(const Scene *scene, BMEditMesh *em, bool select_all)
{
const ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (select_all) {
EDBM_flag_enable_all(em, BM_ELEM_SELECT);
}
@@ -2454,7 +2454,7 @@ static void uv_select_all(const Scene *scene, BMEditMesh *em, bool select_all)
static void uv_select_toggle_all(const Scene *scene, BMEditMesh *em)
{
const ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
EDBM_select_toggle_all(em);
return;
}
@@ -2466,7 +2466,7 @@ static void uv_select_toggle_all(const Scene *scene, BMEditMesh *em)
static void uv_select_invert(const Scene *scene, BMEditMesh *em)
{
const ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
EDBM_select_swap(em);
EDBM_selectmode_flush(em);
return;
@@ -2492,7 +2492,7 @@ static void uv_select_invert(const Scene *scene, BMEditMesh *em)
}
/* Use UV vertex selection to find vertices and edges that must be selected. */
else {
BLI_assert(uv_selectmode & UV_SELECT_VERTEX);
BLI_assert(uv_selectmode & UV_SELECT_VERT);
bool vs = BM_ELEM_CD_GET_BOOL(l, offsets.select_vert);
BM_ELEM_CD_SET_BOOL(l, offsets.select_vert, !vs);
BM_ELEM_CD_SET_BOOL(l, offsets.select_edge, false);
@@ -2619,7 +2619,7 @@ static bool uv_mouse_select_multi(bContext *C,
const float penalty_dist = 3.0f * U.pixelsize;
/* retrieve operation mode */
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode & SCE_SELECT_FACE) {
selectmode = UV_SELECT_FACE;
}
@@ -2627,10 +2627,10 @@ static bool uv_mouse_select_multi(bContext *C,
selectmode = UV_SELECT_EDGE;
}
else {
selectmode = UV_SELECT_VERTEX;
selectmode = UV_SELECT_VERT;
}
sticky = SI_STICKY_DISABLE;
sticky = UV_STICKY_DISABLE;
}
else {
selectmode = ts->uv_selectmode;
@@ -2648,11 +2648,11 @@ static bool uv_mouse_select_multi(bContext *C,
found_item = uv_find_nearest_face_multi_ex(scene, objects, co, &hit, true);
}
}
else if (selectmode == UV_SELECT_VERTEX) {
else if (selectmode == UV_SELECT_VERT) {
/* find vertex */
found_item = uv_find_nearest_vert_multi(scene, objects, co, penalty_dist, &hit);
if (found_item) {
if ((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0) {
if ((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0) {
BMesh *bm = BKE_editmesh_from_object(hit.ob)->bm;
ED_uvedit_active_vert_loop_set(bm, hit.l);
}
@@ -2662,7 +2662,7 @@ static bool uv_mouse_select_multi(bContext *C,
/* find edge */
found_item = uv_find_nearest_edge_multi(scene, objects, co, penalty_dist, &hit);
if (found_item) {
if ((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0) {
if ((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0) {
BMesh *bm = BKE_editmesh_from_object(hit.ob)->bm;
ED_uvedit_active_edge_loop_set(bm, hit.l);
}
@@ -2693,7 +2693,7 @@ static bool uv_mouse_select_multi(bContext *C,
if (found) {
Object *obedit = hit.ob;
BMesh *bm = BKE_editmesh_from_object(obedit)->bm;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -2737,7 +2737,7 @@ static bool uv_mouse_select_multi(bContext *C,
Object *obedit = hit.ob;
BMesh *bm = BKE_editmesh_from_object(obedit)->bm;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -2757,7 +2757,7 @@ static bool uv_mouse_select_multi(bContext *C,
changed = true;
}
else {
BLI_assert(ELEM(selectmode, UV_SELECT_VERTEX, UV_SELECT_EDGE, UV_SELECT_FACE));
BLI_assert(ELEM(selectmode, UV_SELECT_VERT, UV_SELECT_EDGE, UV_SELECT_FACE));
bool select_value = false;
switch (params.sel_op) {
case SEL_OP_ADD: {
@@ -2791,7 +2791,7 @@ static bool uv_mouse_select_multi(bContext *C,
uvedit_edge_select_set_with_sticky(scene, bm, hit.l, select_value, offsets);
flush = 1;
}
else if (selectmode == UV_SELECT_VERTEX) {
else if (selectmode == UV_SELECT_VERT) {
uvedit_uv_select_set_with_sticky(scene, bm, hit.l, select_value, offsets);
flush = 1;
}
@@ -2800,7 +2800,7 @@ static bool uv_mouse_select_multi(bContext *C,
}
/* De-selecting an edge may deselect a face too - validate. */
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (select_value) {
BMElem *ele = nullptr;
if (selectmode == UV_SELECT_FACE) {
@@ -2809,7 +2809,7 @@ static bool uv_mouse_select_multi(bContext *C,
else if (selectmode == UV_SELECT_EDGE) {
ele = (BMElem *)hit.l->e;
}
else if (selectmode == UV_SELECT_VERTEX) {
else if (selectmode == UV_SELECT_VERT) {
ele = (BMElem *)hit.l->v;
}
/* Expected to be true, harmless if it's not. */
@@ -2823,14 +2823,14 @@ static bool uv_mouse_select_multi(bContext *C,
}
/* (de)select sticky UV nodes. */
if (sticky != SI_STICKY_DISABLE) {
if (sticky != UV_STICKY_DISABLE) {
flush = select_value ? 1 : -1;
}
changed = true;
}
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (flush != 0) {
BM_mesh_select_mode_flush(bm);
}
@@ -2979,7 +2979,7 @@ static wmOperatorStatus uv_mouse_select_loop_generic_multi(bContext *C,
BLI_assert_unreachable();
}
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (flush == 1) {
BM_mesh_select_flush_from_verts(bm, true);
}
@@ -3155,7 +3155,7 @@ static wmOperatorStatus uv_select_linked_internal(bContext *C,
ViewLayer *view_layer = CTX_data_view_layer(C);
bool extend = true;
bool deselect = false;
bool select_faces = (ts->uv_flag & UV_FLAG_SYNC_SELECT) && (ts->selectmode & SCE_SELECT_FACE);
bool select_faces = (ts->uv_flag & UV_FLAG_SELECT_SYNC) && (ts->selectmode & SCE_SELECT_FACE);
UvNearestHit hit = region ? uv_nearest_hit_init_max(&region->v2d) :
uv_nearest_hit_init_max_default();
@@ -3318,7 +3318,7 @@ static wmOperatorStatus uv_select_split_exec(bContext *C, wmOperator *op)
BMLoop *l;
BMIter iter, liter;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
BKE_report(op->reports, RPT_ERROR, "Cannot split selection when sync selection is enabled");
return OPERATOR_CANCELLED;
}
@@ -3401,7 +3401,7 @@ static void uv_select_tag_update_for_object(Depsgraph *depsgraph,
const ToolSettings *ts,
Object *obedit)
{
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
DEG_id_tag_update(static_cast<ID *>(obedit->data), ID_RECALC_SELECT);
WM_main_add_notifier(NC_GEOM | ND_SELECT, obedit->data);
}
@@ -3478,7 +3478,7 @@ static void uv_select_flush_from_tag_face(const Scene *scene, Object *obedit, co
BMLoop *l;
BMIter iter, liter;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -3487,11 +3487,11 @@ static void uv_select_flush_from_tag_face(const Scene *scene, Object *obedit, co
const BMUVOffsets offsets = BM_uv_map_offsets_get(bm);
bool use_sticky = true;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Use the mesh selection directly. */
use_sticky = false;
}
if (ts->uv_sticky == SI_STICKY_DISABLE) {
if (ts->uv_sticky == UV_STICKY_DISABLE) {
/* No need for sticky calculation when it's disabled. */
use_sticky = false;
}
@@ -3550,7 +3550,7 @@ static void uv_select_flush_from_tag_loop(const Scene *scene, Object *obedit, co
BMLoop *l;
BMIter iter, liter;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -3558,7 +3558,7 @@ static void uv_select_flush_from_tag_loop(const Scene *scene, Object *obedit, co
}
const BMUVOffsets offsets = BM_uv_map_offsets_get(bm);
if ((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0 && ts->uv_sticky == SI_STICKY_VERTEX) {
if ((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0 && ts->uv_sticky == UV_STICKY_VERT) {
/* Tag all verts as untouched, then touch the ones that have a face center
* in the loop and select all UVs that use a touched vert. */
BM_mesh_elem_hflag_disable_all(bm, BM_VERT, BM_ELEM_TAG, false);
@@ -3580,7 +3580,7 @@ static void uv_select_flush_from_tag_loop(const Scene *scene, Object *obedit, co
}
}
}
else if ((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0 && ts->uv_sticky == SI_STICKY_LOC) {
else if ((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0 && ts->uv_sticky == UV_STICKY_LOCATION) {
BM_ITER_MESH (efa, &iter, bm, BM_FACES_OF_MESH) {
BM_ITER_ELEM (l, &liter, efa, BM_LOOPS_OF_FACE) {
if (BM_elem_flag_test(l, BM_ELEM_TAG)) {
@@ -3589,7 +3589,7 @@ static void uv_select_flush_from_tag_loop(const Scene *scene, Object *obedit, co
}
}
}
else { /* SI_STICKY_DISABLE or ts->uv_flag & UV_FLAG_SYNC_SELECT */
else { /* UV_STICKY_DISABLE or ts->uv_flag & UV_FLAG_SELECT_SYNC */
BM_ITER_MESH (efa, &iter, bm, BM_FACES_OF_MESH) {
BM_ITER_ELEM (l, &liter, efa, BM_LOOPS_OF_FACE) {
if (BM_elem_flag_test(l, BM_ELEM_TAG)) {
@@ -3617,7 +3617,7 @@ static void uv_select_flush_from_loop_edge_flag(const Scene *scene, BMesh *bm)
BMLoop *l;
BMIter iter, liter;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -3626,11 +3626,11 @@ static void uv_select_flush_from_loop_edge_flag(const Scene *scene, BMesh *bm)
const BMUVOffsets offsets = BM_uv_map_offsets_get(bm);
bool use_sticky = true;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Use the mesh selection directly. */
use_sticky = false;
}
if (ts->uv_sticky == SI_STICKY_DISABLE) {
if (ts->uv_sticky == UV_STICKY_DISABLE) {
/* No need for sticky calculation when it's disabled. */
use_sticky = false;
}
@@ -3690,10 +3690,10 @@ static wmOperatorStatus uv_box_select_exec(bContext *C, wmOperator *op)
BMIter iter, liter;
float *luv;
rctf rectf;
const bool use_face_center = ((ts->uv_flag & UV_FLAG_SYNC_SELECT) ?
const bool use_face_center = ((ts->uv_flag & UV_FLAG_SELECT_SYNC) ?
(ts->selectmode == SCE_SELECT_FACE) :
(ts->uv_selectmode == UV_SELECT_FACE));
const bool use_edge = ((ts->uv_flag & UV_FLAG_SYNC_SELECT) ?
const bool use_edge = ((ts->uv_flag & UV_FLAG_SELECT_SYNC) ?
(ts->selectmode == SCE_SELECT_EDGE) :
(ts->uv_selectmode == UV_SELECT_EDGE));
const bool use_select_linked = ED_uvedit_select_island_check(ts);
@@ -3723,7 +3723,7 @@ static wmOperatorStatus uv_box_select_exec(bContext *C, wmOperator *op)
bool changed = false;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
/* NOTE: sync selection can't do pinned. */
@@ -3844,8 +3844,8 @@ static wmOperatorStatus uv_box_select_exec(bContext *C, wmOperator *op)
BM_ITER_ELEM (l, &liter, efa, BM_LOOPS_OF_FACE) {
luv = BM_ELEM_CD_GET_FLOAT_P(l, offsets.uv);
if (select != uvedit_uv_select_test(scene, l, offsets)) {
if (!pinned || (ts->uv_flag & UV_FLAG_SYNC_SELECT)) {
/* UV_FLAG_SYNC_SELECT - can't do pinned selection */
if (!pinned || (ts->uv_flag & UV_FLAG_SELECT_SYNC)) {
/* UV_FLAG_SELECT_SYNC - can't do pinned selection */
if (BLI_rctf_isect_pt_v(&rectf, luv)) {
uvedit_uv_select_set(scene, bm, l, select, offsets);
BM_elem_flag_enable(l->v, BM_ELEM_TAG);
@@ -3866,14 +3866,14 @@ static wmOperatorStatus uv_box_select_exec(bContext *C, wmOperator *op)
}
}
if (ts->uv_sticky == SI_STICKY_VERTEX) {
if (ts->uv_sticky == UV_STICKY_VERT) {
uvedit_vertex_select_tagged(bm, scene, select, offsets);
}
}
if (changed || use_pre_deselect) {
changed_multi = true;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
ED_uvedit_select_sync_flush(ts, bm, select);
}
else {
@@ -3962,10 +3962,10 @@ static wmOperatorStatus uv_circle_select_exec(bContext *C, wmOperator *op)
float zoomx, zoomy;
float offset[2], ellipse[2];
const bool use_face_center = ((ts->uv_flag & UV_FLAG_SYNC_SELECT) ?
const bool use_face_center = ((ts->uv_flag & UV_FLAG_SELECT_SYNC) ?
(ts->selectmode == SCE_SELECT_FACE) :
(ts->uv_selectmode == UV_SELECT_FACE));
const bool use_edge = ((ts->uv_flag & UV_FLAG_SYNC_SELECT) ?
const bool use_edge = ((ts->uv_flag & UV_FLAG_SELECT_SYNC) ?
(ts->selectmode == SCE_SELECT_EDGE) :
(ts->uv_selectmode == UV_SELECT_EDGE));
const bool use_select_linked = ED_uvedit_select_island_check(ts);
@@ -4005,7 +4005,7 @@ static wmOperatorStatus uv_circle_select_exec(bContext *C, wmOperator *op)
bool changed = false;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -4102,14 +4102,14 @@ static wmOperatorStatus uv_circle_select_exec(bContext *C, wmOperator *op)
}
}
if (ts->uv_sticky == SI_STICKY_VERTEX) {
if (ts->uv_sticky == UV_STICKY_VERT) {
uvedit_vertex_select_tagged(bm, scene, select, offsets);
}
}
if (changed || use_pre_deselect) {
changed_multi = true;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
ED_uvedit_select_sync_flush(ts, bm, select);
}
else {
@@ -4192,10 +4192,10 @@ static bool do_lasso_select_mesh_uv(bContext *C, const Span<int2> mcoords, const
Scene *scene = CTX_data_scene(C);
const ToolSettings *ts = scene->toolsettings;
ViewLayer *view_layer = CTX_data_view_layer(C);
const bool use_face_center = ((ts->uv_flag & UV_FLAG_SYNC_SELECT) ?
const bool use_face_center = ((ts->uv_flag & UV_FLAG_SELECT_SYNC) ?
(ts->selectmode == SCE_SELECT_FACE) :
(ts->uv_selectmode == UV_SELECT_FACE));
const bool use_edge = ((ts->uv_flag & UV_FLAG_SYNC_SELECT) ?
const bool use_edge = ((ts->uv_flag & UV_FLAG_SELECT_SYNC) ?
(ts->selectmode == SCE_SELECT_EDGE) :
(ts->uv_selectmode == UV_SELECT_EDGE));
const bool use_select_linked = ED_uvedit_select_island_check(ts);
@@ -4225,7 +4225,7 @@ static bool do_lasso_select_mesh_uv(bContext *C, const Span<int2> mcoords, const
BMesh *bm = BKE_editmesh_from_object(obedit)->bm;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -4352,14 +4352,14 @@ static bool do_lasso_select_mesh_uv(bContext *C, const Span<int2> mcoords, const
}
}
if (ts->uv_sticky == SI_STICKY_VERTEX) {
if (ts->uv_sticky == UV_STICKY_VERT) {
uvedit_vertex_select_tagged(bm, scene, select, offsets);
}
}
if (changed || use_pre_deselect) {
changed_multi = true;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
ED_uvedit_select_sync_flush(ts, bm, select);
}
else {
@@ -4418,8 +4418,8 @@ static wmOperatorStatus uv_select_pinned_exec(bContext *C, wmOperator *op)
/* Use this operator only in vertex mode, since it is not guaranteed that pinned vertices may
* form higher selection states (like edges/faces/islands) in other modes. */
if ((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0) {
if (ts->uv_selectmode != UV_SELECT_VERTEX) {
if ((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0) {
if (ts->uv_selectmode != UV_SELECT_VERT) {
BKE_report(op->reports, RPT_ERROR, "Pinned vertices can be selected in Vertex Mode only");
return OPERATOR_CANCELLED;
}
@@ -4443,7 +4443,7 @@ static wmOperatorStatus uv_select_pinned_exec(bContext *C, wmOperator *op)
}
bool changed = false;
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -4464,7 +4464,7 @@ static wmOperatorStatus uv_select_pinned_exec(bContext *C, wmOperator *op)
}
}
}
if ((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0) {
if ((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0) {
ED_uvedit_selectmode_flush(scene, bm);
}
@@ -4717,7 +4717,7 @@ static wmOperatorStatus uv_select_overlap(bContext *C, const bool extend)
BMFace *face_a = bm_a->ftable[o_a->face_index];
BMFace *face_b = bm_b->ftable[o_b->face_index];
if (scene->toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) {
if (scene->toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) {
/* Pass. */
}
else {
@@ -5030,7 +5030,7 @@ static wmOperatorStatus uv_select_similar_vert_exec(bContext *C, wmOperator *op)
BMesh *bm = BKE_editmesh_from_object(ob)->bm;
if (bm->totvertsel == 0) {
/* No selection means no visible UV's unless sync-select is enabled. */
if (!(ts->uv_flag & UV_FLAG_SYNC_SELECT)) {
if (!(ts->uv_flag & UV_FLAG_SELECT_SYNC)) {
continue;
}
}
@@ -5062,7 +5062,7 @@ static wmOperatorStatus uv_select_similar_vert_exec(bContext *C, wmOperator *op)
}
}
if (changed) {
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
BM_mesh_select_flush_from_verts(bm, true);
}
else {
@@ -5147,7 +5147,7 @@ static wmOperatorStatus uv_select_similar_edge_exec(bContext *C, wmOperator *op)
BMesh *bm = BKE_editmesh_from_object(ob)->bm;
if (bm->totvertsel == 0) {
/* No selection means no visible UV's unless sync-select is enabled. */
if (!(ts->uv_flag & UV_FLAG_SYNC_SELECT)) {
if (!(ts->uv_flag & UV_FLAG_SELECT_SYNC)) {
continue;
}
}
@@ -5179,7 +5179,7 @@ static wmOperatorStatus uv_select_similar_edge_exec(bContext *C, wmOperator *op)
}
}
if (changed) {
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
BM_mesh_select_flush_from_verts(bm, true);
}
else {
@@ -5256,7 +5256,7 @@ static wmOperatorStatus uv_select_similar_face_exec(bContext *C, wmOperator *op)
BMesh *bm = BKE_editmesh_from_object(ob)->bm;
if (bm->totvertsel == 0) {
/* No selection means no visible UV's unless sync-select is enabled. */
if (!(ts->uv_flag & UV_FLAG_SYNC_SELECT)) {
if (!(ts->uv_flag & UV_FLAG_SELECT_SYNC)) {
continue;
}
}
@@ -5286,7 +5286,7 @@ static wmOperatorStatus uv_select_similar_face_exec(bContext *C, wmOperator *op)
}
}
if (changed) {
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
BM_mesh_select_flush_from_verts(bm, true);
}
else {
@@ -5323,7 +5323,7 @@ static wmOperatorStatus uv_select_similar_island_exec(bContext *C, wmOperator *o
ListBase *island_list_ptr = MEM_calloc_arrayN<ListBase>(objects.size(), __func__);
int island_list_len = 0;
const bool face_selected = !(scene->toolsettings->uv_flag & UV_FLAG_SYNC_SELECT);
const bool face_selected = !(scene->toolsettings->uv_flag & UV_FLAG_SELECT_SYNC);
for (const int ob_index : objects.index_range()) {
Object *obedit = objects[ob_index];
@@ -5389,7 +5389,7 @@ static wmOperatorStatus uv_select_similar_island_exec(bContext *C, wmOperator *o
}
if (changed) {
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
BM_mesh_select_flush_from_verts(bm, true);
}
else {
@@ -5426,7 +5426,7 @@ static wmOperatorStatus uv_select_similar_exec(bContext *C, wmOperator *op)
ts->select_thresh = RNA_property_float_get(op->ptr, prop);
}
const int selectmode = (ts->uv_flag & UV_FLAG_SYNC_SELECT) ? ts->selectmode : ts->uv_selectmode;
const int selectmode = (ts->uv_flag & UV_FLAG_SELECT_SYNC) ? ts->selectmode : ts->uv_selectmode;
if (use_select_linked) {
return uv_select_similar_island_exec(C, op);
}
@@ -5436,7 +5436,7 @@ static wmOperatorStatus uv_select_similar_exec(bContext *C, wmOperator *op)
if (selectmode & UV_SELECT_EDGE) {
return uv_select_similar_edge_exec(C, op);
}
/* #UV_SELECT_VERTEX */
/* #UV_SELECT_VERT */
return uv_select_similar_vert_exec(C, op);
}
@@ -5473,7 +5473,7 @@ static const EnumPropertyItem *uv_select_similar_type_itemf(bContext *C,
const ToolSettings *ts = CTX_data_tool_settings(C);
if (ts) {
const bool use_select_linked = ED_uvedit_select_island_check(ts);
const int selectmode = (ts->uv_flag & UV_FLAG_SYNC_SELECT) ? ts->selectmode :
const int selectmode = (ts->uv_flag & UV_FLAG_SELECT_SYNC) ? ts->selectmode :
ts->uv_selectmode;
/* TODO: co-exist with selection modes. */
if (use_select_linked) {
@@ -5495,7 +5495,7 @@ static const EnumPropertyItem *uv_select_similar_type_itemf(bContext *C,
RNA_enum_items_add_value(&item, &totitem, uv_select_similar_type_items, UV_SSIM_PIN);
}
else {
/* #UV_SELECT_VERTEX */
/* #UV_SELECT_VERT */
RNA_enum_items_add_value(&item, &totitem, uv_select_similar_type_items, UV_SSIM_PIN);
}
}
@@ -5695,7 +5695,7 @@ finally:
void ED_uvedit_selectmode_clean(const Scene *scene, Object *obedit)
{
const ToolSettings *ts = scene->toolsettings;
BLI_assert((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0);
BLI_assert((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0);
BMesh *bm = BKE_editmesh_from_object(obedit)->bm;
char sticky = ts->uv_sticky;
@@ -5705,9 +5705,9 @@ void ED_uvedit_selectmode_clean(const Scene *scene, Object *obedit)
BMLoop *l;
BMIter iter, liter;
if (ts->uv_selectmode == UV_SELECT_VERTEX) {
if (ts->uv_selectmode == UV_SELECT_VERT) {
/* Vertex mode. */
if (sticky != SI_STICKY_DISABLE) {
if (sticky != UV_STICKY_DISABLE) {
bm_loop_tags_clear(bm);
BM_ITER_MESH (efa, &iter, bm, BM_FACES_OF_MESH) {
if (!uvedit_face_visible_test(scene, efa)) {
@@ -5725,7 +5725,7 @@ void ED_uvedit_selectmode_clean(const Scene *scene, Object *obedit)
else if (ts->uv_selectmode == UV_SELECT_EDGE) {
/* Edge mode. */
if (sticky != SI_STICKY_DISABLE) {
if (sticky != UV_STICKY_DISABLE) {
BM_ITER_MESH (efa, &iter, bm, BM_FACES_OF_MESH) {
if (!uvedit_face_visible_test(scene, efa)) {
continue;
@@ -5777,7 +5777,7 @@ void ED_uvedit_sticky_selectmode_update(bContext *C)
{
Scene *scene = CTX_data_scene(C);
ToolSettings *ts = scene->toolsettings;
if ((ts->uv_flag & UV_FLAG_SYNC_SELECT) == 0) {
if ((ts->uv_flag & UV_FLAG_SELECT_SYNC) == 0) {
return;
}
/* Only for edge/face select modes. */
@@ -5831,7 +5831,7 @@ static wmOperatorStatus uv_select_mode_invoke(bContext *C,
}
/* Pass through when UV sync selection is enabled.
* Allow for mesh select-mode key-map. */
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
return OPERATOR_PASS_THROUGH;
}

View File

@@ -1907,7 +1907,7 @@ static StitchState *stitch_init(bContext *C,
counter = 0;
/* Now, on to generate our uv connectivity data */
const bool face_selected = !(ts->uv_flag & UV_FLAG_SYNC_SELECT);
const bool face_selected = !(ts->uv_flag & UV_FLAG_SELECT_SYNC);
BM_ITER_MESH (efa, &iter, em->bm, BM_FACES_OF_MESH) {
if (BM_elem_flag_test(efa, BM_ELEM_HIDDEN)) {
continue;
@@ -2096,7 +2096,7 @@ static StitchState *stitch_init(bContext *C,
"uv_stitch_selection_stack"));
BM_ITER_MESH (efa, &iter, em->bm, BM_FACES_OF_MESH) {
if (!(ts->uv_flag & UV_FLAG_SYNC_SELECT) &&
if (!(ts->uv_flag & UV_FLAG_SELECT_SYNC) &&
(BM_elem_flag_test(efa, BM_ELEM_HIDDEN) || !BM_elem_flag_test(efa, BM_ELEM_SELECT)))
{
continue;
@@ -2217,7 +2217,7 @@ static int stitch_init_all(bContext *C, wmOperator *op)
ssc->mode = RNA_enum_get(op->ptr, "mode");
}
else {
if (ts->uv_flag & UV_FLAG_SYNC_SELECT) {
if (ts->uv_flag & UV_FLAG_SELECT_SYNC) {
if (ts->selectmode & SCE_SELECT_VERTEX) {
ssc->mode = STITCH_VERT;
}
@@ -2226,7 +2226,7 @@ static int stitch_init_all(bContext *C, wmOperator *op)
}
}
else {
if (ts->uv_selectmode & UV_SELECT_VERTEX) {
if (ts->uv_selectmode & UV_SELECT_VERT) {
ssc->mode = STITCH_VERT;
}
else {
@@ -2341,7 +2341,7 @@ static wmOperatorStatus stitch_invoke(bContext *C, wmOperator *op, const wmEvent
Scene *scene = CTX_data_scene(C);
ToolSettings *ts = scene->toolsettings;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
StitchStateContainer *ssc = (StitchStateContainer *)op->customdata;
@@ -2425,7 +2425,7 @@ static void stitch_exit(bContext *C, wmOperator *op, int finished)
ED_region_draw_cb_exit(CTX_wm_region(C)->runtime->type, ssc->draw_handle);
ToolSettings *ts = scene->toolsettings;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
for (uint ob_index = 0; ob_index < ssc->objects_len; ob_index++) {
StitchState *state = ssc->states[ob_index];

View File

@@ -109,7 +109,7 @@ static bool uvedit_ensure_uvs(Object *obedit)
BM_uv_map_attr_edge_select_ensure(em->bm, active_uv_name);
const BMUVOffsets offsets = BM_uv_map_offsets_get(em->bm);
/* select new UVs (ignore UV_FLAG_SYNC_SELECT in this case) */
/* select new UVs (ignore UV_FLAG_SELECT_SYNC in this case) */
BM_ITER_MESH (efa, &iter, em->bm, BM_FACES_OF_MESH) {
BMIter liter;
BMLoop *l;
@@ -454,7 +454,7 @@ static bool uvedit_have_selection(const Scene *scene, BMEditMesh *em, const Unwr
/* verify if we have any selected uv's before unwrapping,
* so we can cancel the operator early */
BM_ITER_MESH (efa, &iter, em->bm, BM_FACES_OF_MESH) {
if (scene->toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) {
if (scene->toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) {
if (BM_elem_flag_test(efa, BM_ELEM_HIDDEN)) {
continue;
}
@@ -932,7 +932,7 @@ static ParamHandle *construct_param_handle_subsurfed(const Scene *scene,
float weight[4];
BMFace *origFace = faceMap[i];
if (scene->toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) {
if (scene->toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) {
if (BM_elem_flag_test(origFace, BM_ELEM_HIDDEN)) {
continue;
}
@@ -1096,7 +1096,7 @@ static void minimize_stretch_iteration(bContext *C, wmOperator *op, bool interac
ScrArea *area = CTX_wm_area(C);
const Scene *scene = CTX_data_scene(C);
ToolSettings *ts = scene->toolsettings;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
blender::geometry::uv_parametrizer_stretch_blend(ms->handle, ms->blend);
blender::geometry::uv_parametrizer_stretch_iter(ms->handle);
@@ -1136,7 +1136,7 @@ static void minimize_stretch_exit(bContext *C, wmOperator *op, bool cancel)
ScrArea *area = CTX_wm_area(C);
const Scene *scene = CTX_data_scene(C);
ToolSettings *ts = scene->toolsettings;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
ED_area_status_text(area, nullptr);
ED_workspace_status_text(C, nullptr);
@@ -2046,7 +2046,7 @@ static wmOperatorStatus average_islands_scale_exec(bContext *C, wmOperator *op)
const Scene *scene = CTX_data_scene(C);
ViewLayer *view_layer = CTX_data_view_layer(C);
ToolSettings *ts = scene->toolsettings;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
const bool synced_selection = (ts->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
UnwrapOptions options = unwrap_options_get(nullptr, nullptr, ts);
options.topology_from_uvs = true;
@@ -4306,7 +4306,7 @@ void UV_OT_cube_project(wmOperatorType *ot)
void ED_uvedit_add_simple_uvs(Main *bmain, const Scene *scene, Object *ob)
{
Mesh *mesh = static_cast<Mesh *>(ob->data);
bool sync_selection = (scene->toolsettings->uv_flag & UV_FLAG_SYNC_SELECT) != 0;
bool sync_selection = (scene->toolsettings->uv_flag & UV_FLAG_SELECT_SYNC) != 0;
BMeshCreateParams create_params{};
create_params.use_toolflags = false;
@@ -4314,7 +4314,7 @@ void ED_uvedit_add_simple_uvs(Main *bmain, const Scene *scene, Object *ob)
/* turn sync selection off,
* since we are not in edit mode we need to ensure only the uv flags are tested */
scene->toolsettings->uv_flag &= ~UV_FLAG_SYNC_SELECT;
scene->toolsettings->uv_flag &= ~UV_FLAG_SELECT_SYNC;
ED_mesh_uv_ensure(mesh, nullptr);
@@ -4346,7 +4346,7 @@ void ED_uvedit_add_simple_uvs(Main *bmain, const Scene *scene, Object *ob)
BM_mesh_free(bm);
if (sync_selection) {
scene->toolsettings->uv_flag |= UV_FLAG_SYNC_SELECT;
scene->toolsettings->uv_flag |= UV_FLAG_SELECT_SYNC;
}
}

View File

@@ -377,7 +377,7 @@
.select_thresh = 0.01f, \
\
.selectmode = SCE_SELECT_VERTEX, \
.uv_selectmode = UV_SELECT_VERTEX, \
.uv_selectmode = UV_SELECT_VERT, \
.autokey_mode = AUTOKEY_MODE_NORMAL, \
\
.transform_pivot_point = V3D_AROUND_CENTER_MEDIAN, \

View File

@@ -2802,28 +2802,28 @@ enum {
/** #ToolSettings::uv_flag */
enum {
UV_FLAG_SYNC_SELECT = 1 << 0,
UV_FLAG_SELECT_SYNC = 1 << 0,
UV_FLAG_SHOW_SAME_IMAGE = 1 << 1,
/**
* \note In most cases #ED_uvedit_select_island_check should be used to check if island
* selection should be used - since not all combinations of options support it.
*/
UV_FLAG_ISLAND_SELECT = 1 << 2,
UV_FLAG_SELECT_ISLAND = 1 << 2,
UV_FLAG_CUSTOM_REGION = 1 << 3,
};
/** #ToolSettings::uv_selectmode */
enum {
UV_SELECT_VERTEX = 1 << 0,
UV_SELECT_VERT = 1 << 0,
UV_SELECT_EDGE = 1 << 1,
UV_SELECT_FACE = 1 << 2,
};
/** #ToolSettings::uv_sticky */
enum {
SI_STICKY_LOC = 0,
SI_STICKY_DISABLE = 1,
SI_STICKY_VERTEX = 2,
UV_STICKY_LOCATION = 0,
UV_STICKY_DISABLE = 1,
UV_STICKY_VERT = 2,
};
/** #ToolSettings::gpencil_flags */

View File

@@ -129,7 +129,7 @@ const EnumPropertyItem rna_enum_mesh_select_mode_items[] = {
};
const EnumPropertyItem rna_enum_mesh_select_mode_uv_items[] = {
{UV_SELECT_VERTEX, "VERTEX", ICON_UV_VERTEXSEL, "Vertex", "Vertex selection mode"},
{UV_SELECT_VERT, "VERTEX", ICON_UV_VERTEXSEL, "Vertex", "Vertex selection mode"},
{UV_SELECT_EDGE, "EDGE", ICON_UV_EDGESEL, "Edge", "Edge selection mode"},
{UV_SELECT_FACE, "FACE", ICON_UV_FACESEL, "Face", "Face selection mode"},
{0, nullptr, 0, nullptr, nullptr},
@@ -3300,17 +3300,17 @@ static void rna_def_tool_settings(BlenderRNA *brna)
};
static const EnumPropertyItem uv_sticky_mode_items[] = {
{SI_STICKY_DISABLE,
{UV_STICKY_DISABLE,
"DISABLED",
ICON_STICKY_UVS_DISABLE,
"Disabled",
"Sticky vertex selection disabled"},
{SI_STICKY_LOC,
{UV_STICKY_LOCATION,
"SHARED_LOCATION",
ICON_STICKY_UVS_LOC,
"Shared Location",
"Select UVs that are at the same location and share a mesh vertex"},
{SI_STICKY_VERTEX,
{UV_STICKY_VERT,
"SHARED_VERTEX",
ICON_STICKY_UVS_VERT,
"Shared Vertex",
@@ -4217,7 +4217,7 @@ static void rna_def_tool_settings(BlenderRNA *brna)
prop, NC_SPACE | ND_SPACE_IMAGE, "rna_Scene_uv_sticky_select_mode_update");
prop = RNA_def_property(srna, "use_uv_select_sync", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, nullptr, "uv_flag", UV_FLAG_SYNC_SELECT);
RNA_def_property_boolean_sdna(prop, nullptr, "uv_flag", UV_FLAG_SELECT_SYNC);
RNA_def_property_flag(prop, PROP_DEG_SYNC_ONLY);
RNA_def_property_ui_text(
prop, "UV Sync Selection", "Keep UV and edit mode mesh selection in sync");
@@ -4225,7 +4225,7 @@ static void rna_def_tool_settings(BlenderRNA *brna)
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_IMAGE, nullptr);
prop = RNA_def_property(srna, "use_uv_select_island", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, nullptr, "uv_flag", UV_FLAG_ISLAND_SELECT);
RNA_def_property_boolean_sdna(prop, nullptr, "uv_flag", UV_FLAG_SELECT_ISLAND);
RNA_def_property_flag(prop, PROP_DEG_SYNC_ONLY);
RNA_def_property_ui_text(prop, "UV Island Selection", "Island selection");
RNA_def_property_ui_icon(prop, ICON_UV_ISLANDSEL, 0);