conductor.clarisse.scripted_class.packages_ui module

Also, starting to think the idea of plugin packages belonging to host packages in a tree like fashion is fundamentally wrong and overcomplicates things.

The only constraint should be that at most one version of each software can be chosen. No reason a customer can’t have a Houdini session with a renderman procedural that calls out to Maya in library mode to provide geometry on demand.

class conductor.clarisse.scripted_class.packages_ui.PackageChooser(node)

Bases: sphinx.ext.autodoc.importer._MockObject

on_cancel_but(sender, eventid)
on_clear_but(sender, eventid)
on_detect_but(sender, eventid)

Select the current package if available in the list.

on_go_but(sender, eventid)

Save the selected packages on the CobnductorJob node.

class conductor.clarisse.scripted_class.packages_ui.PackageTreeItem(parent, name)

Bases: sphinx.ext.autodoc.importer._MockObject

An item in the tree that maintains its own child list.

class conductor.clarisse.scripted_class.packages_ui.PackageTreeWidget(parent, x_val, y_val, width, height)

Bases: sphinx.ext.autodoc.importer._MockObject

Inherit from GuiTree to maintain our own child list.

This implementation is way more complicated than it should be due to the fact that GuiTree#get_children() is buggy. See here: https://forum.isotropix.com/viewtopic.php?f=21&t=5391&p=19440#p19440

Also, starting to think the idea of plugin packages belonging to host packages in a tree like fashion is fundamentally wrong anyway and overcomplicates everything.

The only constraint should be that at most one version of each software can be chosen. No reason a customer can’t have a Houdini session with a renderman procedural that calls out to Maya in library mode to provide geometry at rendertime.

clear()
on_selection(sender, eventid)

Make sure only one item of each product is selected.

For example, if user selects arnold 2.0, deselect arnold 3.0

select_path_leaves(paths)
conductor.clarisse.scripted_class.packages_ui.build(*args)

Called from the attribute editor to build the window.

Highlight any existing packages entries for the node.