38 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			38 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) |