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.py58
1 files changed, 33 insertions, 25 deletions
diff --git a/blenderkit/ui_panels.py b/blenderkit/ui_panels.py
index 91abd446..302e7119 100644
--- a/blenderkit/ui_panels.py
+++ b/blenderkit/ui_panels.py
@@ -112,7 +112,7 @@ def draw_upload_common(layout, props, asset_type, context):
op = layout.operator("object.blenderkit_upload", text=optext, icon='EXPORT')
op.asset_type = asset_type
op.reupload = False
- #make sure everything gets uploaded.
+ # make sure everything gets uploaded.
op.main_file = True
op.metadata = True
op.thumbnail = True
@@ -163,6 +163,7 @@ def prop_needed(layout, props, name, value, is_not_filled=''):
icon = None
row.prop(props, name)
+
def draw_panel_hdr_upload(self, context):
layout = self.layout
ui_props = bpy.context.scene.blenderkitUI
@@ -172,7 +173,6 @@ def draw_panel_hdr_upload(self, context):
hdr = utils.get_active_HDR()
-
if hdr is not None:
props = hdr.blenderkit
@@ -184,6 +184,7 @@ def draw_panel_hdr_upload(self, context):
layout.prop(props, 'description')
layout.prop(props, 'tags')
+
def draw_panel_hdr_search(self, context):
s = context.scene
props = s.blenderkit_HDR
@@ -196,6 +197,7 @@ def draw_panel_hdr_search(self, context):
utils.label_multiline(layout, text=props.report)
+
def draw_panel_model_upload(self, context):
ob = bpy.context.active_object
while ob.parent is not None:
@@ -316,7 +318,7 @@ def draw_assetbar_show_hide(layout, props):
preferences = bpy.context.preferences.addons['blenderkit'].preferences
if preferences.experimental_features:
- op = layout.operator('view3d.blenderkit_asset_bar_widget', text = '', icon = icon)
+ op = layout.operator('view3d.blenderkit_asset_bar_widget', text='', icon=icon)
op.keep_running = False
op.do_search = False
op.tooltip = ttip
@@ -510,7 +512,7 @@ class VIEW3D_PT_blenderkit_ratings(Panel):
utils.label_multiline(layout, text='Please help BlenderKit community by rating these assets:')
for a in assets:
- if a.bkit_ratings.rating_work_hours==0:
+ if a.bkit_ratings.rating_work_hours == 0:
draw_rating_asset(self, context, asset=a)
@@ -546,7 +548,7 @@ class VIEW3D_PT_blenderkit_profile(Panel):
if me is not None:
me = me['user']
# user name
- if len(me['firstName'])>0 or len(me['lastName'])>0:
+ if len(me['firstName']) > 0 or len(me['lastName']) > 0:
layout.label(text=f"Me: {me['firstName']} {me['lastName']}")
else:
layout.label(text=f"Me: {me['email']}")
@@ -781,7 +783,6 @@ class VIEW3D_PT_blenderkit_advanced_model_search(Panel):
layout.prop(props, "free_only")
layout.prop(props, "search_style")
-
# DESIGN YEAR
layout.prop(props, "search_design_year", text='Designed in Year')
if props.search_design_year:
@@ -897,7 +898,7 @@ class VIEW3D_PT_blenderkit_import_settings(Panel):
def poll(cls, context):
s = context.scene
ui_props = s.blenderkitUI
- return ui_props.down_up == 'SEARCH' and ui_props.asset_type in ['MATERIAL', 'MODEL', 'HDR']
+ return ui_props.down_up == 'SEARCH' and ui_props.asset_type in ['MATERIAL', 'MODEL', 'SCENE', 'HDR']
def draw(self, context):
layout = self.layout
@@ -926,10 +927,17 @@ class VIEW3D_PT_blenderkit_import_settings(Panel):
row = layout.row()
row.prop(props, 'append_method', expand=True, icon_only=False)
+ if ui_props.asset_type == 'SCENE':
+ props = s.blenderkit_scene
+ layout.prop(props, 'switch_after_append')
+ layout.label(text='Import method:')
+ row = layout.row()
+ row.prop(props, 'append_link', expand=True, icon_only=False)
if ui_props.asset_type == 'HDR':
props = s.blenderkit_HDR
- layout.prop(props, 'resolution')
+ if ui_props.asset_type in ['MATERIAL', 'MODEL', 'HDR']:
+ layout.prop(props, 'resolution')
# layout.prop(props, 'unpack_files')
@@ -1199,7 +1207,6 @@ def draw_asset_context_menu(layout, context, asset_data, from_panel=False):
# if ui_props.asset_type in ('MODEL', 'MATERIAL'):
# layout.menu(OBJECT_MT_blenderkit_resolution_menu.bl_idname)
-
if ui_props.asset_type in ('MODEL', 'MATERIAL', 'HDR') and \
utils.get_param(asset_data, 'textureResolutionMax') is not None and \
utils.get_param(asset_data, 'textureResolutionMax') > 512:
@@ -1247,7 +1254,8 @@ def draw_asset_context_menu(layout, context, asset_data, from_panel=False):
op.invoke_resolution = True
o = utils.get_active_model()
if o and o.get('asset_data'):
- if o['asset_data']['assetBaseId'] == bpy.context.window_manager['search results'][ui_props.active_index]:
+ if o['asset_data']['assetBaseId'] == bpy.context.window_manager['search results'][
+ ui_props.active_index]:
op.model_location = o.location
op.model_rotation = o.rotation_euler
else:
@@ -1302,14 +1310,10 @@ def draw_asset_context_menu(layout, context, asset_data, from_panel=False):
if utils.profile_is_validator():
layout.label(text='Admin Tools:')
-
op = layout.operator('object.blenderkit_print_asset_debug', text='Print asset debug')
op.asset_id = asset_data['id']
-
-
-
# def draw_asset_resolution_replace(self, context, resolution):
# layout = self.layout
# ui_props = bpy.context.scene.blenderkitUI
@@ -1392,12 +1396,13 @@ class OBJECT_MT_blenderkit_asset_menu(bpy.types.Menu):
# box2.label(text='************')
# box2.label(text='dadydadadada')
+
class AssetPopupCard(bpy.types.Operator):
"""Generate Cycles thumbnail for model assets"""
bl_idname = "wm.blenderkit_asset_popup"
bl_label = "BlenderKit asset popup"
# bl_options = {'REGISTER', 'INTERNAL'}
- bl_options = {'REGISTER',}
+ bl_options = {'REGISTER', }
@classmethod
def poll(cls, context):
@@ -1418,11 +1423,10 @@ class AssetPopupCard(bpy.types.Operator):
split = split.split(factor=0.5)
col1 = split.column()
box = col1.box()
- utils.label_multiline(box,asset_data['tooltip'], width = 300)
+ utils.label_multiline(box, asset_data['tooltip'], width=300)
col2 = split.column()
-
pcoll = icons.icon_collections["main"]
my_icon = pcoll['test']
col2.template_icon(icon_value=my_icon.icon_id, scale=20.0)
@@ -1430,7 +1434,7 @@ class AssetPopupCard(bpy.types.Operator):
box2 = col2.box()
# draw_ratings(box2, context, asset_data)
- box2.label(text = 'Ratings')
+ box2.label(text='Ratings')
# print(tp, dir(tp))
# if not hasattr(self, 'first_draw'):# try to redraw because of template preview which needs update
# for region in context.area.regions:
@@ -1451,8 +1455,9 @@ class AssetPopupCard(bpy.types.Operator):
# self.tex = utils.get_hidden_texture(self.img)
# self.tex.update_tag()
- bl_label = asset_data['name']
- return wm.invoke_props_dialog(self, width = 700)
+ bl_label = asset_data['name']
+ return wm.invoke_props_dialog(self, width=700)
+
class OBJECT_MT_blenderkit_login_menu(bpy.types.Menu):
bl_label = "BlenderKit login/signup:"
@@ -1523,14 +1528,14 @@ class UrlPopupDialog(bpy.types.Operator):
def draw(self, context):
layout = self.layout
- utils.label_multiline(layout, text=self.message, width = 300)
+ utils.label_multiline(layout, text=self.message, width=300)
layout.active_default = True
op = layout.operator("wm.url_open", text=self.link_text, icon='QUESTION')
if not utils.user_logged_in():
utils.label_multiline(layout,
text='Already subscribed? You need to login to access your Full Plan.',
- width = 300)
+ width=300)
layout.operator_context = 'EXEC_DEFAULT'
layout.operator("wm.blenderkit_login", text="Login",
@@ -1544,7 +1549,7 @@ class UrlPopupDialog(bpy.types.Operator):
def invoke(self, context, event):
wm = context.window_manager
- return wm.invoke_props_dialog(self,width = 300)
+ return wm.invoke_props_dialog(self, width=300)
class LoginPopupDialog(bpy.types.Operator):
@@ -1695,16 +1700,19 @@ def header_search_draw(self, context):
# the center snap menu is in edit and object mode if tool settings are off.
if context.space_data.show_region_tool_header == True or context.mode[:4] not in ('EDIT', 'OBJE'):
layout.separator_spacer()
- layout.prop(ui_props, "asset_type", expand = True, icon_only = True, text='', icon='URL')
+ layout.prop(ui_props, "asset_type", expand=True, icon_only=True, text='', icon='URL')
layout.prop(props, "search_keywords", text="", icon='VIEWZOOM')
draw_assetbar_show_hide(layout, props)
+
def ui_message(title, message):
def draw_message(self, context):
layout = self.layout
- utils.label_multiline(layout, text=message)
+ utils.label_multiline(layout, text=message, width=400)
bpy.context.window_manager.popup_menu(draw_message, title=title, icon='INFO')
+
+
# We can store multiple preview collections here,
# however in this example we only store "main"
preview_collections = {}