From frank at ohufx.com Wed May 2 08:32:15 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Wed, 2 May 2018 18:32:15 +1200 Subject: [PySide] manually closing editor on custom delegate Message-ID: Hi all, I think I need some MVC help once again: I am using a custom item delegate that uses the bottom 20 pixels of a cell in a table view for a QComboBox (the rest will be static content). I can create the editor in the right spot etc, but I can't figure out how to close it again when the user clicks into the upper part of the cell. I tried all sorts of events and signals in the view, the delegate and the editor itself but to no avail. This is the state of things: The initial table: The table with the open editor after clicking into the bottom 20 pixels of a cell: The table after I click away from the editor but into the same cell, in which case I'd like to close it and show the initial state as seen above, but I just can't figure out how to. Attached is the working code to produce the above images. Any help would be greatly appreciated! Cheers, frank -- ohufxLogo 50x50 *vfx compositing | *workflow customisation and consulting * * ** Your gateway to over 1,000 free tools... right inside of Nuke -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.47 PM.png Type: image/png Size: 20665 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.52 PM.png Type: image/png Size: 28188 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.57 PM.png Type: image/png Size: 22408 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: delegate_test.py Type: text/x-python-script Size: 5730 bytes Desc: not available URL: From Cristian.Maureira-Fredes at qt.io Wed May 2 09:12:27 2018 From: Cristian.Maureira-Fredes at qt.io (=?iso-8859-1?Q?Cristi=E1n_Maureira-Fredes?=) Date: Wed, 2 May 2018 07:12:27 +0000 Subject: [PySide] Weekly update 26.04.2018 Message-ID: Hello all, here is the update from last week's meeting: A few issues with the CI are still blocking the integration in a couple of branches. Particularly, there were some issues with 5.11 and 5.6. But 5.9 is working, which is the most active branch at the moment. The snapshot tool for Windows is not working, but the change is awaiting to be merge once the CI is fully operational. Only Linux and macOS snapshots are being generated at the moment. We have not started to generate wheels for Windows 32bits but it's in our planning. We encourage the community to participate in expanding the wiki pages, adding tutorials, examples, translating, etc. Feedback is also welcome. A set of bugs and changes were merged on 5.9 including a refactor of the setup.py that will help us to better maintain the code and also improves the readability, adding missing classes, flags, fixing methods, addressing WebEngine issues, etc. We are trying to integrate the Shiboken's and ApiExtractor's documentation into the official PySide2 API docs. The heap types changes are almost ready, and we expect to merge the set of patches soon. Designers are already working on a Qt for Python image, so we can have a proper logo and icon. Cheers ----- Cristián Maureira-Fredes Software Engineer The Qt Company GmbH Rudower Chaussee 13 D-12489 Berlin Geschäftsführer: Mika Pälsi, Juha Varelius, Mika Harjuaho Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B From frank at ohufx.com Wed May 2 23:34:49 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Thu, 3 May 2018 09:34:49 +1200 Subject: [PySide] manually closing editor on custom delegate In-Reply-To: References: Message-ID: anyone? On 2/05/18 6:32 PM, Frank Rueter | OHUfx wrote: > Hi all, > > I think I need some MVC help once again: > > I am using a custom item delegate that uses the bottom 20 pixels of a > cell in a table view for a QComboBox (the rest will be static content). > I can create the editor in the right spot etc, but I can't figure out > how to close it again when the user clicks into the upper part of the > cell. > I tried all sorts of events and signals in the view, the delegate and > the editor itself but to no avail. > This is the state of things: > > The initial table: > > > The table with the open editor after clicking into the bottom 20 > pixels of a cell: > > > The table after I click away from the editor but into the same cell, > in which case I'd like to close it and show the initial state as seen > above, but I just can't figure out how to. > > > Attached is the working code to produce the above images. > > Any help would be greatly appreciated! > > Cheers, > frank > > > -- > > ohufxLogo 50x50 > *vfx compositing | *workflow > customisation and consulting * * > ** > > > > Your gateway to over 1,000 free tools... right inside of Nuke > > > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.47 PM.png Type: image/png Size: 20665 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.52 PM.png Type: image/png Size: 28188 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.57 PM.png Type: image/png Size: 22408 bytes Desc: not available URL: From Cristian.Maureira-Fredes at qt.io Thu May 3 14:43:36 2018 From: Cristian.Maureira-Fredes at qt.io (=?iso-8859-1?Q?Cristi=E1n_Maureira-Fredes?=) Date: Thu, 3 May 2018 12:43:36 +0000 Subject: [PySide] manually closing editor on custom delegate In-Reply-To: References: Message-ID: Hello Frank, I'm a little bit confused, is the attached GIF the expected behavior? of you would like to display the selected number inside the green area where the QComboBox is located? Cheers ________________________________________ From: PySide on behalf of Frank Rueter | OHUfx Sent: 02 May 2018 08:32:15 To: pyside at qt-project.org Subject: [PySide] manually closing editor on custom delegate Hi all, I think I need some MVC help once again: I am using a custom item delegate that uses the bottom 20 pixels of a cell in a table view for a QComboBox (the rest will be static content). I can create the editor in the right spot etc, but I can't figure out how to close it again when the user clicks into the upper part of the cell. I tried all sorts of events and signals in the view, the delegate and the editor itself but to no avail. This is the state of things: The initial table: [cid:part1.536450FE.04B9AE79 at ohufx.com] The table with the open editor after clicking into the bottom 20 pixels of a cell: [cid:part2.BA3B0C5A.24875983 at ohufx.com] The table after I click away from the editor but into the same cell, in which case I'd like to close it and show the initial state as seen above, but I just can't figure out how to. [cid:part3.BD4E6D0F.FB85F365 at ohufx.com] Attached is the working code to produce the above images. Any help would be greatly appreciated! Cheers, frank -- [ohufxLogo 50x50] vfx compositing | workflow customisation and consulting [http://nukepedia.com/images/nuBridge/logo/nuBridge_logo.png] Your gateway to over 1,000 free tools... right inside of Nuke -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.47 PM.png Type: image/png Size: 20665 bytes Desc: Screen Shot 2018-05-02 at 6.27.47 PM.png URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.52 PM.png Type: image/png Size: 28188 bytes Desc: Screen Shot 2018-05-02 at 6.27.52 PM.png URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.57 PM.png Type: image/png Size: 22408 bytes Desc: Screen Shot 2018-05-02 at 6.27.57 PM.png URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: delegate_test.gif Type: image/gif Size: 62577 bytes Desc: delegate_test.gif URL: From frank at ohufx.com Thu May 3 23:09:18 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Fri, 4 May 2018 09:09:18 +1200 Subject: [PySide] manually closing editor on custom delegate In-Reply-To: References: Message-ID: Thanks Matthieu, much appreciated! That seems so obvious now that I see it :-D I have to admit that I am now considering using the context menu and customising that, since it already displays the behaviour I am after (single click to open and close when you click off). Good to have both options though, so thanks again! Cheers, frank On 3/05/18 8:09 PM, Matthieu Cadet wrote: > > Oups forgot the markdown highlight :P > > Don’t know if it’s the right way but I got it work using this: > > |else: # Can't get this to work. I want to close the editor here > (without committing any data). print "\tclicked off - I want to close > teh editor now if it's open" > self.closeEditor(self.itemDelegate().current_editor, > QtWidgets.QAbstractItemDelegate.NoHint) | > |def createEditor(self, parent, option, index): '''Creates a combo box > to chose the version to sync in case tehre are mote than one used in a > sequence. Only show the editor if the mouse click ocurrs in the area > where the editor lives. ''' self.current_editor = > QtWidgets.QComboBox(parent) > self.current_editor.setMaximumHeight(self.editorHeight) return > self.current_editor | > ​ > > On Thu, May 3, 2018 at 10:09 AM, Matthieu Cadet > > wrote: > > Don't know if it's the right way but I got it work using this: > > ```python >         else: >             # Can't get this to work. I want to close the editor > here (without committing any data). >             print "\tclicked off - I want to close teh editor now > if it's open" >             self.closeEditor(self.itemDelegate().current_editor, >                              QtWidgets.QAbstractItemDelegate.NoHint) > ``` > > ```python >     def createEditor(self, parent, option, index): >         '''Creates a combo box to chose the version to sync in > case tehre are mote than one used in a sequence. >         Only show the editor if the mouse click ocurrs in the area > where the editor lives. >         ''' >         self.current_editor = QtWidgets.QComboBox(parent) >         self.current_editor.setMaximumHeight(self.editorHeight) >         return self.current_editor > ``` > > On Thu, May 3, 2018 at 10:06 AM, Matthieu Cadet > > wrote: > > Ah ok I miss read your problem... I got the same behaviour if > I click the Edit zone and then click again the edit zone on > the same Cell, > clicking outside of the edited cell close the Editor. > > On Thu, May 3, 2018 at 9:59 AM, Matthieu Cadet > > > wrote: > > Hi Frank! > > I've tried your sample code and I don't see this behaviour > on Linux Centos, I can click to open the editor, choose an > item inside > then when I click outside of it, it close normally. > > Maybe try to remove the line `editor.showPopup()` in the > `def setEditorData(self, editor, index):` > as you call > ``` >         if editorArea.contains(cursorPos): >             # Click was inside of editor area so open it > for the index > self.setCurrentIndex(index) >             self.edit(index) > ``` > > you don't have to .showPopup() normally... or maybe it is > macos bug :P > > On Wed, May 2, 2018 at 11:34 PM, Frank Rueter | OHUfx > > wrote: > > anyone? > > > On 2/05/18 6:32 PM, Frank Rueter | OHUfx wrote: >> Hi all, >> >> I think I need some MVC help once again: >> >> I am using a custom item delegate that uses the >> bottom 20 pixels of a cell in a table view for a >> QComboBox (the rest will be static content). >> I can create the editor in the right spot etc, but I >> can't figure out how to close it again when the user >> clicks into the upper part of the cell. >> I tried all sorts of events and signals in the view, >> the delegate and the editor itself but to no avail. >> This is the state of things: >> >> The initial table: >> >> >> The table with the open editor after clicking into >> the bottom 20 pixels of a cell: >> >> >> The table after I click away from the editor but into >> the same cell, in which case I'd like to close it and >> show the initial state as seen above, but I just >> can't figure out how to. >> >> >> Attached is the working code to produce the above images. >> >> Any help would be greatly appreciated! >> >> Cheers, >> frank >> >> >> -- >> >> ohufxLogo 50x50 >> *vfx compositing >> | *workflow customisation and consulting >> * * >> ** >> >> >> >> Your gateway to over 1,000 free tools... right inside >> of Nuke >> >> >> >> _______________________________________________ >> PySide mailing list >> PySide at qt-project.org >> http://lists.qt-project.org/mailman/listinfo/pyside >> > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > > > > > > -- > Matthieu Cadet > Compositor Artist & TD, > nWave Digital > matthieu.cadet at gmail.com > > > > > -- > Matthieu Cadet > Compositor Artist & TD, > nWave Digital > matthieu.cadet at gmail.com > > > > > -- > Matthieu Cadet > Compositor Artist & TD, > nWave Digital > matthieu.cadet at gmail.com > > > > > -- > Matthieu Cadet > Compositor Artist & TD, > nWave Digital > matthieu.cadet at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.47 PM.png Type: image/png Size: 20665 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.52 PM.png Type: image/png Size: 28188 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screen Shot 2018-05-02 at 6.27.57 PM.png Type: image/png Size: 22408 bytes Desc: not available URL: From frank at ohufx.com Thu May 3 23:11:31 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Fri, 4 May 2018 09:11:31 +1200 Subject: [PySide] manually closing editor on custom delegate In-Reply-To: References: Message-ID: <127dc03a-8218-2a1c-4b69-3c3303a47f3b@ohufx.com> Hi Christian, thanks for taking a look. The behaviour in the gif is the expected one, but it won't happen if you click in the white are of the same cell. The context menu actually behaves exactly like I want, so I am looking into customising that which should simplify the code as well. Cheers, frank On 4/05/18 12:43 AM, Cristián Maureira-Fredes wrote: > Hello Frank, > > I'm a little bit confused, > is the attached GIF the expected behavior? > of you would like to display the selected number inside the green area > where the QComboBox is located? > > Cheers > > ________________________________________ > From: PySide on behalf of Frank Rueter | OHUfx > Sent: 02 May 2018 08:32:15 > To: pyside at qt-project.org > Subject: [PySide] manually closing editor on custom delegate > > Hi all, > > I think I need some MVC help once again: > > I am using a custom item delegate that uses the bottom 20 pixels of a cell in a table view for a QComboBox (the rest will be static content). > I can create the editor in the right spot etc, but I can't figure out how to close it again when the user clicks into the upper part of the cell. > I tried all sorts of events and signals in the view, the delegate and the editor itself but to no avail. > This is the state of things: > > The initial table: > [cid:part1.536450FE.04B9AE79 at ohufx.com] > > The table with the open editor after clicking into the bottom 20 pixels of a cell: > [cid:part2.BA3B0C5A.24875983 at ohufx.com] > > The table after I click away from the editor but into the same cell, in which case I'd like to close it and show the initial state as seen above, but I just can't figure out how to. > [cid:part3.BD4E6D0F.FB85F365 at ohufx.com] > > Attached is the working code to produce the above images. > > Any help would be greatly appreciated! > > Cheers, > frank > > > -- > > [ohufxLogo 50x50] > vfx compositing | workflow customisation and consulting > > > [http://nukepedia.com/images/nuBridge/logo/nuBridge_logo.png] > > > Your gateway to over 1,000 free tools... right inside of Nuke > > From frank at ohufx.com Sat May 5 05:27:51 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Sat, 5 May 2018 15:27:51 +1200 Subject: [PySide] custom painted content in delegate disappears when cell is selected Message-ID: <4993213b-3b18-eac6-7e4e-5504640c99e5@ohufx.com> Hi all, I am drawing some rectangles into my cell via a delegate's paint event like so: When I click one in the cells, the rectangles disappear, sometimes with a lag. Sometimes they reappear when I click another cell. The text drawn by the default paint event behaves fine, so I am clearly missing something (probably obvious). Below is my test code. Any ideas? I'm sure I have a slap-on-the-forehead moment coming up... Cheers, frank from PySide2 import QtWidgets from PySide2 import QtCore class VersionTableModel(QtCore.QAbstractTableModel):     def __init__(self, parent=None):         super(VersionTableModel, self).__init__(parent)         self.customData = [range(6)] * 4     def rowCount(self, index=None):         return 4     def columnCount(self, index=None):         return 6     def data(self, index, role):         if role == QtCore.Qt.DisplayRole:             try:                 return "{}".format(self.customData[index.row()][index.column()] )             except TypeError:                 return None class VersionItemDelegate(QtWidgets.QStyledItemDelegate):     def paint(self, painter, option, index):         super(self.__class__, self).paint(painter, option, index)         # paint custom icon         mv_rect1 = QtCore.QRect(0,0,18,10)         mv_rect1.moveTopRight(option.rect.bottomLeft() + QtCore.QPoint(-18, -22))         mv_rect2 = mv_rect1.translated(3, 3)         mv_rect3 = mv_rect2.translated(3, 3)         painter.setPen(QtCore.Qt.white)         painter.setBrush(QtCore.Qt.red)         for r in (mv_rect1, mv_rect2, mv_rect3):             painter.drawRect(r) if __name__ == '__main__':     import sys     app = QtWidgets.QApplication([])     tableView = QtWidgets.QTableView()     tableView.setModel(VersionTableModel())     tableView.setItemDelegate(VersionItemDelegate())     tableView.show()     sys.exit(app.exec_()) -- ohufxLogo 50x50 *vfx compositing | *workflow customisation and consulting * * ** Your gateway to over 1,000 free tools... right inside of Nuke -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: idbogdmibdhpjiel.png Type: image/png Size: 21472 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: mihocedglmdjhbmg.png Type: image/png Size: 21255 bytes Desc: not available URL: From frank at ohufx.com Sat May 5 06:04:58 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Sat, 5 May 2018 16:04:58 +1200 Subject: [PySide] custom painted content in delegate disappears when cell is selected In-Reply-To: <4993213b-3b18-eac6-7e4e-5504640c99e5@ohufx.com> References: <4993213b-3b18-eac6-7e4e-5504640c99e5@ohufx.com> Message-ID: Interestingly this does not happen when drawing a pixmap. On 5/05/18 3:27 PM, Frank Rueter | OHUfx wrote: > Hi all, > > I am drawing some rectangles into my cell via a delegate's paint event > like so: > > > When I click one in the cells, the rectangles disappear, sometimes > with a lag. Sometimes they reappear when I click another cell. > > > The text drawn by the default paint event behaves fine, so I am > clearly missing something (probably obvious). > Below is my test code. > Any ideas? I'm sure I have a slap-on-the-forehead moment coming up... > > Cheers, > frank > > from PySide2 import QtWidgets > from PySide2 import QtCore > > > class VersionTableModel(QtCore.QAbstractTableModel): >     def __init__(self, parent=None): >         super(VersionTableModel, self).__init__(parent) >         self.customData = [range(6)] * 4 > >     def rowCount(self, index=None): >         return 4 > >     def columnCount(self, index=None): >         return 6 > >     def data(self, index, role): >         if role == QtCore.Qt.DisplayRole: >             try: >                 return > "{}".format(self.customData[index.row()][index.column()] ) >             except TypeError: >                 return None > > > class VersionItemDelegate(QtWidgets.QStyledItemDelegate): > >     def paint(self, painter, option, index): >         super(self.__class__, self).paint(painter, option, index) >         # paint custom icon >         mv_rect1 = QtCore.QRect(0,0,18,10) >         mv_rect1.moveTopRight(option.rect.bottomLeft() + > QtCore.QPoint(-18, -22)) >         mv_rect2 = mv_rect1.translated(3, 3) >         mv_rect3 = mv_rect2.translated(3, 3) >         painter.setPen(QtCore.Qt.white) >         painter.setBrush(QtCore.Qt.red) >         for r in (mv_rect1, mv_rect2, mv_rect3): >             painter.drawRect(r) > > > if __name__ == '__main__': >     import sys >     app = QtWidgets.QApplication([]) >     tableView = QtWidgets.QTableView() >     tableView.setModel(VersionTableModel()) >     tableView.setItemDelegate(VersionItemDelegate()) >     tableView.show() >     sys.exit(app.exec_()) > > -- > > ohufxLogo 50x50 > *vfx compositing | *workflow > customisation and consulting * * > ** > > > > Your gateway to over 1,000 free tools... right inside of Nuke > > > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: idbogdmibdhpjiel.png Type: image/png Size: 21472 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: mihocedglmdjhbmg.png Type: image/png Size: 21255 bytes Desc: not available URL: From frank at ohufx.com Sat May 5 06:53:00 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Sat, 5 May 2018 16:53:00 +1200 Subject: [PySide] custom painted content in delegate disappears when cell is selected In-Reply-To: References: <4993213b-3b18-eac6-7e4e-5504640c99e5@ohufx.com> Message-ID: And one more finding: If I re-implement the view's mousePressEvent() the problem also doesn't arise. Hmm, I'm intrigued... On 5/05/18 4:04 PM, Frank Rueter | OHUfx wrote: > Interestingly this does not happen when drawing a pixmap. > > On 5/05/18 3:27 PM, Frank Rueter | OHUfx wrote: >> Hi all, >> >> I am drawing some rectangles into my cell via a delegate's paint >> event like so: >> >> >> When I click one in the cells, the rectangles disappear, sometimes >> with a lag. Sometimes they reappear when I click another cell. >> >> >> The text drawn by the default paint event behaves fine, so I am >> clearly missing something (probably obvious). >> Below is my test code. >> Any ideas? I'm sure I have a slap-on-the-forehead moment coming up... >> >> Cheers, >> frank >> >> from PySide2 import QtWidgets >> from PySide2 import QtCore >> >> >> class VersionTableModel(QtCore.QAbstractTableModel): >>     def __init__(self, parent=None): >>         super(VersionTableModel, self).__init__(parent) >>         self.customData = [range(6)] * 4 >> >>     def rowCount(self, index=None): >>         return 4 >> >>     def columnCount(self, index=None): >>         return 6 >> >>     def data(self, index, role): >>         if role == QtCore.Qt.DisplayRole: >>             try: >>                 return >> "{}".format(self.customData[index.row()][index.column()] ) >>             except TypeError: >>                 return None >> >> >> class VersionItemDelegate(QtWidgets.QStyledItemDelegate): >> >>     def paint(self, painter, option, index): >>         super(self.__class__, self).paint(painter, option, index) >>         # paint custom icon >>         mv_rect1 = QtCore.QRect(0,0,18,10) >>         mv_rect1.moveTopRight(option.rect.bottomLeft() + >> QtCore.QPoint(-18, -22)) >>         mv_rect2 = mv_rect1.translated(3, 3) >>         mv_rect3 = mv_rect2.translated(3, 3) >>         painter.setPen(QtCore.Qt.white) >>         painter.setBrush(QtCore.Qt.red) >>         for r in (mv_rect1, mv_rect2, mv_rect3): >>             painter.drawRect(r) >> >> >> if __name__ == '__main__': >>     import sys >>     app = QtWidgets.QApplication([]) >>     tableView = QtWidgets.QTableView() >>     tableView.setModel(VersionTableModel()) >>     tableView.setItemDelegate(VersionItemDelegate()) >>     tableView.show() >>     sys.exit(app.exec_()) >> >> -- >> >> ohufxLogo 50x50 >> *vfx compositing | *workflow >> customisation and consulting * * >> ** >> >> >> >> Your gateway to over 1,000 free tools... right inside of Nuke >> >> >> >> >> _______________________________________________ >> PySide mailing list >> PySide at qt-project.org >> http://lists.qt-project.org/mailman/listinfo/pyside > > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: idbogdmibdhpjiel.png Type: image/png Size: 21472 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: mihocedglmdjhbmg.png Type: image/png Size: 21255 bytes Desc: not available URL: From frank at ohufx.com Sun May 13 07:53:47 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Sun, 13 May 2018 17:53:47 +1200 Subject: [PySide] how to drawing pixmap into header view Message-ID: <28e6bf86-ea43-efc3-68d8-b97fbf4c981c@ohufx.com> Hi all, I am trying to paint a simple icon into a header view without losing it’s default look. I thought this would do it: |class SequenceHeaderView(QtWidgets.QHeaderView): def paintSection(self, painter, rect, logicalIndex): super(SequenceHeaderView, self).paintSection(painter, rect, logicalIndex) painter.drawPixmap(rect.topLeft(), QtGui.QPixmap(pixmap_path) | However, this will not draw the pixmap. If I do NOT call super(...).paintSection(...) it will draw the icon but obviously lose all it’s default look. What am I missing? Cheers, frank ​ -- ohufxLogo 50x50 *vfx compositing | *workflow customisation and consulting * * ** Your gateway to over 1,000 free tools... right inside of Nuke -------------- next part -------------- An HTML attachment was scrubbed... URL: From chgans at gmail.com Sun May 13 10:43:15 2018 From: chgans at gmail.com (Christian Gagneraud) Date: Sun, 13 May 2018 20:43:15 +1200 Subject: [PySide] how to drawing pixmap into header view In-Reply-To: <28e6bf86-ea43-efc3-68d8-b97fbf4c981c@ohufx.com> References: <28e6bf86-ea43-efc3-68d8-b97fbf4c981c@ohufx.com> Message-ID: On 13 May 2018 at 17:53, Frank Rueter | OHUfx wrote: > > Hi all, > > I am trying to paint a simple icon into a header view without losing it’s default look. > > I thought this would do it: > > class SequenceHeaderView(QtWidgets.QHeaderView): > def paintSection(self, painter, rect, logicalIndex): > super(SequenceHeaderView, self).paintSection(painter, rect, logicalIndex) > painter.drawPixmap(rect.topLeft(), QtGui.QPixmap(pixmap_path) I'm no expert, but maybe it has to do with the painter state, or something along these lines. Maybe you need to call saveState/restoreState? My 2 cents. Chris > > However, this will not draw the pixmap. > > If I do NOT call super(...).paintSection(...) it will draw the icon but obviously lose all it’s default look. > What am I missing? > > Cheers, > frank > > -- > > > vfx compositing | workflow customisation and consulting > > > Your gateway to over 1,000 free tools... right inside of Nuke > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > From sschoellhammer.lists at gmail.com Sun May 13 10:50:36 2018 From: sschoellhammer.lists at gmail.com (Sebastian Schoellhammer) Date: Sun, 13 May 2018 10:50:36 +0200 Subject: [PySide] Can't import QtCore etc. on windows 10 / python 3.6 64 bit Message-ID: Hello there, I'm trying to get Pyside2 working on windows without much luck. Below is what I'm doing: pip install --index-url= http://download.qt.io/snapshots/ci/pyside/5.9/latest/ pyside2 --trusted-host download.qt.io Collecting pyside2 Downloading http://download.qt.io/snapshots/ci/pyside/5.9/latest/pyside2/PySide2-5.9.0a1.dev1525348439-5.9.6-cp36-cp36m-win_amd64.whl (181.0MB) 100% |████████████████████████████████| 181.0MB 12.8MB/s Installing collected packages: pyside2 Successfully installed pyside2-5.9.0a1.dev1525348439 You are using pip version 9.0.1, however version 10.0.1 is available. You should consider upgrading via the 'python -m pip install --upgrade pip' command. > python Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import PySide2.QtCore Traceback (most recent call last): File "", line 1, in ImportError: DLL load failed: The specified procedure could not be found. >>> Pyside installs just fine but when I import I have some dll (mismatch?) problem. I tried this within an isolated env as well as with the latest version of pip. The same worked just fine on macos. I'm at a loss what I'm doing wrong. If you have any pointers please do let me know! Thanks in advance, seb -- Sebastian Schoellhammer w ww.mokumedia.de -------------- next part -------------- An HTML attachment was scrubbed... URL: From frank at ohufx.com Sun May 13 10:58:04 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Sun, 13 May 2018 20:58:04 +1200 Subject: [PySide] how to drawing pixmap into header view In-Reply-To: References: <28e6bf86-ea43-efc3-68d8-b97fbf4c981c@ohufx.com> Message-ID: <86b15a09-f581-9866-d1b2-9a084491fb6d@ohufx.com> Thanks Chris, tried painter.save() and painter.restore() before and after my painting the pixmap but to no avail. frank On 13/05/18 8:43 PM, Christian Gagneraud wrote: > On 13 May 2018 at 17:53, Frank Rueter | OHUfx wrote: >> Hi all, >> >> I am trying to paint a simple icon into a header view without losing it’s default look. >> >> I thought this would do it: >> >> class SequenceHeaderView(QtWidgets.QHeaderView): >> def paintSection(self, painter, rect, logicalIndex): >> super(SequenceHeaderView, self).paintSection(painter, rect, logicalIndex) >> painter.drawPixmap(rect.topLeft(), QtGui.QPixmap(pixmap_path) > I'm no expert, but maybe it has to do with the painter state, or > something along these lines. > Maybe you need to call saveState/restoreState? > > My 2 cents. > > Chris > > >> However, this will not draw the pixmap. >> >> If I do NOT call super(...).paintSection(...) it will draw the icon but obviously lose all it’s default look. >> What am I missing? >> >> Cheers, >> frank >> >> -- >> >> >> vfx compositing | workflow customisation and consulting >> >> >> Your gateway to over 1,000 free tools... right inside of Nuke >> >> >> _______________________________________________ >> PySide mailing list >> PySide at qt-project.org >> http://lists.qt-project.org/mailman/listinfo/pyside >> From frank at ohufx.com Sun May 13 11:00:40 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Sun, 13 May 2018 21:00:40 +1200 Subject: [PySide] how to drawing pixmap into header view In-Reply-To: <86b15a09-f581-9866-d1b2-9a084491fb6d@ohufx.com> References: <28e6bf86-ea43-efc3-68d8-b97fbf4c981c@ohufx.com> <86b15a09-f581-9866-d1b2-9a084491fb6d@ohufx.com> Message-ID: hold the line... you were right! The base call to painter kills the state of the painter, so I needed to save the painter before the base call, then restore it afterwards, then draw my pixmap. I did in the wrong order before. Thanks! frank On 13/05/18 8:58 PM, Frank Rueter | OHUfx wrote: > Thanks Chris, > > tried painter.save() and painter.restore() before and after my > painting the pixmap but to no avail. > > frank > > On 13/05/18 8:43 PM, Christian Gagneraud wrote: >> On 13 May 2018 at 17:53, Frank Rueter | OHUfx wrote: >>> Hi all, >>> >>> I am trying to paint a simple icon into a header view without losing >>> it’s default look. >>> >>> I thought this would do it: >>> >>> class SequenceHeaderView(QtWidgets.QHeaderView): >>>      def paintSection(self, painter, rect, logicalIndex): >>>          super(SequenceHeaderView, self).paintSection(painter, rect, >>> logicalIndex) >>>          painter.drawPixmap(rect.topLeft(), QtGui.QPixmap(pixmap_path) >> I'm no expert, but maybe it has to do with the painter state, or >> something along these lines. >> Maybe you need to call saveState/restoreState? >> >> My 2 cents. >> >> Chris >> >> >>> However, this will not draw the pixmap. >>> >>> If I do NOT call super(...).paintSection(...) it will draw the icon >>> but obviously lose all it’s default look. >>> What am I missing? >>> >>> Cheers, >>> frank >>> >>> -- >>> >>> >>> vfx compositing | workflow customisation and consulting >>> >>> >>> Your gateway to over 1,000 free tools... right inside of Nuke >>> >>> >>> _______________________________________________ >>> PySide mailing list >>> PySide at qt-project.org >>> http://lists.qt-project.org/mailman/listinfo/pyside >>> > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside From sschoellhammer.lists at gmail.com Mon May 14 10:49:31 2018 From: sschoellhammer.lists at gmail.com (Sebastian Schoellhammer) Date: Mon, 14 May 2018 10:49:31 +0200 Subject: [PySide] Can't import QtCore etc. on windows 10 / python 3.6 64 bit In-Reply-To: References: Message-ID: Just wanted to say it's working fine with 3.6.5 so all is good :) On Sun, May 13, 2018 at 10:50 AM, Sebastian Schoellhammer < sschoellhammer.lists at gmail.com> wrote: > Hello there, > > I'm trying to get Pyside2 working on windows without much luck. > > Below is what I'm doing: > > pip install --index-url=http://download.qt.io/snapshots/ci/pyside/5.9/ > latest/ pyside2 --trusted-host download.qt.io > Collecting pyside2 > Downloading http://download.qt.io/snapshots/ci/pyside/5.9/ > latest/pyside2/PySide2-5.9.0a1.dev1525348439-5.9.6-cp36- > cp36m-win_amd64.whl (181.0MB) > 100% |████████████████████████████████| 181.0MB 12.8MB/s > Installing collected packages: pyside2 > Successfully installed pyside2-5.9.0a1.dev1525348439 > You are using pip version 9.0.1, however version 10.0.1 is available. > You should consider upgrading via the 'python -m pip install --upgrade > pip' command. > > > python > Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 > bit (AMD64)] on win32 > Type "help", "copyright", "credits" or "license" for more information. > >>> import PySide2.QtCore > Traceback (most recent call last): > File "", line 1, in > ImportError: DLL load failed: The specified procedure could not be found. > >>> > > > Pyside installs just fine but when I import I have some dll (mismatch?) > problem. > > I tried this within an isolated env as well as with the latest version of > pip. > The same worked just fine on macos. I'm at a loss what I'm doing wrong. > > If you have any pointers please do let me know! > > Thanks in advance, > seb > > > -- > Sebastian Schoellhammer > > w ww.mokumedia.de > -- Sebastian Schoellhammer w ww.mokumedia.de -------------- next part -------------- An HTML attachment was scrubbed... URL: From alexandru.croitor at qt.io Mon May 14 10:51:11 2018 From: alexandru.croitor at qt.io (Alexandru Croitor) Date: Mon, 14 May 2018 08:51:11 +0000 Subject: [PySide] Can't import QtCore etc. on windows 10 / python 3.6 64 bit In-Reply-To: References: Message-ID: <1D26409B-8FC1-40AF-8E26-4395E4B9B596@qt.io> Hi, I was just writing a reply. I tried your command on my Windows machine, and it worked for Python 3.6.1 inside a virtualenv. Glad it worked for you in the end. On 14. May 2018, at 10:49, Sebastian Schoellhammer > wrote: Just wanted to say it's working fine with 3.6.5 so all is good :) On Sun, May 13, 2018 at 10:50 AM, Sebastian Schoellhammer > wrote: Hello there, I'm trying to get Pyside2 working on windows without much luck. Below is what I'm doing: pip install --index-url=http://download.qt.io/snapshots/ci/pyside/5.9/latest/ pyside2 --trusted-host download.qt.io Collecting pyside2 Downloading http://download.qt.io/snapshots/ci/pyside/5.9/latest/pyside2/PySide2-5.9.0a1.dev1525348439-5.9.6-cp36-cp36m-win_amd64.whl (181.0MB) 100% |████████████████████████████████| 181.0MB 12.8MB/s Installing collected packages: pyside2 Successfully installed pyside2-5.9.0a1.dev1525348439 You are using pip version 9.0.1, however version 10.0.1 is available. You should consider upgrading via the 'python -m pip install --upgrade pip' command. > python Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import PySide2.QtCore Traceback (most recent call last): File "", line 1, in ImportError: DLL load failed: The specified procedure could not be found. >>> Pyside installs just fine but when I import I have some dll (mismatch?) problem. I tried this within an isolated env as well as with the latest version of pip. The same worked just fine on macos. I'm at a loss what I'm doing wrong. If you have any pointers please do let me know! Thanks in advance, seb -- Sebastian Schoellhammer www.mokumedia.de -- Sebastian Schoellhammer www.mokumedia.de _______________________________________________ PySide mailing list PySide at qt-project.org http://lists.qt-project.org/mailman/listinfo/pyside -------------- next part -------------- An HTML attachment was scrubbed... URL: From frank at ohufx.com Sun May 20 08:33:08 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Sun, 20 May 2018 18:33:08 +1200 Subject: [PySide] changing line thickness for QtCore.Qt.BDiagPattern etc Message-ID: Hi, is there a way to change the line thickness of Qt’s default patterns, such as QtCore.Qt.BDiagPattern? I’m doing this to control the spacing of the lines, but can’t figure out how to control their thickness. |brush.setStyle(QtCore.Qt.BDiagPattern) brush.setTransform(brush.transform() * 1.5) | ​ Cheers, frank -- ohufxLogo 50x50 *vfx compositing | *workflow customisation and consulting * * ** Your gateway to over 1,000 free tools... right inside of Nuke -------------- next part -------------- An HTML attachment was scrubbed... URL: From frank at ohufx.com Tue May 22 02:19:22 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Tue, 22 May 2018 12:19:22 +1200 Subject: [PySide] QDialogButtonBox Message-ID: Hi all, I am trying to use a QHBoxLayout with a checkbox and a QDialogButtonBox in it. |bottomLayout = QtWidgets.QHBoxLayout() self.snapshotWidget = QtWidgets.QCheckBox('take sequence snapshots') self.btnBox = QtWidgets.QDialogButtonBox(QtWidgets.QDialogButtonBox.Apply | QtWidgets.QDialogButtonBox.Cancel) bottomLayout.addWidget(self.snapshotWidget) bottomLayout.addWidget(self.btnBox) bottomLayout.setAlignment(self.snapshotWidget, QtCore.Qt.AlignRight) # has no effect | ​ However, the alignment for the checkbox is ignores and it ends up all the way on the left: I'd like it to be next to the Cancel button though. I tried this with a different widget than QDialogButtonBox and I get the expected result. I then tried setting the sizePolicy of the button box to "minimum" but to no avail. What am I missing? Cheers, frank -- ohufxLogo 50x50 *vfx compositing | *workflow customisation and consulting * * ** Your gateway to over 1,000 free tools... right inside of Nuke -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: kjadmacdbemhfnne.png Type: image/png Size: 23858 bytes Desc: not available URL: From frank at ohufx.com Tue May 22 02:27:00 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Tue, 22 May 2018 12:27:00 +1200 Subject: [PySide] QDialogButtonBox In-Reply-To: References: Message-ID: <08c1dcb3-cf8a-f038-e5f2-ec2ad7156bb1@ohufx.com> And as always the solution occurs to me right after hitting the send button. I had to setMaximumWidth() on the button box which apparently defaults to the parent widgets width or something. On 22/05/18 12:19 PM, Frank Rueter | OHUfx wrote: > > Hi all, > > I am trying to use a QHBoxLayout with a checkbox and a > QDialogButtonBox in it. > > |bottomLayout = QtWidgets.QHBoxLayout() self.snapshotWidget = > QtWidgets.QCheckBox('take sequence snapshots') self.btnBox = > QtWidgets.QDialogButtonBox(QtWidgets.QDialogButtonBox.Apply | > QtWidgets.QDialogButtonBox.Cancel) > bottomLayout.addWidget(self.snapshotWidget) > bottomLayout.addWidget(self.btnBox) > bottomLayout.setAlignment(self.snapshotWidget, QtCore.Qt.AlignRight) # > has no effect | > ​ > However, the alignment for the checkbox is ignores and it ends up all > the way on the left: > > > I'd like it to be next to the Cancel button though. > I tried this with a different widget than QDialogButtonBox and I get > the expected result. > I then tried setting the sizePolicy of the button box to "minimum" but > to no avail. > > What am I missing? > > Cheers, > frank > > > -- > > ohufxLogo 50x50 > *vfx compositing | *workflow > customisation and consulting * * > ** > > > > Your gateway to over 1,000 free tools... right inside of Nuke > > > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: kjadmacdbemhfnne.png Type: image/png Size: 23858 bytes Desc: not available URL: From timr at probo.com Tue May 22 02:30:17 2018 From: timr at probo.com (Tim Roberts) Date: Mon, 21 May 2018 17:30:17 -0700 Subject: [PySide] QDialogButtonBox In-Reply-To: References: Message-ID: Frank Rueter | OHUfx wrote: > I am trying to use a QHBoxLayout with a checkbox and a > QDialogButtonBox in it. > > ... > > However, the alignment for the checkbox is ignores and it ends up all > the way on the left: > > > I'd like it to be next to the Cancel button though. > I tried this with a different widget than QDialogButtonBox and I get > the expected result. > I then tried setting the sizePolicy of the button box to "minimum" but > to no avail. Surprisingly, it IS moving it all the way to the right, but because it is resizable, it's stretching the size so that it reaches to the left margin. The usual way to solve this is to add a QSpacerItem on the left.  That way, the spacer item stretches to fill the space. -- Tim Roberts, timr at probo.com Providenza & Boekelheide, Inc. -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: kjadmacdbemhfnne.png Type: image/png Size: 23858 bytes Desc: not available URL: From frank at ohufx.com Tue May 22 02:59:16 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Tue, 22 May 2018 12:59:16 +1200 Subject: [PySide] QDialogButtonBox In-Reply-To: References: Message-ID: <5481b91f-3a89-7be8-b9b8-b46a821233f4@ohufx.com> Thanks. I guess this has the same effect as setting the max size on the button box in my scenario. Cheers, frank On 22/05/18 12:30 PM, Tim Roberts wrote: > Frank Rueter | OHUfx wrote: >> I am trying to use a QHBoxLayout with a checkbox and a >> QDialogButtonBox in it. >> >> ... >> >> However, the alignment for the checkbox is ignores and it ends up all >> the way on the left: >> >> >> I'd like it to be next to the Cancel button though. >> I tried this with a different widget than QDialogButtonBox and I get >> the expected result. >> I then tried setting the sizePolicy of the button box to "minimum" >> but to no avail. > > Surprisingly, it IS moving it all the way to the right, but because it > is resizable, it's stretching the size so that it reaches to the left > margin. > > The usual way to solve this is to add a QSpacerItem on the left. That > way, the spacer item stretches to fill the space. > -- > Tim Roberts,timr at probo.com > Providenza & Boekelheide, Inc. > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: kjadmacdbemhfnne.png Type: image/png Size: 23858 bytes Desc: not available URL: From frank at ohufx.com Tue May 22 07:26:29 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Tue, 22 May 2018 17:26:29 +1200 Subject: [PySide] QTableView.setMinimumSectionSize() not working after model reset Message-ID: <58e8e1c7-326b-b9a7-1d5b-7baa62d2fc50@ohufx.com> Hi all, I am working with a QAbstractTableModel and a QTableView, and need to reset the entire model during a sessions. However, when columns are added they do not honour the QTableView.horizontalHeader().minimumSectionSize() and turn up too small. The moment I touch the section divider they snap to the right size though, so it feels like I’m missing a signal to ensure the QHeaderView’s update. Any ideas? There are so many signals one can emit that I am slightly confused now about which ones may or may not help. Here is my test block to reset the QAbstractTableModel, messily emitting signals left right and center to see which ones could help: |self.beginResetModel() self.layoutAboutToBeChanged.emit() self.__collectCellData() # provides all data to rebuild the model self.endResetModel() self.modelReset.emit() self.headerDataChanged.emit(QtCore.Qt.Orientation.Vertical, 0, self.rowCount()) self.headerDataChanged.emit(QtCore.Qt.Orientation.Horizontal, 0, self.columnCount()) self.dataChanged.emit(self.index(0, 0), self.index(self.rowCount(), self.columnCount())) self.layoutChanged.emit() | ​ I also tried connecting to the model's columnsInserted signal but to no avail. Cheers, frank -- ohufxLogo 50x50 *vfx compositing | *workflow customisation and consulting * * ** Your gateway to over 1,000 free tools... right inside of Nuke -------------- next part -------------- An HTML attachment was scrubbed... URL: From Cristian.Maureira-Fredes at qt.io Tue May 22 13:56:32 2018 From: Cristian.Maureira-Fredes at qt.io (=?iso-8859-1?Q?Cristi=E1n_Maureira-Fredes?=) Date: Tue, 22 May 2018 11:56:32 +0000 Subject: [PySide] Weekly update 17.05.2018 Message-ID: Hey all, just a brief summary of the status of the project: We finally have a logo for the project: http://doc-snapshots.qt.io/qtforpython/_static/pysidelogo.png and it will be used as our official image. The changes we were reporting regarding heap types and stable ABI are on a review phase, and hopefully will be available for the TP. There has been a few new issues related to our CI, but there are a few changes coming that will allow Qt for Python to be more independent from the general configurations, allowing us to not be affected by most of the configuration issues that the CI had. A preliminary set of wheels for Windows 32bit was generated, but we are still on a testing phase. Many missing bindings were generated: https://wiki.qt.io/Qt_for_Python_Missing_Bindings and many more are in progress. There has been a lot of discussion regarding Strings, Bytes, Unicode, ByteArray and their manipulation/representation, so we are looking into this to provide a solution that can fit the Qt and Python APIs. The documentation is being constantly updated, if you find any error or have any suggestion, please let us know. We included a dynamic detection of Clang on Linux to automatically pick up the system's installation and use it to build PySide2. The wheel size is also our priority, and currently we have manage to decrease their size. A couple of build fixes and new options were done. Stay tuned to https://blog.qt.io a couple blog post will be published soon! We really would like to hear back from you, so please don't hesitate to tell us if you are expecting tutorials on certain topics, or maybe new subjects for future blog post after the technical preview. Use this mailing list or any other channel to discuss this matter with us: https://wiki.qt.io/Qt_for_Python#Community See ya! ----- Cristián Maureira-Fredes Software Engineer The Qt Company GmbH Rudower Chaussee 13 D-12489 Berlin Geschäftsführer: Mika Pälsi, Juha Varelius, Mika Harjuaho Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B From redstone-cold at 163.com Thu May 24 02:54:44 2018 From: redstone-cold at 163.com (Zhao Lee) Date: Thu, 24 May 2018 08:54:44 +0800 (CST) Subject: [PySide] Weekly update 17.05.2018 In-Reply-To: References: Message-ID: 1. The log is not good, please get some inspiration from the logo of jython. http://www.jython.org 2. A future support on mobile APPs development would make Qt for Python more competitive than PyQt! 在2018年05月22 19时56分, "Cristián Maureira-Fredes"写道: Hey all, just a brief summary of the status of the project: We finally have a logo for the project: http://doc-snapshots.qt.io/qtforpython/_static/pysidelogo.png and it will be used as our official image. The changes we were reporting regarding heap types and stable ABI are on a review phase, and hopefully will be available for the TP. There has been a few new issues related to our CI, but there are a few changes coming that will allow Qt for Python to be more independent from the general configurations, allowing us to not be affected by most of the configuration issues that the CI had. A preliminary set of wheels for Windows 32bit was generated, but we are still on a testing phase. Many missing bindings were generated: https://wiki.qt.io/Qt_for_Python_Missing_Bindings and many more are in progress. There has been a lot of discussion regarding Strings, Bytes, Unicode, ByteArray and their manipulation/representation, so we are looking into this to provide a solution that can fit the Qt and Python APIs. The documentation is being constantly updated, if you find any error or have any suggestion, please let us know. We included a dynamic detection of Clang on Linux to automatically pick up the system's installation and use it to build PySide2. The wheel size is also our priority, and currently we have manage to decrease their size. A couple of build fixes and new options were done. Stay tuned to https://blog.qt.io a couple blog post will be published soon! We really would like to hear back from you, so please don't hesitate to tell us if you are expecting tutorials on certain topics, or maybe new subjects for future blog post after the technical preview. Use this mailing list or any other channel to discuss this matter with us: https://wiki.qt.io/Qt_for_Python#Community See ya! ----- Cristián Maureira-Fredes Software Engineer The Qt Company GmbH Rudower Chaussee 13 D-12489 Berlin Geschäftsführer: Mika Pälsi, Juha Varelius, Mika Harjuaho Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B _______________________________________________ PySide mailing list PySide at qt-project.org http://lists.qt-project.org/mailman/listinfo/pyside -------------- next part -------------- An HTML attachment was scrubbed... URL: From mark.melvin at gmail.com Thu May 24 02:57:32 2018 From: mark.melvin at gmail.com (Mark Melvin) Date: Wed, 23 May 2018 20:57:32 -0400 Subject: [PySide] Weekly update 17.05.2018 In-Reply-To: References: Message-ID: Personally, I think the logo is fine and I appreciate all the work that has gone into this. I can't wait to use it... Mark On Wed, May 23, 2018 at 8:54 PM, Zhao Lee wrote: > 1. The log is not good, please get some inspiration from the logo of > jython. > [image: Jython]http://www.jython.org > > 2. A future support on mobile APPs development would make Qt for Python > more competitive than PyQt! > > > > 在2018年05月22 19时56分, "Cristián Maureira-Fredes" Maureira-Fredes at qt.io>写道: > > > Hey all, > > just a brief summary of the status of the project: > > We finally have a logo for the project: > http://doc-snapshots.qt.io/qtforpython/_static/pysidelogo.png > and it will be used as our official image. > > The changes we were reporting regarding heap types > and stable ABI are on a review phase, and hopefully > will be available for the TP. > > There has been a few new issues related to our CI, > but there are a few changes coming that will allow > Qt for Python to be more independent from the general > configurations, allowing us to not be affected by most of > the configuration issues that the CI had. > > A preliminary set of wheels for Windows 32bit was generated, > but we are still on a testing phase. > > Many missing bindings were generated: > https://wiki.qt.io/Qt_for_Python_Missing_Bindings > and many more are in progress. > > There has been a lot of discussion regarding Strings, Bytes, Unicode, > ByteArray and their manipulation/representation, so we are looking into > this > to provide a solution that can fit the Qt and Python APIs. > > The documentation is being constantly updated, > if you find any error or have any suggestion, please let us know. > > We included a dynamic detection of Clang on Linux > to automatically pick up the system's installation > and use it to build PySide2. > > The wheel size is also our priority, and currently we have > manage to decrease their size. > > A couple of build fixes and new options were done. > > Stay tuned to https://blog.qt.io a couple blog post will be > published soon! > > > We really would like to hear back from you, > so please don't hesitate to tell us if you are expecting > tutorials on certain topics, or maybe new subjects for future blog post > after the technical preview. > Use this mailing list or any other channel to discuss this matter > with us: https://wiki.qt.io/Qt_for_Python#Community > > See ya! > > ----- > Cristián Maureira-Fredes > Software Engineer > > The Qt Company GmbH > Rudower Chaussee 13 > D-12489 Berlin > > Geschäftsführer: Mika Pälsi, > Juha Varelius, Mika Harjuaho > Sitz der Gesellschaft: Berlin, > Registergericht: Amtsgericht > Charlottenburg, HRB 144331 B > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > > > > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From frank at ohufx.com Thu May 24 03:07:32 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Thu, 24 May 2018 13:07:32 +1200 Subject: [PySide] Weekly update 17.05.2018 In-Reply-To: References: Message-ID: <2a1f0373-6397-42bc-057e-fd6cc09b20be@ohufx.com> I agree that the logo is more like a banner containing two other logos, so it has extremely little recognition value and could easily be interpreted as PyQt at first glance. Also, could this throw up any copyright issues? On 24/05/18 12:54 PM, Zhao Lee wrote: > 1. The log is not good, please get some inspiration from the logo of > jython. > Jythonhttp://www.jython.org > > 2. A future support on mobile APPs development would make  Qt for > Python more competitive than PyQt! > > > > 在2018年05月22 19时56分, "Cristián > Maureira-Fredes"写道: > > > Hey all, > > just a brief summary of the status of the project: > > We finally have a logo for the project: > http://doc-snapshots.qt.io/qtforpython/_static/pysidelogo.png > and it will be used as our official image. > > The changes we were reporting regarding heap types > and stable ABI are on a review phase, and hopefully > will be available for the TP. > > There has been a few new issues related to our CI, > but there are a few changes coming that will allow > Qt for Python to be more independent from the general > configurations, allowing us to not be affected by most of > the configuration issues that the CI had. > > A preliminary set of wheels for Windows 32bit was generated, > but we are still on a testing phase. > > Many missing bindings were generated: > https://wiki.qt.io/Qt_for_Python_Missing_Bindings > and many more are in progress. > > There has been a lot of discussion regarding Strings, Bytes, Unicode, > ByteArray and their manipulation/representation, so we are looking > into this > to provide a solution that can fit the Qt and Python APIs. > > The documentation is being constantly updated, > if you find any error or have any suggestion, please let us know. > > We included a dynamic detection of Clang on Linux > to automatically pick up the system's installation > and use it to build PySide2. > > The wheel size is also our priority, and currently we have > manage to decrease their size. > > A couple of build fixes and new options were done. > > Stay tuned to https://blog.qt.io a couple blog post will be > published soon! > > > We really would like to hear back from you, > so please don't hesitate to tell us if you are expecting > tutorials on certain topics, or maybe new subjects for future blog > post > after the technical preview. > Use this mailing list or any other channel to discuss this matter > with us: https://wiki.qt.io/Qt_for_Python#Community > > See ya! > > ----- > Cristián Maureira-Fredes > Software Engineer > > The Qt Company GmbH > Rudower Chaussee 13 > D-12489 Berlin > > Geschäftsführer: Mika Pälsi, > Juha Varelius, Mika Harjuaho > Sitz der Gesellschaft: Berlin, > Registergericht: Amtsgericht > Charlottenburg, HRB 144331 B > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > > > > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside -------------- next part -------------- An HTML attachment was scrubbed... URL: From chgans at gmail.com Thu May 24 05:02:03 2018 From: chgans at gmail.com (Christian Gagneraud) Date: Thu, 24 May 2018 15:02:03 +1200 Subject: [PySide] Weekly update 17.05.2018 In-Reply-To: References: Message-ID: On 24 May 2018 at 12:54, Zhao Lee wrote: > > 1. The log is not good, please get some inspiration from the logo of jython. > http://www.jython.org Ever thought about Qython instead of Qt for python? https://qython.io Just kidding, logo is fine BTW. Chris > > 2. A future support on mobile APPs development would make Qt for Python more competitive than PyQt! > > > > 在2018年05月22 19时56分, "Cristián Maureira-Fredes"写道: > > > Hey all, > > just a brief summary of the status of the project: > > We finally have a logo for the project: > http://doc-snapshots.qt.io/qtforpython/_static/pysidelogo.png > and it will be used as our official image. > > The changes we were reporting regarding heap types > and stable ABI are on a review phase, and hopefully > will be available for the TP. > > There has been a few new issues related to our CI, > but there are a few changes coming that will allow > Qt for Python to be more independent from the general > configurations, allowing us to not be affected by most of > the configuration issues that the CI had. > > A preliminary set of wheels for Windows 32bit was generated, > but we are still on a testing phase. > > Many missing bindings were generated: > https://wiki.qt.io/Qt_for_Python_Missing_Bindings > and many more are in progress. > > There has been a lot of discussion regarding Strings, Bytes, Unicode, > ByteArray and their manipulation/representation, so we are looking into this > to provide a solution that can fit the Qt and Python APIs. > > The documentation is being constantly updated, > if you find any error or have any suggestion, please let us know. > > We included a dynamic detection of Clang on Linux > to automatically pick up the system's installation > and use it to build PySide2. > > The wheel size is also our priority, and currently we have > manage to decrease their size. > > A couple of build fixes and new options were done. > > Stay tuned to https://blog.qt.io a couple blog post will be > published soon! > > > We really would like to hear back from you, > so please don't hesitate to tell us if you are expecting > tutorials on certain topics, or maybe new subjects for future blog post > after the technical preview. > Use this mailing list or any other channel to discuss this matter > with us: https://wiki.qt.io/Qt_for_Python#Community > > See ya! > > ----- > Cristián Maureira-Fredes > Software Engineer > > The Qt Company GmbH > Rudower Chaussee 13 > D-12489 Berlin > > Geschäftsführer: Mika Pälsi, > Juha Varelius, Mika Harjuaho > Sitz der Gesellschaft: Berlin, > Registergericht: Amtsgericht > Charlottenburg, HRB 144331 B > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > > > > > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > From redstone-cold at 163.com Thu May 24 07:50:42 2018 From: redstone-cold at 163.com (Zhao Lee) Date: Thu, 24 May 2018 13:50:42 +0800 (CST) Subject: [PySide] Weekly update 17.05.2018 In-Reply-To: References: Message-ID: <593fe95a.90.16390b30840.Coremail.redstone-cold@163.com> As for the module name, I think QtPy, just like the name form of numpy, is more informative than PySide 在2018年05月24 11时02分, "Christian Gagneraud"写道: On 24 May 2018 at 12:54, Zhao Lee wrote: > > 1. The log is not good, please get some inspiration from the logo of jython. > http://www.jython.org Ever thought about Qython instead of Qt for python? https://qython.io Just kidding, logo is fine BTW. Chris > > 2. A future support on mobile APPs development would make Qt for Python more competitive than PyQt! > > > > 在2018年05月22 19时56分, "Cristián Maureira-Fredes"写道: > > > Hey all, > > just a brief summary of the status of the project: > > We finally have a logo for the project: > http://doc-snapshots.qt.io/qtforpython/_static/pysidelogo.png > and it will be used as our official image. > > The changes we were reporting regarding heap types > and stable ABI are on a review phase, and hopefully > will be available for the TP. > > There has been a few new issues related to our CI, > but there are a few changes coming that will allow > Qt for Python to be more independent from the general > configurations, allowing us to not be affected by most of > the configuration issues that the CI had. > > A preliminary set of wheels for Windows 32bit was generated, > but we are still on a testing phase. > > Many missing bindings were generated: > https://wiki.qt.io/Qt_for_Python_Missing_Bindings > and many more are in progress. > > There has been a lot of discussion regarding Strings, Bytes, Unicode, > ByteArray and their manipulation/representation, so we are looking into this > to provide a solution that can fit the Qt and Python APIs. > > The documentation is being constantly updated, > if you find any error or have any suggestion, please let us know. > > We included a dynamic detection of Clang on Linux > to automatically pick up the system's installation > and use it to build PySide2. > > The wheel size is also our priority, and currently we have > manage to decrease their size. > > A couple of build fixes and new options were done. > > Stay tuned to https://blog.qt.io a couple blog post will be > published soon! > > > We really would like to hear back from you, > so please don't hesitate to tell us if you are expecting > tutorials on certain topics, or maybe new subjects for future blog post > after the technical preview. > Use this mailing list or any other channel to discuss this matter > with us: https://wiki.qt.io/Qt_for_Python#Community > > See ya! > > ----- > Cristián Maureira-Fredes > Software Engineer > > The Qt Company GmbH > Rudower Chaussee 13 > D-12489 Berlin > > Geschäftsführer: Mika Pälsi, > Juha Varelius, Mika Harjuaho > Sitz der Gesellschaft: Berlin, > Registergericht: Amtsgericht > Charlottenburg, HRB 144331 B > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > > > > > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Cristian.Maureira-Fredes at qt.io Thu May 24 09:07:27 2018 From: Cristian.Maureira-Fredes at qt.io (=?utf-8?B?Q3Jpc3Rpw6FuIE1hdXJlaXJhLUZyZWRlcw==?=) Date: Thu, 24 May 2018 07:07:27 +0000 Subject: [PySide] Weekly update 17.05.2018 In-Reply-To: <593fe95a.90.16390b30840.Coremail.redstone-cold@163.com> References: , <593fe95a.90.16390b30840.Coremail.redstone-cold@163.com> Message-ID: Hello, thanks for your feedback. The decision of the "image" (better than logo IMHO), and naming of the project comes from really long discussion of what was better in accordance with Qt guidelines. We have the permission to use the Python logo embedded on the banner from the Python people, so it's fine. Projects evolve, so maybe in the future there could be some modifications. Cheers ________________________________________ From: Zhao Lee Sent: 24 May 2018 07:50:42 To: Christian Gagneraud Cc: Cristián Maureira-Fredes; pyside at qt-project.org Subject: Re:Re: [PySide] Weekly update 17.05.2018 As for the module name, I think QtPy, just like the name form of numpy, is more informative than PySide 在2018年05月24 11时02分, "Christian Gagneraud"写道: On 24 May 2018 at 12:54, Zhao Lee > wrote: > > 1. The log is not good, please get some inspiration from the logo of jython. > http://www.jython.org Ever thought about Qython instead of Qt for python? https://qython.io Just kidding, logo is fine BTW. Chris > > 2. A future support on mobile APPs development would make Qt for Python more competitive than PyQt! > > > > 在2018年05月22 19时56分, "Cristián Maureira-Fredes">写道: > > > Hey all, > > just a brief summary of the status of the project: > > We finally have a logo for the project: > http://doc-snapshots.qt.io/qtforpython/_static/pysidelogo.png > and it will be used as our official image. > > The changes we were reporting regarding heap types > and stable ABI are on a review phase, and hopefully > will be available for the TP. > > There has been a few new issues related to our CI, > but there are a few changes coming that will allow > Qt for Python to be more independent from the general > configurations, allowing us to not be affected by most of > the configuration issues that the CI had. > > A preliminary set of wheels for Windows 32bit was generated, > but we are still on a testing phase. > > Many missing bindings were generated: > https://wiki.qt.io/Qt_for_Python_Missing_Bindings > and many more are in progress. > > There has been a lot of discussion regarding Strings, Bytes, Unicode, > ByteArray and their manipulation/representation, so we are looking into this > to provide a solution that can fit the Qt and Python APIs. > > The documentation is being constantly updated, > if you find any error or have any suggestion, please let us know. > > We included a dynamic detection of Clang on Linux > to automatically pick up the system's installation > and use it to build PySide2. > > The wheel size is also our priority, and currently we have > manage to decrease their size. > > A couple of build fixes and new options were done. > > Stay tuned to https://blog.qt.io a couple blog post will be > published soon! > > > We really would like to hear back from you, > so please don't hesitate to tell us if you are expecting > tutorials on certain topics, or maybe new subjects for future blog post > after the technical preview. > Use this mailing list or any other channel to discuss this matter > with us: https://wiki.qt.io/Qt_for_Python#Community > > See ya! > > ----- > Cristián Maureira-Fredes > Software Engineer > > The Qt Company GmbH > Rudower Chaussee 13 > D-12489 Berlin > > Geschäftsführer: Mika Pälsi, > Juha Varelius, Mika Harjuaho > Sitz der Gesellschaft: Berlin, > Registergericht: Amtsgericht > Charlottenburg, HRB 144331 B > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > > > > > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside > From frank at ohufx.com Sat May 26 07:41:25 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Sat, 26 May 2018 17:41:25 +1200 Subject: [PySide] parenting widgets explicitly vs adding to layout Message-ID: <676964eb-c9ab-123a-a807-852f51299561@ohufx.com> Hi, I may have adopted a bad habit and would like to get clarification from some pros: Once upon a time I was told (or assumed - I can’t remember), that creating a widget without a parent is fine if you add it to the parent’s layout straight away anyway. E.g.: |self.table = TableView() self.layout().addWidget(self.table) | However, I am now looking at some code where the parent widget’s default size is very different compared to it's size when I create children with "self" as the  explicit parent e.g.: |self.table = TableView(self) self.layout().addWidget(self.table) | ​ The latter opens the parent widget too small, and I have to increase it's height to show the entire table, the former opens up larger. Is this to be expected? If so, where should I read up to understand the logic? Or is this unexpected behaviour and the two examples should yield the same result? Cheers, frank -- ohufxLogo 50x50 *vfx compositing | *workflow customisation and consulting * * ** Your gateway to over 1,000 free tools... right inside of Nuke -------------- next part -------------- An HTML attachment was scrubbed... URL: From frank at ohufx.com Sat May 26 07:50:44 2018 From: frank at ohufx.com (Frank Rueter | OHUfx) Date: Sat, 26 May 2018 17:50:44 +1200 Subject: [PySide] parenting widgets explicitly vs adding to layout In-Reply-To: <676964eb-c9ab-123a-a807-852f51299561@ohufx.com> References: <676964eb-c9ab-123a-a807-852f51299561@ohufx.com> Message-ID: <9e25715a-9de7-0fdd-58ff-c461297fc802@ohufx.com> Sorry, I don't know why this always happens to me. Right after sending this I found that there was a questionable custom sizeHint() implementation in the TableView() class which seems to have cause the problem. On 26/05/18 5:41 PM, Frank Rueter | OHUfx wrote: > > Hi, > > I may have adopted a bad habit and would like to get clarification > from some pros: > > Once upon a time I was told (or assumed - I can’t remember), that > creating a widget without a parent is fine if you add it to the > parent’s layout straight away anyway. > E.g.: > > |self.table = TableView() self.layout().addWidget(self.table) | > > However, I am now looking at some code where the parent widget’s > default size is very different compared to it's size when I create > children with "self" as the  explicit parent e.g.: > > |self.table = TableView(self) self.layout().addWidget(self.table) | > ​ > > The latter opens the parent widget too small, and I have to increase > it's height to show the entire table, the former opens up larger. > Is this to be expected? If so, where should I read up to understand > the logic? > > Or is this unexpected behaviour and the two examples should yield the > same result? > > Cheers, > frank > > -- > > ohufxLogo 50x50 > *vfx compositing | *workflow > customisation and consulting * * > ** > > > > Your gateway to over 1,000 free tools... right inside of Nuke > > > > > _______________________________________________ > PySide mailing list > PySide at qt-project.org > http://lists.qt-project.org/mailman/listinfo/pyside -------------- next part -------------- An HTML attachment was scrubbed... URL: From Cristian.Maureira-Fredes at qt.io Thu May 31 17:33:31 2018 From: Cristian.Maureira-Fredes at qt.io (=?UTF-8?Q?Cristi=c3=a1n_Maureira-Fredes?=) Date: Thu, 31 May 2018 17:33:31 +0200 Subject: [PySide] Weekly update 31.05.2018 Message-ID: Hello, Here is a quick update of the project. We had some issues with our integration system, but it was solved, even the problems that were stopping us to cherry pick some changes on 5.6. Currently, there is still an issue for the generation of 32bit wheels for Windows, but we are almost there. We want to provide our official set of wheels through PyPi, but we are waiting for an official answer from them since the limit is ~60M (on PyPi server) but ours are around ~100M. The HeapTypes and PEP384 changes are finally merged in our repository, this will mean that any further contribution that includes a new Type, must be compatible. You can read more here: https://www.python.org/dev/peps/pep-0384/ and you can see all the changes that this improvement needed here: https://codereview.qt-project.org/230864 There is effort in documenting our "Tabbed Browser Example" [1] to provide a tutorial that explain how it was built. We want to have RC wheels next week for testing purposes to be able to finally release the first technical preview on the 13th of June. We are aware of the missing bindings that we currently have, but we believe they are not crucial for the development we have seen on PySide2 at the moment, but we encourage you to fill a bug report if any of the missing bindings are needed by you or your project, so we can prioritize it [2]. After the TP we would like to have a more active community, so we encourage you to participate in our IRC channel to discuss the future of Qt for Python. Cheers! [1] http://code.qt.io/cgit/pyside/pyside-setup.git/tree/examples/webenginewidgets/tabbedbrowser [2] https://wiki.qt.io/Qt_for_Python_Missing_Bindings -- Cristian Maureira-Fredes Software Engineer The Qt Company GmbH Rudower Chaussee 13 D-12489 Berlin Geschäftsführer: Mika Pälsi, Juha Varelius, Mika Harjuaho Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B --