def publish( self, selectedHDA=None ): #, departments=[Department.HDA, Department.ASSEMBLY, Department.MODIFY, Department.MATERIAL, Department.HAIR, Department.CLOTH]): project = Project() self.selectedHDA = selectedHDA if self.selectedHDA is None: self.selectedHDA = get_selected_node() if self.selectedHDA is None: return if self.selectedHDA.type().definition() is not None: self.src = self.selectedHDA.type().definition().libraryFilePath() if self.node_name: self.asset_results([self.node_name]) return asset_list = project.list_props_and_actors() self.item_gui = sfl.SelectFromList( l=asset_list, parent=houdini_main_window(), title="Select an asset to publish to") self.item_gui.submitted.connect(self.asset_results) else: qd.error('The selected node is not a digital asset') return
def clone_hda(self, hda=None): project = Project() asset_list = project.list_props_and_actors() self.item_gui = sfl.SelectFromList(l=asset_list, parent=houdini_main_window(), title="Select an asset to clone") self.item_gui.submitted.connect(self.asset_results)
def create_asset_xml(): project = Project() asset_list = project.list_props_and_actors() filename = os.path.join(Environment().get_project_dir(), "production/props_and_actors.xml") open(filename, "w").close() # wipe the file f = open(filename, "a") # open the file for appending write_to_file(f, filename, "<channel>\n") for asset in asset_list: text = "\t<item>" + str(asset) + "</item>\n" write_to_file(f, filename, text) write_to_file(f, filename, "</channel>\n") f.close()