From 76fe88fbccab959ff8c333dcb88e06e950919a5c Mon Sep 17 00:00:00 2001 From: Jakub Jezek Date: Mon, 13 Jul 2020 10:19:58 +0200 Subject: [PATCH] feat(resolve): config moved to plugins and widget rename --- pype/hosts/resolve/plugin.py | 4 +-- .../resolve/create/create_shot_clip.py | 32 ++++++++++++++++--- 2 files changed, 30 insertions(+), 6 deletions(-) diff --git a/pype/hosts/resolve/plugin.py b/pype/hosts/resolve/plugin.py index 4e7ac80add..29e544cb47 100644 --- a/pype/hosts/resolve/plugin.py +++ b/pype/hosts/resolve/plugin.py @@ -7,7 +7,7 @@ from pype.api import config from Qt import QtWidgets, QtCore -class Universal_widget(QtWidgets.QDialog): +class Creator_widget(QtWidgets.QDialog): # output items items = dict() @@ -270,4 +270,4 @@ class Creator(api.Creator): else: self.selected = resolve.get_current_track_items(filter=False) - self.widget = Universal_widget + self.widget = Creator_widget diff --git a/pype/plugins/resolve/create/create_shot_clip.py b/pype/plugins/resolve/create/create_shot_clip.py index 43207743e2..e4b3e8fe2a 100644 --- a/pype/plugins/resolve/create/create_shot_clip.py +++ b/pype/plugins/resolve/create/create_shot_clip.py @@ -13,17 +13,41 @@ class CreateShotClip(resolve.Creator): gui_name = "Pype sequencial rename with hirerarchy" gui_info = "Define sequencial rename and fill hierarchy data." + gui_inputs = { + "clipName": "{episode}{sequence}{shot}", + "hierarchy": "{folder}/{sequence}/{shot}", + "countFrom": 10, + "steps": 10, + "hierarchyData": { + "folder": "shots", + "shot": "sh####", + "track": "{track}", + "sequence": "sc010", + "episode": "ep01" + } + } presets = None def process(self): - print(f"__ selected_clips: {self.selected}") + # solve gui inputs overwrites from presets + # overwrite gui inputs from presets + for k, v in self.gui_inputs.items(): + if isinstance(v, dict): + # nested dictionary (only one level allowed) + for _k, _v in v.items(): + if self.presets.get(_k): + self.gui_inputs[k][_k] = self.presets[_k] + if self.presets.get(k): + self.gui_inputs[k] = self.presets[k] + # open widget for plugins inputs + widget = self.widget(self.gui_name, self.gui_info, self.gui_inputs) + widget.exec_() + + print(f"__ selected_clips: {self.selected}") if len(self.selected) < 1: return - widget = self.widget(self.gui_name, self.gui_info, self.presets) - widget.exec_() - if not widget.result: print("Operation aborted") return