I'm designing a simple GUI for a Blender 2.80 plug-in. I've created a dialog box to enter some data:
I would like to replace the line of text ("Lorem ipsum ...") with a button with a custom label (example "click here to visit our website").
Below is the code I am using:
class ExportFDSCloudHPC(Operator):
bl_idname = "..."
bl_label = "Title"
bl_description = "..."
data1 = bpy.props.StringProperty(
name = "Text 1",
default = "..."
)
data2 = bpy.props.StringProperty(
name = "Text 2",
default = "..."
)
data3 = bpy.props.StringProperty(
name = "Text 3",
default = "..."
)
def draw(self, context):
col = self.layout.column(align = True)
col.prop(self, "data1")
self.layout.label(text="Lorem ipsum dolor sit amet, consectetur adipisci elit...")
col = self.layout.column(align = True)
col.prop(self, "data2")
col = self.layout.column(align = True)
col.prop(self, "data3")
def execute(self, context):
...
To get button you need to provide an existing operator:
row.operator("wm.save_as_mainfile")
button text is defined in operator. If you want to change name of existing operator userow.operator("wm.save_as_mainfile", text='My Save Label')
You can create own operator:
and then use it like that: