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

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'blenderkit/ui_panels.py')
-rw-r--r--blenderkit/ui_panels.py74
1 files changed, 49 insertions, 25 deletions
diff --git a/blenderkit/ui_panels.py b/blenderkit/ui_panels.py
index cb3b5a8b..c04068ce 100644
--- a/blenderkit/ui_panels.py
+++ b/blenderkit/ui_panels.py
@@ -1403,15 +1403,15 @@ class AssetPopupCard(bpy.types.Operator, ratings_utils.RatingsProperties):
bl_idname = "wm.blenderkit_asset_popup"
bl_label = "BlenderKit asset popup"
- width = 700
+ width = 800
@classmethod
def poll(cls, context):
return True
def draw_menu(self, context, layout):
- col = layout.column()
- draw_asset_context_menu(col, context, self.asset_data, from_panel=False)
+ # layout = layout.column()
+ draw_asset_context_menu(layout, context, self.asset_data, from_panel=False)
def draw_property(self, layout, left, right, icon=None, icon_value=None, url='', tooltip=''):
right = str(right)
@@ -1442,6 +1442,13 @@ class AssetPopupCard(bpy.types.Operator, ratings_utils.RatingsProperties):
parameter = f"{parameter:,.1f}"
self.draw_property(layout, pretext, parameter)
+ def draw_description(self, layout, width = 250):
+ if len(self.asset_data['description']) > 0:
+ box = layout.box()
+ box.scale_y = 0.8
+ box.label(text='Description')
+ utils.label_multiline(box, self.asset_data['description'], width=width)
+
def draw_properties(self, layout, width=250):
if type(self.asset_data['parameters']) == list:
@@ -1449,13 +1456,6 @@ class AssetPopupCard(bpy.types.Operator, ratings_utils.RatingsProperties):
else:
mparams = self.asset_data['parameters']
- layout = layout.column()
- if len(self.asset_data['description']) > 0:
- box = layout.box()
- box.scale_y = 0.8
- box.label(text='Description')
- utils.label_multiline(box, self.asset_data['description'], width=width)
-
pcoll = icons.icon_collections["main"]
box = layout.box()
@@ -1644,7 +1644,7 @@ class AssetPopupCard(bpy.types.Operator, ratings_utils.RatingsProperties):
utils.label_multiline(col, text=a['tooltip'], width=text_width)
# check if author didn't fill any data about himself and prompt him if that's the case
- if upload.user_is_owner(asset_data=self.asset_data) and a.get('aboutMe') is not None and len(
+ if utils.user_is_owner(asset_data=self.asset_data) and a.get('aboutMe') is not None and len(
a.get('aboutMe', '')) == 0:
row = col.row()
row.enabled = False
@@ -1673,14 +1673,13 @@ class AssetPopupCard(bpy.types.Operator, ratings_utils.RatingsProperties):
op.keywords = ''
op.author_id = self.asset_data['author']['id']
- def draw_thumbnail_box(self, layout):
+ def draw_thumbnail_box(self, layout, width = 250):
layout.emboss = 'NORMAL'
box_thumbnail = layout.box()
box_thumbnail.scale_y = .4
-
- box_thumbnail.template_icon(icon_value=self.img.preview.icon_id, scale=34.0)
+ box_thumbnail.template_icon(icon_value=self.img.preview.icon_id, scale=width*.12)
# row = box_thumbnail.row()
# row.scale_y = 3
@@ -1738,16 +1737,36 @@ class AssetPopupCard(bpy.types.Operator, ratings_utils.RatingsProperties):
# left - tooltip & params
row = box.row()
split_factor = 0.7
- split_left_left = row.split(factor=split_factor)
- self.draw_properties(split_left_left, width=int(width * split_factor))
+ split_left = row.split(factor=split_factor)
+ col = split_left.column()
+ width_left = int(width * split_factor)
+ self.draw_description(col, width=width_left)
+
+ self.draw_properties(col, width=width_left)
# right - menu
- col1 = split_left_left.split()
- self.draw_menu(context, col1)
+ split_right = split_left.split()
+ col = split_right.column()
+ self.draw_menu(context, col)
# author
self.draw_author_area(context, box, width=width)
+
+ # self.draw_author_area(context, box, width=width)
+ #
+ # col = box.column_flow(columns=2)
+ # self.draw_menu(context, col)
+ #
+ #
+ # # self.draw_description(box, width=int(width))
+ # self.draw_properties(box, width=int(width))
+
+
+
+
+
+
def draw(self, context):
ui_props = context.scene.blenderkitUI
@@ -1765,17 +1784,22 @@ class AssetPopupCard(bpy.types.Operator, ratings_utils.RatingsProperties):
# left side
row = layout.row(align=True)
- split_ratio = 0.5
- split_left = row.split(factor=0.5)
- self.draw_thumbnail_box(split_left)
-
+ split_ratio = 0.45
+ split_left = row.split(factor=split_ratio)
+ left_column = split_left.column()
+ self.draw_thumbnail_box(left_column, width = int(self.width * split_ratio))
+ # self.draw_description(left_column, width = int(self.width*split_ratio))
# right split
split_right = split_left.split()
- self.draw_menu_desc_author(context, split_right, width=int(self.width * split_ratio))
+ self.draw_menu_desc_author(context, split_right, width=int(self.width * (1-split_ratio)))
- ratings_box = layout.box()
+ if not utils.user_is_owner(asset_data=asset_data):
+ #Draw ratings, but not for owners of assets - doesn't make sense.
+ ratings_box = layout.box()
+ ratings.draw_ratings_menu(self, context, ratings_box)
+ # else:
+ # ratings_box.label('Here you should find ratings, but you can not rate your own assets ;)')
- ratings.draw_ratings_menu(self, context, ratings_box)
tip_box = layout.box()
tip_box.label(text=self.tip)