In that case then yes, there is a difference in the QD version, none of the Bilts with a logical op other than wxCOPY are displaying anything. It looks exactly the same as the CoreGraphics build. This is on Panther.
--Robin
Stefan Csomor wrote:
···
Hi Robin
yes, exactely
Thanks,
Stefan
-----Original Message-----
From: Robin Dunn [mailto:robin@alldunn.com]
Sent: Freitag, 22. April 2005 17:47
To: Stefan Csomor
Cc: wxPython-dev@lists.wxWidgets.org
Subject: Re: [wxPython-dev] Bug using Masks in OSX 2.6 prerelease
Stefan,
Thanks, that rings a bell now. This is the wxMAC_USE_CORE_GRAPHICS
setting, correct? I do have it set to zero in my builds, so it is
using
QuickDraw, so a Blit with a logical op should be working.
--Robin
Stefan Csomor wrote:
Hi Robin
actually it should not be dropped for QD drawings, only for the
'still
experimental' quartz implementation.
The reason why Quartz does not support logical functions :
on quartz there is no notion of 'look whats already in the pixel' it
is
just drawing in layers with different opacity, otherwise you'd have
to
block, wait for the entire drawing pipeline to finish and check the
content of the pixel before going on.
Now back to the QD implementation :
I'm not aware of anything taken away there. So I'd be grateful if
you
could compare with the former state, if there's a diff it is by
mistake.
A lot of the logical functions don't have a logical counterpart in
QD,
and of those that are, only a part is also implemented for drawing
operations (only Copy, Invert, XOr, Or_Revers, Src_Invert and And) ,
the
rest is only available for Blit, for Blit I have added an emulation
layer that does the ops that are not implemented by QD - pixel by
pixel.
Thanks,
Stefan
-----Original Message-----
From: Robin Dunn [mailto:robin@alldunn.com]
Sent: Donnerstag, 21. April 2005 19:46
To: wxPython-dev@lists.wxwidgets.org; Stefan Csomor
Subject: Re: [wxPython-dev] Bug using Masks in OSX 2.6 prerelease
Robert Ferguson wrote:
Dear List,
I am running the binary pre-release of wxPython 2.6 on OSX (10.3 /
python 2.3) and an important feature does not appear to be working
in
the demo. The "Masks.py" demo does not render correctly. This
appears to be a mac specific issues as the demo runs perfectly in
Linux and Windows. Please see the attached screen shot to see
specifically which masks are not working.
Actually, "Masks" is a bad name for that demo as it is mostly
showing
drawing with various Logical Functions... The masks part is working
correctly.
Sorry to "bug" you, but this feature is absolutely essential in my
application, and I fear it becoming a persistent problem if the 2.6
release goes final.
Stefan, I can't remember the details, can you please explain again
why
the support for wxDC::SetLogicalFunction got dropped?
--
Robin Dunn
Software Craftsman http://wxPython.org Java give you jitters? Relax with wxPython!
Thank you very much for writing to my concern over binary operations.
I really apperciate your time and thoughts on this matter. I have
tried to follow the emails and I think I have an idea of what's going
on, but I'm not sure where to go from here or the priority/status.
It seems you all are recommending passing "logicalFunc" in wxDC::Blit.
This could be an option, but I am slightly concerned because in the
past there appeared to be some incompatibilites with this method and
gtk. I may have completely misjudged this method. Regardless, I
would like your advice on which path I might take.
I suspect you'll suggest one of these:
1) Do nothing, binary operations will eventually work as the demo
expects in the mac 2.6 branch.
2) Make changes to the wxpython source myself (reasonable, but I could
use a little mentoring)
3) Specify the binary operation with blt because it works the same in
each branch.
4) Whine about it some more and prepare to be flamed into a crisp!
Regards,
Robert Ferguson
···
On 4/22/05, Robin Dunn <robin@alldunn.com> wrote:
In that case then yes, there is a difference in the QD version, none of
the Bilts with a logical op other than wxCOPY are displaying anything.
It looks exactly the same as the CoreGraphics build. This is on Panther.
--Robin
Stefan Csomor wrote:
> Hi Robin
>
> yes, exactely
>
> Thanks,
>
> Stefan
>
>
>>-----Original Message-----
>>From: Robin Dunn [mailto:robin@alldunn.com]
>>Sent: Freitag, 22. April 2005 17:47
>>To: Stefan Csomor
>>Cc: wxPython-dev@lists.wxWidgets.org
>>Subject: Re: [wxPython-dev] Bug using Masks in OSX 2.6 prerelease
>>
>>Stefan,
>>
>>Thanks, that rings a bell now. This is the wxMAC_USE_CORE_GRAPHICS
>>setting, correct? I do have it set to zero in my builds, so it is
>
> using
>
>>QuickDraw, so a Blit with a logical op should be working.
>>
>>--Robin
>>
>>Stefan Csomor wrote:
>>
>>>Hi Robin
>>>
>>>actually it should not be dropped for QD drawings, only for the
>
> 'still
>
>>>experimental' quartz implementation.
>>>
>>>The reason why Quartz does not support logical functions :
>>>
>>>on quartz there is no notion of 'look whats already in the pixel' it
>
> is
>
>>>just drawing in layers with different opacity, otherwise you'd have
>
> to
>
>>>block, wait for the entire drawing pipeline to finish and check the
>>>content of the pixel before going on.
>>>
>>>Now back to the QD implementation :
>>>
>>>I'm not aware of anything taken away there. So I'd be grateful if
>
> you
>
>>>could compare with the former state, if there's a diff it is by
>
> mistake.
>
>>>
>>>A lot of the logical functions don't have a logical counterpart in
>
> QD,
>
>>>and of those that are, only a part is also implemented for drawing
>>>operations (only Copy, Invert, XOr, Or_Revers, Src_Invert and And) ,
>
> the
>
>>>rest is only available for Blit, for Blit I have added an emulation
>>>layer that does the ops that are not implemented by QD - pixel by
>
> pixel.
>
>>>Thanks,
>>>
>>>Stefan
>>>
>>>
>>>
>>>
>>>>-----Original Message-----
>>>>From: Robin Dunn [mailto:robin@alldunn.com]
>>>>Sent: Donnerstag, 21. April 2005 19:46
>>>>To: wxPython-dev@lists.wxwidgets.org; Stefan Csomor
>>>>Subject: Re: [wxPython-dev] Bug using Masks in OSX 2.6 prerelease
>>>>
>>>>Robert Ferguson wrote:
>>>>
>>>>
>>>>>Dear List,
>>>>>
>>>>>I am running the binary pre-release of wxPython 2.6 on OSX (10.3 /
>>>>>python 2.3) and an important feature does not appear to be working
>>>
>>>in
>>>
>>>
>>>>>the demo. The "Masks.py" demo does not render correctly. This
>>>>>appears to be a mac specific issues as the demo runs perfectly in
>>>>>Linux and Windows. Please see the attached screen shot to see
>>>>>specifically which masks are not working.
>>>>
>>>>Actually, "Masks" is a bad name for that demo as it is mostly
>
> showing
>
>>>>drawing with various Logical Functions... The masks part is working
>>>>correctly.
>>>>
>>>>
>>>>
>>>>>Sorry to "bug" you, but this feature is absolutely essential in my
>>>>>application, and I fear it becoming a persistent problem if the 2.6
>>>>>release goes final.
>>>>
>>>>Stefan, I can't remember the details, can you please explain again
>
> why
>
>>>>the support for wxDC::SetLogicalFunction got dropped?
>>>>
>>>>--
>>>>Robin Dunn
>>>>Software Craftsman
>>>>http://wxPython.org Java give you jitters? Relax with wxPython!
>>>
>>>
>>>
>>>
>>>
>
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: wxPython-dev-unsubscribe@lists.wxwidgets.org
For additional commands, e-mail: wxPython-dev-help@lists.wxwidgets.org
Thank you very much for writing to my concern over binary operations. I really apperciate your time and thoughts on this matter. I have
tried to follow the emails and I think I have an idea of what's going
on, but I'm not sure where to go from here or the priority/status.
It seems you all are recommending passing "logicalFunc" in wxDC::Blit.
This could be an option, but I am slightly concerned because in the
past there appeared to be some incompatibilites with this method and
gtk. I may have completely misjudged this method. Regardless, I
would like your advice on which path I might take.
The Mask sample looks nearly identical to me on wxGTK2 and wxMSW, and according to Stefan they are supposed to still be working with the way that I build wxMac. I still don't understand why they are not, so we'll need to wait for him to take a look at it.
Please note however that only wx.INVERT and wx.XOR worked for drawing operations other than Blit on wxMac in previous versions.
I suspect you'll suggest one of these:
1) Do nothing, binary operations will eventually work as the demo
expects in the mac 2.6 branch.
Hopefully this is the right answer.
···
2) Make changes to the wxpython source myself (reasonable, but I could
use a little mentoring)
3) Specify the binary operation with blt because it works the same in
each branch.
4) Whine about it some more and prepare to be flamed into a crisp!
--
Robin Dunn
Software Craftsman http://wxPython.org Java give you jitters? Relax with wxPython!