More parameter nodes for shared workflows

This commit is contained in:
Acly
2024-10-04 11:04:35 +02:00
parent fb847a5225
commit 327b2a1fe3
2 changed files with 70 additions and 1 deletions
+6
View File
@@ -23,6 +23,9 @@ NODE_CLASS_MAPPINGS = {
"ETN_KritaImageLayer": krita.KritaImageLayer,
"ETN_KritaMaskLayer": krita.KritaMaskLayer,
"ETN_IntParameter": krita.IntParameter,
"ETN_BoolParameter": krita.BoolParameter,
"ETN_NumberParameter": krita.NumberParameter,
"ETN_TextParameter": krita.TextParameter,
}
NODE_DISPLAY_NAME_MAPPINGS = {
"ETN_LoadImageBase64": "Load Image (Base64)",
@@ -47,5 +50,8 @@ NODE_DISPLAY_NAME_MAPPINGS = {
"ETN_KritaImageLayer": "Krita Image Layer",
"ETN_KritaMaskLayer": "Krita Mask Layer",
"ETN_IntParameter": "Integer Parameter",
"ETN_BoolParameter": "Boolean Parameter",
"ETN_NumberParameter": "Number Parameter",
"ETN_TextParameter": "Text Parameter",
}
WEB_DIRECTORY = "./js"
+64 -1
View File
@@ -124,7 +124,7 @@ class IntParameter:
"name": ("STRING", {"default": "Parameter"}),
"min": ("INT", {"default": 0}),
"max": ("INT", {"default": 100}),
"default": ("INT", {"default": 50}),
"default": ("INT", {"default": 0}),
}
}
@@ -135,3 +135,66 @@ class IntParameter:
def placeholder(self, name: str, min: int, max: int, default: int):
return (default,)
class BoolParameter:
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"name": ("STRING", {"default": "Parameter"}),
"default": ("BOOLEAN", {"default": False}),
}
}
RETURN_TYPES = ("BOOL",)
RETURN_NAMES = ("value",)
FUNCTION = "placeholder"
CATEGORY = "krita"
def placeholder(self, name: str, default: bool):
return (default,)
class NumberParameter:
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"name": ("STRING", {"default": "Parameter"}),
"min": ("FLOAT", {"default": 0.0}),
"max": ("FLOAT", {"default": 1.0}),
"default": ("FLOAT", {"default": 0.0}),
}
}
RETURN_TYPES = ("FLOAT",)
RETURN_NAMES = ("value",)
FUNCTION = "placeholder"
CATEGORY = "krita"
def placeholder(self, name: str, min: float, max: float, default: float):
return (default,)
class TextParameter:
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"name": ("STRING", {"default": "Parameter"}),
"type": (
["general", "prompt (positive)", "prompt (negative)"],
{"default": "general"},
),
"default": ("STRING", {"default": ""}),
}
}
RETURN_TYPES = ("STRING",)
RETURN_NAMES = ("value",)
FUNCTION = "placeholder"
CATEGORY = "krita"
def placeholder(self, name: str, style: str, default: str):
return (default,)