Updated
This commit is contained in:
136
Scripts/Modeling/Edit/ModIt/Placement/ModIt_AssetIt.py
Normal file
136
Scripts/Modeling/Edit/ModIt/Placement/ModIt_AssetIt.py
Normal file
@ -0,0 +1,136 @@
|
||||
##--------------------------------------------------------------------------
|
||||
from Qt import QtWidgets, QtCore, QtGui
|
||||
from maya import cmds as mc
|
||||
import maya.mel as mel
|
||||
import json
|
||||
from ..Qt import QtWidgets, QtCore, QtCompat
|
||||
import os
|
||||
import maya.cmds as cmds
|
||||
from maya import OpenMayaUI as omui
|
||||
import mtoa.core as core
|
||||
from functools import partial
|
||||
|
||||
# Special cases for different Maya versions
|
||||
from Qt.QtCompat import wrapInstance
|
||||
from Qt.QtGui import QIcon
|
||||
from Qt.QtWidgets import QWidget
|
||||
|
||||
import importlib
|
||||
from .. import ModIt_Global
|
||||
|
||||
#importlib.reload(ModIt_Global)
|
||||
|
||||
from .. import ModIt_CSS
|
||||
#importlib.reload(ModIt_CSS)
|
||||
|
||||
##______________________GLOBAL VAR
|
||||
##PATH_SET
|
||||
IconPath = ModIt_Global.IconsPathThemeClassic
|
||||
PreferencePath = ModIt_Global.PreferencePath
|
||||
ToolsPath = ModIt_Global.ToolPath
|
||||
RessourcePath = ModIt_Global.RessourcePath
|
||||
|
||||
##GLOBAL VAR
|
||||
WindowsTitle = " - AssetIt -"
|
||||
|
||||
#________________//
|
||||
#___________________________________________
|
||||
#________________//
|
||||
class AssetItPromo_UI(QtWidgets.QDialog):
|
||||
def __init__(self, parent=None):
|
||||
super(AssetItPromo_UI, self).__init__()
|
||||
self.setMinimumSize(1420, 950)
|
||||
self.buildUI()
|
||||
|
||||
def buildUI(self):
|
||||
UILayout = QtWidgets.QVBoxLayout(self)
|
||||
self.setStyleSheet(ModIt_CSS.ModIt_CSS)
|
||||
##UI - Preferences
|
||||
iconButtonSize = 22
|
||||
|
||||
#############################################
|
||||
|
||||
## SCATTER TAB Banner
|
||||
label = QtWidgets.QLabel(self)
|
||||
pixmap = QtGui.QPixmap(IconPath + "AssetIt_Presa_Img.jpg")
|
||||
label.setPixmap(pixmap)
|
||||
label.setAlignment(QtCore.Qt.AlignTop)
|
||||
UILayout.addWidget(label)
|
||||
|
||||
## TEXT
|
||||
LandscapeTitle = QtWidgets.QLabel(self)
|
||||
LandscapeTitle.setFont(QtGui.QFont('Candara', 10))
|
||||
LandscapeTitle.setStyleSheet("QLabel {color : #65BEF1; }")
|
||||
LandscapeTitle.setText(""" Allow users to create custom Bolts would mean the need to : set a user folder path, creation thumbnail, pivot placement setting, allow any type of mesh possible...
|
||||
|
||||
> Which is so called an Asset Manager and for that I created AssetIt script.
|
||||
|
||||
- So if you need more control about Bold and you want to create your own, I invited you to take a look at AssetIt script. -""")
|
||||
LandscapeTitle.setAlignment(QtCore.Qt.AlignCenter)
|
||||
UILayout.addWidget(LandscapeTitle)
|
||||
|
||||
BoutonsLayout = QtWidgets.QHBoxLayout()
|
||||
UILayout.addLayout(BoutonsLayout)
|
||||
|
||||
GetAssetIt_btn = QtWidgets.QPushButton("- G e t A s s e t I t -")
|
||||
GetAssetIt_btn.setFont(QtGui.QFont('Candara', 10))
|
||||
GetAssetIt_btn.setObjectName("AssetIt")
|
||||
GetAssetIt_btn.setFixedHeight(22)
|
||||
GetAssetIt_btn.setShortcut(QtGui.QKeySequence("Return"))
|
||||
GetAssetIt_btn.clicked.connect(self.GetAssetIt)
|
||||
BoutonsLayout.addWidget(GetAssetIt_btn)
|
||||
|
||||
def GetAssetIt(self):
|
||||
cmds.deleteUI(WindowsTitle)
|
||||
|
||||
QtGui.QDesktopServices.openUrl(
|
||||
QtCore.QUrl("https://wzx.gumroad.com/l/AssetIt"))
|
||||
|
||||
def Dock(Widget, width=200, height=200, hp="free", show=True):
|
||||
label = getattr(Widget, "label", WindowsTitle)
|
||||
|
||||
try:
|
||||
cmds.deleteUI(WindowsTitle)
|
||||
except RuntimeError:
|
||||
pass
|
||||
|
||||
dockControl = cmds.workspaceControl(
|
||||
WindowsTitle,
|
||||
initialWidth=width,
|
||||
minimumWidth=False,
|
||||
widthProperty=hp,
|
||||
heightProperty=hp,
|
||||
label=label
|
||||
)
|
||||
|
||||
dockPtr = omui.MQtUtil.findControl(dockControl)
|
||||
dockWidget = QtCompat.wrapInstance(int(dockPtr), QtWidgets.QWidget)
|
||||
dockWidget.setAttribute(QtCore.Qt.WA_DeleteOnClose)
|
||||
child = Widget(dockWidget)
|
||||
dockWidget.layout().addWidget(child)
|
||||
|
||||
if show:
|
||||
cmds.evalDeferred(
|
||||
lambda *args: cmds.workspaceControl(
|
||||
dockControl,
|
||||
edit=True,
|
||||
widthProperty="free",
|
||||
restore=True
|
||||
)
|
||||
)
|
||||
return child
|
||||
|
||||
def showUI():
|
||||
ui = Dock(AssetItPromo_UI)
|
||||
ui.show()
|
||||
|
||||
# Get a pointer and convert it to Qt Widget object
|
||||
qw = omui.MQtUtil.findWindow(WindowsTitle)
|
||||
widget = wrapInstance(int(qw), QWidget)
|
||||
# Create a QIcon object
|
||||
icon = QIcon(IconPath + "ModIt_Window_Ico.png")
|
||||
# Assign the icon
|
||||
widget.setWindowIcon(icon)
|
||||
|
||||
return ui
|
||||
|
Reference in New Issue
Block a user