anyone had any luck trying to create a 2nd monitor mainWindow.ui complete with empty docks, in which you could parent other Maya eidtors, like the Outliner and the graphEditor?
On Fri, Aug 6, 2010 at 10:23 AM, David Moulder <da...@thirstydevil.co.uk> wrote: > Yes totally, > > Just add a signal that calls a method to add a QWidget to a QTabWidget > > How you create the QWidget would be up to you. You could just create a > QWidget class for each tab, or use loadUiType with a factory function. > > Form, Base = uic.loadUiType(uifile) > > <script src="http://pastebin.com/embed_js.php?i=We9uVQWU"></ > script> > > You should see the pastbin file above. > The ui file I can't upload but you should be able to create your main UI > with Designer... > -Dave > > On Fri, Aug 6, 2010 at 8:24 AM, John Creson <johncre...@gmail.com> wrote: >> >> You could also parent it into a layout in a standard maya window, that >> should act in Maya like a std maya window. >> >> On Thu, Aug 5, 2010 at 6:44 PM, David Moulder <da...@thirstydevil.co.uk> >> wrote: >> > Arh, had that a few times in the past. From what I remember it was due >> > to >> > bad inheritance (Try a QDialog). I think I had it when I was using >> > QTabWidget and I hadn't set the allowed area's correctly. >> > >> > -Dave >> > >> > >> > >> > On Thu, Aug 5, 2010 at 10:06 PM, <br...@meljunky.com> wrote: >> >> >> >> Figured out the "_" thing, guess I should grab working code >> >> online. Appears uic.compileUI does use pyuic4 >> >> >> >> No, it doesnt run everytime an instance is made. Well, plan on >> >> making compile Ui files when a py is not found. >> >> >> >> Now, the window (partically displayed) is literaly embeded in the top >> >> left >> >> corner of Maya making it unuseable. >> >> >> >> Thanks, >> >> -brian >> >> >> >> >> >> -------- Original Message -------- >> >> Subject: Re: [Maya-Python] Calling a compiled QT file in Maya >> >> From: David Moulder <da...@thirstydevil.co.uk> >> >> Date: Thu, August 05, 2010 10:55 am >> >> To: python_inside_maya@googlegroups.com >> >> >> >> To parent your window you well need to get the Maya main window and >> >> pass >> >> that in as the parent widget >> >> >> >> > 2011 >> >> >> >> def GetMayaMainWindow(): >> >> ''' >> >> :returns: The QtWidget that pertains to the Maya Main Window >> >> ''' >> >> import maya.OpenMayaUI as mui >> >> import sip >> >> ptr = mui.MQtUtil.mainWindow() >> >> if ptr: >> >> return sip.wrapinstance(long(ptr), QtCore.QObject) >> >> >> >> Then pass the resulting QWidget into your class >> >> >> >> eg >> >> a = Browser(GetMayaMainWindow()) >> >> >> >> I don't know about uic.compileUI as I pre compile all my ui files with >> >> the >> >> pyuic4.exe from the command line. >> >> >> >> Well, not exactly. I wrote a PyQt ui to browser and convert them on >> >> double click using os.system >> >> >> >> cmd = 'pyuic4 %s > %s' % (DesignFile, OutPutFile) >> >> os.system(cmd) >> >> >> >> To be honest, it was on of the 1st things I did so I've never looked at >> >> another way to convert files. Does your method convert each and every >> >> time >> >> you make an instance? >> >> >> >> -Dave >> >> >> >> >> >> On Thu, Aug 5, 2010 at 5:18 PM, <br...@meljunky.com> wrote: >> >>> >> >>> I edited the class below to reference the class for my browser using >> >>> the >> >>> following lines of code to show the window: >> >>> >> >>> a = Browser() >> >>> a.show() >> >>> >> >>> Two things happen.. first the window does not stay "parented" to the >> >>> main >> >>> Maya window and will disappear under Maya. >> >>> >> >>> Second... using the compiled version of calculatorform that comes with >> >>> Qt >> >>> works fine. However, when I used uic.compileUi to complile the >> >>> calculatorform.ui. I get the following error: >> >>> >> >>> # Error: ... global name '_' is not defined # >> >>> >> >>> The compiler added a '_' that doesn't belong. For example: >> >>> >> >>> CalculatorForm.setWindowTitle(_( u"Calculator Form")) >> >>> >> >>> If I removed the '_', it will open. >> >>> >> >>> Also, on a ui that I created I had to comment out the following lines >> >>> because: >> >>> test.setCentralWidget(self.centralwidget) >> >>> test.setMenuBar(self.menubar) >> >>> test.setStatusBar(self.statusbar) >> >>> >> >>> They cause a Attribute Error such as: >> >>> # Error: AttributeError ... 'Browser' object has no attribute >> >>> 'setCentralWidget' # >> >>> >> >>> Is there a way to get a compiled version of a Ui to open without >> >>> having >> >>> to edit the file? >> >>> >> >>> Thanks, >> >>> -brian >> >>> >> >>> >> >>> -------- Original Message -------- >> >>> Subject: Re: [Maya-Python] Calling a compiled QT file in Maya >> >>> From: David Moulder <da...@thirstydevil.co.uk> >> >>> Date: Thu, August 05, 2010 8:09 am >> >>> To: python_inside_maya@googlegroups.com >> >>> >> >>> I use multiple inheritance... >> >>> >> >>> import ui_Browser >> >>> class Browser(QtGui.QWidget, ui_Browser.Ui_Form): >> >>> def __init__(self, parent=None): >> >>> super(Browser, self).__init__(parent) >> >>> self.setupUi(self) >> >>> self.setObjectName('Browser') >> >>> self.setAttribute(QtCore.Qt.WA_DeleteOnClose) >> >>> >> >>> -Dave >> >>> >> >>> On Thu, Aug 5, 2010 at 2:39 PM, meljunky <br...@meljunky.com> wrote: >> >>>> >> >>>> Trying to get QT Ui file to work in Maya I could use the loadUI >> >>>> command for example: >> >>>> >> >>>> import maya.cmds as cmds >> >>>> dialog = >> >>>> cmds.loadUI(f=r'C:/Python26/Lib/site-packages/PyQt4/examples/ >> >>>> designer/calculatorform/calculatorform.ui') >> >>>> cmds.showWindow(dialog) >> >>>> >> >>>> Don't expect the calculator to actually work but the UI opens in >> >>>> Maya. >> >>>> But, I want to be able to edit UI elements so I used uic.compileUi to >> >>>> convert the file into a Python file in hopes to make method calls to >> >>>> add and remove UI elements while the window is open. >> >>>> >> >>>> The first four lines are: >> >>>> from PyQt4 import QtCore, QtGui >> >>>> >> >>>> class Ui_CalculatorForm(object): >> >>>> def setupUi(self, CalculatorForm): >> >>>> ... >> >>>> >> >>>> At this point I don't know how to call the Ui_CalculatorForm class >> >>>> method setupUi since it needs a different class called >> >>>> CalculatorForm. >> >>>> >> >>>> Thanks in advance. >> >>>> >> >>>> -- >> >>>> http://groups.google.com/group/python_inside_maya >> >>> >> >>> >> >>> >> >>> -- >> >>> David Moulder >> >>> http://www.google.com/profiles/squish3d >> >>> -- >> >>> http://groups.google.com/group/python_inside_maya >> >>> >> >>> -- >> >>> http://groups.google.com/group/python_inside_maya >> >> >> >> >> >> -- >> >> David Moulder >> >> http://www.google.com/profiles/squish3d >> >> -- >> >> http://groups.google.com/group/python_inside_maya >> >> >> >> -- >> >> http://groups.google.com/group/python_inside_maya >> > >> > >> > -- >> > David Moulder >> > http://www.google.com/profiles/squish3d >> > >> > -- >> > http://groups.google.com/group/python_inside_maya >> >> -- >> http://groups.google.com/group/python_inside_maya > > > > -- > David Moulder > http://www.google.com/profiles/squish3d > > -- > http://groups.google.com/group/python_inside_maya -- http://groups.google.com/group/python_inside_maya