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:
authorCampbell Barton <ideasman42@gmail.com>2018-10-19 12:10:14 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-10-19 12:15:18 +0300
commit16882ca5356d5861e3266b99e9b2434e5cf49073 (patch)
tree9b52395e256e1f032f961c0798723707119e7dac /source/blender/editors
parent3c30d3bcbd93da4e4cded76c3fc3a30152a43cb4 (diff)
Image Space: make 'UV Edit' a separate mode
This is needed for splitting UV into its own editor, see: T54744
Diffstat (limited to 'source/blender/editors')
-rw-r--r--source/blender/editors/screen/screen_context.c2
-rw-r--r--source/blender/editors/space_image/image_edit.c10
-rw-r--r--source/blender/editors/uvedit/uvedit_buttons.c4
3 files changed, 13 insertions, 3 deletions
diff --git a/source/blender/editors/screen/screen_context.c b/source/blender/editors/screen/screen_context.c
index a87184120ca..021f5b9abd1 100644
--- a/source/blender/editors/screen/screen_context.c
+++ b/source/blender/editors/screen/screen_context.c
@@ -437,7 +437,7 @@ int ed_screen_context(const bContext *C, const char *member, bContextDataResult
if (ED_uvedit_test(obedit)) {
WorkSpace *workspace = CTX_wm_workspace(C);
if ((workspace->tools_space_type == SPACE_IMAGE) &&
- (workspace->tools_mode == SI_MODE_VIEW))
+ (workspace->tools_mode == SI_MODE_UV))
{
CTX_data_id_pointer_set(result, &obact->id);
}
diff --git a/source/blender/editors/space_image/image_edit.c b/source/blender/editors/space_image/image_edit.c
index 4388accc534..cde89230df8 100644
--- a/source/blender/editors/space_image/image_edit.c
+++ b/source/blender/editors/space_image/image_edit.c
@@ -361,8 +361,14 @@ bool ED_space_image_show_paint(SpaceImage *sima)
bool ED_space_image_show_uvedit(SpaceImage *sima, Object *obedit)
{
- if (sima && (ED_space_image_show_render(sima) || ED_space_image_show_paint(sima)))
- return false;
+ if (sima) {
+ if (ED_space_image_show_render(sima)) {
+ return false;
+ }
+ if (sima->mode != SI_MODE_UV) {
+ return false;
+ }
+ }
if (obedit && obedit->type == OB_MESH) {
struct BMEditMesh *em = BKE_editmesh_from_object(obedit);
diff --git a/source/blender/editors/uvedit/uvedit_buttons.c b/source/blender/editors/uvedit/uvedit_buttons.c
index 60500f0211a..317a07bcf96 100644
--- a/source/blender/editors/uvedit/uvedit_buttons.c
+++ b/source/blender/editors/uvedit/uvedit_buttons.c
@@ -210,6 +210,10 @@ static void do_uvedit_vertex(bContext *C, void *UNUSED(arg), int event)
static bool image_panel_uv_poll(const bContext *C, PanelType *UNUSED(pt))
{
+ SpaceImage *sima = CTX_wm_space_image(C);
+ if (sima->mode != SI_MODE_UV) {
+ return false;
+ }
Object *obedit = CTX_data_edit_object(C);
return ED_uvedit_test(obedit);
}