Skip to content

Instantly share code, notes, and snippets.

View michaeltrainor's full-sized avatar
:octocat:
Probably working too hard for someone else.

mtd3v michaeltrainor

:octocat:
Probably working too hard for someone else.
View GitHub Profile
# third party libraries
import pymel.core as pm
menus = [i for i in sorted(pm.lsUI(menus=True)) if isinstance(i.getParent(), pm.ui.Window) and isinstance(i, pm.ui.Menu)]
for i in sorted(menus):
if i.shortName() == "Test":
i.delete()
break
# third party libraries
import pymel.core as pm
from PySide import QtGui
menus = [i for i in sorted(pm.lsUI(menus=True)) if isinstance(i.getParent(), pm.ui.Window) and isinstance(i, pm.ui.Menu)]
for i in sorted(menus):
if i.shortName() == "Test":
i.delete()
@michaeltrainor
michaeltrainor / registry_queries.py
Created August 30, 2017 08:54
Hey there! Here's a quick example of how to query the Windows registry via the standard winreg library.
# standard libraries
import platform
import _winreg
def query(key, sub_key, path):
result = None
if platform.architecture()[0] == "32bit":
architecture_ = _winreg.KEY_READ | _winreg.KEY_WOW64_32KEY
# standard libraries
import os
import sys
import json
import traceback
class JSONDict(dict):
def __init__(self, file_path, sort_keys=False, *args, **kwargs):
super(JSONDict, self).__init__(*args, **kwargs)
@michaeltrainor
michaeltrainor / MayaDockingClass.py
Created May 18, 2017 19:30 — forked from liorbenhorin/MayaDockingClass.py
Maya 2017 PySide2 Docking Qt QMainWindow
"""
This is what you need to do in order to get a qt window to dock next to maya channel box,
In all maya versions, including 2017 with PySide2
"""
__author__ = "[email protected]"
import sys
import os
import logging
import xml.etree.ElementTree as xml
@michaeltrainor
michaeltrainor / spot_locator.py
Created January 22, 2016 07:34
Spot Locator WIP
import pymel.core as pm
selection = pm.ls(sl=True)
for index, node in enumerate(selection):
position = None
if isinstance(node, pm.Component):
if isinstance(node, pm.MeshVertex):
@michaeltrainor
michaeltrainor / delete_all.py
Last active September 24, 2015 15:21
This is a convenience function that deletes all items in a given path and the path itself. The use of 'robocopy' ensures that paths that exceed the 255 character limitation are removed.
# standard libraries
import os
import sys
import subprocess
__author__ = "Michael Trainor (http://www.mtrainor.com)"
__gist__ = "[email protected]:f2a849dd0051d35bc2ba.git"
# usage
""" python.exe delete_all.py {your_path} """