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:
-rw-r--r--release/scripts/startup/bl_ui/space_image.py26
-rw-r--r--source/blender/editors/space_image/space_image.c46
2 files changed, 28 insertions, 44 deletions
diff --git a/release/scripts/startup/bl_ui/space_image.py b/release/scripts/startup/bl_ui/space_image.py
index f163e254a48..da2c46c5b7d 100644
--- a/release/scripts/startup/bl_ui/space_image.py
+++ b/release/scripts/startup/bl_ui/space_image.py
@@ -1189,22 +1189,11 @@ class ImageScopesPanel:
return True
-class IMAGE_PT_view_scopes(ImageScopesPanel, Panel):
- bl_space_type = 'IMAGE_EDITOR'
- bl_region_type = 'UI'
- bl_category = "Image"
- bl_label = "Scopes"
-
- def draw(self, layout):
- return # nothing to draw.
-
-
class IMAGE_PT_view_histogram(ImageScopesPanel, Panel):
bl_space_type = 'IMAGE_EDITOR'
bl_region_type = 'UI'
- bl_category = "Image"
+ bl_category = "Scopes"
bl_label = "Histogram"
- bl_parent_id = 'IMAGE_PT_view_scopes'
def draw(self, context):
layout = self.layout
@@ -1222,9 +1211,8 @@ class IMAGE_PT_view_histogram(ImageScopesPanel, Panel):
class IMAGE_PT_view_waveform(ImageScopesPanel, Panel):
bl_space_type = 'IMAGE_EDITOR'
bl_region_type = 'UI'
- bl_category = "Image"
+ bl_category = "Scopes"
bl_label = "Waveform"
- bl_parent_id = 'IMAGE_PT_view_scopes'
bl_options = {'DEFAULT_CLOSED'}
def draw(self, context):
@@ -1241,9 +1229,8 @@ class IMAGE_PT_view_waveform(ImageScopesPanel, Panel):
class IMAGE_PT_view_vectorscope(ImageScopesPanel, Panel):
bl_space_type = 'IMAGE_EDITOR'
bl_region_type = 'UI'
- bl_category = "Image"
+ bl_category = "Scopes"
bl_label = "Vectorscope"
- bl_parent_id = 'IMAGE_PT_view_scopes'
bl_options = {'DEFAULT_CLOSED'}
def draw(self, context):
@@ -1257,9 +1244,8 @@ class IMAGE_PT_view_vectorscope(ImageScopesPanel, Panel):
class IMAGE_PT_sample_line(ImageScopesPanel, Panel):
bl_space_type = 'IMAGE_EDITOR'
bl_region_type = 'UI'
- bl_category = "Image"
+ bl_category = "Scopes"
bl_label = "Sample Line"
- bl_parent_id = 'IMAGE_PT_view_scopes'
bl_options = {'DEFAULT_CLOSED'}
def draw(self, context):
@@ -1279,9 +1265,8 @@ class IMAGE_PT_sample_line(ImageScopesPanel, Panel):
class IMAGE_PT_scope_sample(ImageScopesPanel, Panel):
bl_space_type = 'IMAGE_EDITOR'
bl_region_type = 'UI'
- bl_category = "Image"
+ bl_category = "Scopes"
bl_label = "Samples"
- bl_parent_id = 'IMAGE_PT_view_scopes'
bl_options = {'DEFAULT_CLOSED'}
def draw(self, context):
@@ -1351,7 +1336,6 @@ classes = (
IMAGE_PT_tools_brush_appearance,
IMAGE_PT_uv_sculpt,
IMAGE_PT_uv_sculpt_curve,
- IMAGE_PT_view_scopes,
IMAGE_PT_view_histogram,
IMAGE_PT_view_waveform,
IMAGE_PT_view_vectorscope,
diff --git a/source/blender/editors/space_image/space_image.c b/source/blender/editors/space_image/space_image.c
index 1025a924f9e..b187baae0c2 100644
--- a/source/blender/editors/space_image/space_image.c
+++ b/source/blender/editors/space_image/space_image.c
@@ -793,6 +793,27 @@ static void image_buttons_region_init(wmWindowManager *wm, ARegion *ar)
static void image_buttons_region_draw(const bContext *C, ARegion *ar)
{
+ SpaceImage *sima = CTX_wm_space_image(C);
+ Scene *scene = CTX_data_scene(C);
+ void *lock;
+ ImBuf *ibuf = ED_space_image_acquire_buffer(sima, &lock);
+ /* XXX performance regression if name of scopes category changes! */
+ PanelCategoryStack *category = UI_panel_category_active_find(ar, "Scopes");
+
+ /* only update scopes if scope category is active */
+ if (category) {
+ if (ibuf) {
+ if (!sima->scopes.ok) {
+ BKE_histogram_update_sample_line(&sima->sample_line_hist, ibuf, &scene->view_settings, &scene->display_settings);
+ }
+ if (sima->image->flag & IMA_VIEW_AS_RENDER)
+ ED_space_image_scopes_update(C, sima, ibuf, true);
+ else
+ ED_space_image_scopes_update(C, sima, ibuf, false);
+ }
+ }
+ ED_space_image_release_buffer(sima, ibuf, lock);
+
ED_region_panels(C, ar);
}
@@ -847,27 +868,6 @@ static void image_tools_region_init(wmWindowManager *wm, ARegion *ar)
static void image_tools_region_draw(const bContext *C, ARegion *ar)
{
- SpaceImage *sima = CTX_wm_space_image(C);
- Scene *scene = CTX_data_scene(C);
- void *lock;
- ImBuf *ibuf = ED_space_image_acquire_buffer(sima, &lock);
- /* XXX performance regression if name of scopes category changes! */
- PanelCategoryStack *category = UI_panel_category_active_find(ar, "Scopes");
-
- /* only update scopes if scope category is active */
- if (category) {
- if (ibuf) {
- if (!sima->scopes.ok) {
- BKE_histogram_update_sample_line(&sima->sample_line_hist, ibuf, &scene->view_settings, &scene->display_settings);
- }
- if (sima->image->flag & IMA_VIEW_AS_RENDER)
- ED_space_image_scopes_update(C, sima, ibuf, true);
- else
- ED_space_image_scopes_update(C, sima, ibuf, false);
- }
- }
- ED_space_image_release_buffer(sima, ibuf, lock);
-
ED_region_panels(C, ar);
}
@@ -1041,7 +1041,7 @@ void ED_spacetype_image(void)
art->listener = image_main_region_listener;
BLI_addhead(&st->regiontypes, art);
- /* regions: listview/buttons */
+ /* regions: listview/buttons/scopes */
art = MEM_callocN(sizeof(ARegionType), "spacetype image region");
art->regionid = RGN_TYPE_UI;
art->prefsizex = 220; // XXX
@@ -1054,7 +1054,7 @@ void ED_spacetype_image(void)
ED_uvedit_buttons_register(art);
image_buttons_register(art);
- /* regions: statistics/scope buttons */
+ /* regions: tool(bar) */
art = MEM_callocN(sizeof(ARegionType), "spacetype image region");
art->regionid = RGN_TYPE_TOOLS;
art->prefsizex = 58; /* XXX */