mirror of
https://github.com/alicevision/Meshroom.git
synced 2025-06-06 12:51:57 +02:00
Merge pull request #2369 from alicevision/dev/hideOutputAttributes
[core/ui] Hide output attributes flagged for visualisation
This commit is contained in:
commit
9bc69d6b84
2 changed files with 24 additions and 22 deletions
|
@ -15,7 +15,7 @@ class Attribute(BaseObject):
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self, name, label, description, value, advanced, semantic, uid, group, enabled, uidIgnoreValue=None,
|
def __init__(self, name, label, description, value, advanced, semantic, uid, group, enabled, uidIgnoreValue=None,
|
||||||
validValue=True, errorMessage=""):
|
validValue=True, errorMessage="", visible=True):
|
||||||
super(Attribute, self).__init__()
|
super(Attribute, self).__init__()
|
||||||
self._name = name
|
self._name = name
|
||||||
self._label = label
|
self._label = label
|
||||||
|
@ -29,6 +29,7 @@ class Attribute(BaseObject):
|
||||||
self._uidIgnoreValue = uidIgnoreValue
|
self._uidIgnoreValue = uidIgnoreValue
|
||||||
self._validValue = validValue
|
self._validValue = validValue
|
||||||
self._errorMessage = errorMessage
|
self._errorMessage = errorMessage
|
||||||
|
self._visible = visible
|
||||||
|
|
||||||
name = Property(str, lambda self: self._name, constant=True)
|
name = Property(str, lambda self: self._name, constant=True)
|
||||||
label = Property(str, lambda self: self._label, constant=True)
|
label = Property(str, lambda self: self._label, constant=True)
|
||||||
|
@ -42,6 +43,7 @@ class Attribute(BaseObject):
|
||||||
uidIgnoreValue = Property(Variant, lambda self: self._uidIgnoreValue, constant=True)
|
uidIgnoreValue = Property(Variant, lambda self: self._uidIgnoreValue, constant=True)
|
||||||
validValue = Property(Variant, lambda self: self._validValue, constant=True)
|
validValue = Property(Variant, lambda self: self._validValue, constant=True)
|
||||||
errorMessage = Property(str, lambda self: self._errorMessage, constant=True)
|
errorMessage = Property(str, lambda self: self._errorMessage, constant=True)
|
||||||
|
visible = Property(bool, lambda self: self._visible, constant=True)
|
||||||
type = Property(str, lambda self: self.__class__.__name__, constant=True)
|
type = Property(str, lambda self: self.__class__.__name__, constant=True)
|
||||||
|
|
||||||
def validateValue(self, value):
|
def validateValue(self, value):
|
||||||
|
@ -77,13 +79,13 @@ class Attribute(BaseObject):
|
||||||
|
|
||||||
class ListAttribute(Attribute):
|
class ListAttribute(Attribute):
|
||||||
""" A list of Attributes """
|
""" A list of Attributes """
|
||||||
def __init__(self, elementDesc, name, label, description, group='allParams', advanced=False, semantic='', enabled=True, joinChar=' '):
|
def __init__(self, elementDesc, name, label, description, group='allParams', advanced=False, semantic='', enabled=True, joinChar=' ', visible=True):
|
||||||
"""
|
"""
|
||||||
:param elementDesc: the Attribute description of elements to store in that list
|
:param elementDesc: the Attribute description of elements to store in that list
|
||||||
"""
|
"""
|
||||||
self._elementDesc = elementDesc
|
self._elementDesc = elementDesc
|
||||||
self._joinChar = joinChar
|
self._joinChar = joinChar
|
||||||
super(ListAttribute, self).__init__(name=name, label=label, description=description, value=[], uid=(), group=group, advanced=advanced, semantic=semantic, enabled=enabled)
|
super(ListAttribute, self).__init__(name=name, label=label, description=description, value=[], uid=(), group=group, advanced=advanced, semantic=semantic, enabled=enabled, visible=visible)
|
||||||
|
|
||||||
elementDesc = Property(Attribute, lambda self: self._elementDesc, constant=True)
|
elementDesc = Property(Attribute, lambda self: self._elementDesc, constant=True)
|
||||||
uid = Property(Variant, lambda self: self.elementDesc.uid, constant=True)
|
uid = Property(Variant, lambda self: self.elementDesc.uid, constant=True)
|
||||||
|
@ -117,14 +119,14 @@ class ListAttribute(Attribute):
|
||||||
|
|
||||||
class GroupAttribute(Attribute):
|
class GroupAttribute(Attribute):
|
||||||
""" A macro Attribute composed of several Attributes """
|
""" A macro Attribute composed of several Attributes """
|
||||||
def __init__(self, groupDesc, name, label, description, group='allParams', advanced=False, semantic='', enabled=True, joinChar=' ', brackets=None):
|
def __init__(self, groupDesc, name, label, description, group='allParams', advanced=False, semantic='', enabled=True, joinChar=' ', brackets=None, visible=True):
|
||||||
"""
|
"""
|
||||||
:param groupDesc: the description of the Attributes composing this group
|
:param groupDesc: the description of the Attributes composing this group
|
||||||
"""
|
"""
|
||||||
self._groupDesc = groupDesc
|
self._groupDesc = groupDesc
|
||||||
self._joinChar = joinChar
|
self._joinChar = joinChar
|
||||||
self._brackets = brackets
|
self._brackets = brackets
|
||||||
super(GroupAttribute, self).__init__(name=name, label=label, description=description, value={}, uid=(), group=group, advanced=advanced, semantic=semantic, enabled=enabled)
|
super(GroupAttribute, self).__init__(name=name, label=label, description=description, value={}, uid=(), group=group, advanced=advanced, semantic=semantic, enabled=enabled, visible=visible)
|
||||||
|
|
||||||
groupDesc = Property(Variant, lambda self: self._groupDesc, constant=True)
|
groupDesc = Property(Variant, lambda self: self._groupDesc, constant=True)
|
||||||
|
|
||||||
|
@ -210,16 +212,16 @@ class GroupAttribute(Attribute):
|
||||||
class Param(Attribute):
|
class Param(Attribute):
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
def __init__(self, name, label, description, value, uid, group, advanced, semantic, enabled, uidIgnoreValue=None, validValue=True, errorMessage=""):
|
def __init__(self, name, label, description, value, uid, group, advanced, semantic, enabled, uidIgnoreValue=None, validValue=True, errorMessage="", visible=True):
|
||||||
super(Param, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled,
|
super(Param, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled,
|
||||||
uidIgnoreValue=uidIgnoreValue, validValue=validValue, errorMessage=errorMessage)
|
uidIgnoreValue=uidIgnoreValue, validValue=validValue, errorMessage=errorMessage, visible=visible)
|
||||||
|
|
||||||
|
|
||||||
class File(Attribute):
|
class File(Attribute):
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
def __init__(self, name, label, description, value, uid, group='allParams', advanced=False, semantic='', enabled=True):
|
def __init__(self, name, label, description, value, uid, group='allParams', advanced=False, semantic='', enabled=True, visible=True):
|
||||||
super(File, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled)
|
super(File, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled, visible=visible)
|
||||||
|
|
||||||
def validateValue(self, value):
|
def validateValue(self, value):
|
||||||
if not isinstance(value, str):
|
if not isinstance(value, str):
|
||||||
|
@ -237,8 +239,8 @@ class File(Attribute):
|
||||||
class BoolParam(Param):
|
class BoolParam(Param):
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
def __init__(self, name, label, description, value, uid, group='allParams', advanced=False, semantic='', enabled=True):
|
def __init__(self, name, label, description, value, uid, group='allParams', advanced=False, semantic='', enabled=True, visible=True):
|
||||||
super(BoolParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled)
|
super(BoolParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled, visible=visible)
|
||||||
|
|
||||||
def validateValue(self, value):
|
def validateValue(self, value):
|
||||||
try:
|
try:
|
||||||
|
@ -258,10 +260,10 @@ class BoolParam(Param):
|
||||||
class IntParam(Param):
|
class IntParam(Param):
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
def __init__(self, name, label, description, value, range, uid, group='allParams', advanced=False, semantic='', enabled=True, validValue=True, errorMessage=""):
|
def __init__(self, name, label, description, value, range, uid, group='allParams', advanced=False, semantic='', enabled=True, validValue=True, errorMessage="", visible=True):
|
||||||
self._range = range
|
self._range = range
|
||||||
super(IntParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled,
|
super(IntParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled,
|
||||||
validValue=validValue, errorMessage=errorMessage)
|
validValue=validValue, errorMessage=errorMessage, visible=visible)
|
||||||
|
|
||||||
def validateValue(self, value):
|
def validateValue(self, value):
|
||||||
# handle unsigned int values that are translated to int by shiboken and may overflow
|
# handle unsigned int values that are translated to int by shiboken and may overflow
|
||||||
|
@ -281,10 +283,10 @@ class IntParam(Param):
|
||||||
class FloatParam(Param):
|
class FloatParam(Param):
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
def __init__(self, name, label, description, value, range, uid, group='allParams', advanced=False, semantic='', enabled=True, validValue=True, errorMessage=""):
|
def __init__(self, name, label, description, value, range, uid, group='allParams', advanced=False, semantic='', enabled=True, validValue=True, errorMessage="", visible=True):
|
||||||
self._range = range
|
self._range = range
|
||||||
super(FloatParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled,
|
super(FloatParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled,
|
||||||
validValue=validValue, errorMessage=errorMessage)
|
validValue=validValue, errorMessage=errorMessage, visible=visible)
|
||||||
|
|
||||||
def validateValue(self, value):
|
def validateValue(self, value):
|
||||||
try:
|
try:
|
||||||
|
@ -304,14 +306,14 @@ class ChoiceParam(Param):
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
def __init__(self, name, label, description, value, values, exclusive, uid, group='allParams', joinChar=' ', advanced=False, semantic='',
|
def __init__(self, name, label, description, value, values, exclusive, uid, group='allParams', joinChar=' ', advanced=False, semantic='',
|
||||||
enabled=True, validValue=True, errorMessage=""):
|
enabled=True, validValue=True, errorMessage="", visible=True):
|
||||||
assert values
|
assert values
|
||||||
self._values = values
|
self._values = values
|
||||||
self._exclusive = exclusive
|
self._exclusive = exclusive
|
||||||
self._joinChar = joinChar
|
self._joinChar = joinChar
|
||||||
self._valueType = type(self._values[0]) # cast to value type
|
self._valueType = type(self._values[0]) # cast to value type
|
||||||
super(ChoiceParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced,
|
super(ChoiceParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced,
|
||||||
semantic=semantic, enabled=enabled, validValue=validValue, errorMessage=errorMessage)
|
semantic=semantic, enabled=enabled, validValue=validValue, errorMessage=errorMessage, visible=visible)
|
||||||
|
|
||||||
def conformValue(self, value):
|
def conformValue(self, value):
|
||||||
""" Conform 'value' to the correct type and check for its validity """
|
""" Conform 'value' to the correct type and check for its validity """
|
||||||
|
@ -340,9 +342,9 @@ class ChoiceParam(Param):
|
||||||
class StringParam(Param):
|
class StringParam(Param):
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
def __init__(self, name, label, description, value, uid, group='allParams', advanced=False, semantic='', enabled=True, uidIgnoreValue=None, validValue=True, errorMessage=""):
|
def __init__(self, name, label, description, value, uid, group='allParams', advanced=False, semantic='', enabled=True, uidIgnoreValue=None, validValue=True, errorMessage="", visible=True):
|
||||||
super(StringParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled,
|
super(StringParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled,
|
||||||
uidIgnoreValue=uidIgnoreValue, validValue=validValue, errorMessage=errorMessage)
|
uidIgnoreValue=uidIgnoreValue, validValue=validValue, errorMessage=errorMessage, visible=visible)
|
||||||
|
|
||||||
def validateValue(self, value):
|
def validateValue(self, value):
|
||||||
if not isinstance(value, str):
|
if not isinstance(value, str):
|
||||||
|
@ -358,8 +360,8 @@ class StringParam(Param):
|
||||||
class ColorParam(Param):
|
class ColorParam(Param):
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
def __init__(self, name, label, description, value, uid, group='allParams', advanced=False, semantic='', enabled=True):
|
def __init__(self, name, label, description, value, uid, group='allParams', advanced=False, semantic='', enabled=True, visible=True):
|
||||||
super(ColorParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled)
|
super(ColorParam, self).__init__(name=name, label=label, description=description, value=value, uid=uid, group=group, advanced=advanced, semantic=semantic, enabled=enabled, visible=visible)
|
||||||
|
|
||||||
def validateValue(self, value):
|
def validateValue(self, value):
|
||||||
if not isinstance(value, str) or len(value.split(" ")) > 1:
|
if not isinstance(value, str) or len(value.split(" ")) > 1:
|
||||||
|
|
|
@ -392,7 +392,7 @@ Item {
|
||||||
|
|
||||||
delegate: Loader {
|
delegate: Loader {
|
||||||
id: outputLoader
|
id: outputLoader
|
||||||
active: object.isOutput && isFileAttributeBaseType(object)
|
active: object.isOutput && isFileAttributeBaseType(object) && object.desc.visible
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
width: outputs.width
|
width: outputs.width
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue