Make checkbox for not installed extensions disabled with tooltip #25
|
@ -17,6 +17,7 @@ import bpy
|
|||
|
||||
from bpy.types import (
|
||||
Menu,
|
||||
Operator,
|
||||
Panel,
|
||||
)
|
||||
|
||||
|
@ -415,7 +416,7 @@ def extensions_panel_draw_impl(
|
|||
)
|
||||
else:
|
||||
# Not installed, always placeholder.
|
||||
row.label(text="", icon='CHECKBOX_DEHLT')
|
||||
row.operator("preferences.extensions_enable_not_installed", text="", icon='CHECKBOX_DEHLT', emboss=False)
|
||||
|
||||
if show_development:
|
||||
if mark:
|
||||
|
@ -661,10 +662,26 @@ def extensions_panel_draw(panel, context):
|
|||
)
|
||||
|
||||
|
||||
class USERPREF_OT_extensions_enable_not_installed(Operator):
|
||||
"""Extension needs to be installed before it can be enabled"""
|
||||
bl_idname = "preferences.extensions_enable_not_installed"
|
||||
bl_label = "Enable Extension"
|
||||
|
||||
@classmethod
|
||||
def poll(cls, context):
|
||||
return False
|
||||
|
||||
def execute(self, context):
|
||||
# This operator only exists to be able to show disabled checkboxes for extensions
|
||||
# while giving users a reasonable explanation on why is that.
|
||||
return {'CANCELLED'}
|
||||
|
||||
|
||||
classes = (
|
||||
# Pop-overs.
|
||||
USERPREF_PT_extensions_bl_pkg_filter,
|
||||
USERPREF_MT_extensions_bl_pkg_settings,
|
||||
USERPREF_OT_extensions_enable_not_installed,
|
||||
)
|
||||
|
||||
|
||||
|
|
Reference in New Issue