[PySide] re-implementing setDown() for custom button

Srini Kommoori vasure at gmail.com
Thu May 3 11:49:37 CEST 2012


Thats great.

One thing I observed is: for your custom button, if you want a nice/native
copy icon to appear - set following in your dragEnterEvent(I would prefer
to do have dragMoveEvent)

event.setDropAction(QtCore.Qt.CopyAction)
event.accept()

-Srini

On Thu, May 3, 2012 at 1:51 AM, Frank Rueter | OHUfx <frank at ohufx.com>wrote:

>  DOH. Minutes after posting this I realised that the little plus on the
> cursor only shows up on a "droppable" area, which my custom button is not
> (and the default one is I guess).
> In other words I just solved all the problem myself by trying to strip it
> all down for a test to post.
> Sorry, will try and be a bit more accountable next time.
>
>
>
>
> On 3/05/12 8:37 PM, Frank Rueter | OHUfx wrote:
>
> Here is some example code that I ripped out of my main code:
> http://pastebin.com/jXZXXebW
>
> It compares a sub classed QPushButton with one I painted from scratch.
>
> I was actually able to solve some of the problems in the process (and for
> some reason the QObject.sender() works as well now) , but the one thing
> that still doesn't work with the new button is when I try to set a drag
> action like this:
> drag.start( Qt.CopyAction )
>
> The drag action for the "new button" is in line 192 which doesn't seem to
> have any effect when dragging the button, while the one for the "old
> button" in line 27 works as expected and turns the mouse cursor into a
> little plus sign when dragging.
>
> What am I missing?
>
>
> Cheers,
> frank
>
>
> On 3/05/12 7:11 PM, Frank Rueter | OHUfx wrote:
>
> Indeed, my apologies.
> Will strip out the relevant parts and post an example soon.
>
> On 3/05/12 7:06 PM, Srini Kommoori wrote:
>
> Code snippet would help in understanding what you are asking.
>
>  For most of my cases this works great:
>        pushButton.clicked.connect(findFile)
>
>  If you are trying to implement your own style button, QPushButton also
> takes icon.
>
>
>  On Wed, May 2, 2012 at 11:23 PM, Frank Rueter | OHUfx <frank at ohufx.com>wrote:
>
>> Any takers?
>> I'm kinda stuck with this one unfortunately.
>>
>>
>> On 2/05/12 6:35 PM, Frank Rueter | OHUfx wrote:
>> > sorry for the monolog, but I just realised I will also have to make my
>> > custom button play along when it's parent's self.sender() function is
>> > called as well.
>> > The QSignalSender doesn't quite seem to be the right thing to use as it
>> > is implemented in the parent's constructor, however I would like to
>> > implement this in the button's class if possible to make it self
>> contained.
>> >
>> > How would I go about that?
>> >
>> > Cheers,
>> > frank
>> >
>> > On 2/05/12 5:44 PM, Frank Rueter | OHUfx wrote:
>> >> Hi,
>> >>
>> >> to follow up my previous mail, I also just noticed that I have to
>> >> re-implement the QAbstractButton's setDown() function to make sure my
>> >> custom button doesn't stay down after a drag&drop action.
>> >>
>> >> With a QPushButton I simply called self.setDown( False ) from inside
>> the
>> >> mouseMoveEvent, so now I'm trying to understand how to recreate this
>> >> behaviour when using a custom paintEvent().
>> >>
>> >> Any tips would be greatly appreciated.
>> >>
>> >> Cheers,
>> >> frank
>> >> _______________________________________________
>> >> 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
>> _______________________________________________
>> PySide mailing list
>> PySide at qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/pyside
>>
>
>
>
> _______________________________________________
> PySide mailing listPySide at qt-project.orghttp://lists.qt-project.org/mailman/listinfo/pyside
>
>
>
> _______________________________________________
> PySide mailing listPySide at qt-project.orghttp://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: <http://lists.qt-project.org/pipermail/pyside/attachments/20120503/be734bc0/attachment.html>


More information about the PySide mailing list