forked from LeenkxTeam/LNXSDK
39 lines
1.6 KiB
Python
39 lines
1.6 KiB
Python
from lnx.logicnode.lnx_nodes import *
|
|
|
|
class LoadUrlNode(LnxLogicTreeNode):
|
|
"""Load the given URL in a new or existing tab (works only for web browsers).
|
|
|
|
@input URL: use a complete url or partial for a subpage.
|
|
@input New: open a new window or redirect existing one.
|
|
@input Use values: W,H,L,T: open a new window using Width, Height, Left and Top values.
|
|
@input Width: width for New window.
|
|
@input Height: height for New window.
|
|
@input Left: distance from left for New window position.
|
|
@input Top: distance from top for New window position.
|
|
|
|
@output True: for New returns true if the window is opened.
|
|
@output False: for New returns false if the window is not opened (popup blocked).
|
|
"""
|
|
bl_idname = 'LNLoadUrlNode'
|
|
bl_label = 'Load URL'
|
|
lnx_version = 2
|
|
|
|
def lnx_init(self, context):
|
|
self.add_input('LnxNodeSocketAction', 'In')
|
|
self.add_input('LnxStringSocket', 'URL')
|
|
self.add_input('LnxBoolSocket', 'New Window', default_value=True)
|
|
self.add_input('LnxBoolSocket', 'Use values: W,H,L,T', default_value=False)
|
|
self.add_input('LnxIntSocket', 'Width', default_value= 500)
|
|
self.add_input('LnxIntSocket', 'Height', default_value= 500)
|
|
self.add_input('LnxIntSocket', 'Left')
|
|
self.add_input('LnxIntSocket', 'Top')
|
|
|
|
self.add_output('LnxNodeSocketAction', 'True')
|
|
self.add_output('LnxNodeSocketAction', 'False')
|
|
|
|
def get_replacement_node(self, node_tree: bpy.types.NodeTree):
|
|
if self.lnx_version not in (0, 1):
|
|
raise LookupError()
|
|
|
|
return NodeReplacement.Identity(self)
|