Example #1
0
def registerNukePanel():
    '''Register widget as a Nuke panel and add callback for saveing scripts'''
    import nuke
    import nukescripts
    nukescripts.registerWidgetAsPanel('ToDoList.MainWindow', 'To Do List', MainWindow.appName)
    nuke.addOnScriptSave(findAndReload)
    nuke.addOnScriptLoad(findAndReload)
Example #2
0
def runPane():
    paneExistsCheck = nuke.getPaneFor('org.vfxwiki.nuketoolkit')
    if not paneExistsCheck:
        pane = nuke.getPaneFor('Properties.1')
        nukescripts.registerWidgetAsPanel('toolSetWidget', 'openNuke', 'org.vfxwiki.nuketoolkit', True).addToPane(pane)
    else:
        nuke.message("errr. unable to load pane, as it already exists. \nClose the 'WebTools' pane, and try again.")
Example #3
0
def addColorPalettePanel():
    global colorPalettePanel
    try: 
        colorPalettePanel = nukescripts.registerWidgetAsPanel('nuke.ColorPalettePane', 'Color Palette', 'ColorPalettePane')
        colorPalettePanel.addToPane(nuke.getPaneFor('Properties.1'))
    except:
        colorPalettePanel = nukescripts.registerWidgetAsPanel('nuke.ColorPalettePane', 'Color Palette', 'ColorPalettePane')
Example #4
0
def registerNukePanel():
    '''Register widget as a Nuke panel and add callback for saveing scripts'''
    import nuke
    import nukescripts
    nukescripts.registerWidgetAsPanel('ToDoList.MainWindow', 'To Do List',
                                      MainWindow.appName)
    nuke.addOnScriptSave(findAndReload)
    nuke.addOnScriptLoad(findAndReload)
Example #5
0
def registerNukePanel():
    """Register widget as a Nuke panel and add callback for saveing scripts"""
    import nuke
    import nukescripts

    nukescripts.registerWidgetAsPanel("ToDoList.MainWindow", "To Do List", MainWindow.appName)
    nuke.addOnScriptSave(findAndReload)
    nuke.addOnScriptLoad(findAndReload)
Example #6
0
def runPane():
    paneExistsCheck = nuke.getPaneFor('org.vfxwiki.nuketoolkit')
    if not paneExistsCheck:
        pane = nuke.getPaneFor('Properties.1')
        nukescripts.registerWidgetAsPanel('toolSetWidget', 'openNuke',
                                          'org.vfxwiki.nuketoolkit',
                                          True).addToPane(pane)
    else:
        nuke.message(
            "errr. unable to load pane, as it already exists. \nClose the 'WebTools' pane, and try again."
        )
Example #7
0
File: Render.py Project: hdd/ue
def ueRender(foo, currentNode=None):
    p = nukescripts.registerWidgetAsPanel("ueCommonRender.Render", "ueRender",
                                          "ue.panel.ueRender", create=True)
    ueCommonRender.setRenderFrom(getWriteNodeList())
    ueCommonRender.setCurrentRender(currentNode)

    if p.showModalDialog():
        runRender(ueCommonRender.getValues())

    nukescripts.unregisterPanel("ue.panel.ueRender", lambda: "return")
Example #8
0
def ueRender(foo, currentNode=None):
    p = nukescripts.registerWidgetAsPanel("ueCommonRender.Render",
                                          "ueRender",
                                          "ue.panel.ueRender",
                                          create=True)
    ueCommonRender.setRenderFrom(getWriteNodeList())
    ueCommonRender.setCurrentRender(currentNode)

    if p.showModalDialog():
        runRender(ueCommonRender.getValues())

    nukescripts.unregisterPanel("ue.panel.ueRender", lambda: "return")
Example #9
0
def ueOpen():
    p = nukescripts.registerWidgetAsPanel("ueCommonOpen.Open", "ueOpen",
                                          "ue.panel.ueOpen", create=True)
    p.setMinimumSize(600, 940)
    ueCommonOpen.setClasses(__ueclasses__)

    if p.showModalDialog():
        spec = ueCommonOpen.getValues()
        version = ueAssetUtils.getVersions(spec)[spec.vers-1]
        nuke.scriptOpen(os.path.join(version["path"], version["file_name"]+".nk"))
        nuke.tprint("Opened %s" % spec)

    nukescripts.unregisterPanel("ue.panel.ueOpen", lambda: "return")
Example #10
0
File: Save.py Project: hdd/ue
def ueSaveWrite():
    p = nukescripts.registerWidgetAsPanel("ueCommonSave.Save", "ueSave",
                                          "ue.panel.ueSave", create=True)
    p.setMinimumSize(400, 600)
    ueCommonSave.setClasses(__ueclasses_write__)

    if p.showModalDialog():
        spec, dbMeta = ueCommonSave.getValues()
        n = nuke.thisNode()
        n.knob("proj").setValue(spec.proj)
        n.knob("grp").setValue(spec.grp)
        n.knob("asst").setValue(spec.asst)
        n.knob("elclass").setValue(spec.elclass)
        n.knob("eltype").setValue(spec.eltype)
        n.knob("elname").setValue(spec.elname)

    nukescripts.unregisterPanel("ue.panel.ueSave", lambda: "return")
Example #11
0
def ueOpenReadGeo():
    p = nukescripts.registerWidgetAsPanel("ueCommonOpen.Open", "ueOpen",
                                          "ue.panel.ueOpen", create=True)
    p.setMinimumSize(600, 940)
    ueCommonOpen.setClasses(__ueclasses_read_geo__)

    if p.showModalDialog():
        spec = ueCommonOpen.getValues()
        n = nuke.thisNode()
        n.knob("proj").setValue(spec.proj)
        n.knob("grp").setValue(spec.grp)
        n.knob("asst").setValue(spec.asst)
        n.knob("elclass").setValue(spec.elclass)
        n.knob("eltype").setValue(spec.eltype)
        n.knob("elname").setValue(spec.elname)
        n.knob("vers").setValue(int(spec.vers))

    nukescripts.unregisterPanel("ue.panel.ueOpen", lambda: "return")
Example #12
0
File: Save.py Project: hdd/ue
def ueSaveAs():
#    if not ueNuke.ueScriptSanityCheck():
#        return

    app = QtGui.QApplication.allWidgets()
    i = 0
    for widget in app:
        if str(type(widget)) == "<class 'PyQt4.QtGui.QStackedWidget'>":
            name = "ueSaveThumbs_%04d.png" % i
            QtGui.QPixmap.grabWindow(widget.winId()).save(os.path.join(os.getenv("ASST_ROOT"), "tmp", name), "png")
            i += 1

    p = nukescripts.registerWidgetAsPanel("ueCommonSave.Save", "ueSave",
                                          "ue.panel.ueSave", create=True)
    p.setMinimumSize(400, 600)
    ueCommonSave.setClasses(__ueclasses__)

    if p.showModalDialog():
        spec, dbMeta = ueCommonSave.getValues()
        ueNukeUtils.saveUtility(spec, dbMeta=dbMeta)

    ueFileUtils.deleteFiles(os.path.join(os.path.join(os.getenv("ASST_ROOT"), "tmp", "ueSaveThumbs_*.png")))
    nukescripts.unregisterPanel("ue.panel.ueSave", lambda: "return")
Example #13
0
    print("%s entries" % len(data))

    for r, d in enumerate(data):
        #r: row number, d: data for this row - 'SHOT', 'TASK', 'VERSION', 'COMMENTS', 'NOTES'
        # self.setRowHeight(r,24)
        for i, c in enumerate(ls_header):
            # i: column index, c: column title
            # SHOT: String | TASK: String with completer | VERSION: Integer | COMMENTS: String | NOTES: String
            setCell(obj_table, d, r, c, i)

    obj_table.scrollToBottom()


# ------------------------------------------------------------------------------
# Instancing and Regestering
# ------------------------------------------------------------------------------

try:
    if nuke.GUI:
        nukescripts.registerWidgetAsPanel(
            'mod_ShotStatusTracker.Core_ShotStatusTracker',
            'Shot Status Tracker', 'jiangovfx.ShotStatusTracker')
except:
    app = QtWidgets.QApplication(sys.argv)
    try:
        apply_stylesheet(app, theme='dark_teal.xml')
    except:
        print("Qt-Material not  imported")
    ShotStatusTracker = Core_ShotStatusTracker()
    ShotStatusTracker.run()
    app.exec_()
Example #14
0
        else:
            nuke.message("Fail to load file")

    def browseDir(self):
        '''open file browser for draft module location'''

        dir_browse = nuke.getFilename("Pick direcory for modules",
                                      pattern='*/',
                                      default=self.path.text())
        if dir_browse:
            self.path.setText(dir_browse)
            self.file.clear()
            self.file.addItems(listFiles(dir_browse))
        else:
            self.path
        self.raise_()


nukescripts.registerWidgetAsPanel('mod_TestFlight.Core_TestFlight',
                                  'Test Flight (beta)', 'kp.mod_TestFlight')
'''
try:
    app = QtWidgets.QApplication(sys.argv)
    TestFlight = Core_TestFlight()
    TestFlight.run()
    app.exec_()
except:
    TestFlight = Core_TestFlight()
    TestFlight.run()
'''
Example #15
0
        #mod = modifier_map.get(key)
        #if mod is not None:
        #key = mod
        #if key in self.held_keys:
        #self.held_keys.remove(key)


#&&

e = Editor()
e.show()
GLOBAL_EDITOR = e

#&&

nukescripts.registerWidgetAsPanel('Editor', 'shortcuts', 'id', create=True)

#&&


def test_shortcuts():
    GLOBAL_EDITOR.setFocus(QtCore.Qt.MouseFocusReason)
    if not GLOBAL_EDITOR.hasFocus():
        raise Exception('Need an editor visible to test')

    shortcuts = get_shortcuts()
    for shortcut in shortcuts:
        modifiers = QtCore.Qt.NoModifier
        shortcut = shortcut.strip()

        seq = shortcut.split('+')
Example #16
0

#-------------------------------------------------------------------------------
#-Supporting Functions
#-------------------------------------------------------------------------------


def set_widget_margins_to_zero(widget_object):

    if widget_object:
        target_widgets = set()
        target_widgets.add(widget_object.parentWidget().parentWidget())
        target_widgets.add(widget_object.parentWidget().parentWidget().
                           parentWidget().parentWidget())

        for widget_layout in target_widgets:
            try:
                widget_layout.layout().setContentsMargins(0, 0, 0, 0)
            except:
                pass


#-------------------------------------------------------------------------------
#-Instancing and Register
#-------------------------------------------------------------------------------

nukescripts.registerWidgetAsPanel('mod_TimelineMarker.Core_TimelineMarker',
                                  'TimelineMarker',
                                  'uk.co.thefoundry.TimelineMarker')
TimelineMarker = Core_TimelineMarker()
Example #17
0

def listFiles(dirpath):
    '''list files in the given dir'''

    path_draft = dirpath.replace('\\', '/')
    ls_files = [
        p for p in os.listdir(path_draft)
        if p.startswith('upt_') or p.startswith('mod_') or p.startswith('dft_')
    ]
    ls_files = [f for f in ls_files if f.endswith('.py')]

    return ls_files


#-------------------------------------------------------------------------------
#-Register
#-------------------------------------------------------------------------------

nukescripts.registerWidgetAsPanel('mod_TestFlight.Core_TestFlight', __TITLE__,
                                  'kp.mod_TestFlight')

# if 'upt_' in __file__:
#     app = QtWidgets.QApplication(sys.argv)
#     TestFlight = Core_TestFlight()
#     TestFlight.run()
#     app.exec_()
# else:
# TestFlight = Core_TestFlight()
# TestFlight.run()
    def getJSONPath(self):
        '''
        reutrn file path for the json file
        Naming convension:
        <HOME Dir>/.nuke/ShotStatusTracker/<SHOW>_SSTDataset.json
        /Users/Tianlun/.nuke/TimelineMarker/PHX_SSTDataset.json
        '''
        # Get pipline enviroment variables
        data_SHOW = os.getenv('PL_SHOW') if os.getenv('PL_SHOW') else 'GENERAL'

        data_folder = os.path.join(os.getenv('HOME'), '.nuke','ShotStatusTracker')
        data_filename = "%s_SSTDataset.json" % data_SHOW
        data_file = os.path.join(data_folder, data_filename)

        if not os.path.isdir(os.path.dirname(data_file)):
            os.makedirs(os.path.dirname(data_file))

        return data_file

try:
    --nukescripts.registerWidgetAsPanel('mod_ShotStatusTracker.Main_ShotStatusTracker', 'Shot Status Tracker','uk.co.thefoundry.ShotStatusTracker')
except:
    try:
        app = QtWidgets.QApplication(sys.argv)
        ShotStatusTracker = Main_ShotStatusTracker()
        ShotStatusTracker.run()
        app.exec_()
    except:
        ShotStatusTracker = Main_ShotStatusTracker()
        ShotStatusTracker.run()