import moverlay moverlay.mayaDemo.demoOverlays()You can find moverlay in Python/Lib/site-packages in your install folder. You can also view the scripts included in the Interactive Tutorial Demo or Interactive Basics Tutorial to see more examples of 2D overlay code and usage.
Overlay Type | Hello World example | Result |
---|---|---|
Progress Dialog: A two button dialog window designed as a tutorial controller. |
import moverlay as mo from PySide2.QtCore import QPoint def pressNext(): print("Next was pressed") def pressReset(): print("Reset was pressed") def pressClosed(dialog): manager.controller.deleteLater() #create manager object and assign its controller manager = mo.maya.overlayManager() manager.controller = mo.progressDialog.ProgressDialog(manager.getMainWindow()) #Assign title and body text manager.controller.setTitle("Example Dialog") manager.controller.setBodyText("Hello World") #Create buttons and attach them to appropriate procedures when clicked manager.controller.setupButton(0, "Reset", pressReset) manager.controller.setupButton(1, "Next", pressNext) manager.controller.setCloseCallback(pressClosed) #Create a progress bar with 10 steps manager.controller.progressBar().resetSteps(1, 10) #Re-size and position the controller manager.controller.theDialog().resize(mo.utils.DPIScale(180), mo.utils.DPIScale(250)) manager.controller.theDialog().moveToScreenPos(QPoint(0, 0)) #Display the controller manager.controller.showAndRaise() |
|
HIG Dialog: A no button dialog window designed for displaying hints or diagrams |
import moverlay as mo from PySide2.QtCore import QPoint def pressClosed(dialog): dialog.deleteLater() #Create manager and dialog object manager = mo.maya.overlayManager() dialog = mo.higDialog.HIGDialog(manager.getMainWindow()) #Assign body text label = dialog.setAsLabel('<h1>Example Dialog</h1><p>Hello World</p>') #Assign close procedure dialog.setCloseCallback(pressClosed) #Re-size and position the dialog dialog.theDialog().resize(mo.utils.DPIScale(180), mo.utils.DPIScale(250)) dialog.theDialog().moveToScreenPos(QPoint(0, 0)) dialog.theDialog().setFixedWidth(250) dialog.showAndRaise() |
|
Bubble: A non-interactable word bubble that appears in a designated position. Note: To remove overlays, you can call overlayManager's deleteAll() procedure.
|
import moverlay as mo from PySide2.QtCore import QPoint from PySide2.QtCore import QSize from PySide2.QtGui import QColor #Create manager and overlay definition manager = mo.maya.overlayManager() od = mo.overlayDef.OverlayDef(QSize(300, 100)) #Position relative to screen center and apply the style and color od.style = mo.enums.OverlayStyle.SpeechBubble od.attachment = mo.enums.RelTo.Center od.bgColor = QColor(217, 217, 217, 255) #Create this overlay overlay = manager.createOverlay(od) #Assign body text label=overlay.setAsLabel("""<h2>Hello World</h2><p style="color: #3C3C3C; font-size: 16pt; font-weight: normal; font-style: normal; font-family: Artifakt Element">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>""") #Add a word bubble tail overlay.addSpeechBubbleTail(mo.enums.Direction.Top, 0.25) #Display the overlay bubble manager.showAll() |