def __initialize(self): self.beginResetModel() self.__manager = medic.PluginManager() all_testers = map(lambda x: self.__manager.tester(x), self.__manager.testerNames()) for karte_name in self.__manager.karteNames(): karte = self.__manager.karte(karte_name) tester_items = [] for tester in all_testers: if karte.hasTester(tester): tester_items.append(TesterItem(tester)) if karte.Visible(): self.__visible_items.append( KarteItem(karte, tester_items, visitorClass=self.__visitor_class)) else: self.__invisible_items.append( KarteItem(karte, tester_items, visitorClass=self.__visitor_class)) self.__karte_items = self.__visible_items[:] self.endResetModel()
def process(self, context): plugin_manager = medic.PluginManager() for k in plugin_manager.karteNames(): instance = context.create_instance("Medic/%s" % (k), family="karte") instance.data["karte"] = plugin_manager.karte(k) instance.data["visitor"] = medic.Visitor() instance.data["families"] = [k]
def registerValidators(): plugin_manager = medic.PluginManager() for tester_name in plugin_manager.testerNames(): families = [] tester = plugin_manager.tester(tester_name) for karte_name in plugin_manager.karteNames(): karte = plugin_manager.karte(karte_name) if karte.hasTester(tester): families.append(karte_name) pyblish.api.register_plugin(_vaildator(tester, families))