like this:
nukescripts.registerPanel('com.nukepedia.nuBridge', loadToolBrowserPanel)

then later this:
qwindow = QtGui.QApplication.instance().activeWindow()
widget = qwindow.findChildren(QtGui.QWidget,'com.nukepedia.nuBridge')[0]


On 1/06/17 8:28 AM, Erwan Leroy wrote:
Hi Franck.

I'm trying to achieve this too, however my findChildren() function returns an empty list.
How did you "register" the panel originally?

Cheers
Erwan


On Jan 30, 2017 6:17 PM, "Frank Rueter|OHUfx" <fr...@ohufx.com <mailto:fr...@ohufx.com>> wrote:

    Ah yes, of course, findChildren is much nicer than iterating over
    all of them.
    And using setCurrentWidget is easier than using the index as well.
    I don't seem to need stacked_widget.activateWindow() though.

    Nice one, thanks Matthieu!


    On 31/01/17 1:49 AM, Matthieu Cadet wrote:
    Mmm, this will work better in your case no ?:

    the_widget =
    qwindow.findChildren(QtGui.QWidget,'com.nukepedia.nuBridge')

    stacked_widget =  the_widget.parentWidget()

    stacked_widget.setCurrentWidget(the_widget)

    stacked_widget.activateWindow() # to refresh the UI so current
    tab highlight change


    On Mon, Jan 30, 2017 at 12:08 PM, Matthieu Cadet
    <matthieu.ca...@gmail.com <mailto:matthieu.ca...@gmail.com>> wrote:

        I think you can shorten a bit your code
        to get your main widget:

        from PySide import QtGui

        qwindow = QtGui.qApp.activeWindow()

        
my_widget_found=qwindow.findChildren(MyModule.submodule.TheWidgetClassName)

        # Result: [<MyModule.submodule.TheWidgetClassName object at
        0x5b8cbd8>]

        this was my 2cents of something that will definitely not help
        you to get your Panel as floating panel :P

        sorry

        On Mon, Jan 30, 2017 at 12:28 AM, Frank Rueter|OHUfx
        <fr...@ohufx.com <mailto:fr...@ohufx.com>> wrote:

            Looks like this does the trick, though it seems somewhat
            brute force:

            from PySide import QtGui for widget in
            QtGui.QApplication.allWidgets(): name =
            widget.objectName() if name == 'com.nukepedia.nuBridge':
            stackedWidget = widget.parentWidget()
            stackedWidget.setCurrentIndex(stackedWidget.indexOf(widget))
            break

            I will roll with that for now but if anybody has a more
            elegant solution I'm all ears.

            Cheers, frank
            On 30/01/17 11:09 AM, Frank Rueter|OHUfx wrote:
            Hi all, does anybody know if it's possible to float a
            docked QT panel via python? E.g. the equivalent of
            ctrl+click on the tab? I am just working on the nuBridge
            <https://vimeo.com/channels/nukepedia/165747936> again
            and would like to make it so that the user can call it
            from the help menu as well as create a custom panel as
            part of the workspace. I got all that in place but the
            challenge arises when trying to only use one instance of
            the panel (i.e. singleton). In that case, when the panel
            is already docked somewhere, and the user calls it from
            the help menu, I want the panel to either float, or at
            least come to the foreground (if it's a background tab
            at that point). Any ideas how to do that? I can't find
            native nuke commands for this so will try and dig into
            the QT widgets to see if I can force this behaviour.
            Cheers, frank
-- ohufxLogo 50x50 <http://www.ohufx.com> *vfx compositing
            <http://ohufx.com/compositing.html> | *workflow
            customisation and consulting
            <http://ohufx.com/customising.html>* *

            _______________________________________________
            Nuke-python mailing list
            Nuke-python@support.thefoundry.co.uk
            
<mailto:Nuke-python@support.thefoundry.co.uk>,http://forums.thefoundry.co.uk/
            <http://forums.thefoundry.co.uk/>
            http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
            
<http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python>
            _______________________________________________
            Nuke-python mailing list
            Nuke-python@support.thefoundry.co.uk
            <mailto:Nuke-python@support.thefoundry.co.uk>,
            http://forums.thefoundry.co.uk/
            <http://forums.thefoundry.co.uk/>
            http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
            
<http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python>


-- Matthieu Cadet Compositor Artist & TD,
        nWave Digital matthieu.ca...@gmail.com
        <mailto:matthieu.ca...@gmail.com>

-- Matthieu Cadet Compositor Artist & TD,
    nWave Digital matthieu.ca...@gmail.com
    <mailto:matthieu.ca...@gmail.com>

    _______________________________________________
    Nuke-python mailing list
    Nuke-python@support.thefoundry.co.uk
    <mailto:Nuke-python@support.thefoundry.co.uk>,http://forums.thefoundry.co.uk/ 
<http://forums.thefoundry.co.uk/>
    http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
    <http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python>

    _______________________________________________
    Nuke-python mailing list
    Nuke-python@support.thefoundry.co.uk
    <mailto:Nuke-python@support.thefoundry.co.uk>,
    http://forums.thefoundry.co.uk/ <http://forums.thefoundry.co.uk/>
    http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
    <http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python>




_______________________________________________
Nuke-python mailing list
Nuke-python@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python

_______________________________________________
Nuke-python mailing list
Nuke-python@support.thefoundry.co.uk, http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python

Reply via email to