← Back to team overview

kicad-developers team mailing list archive

Re: pcbnew: OS X cursor shape cannot be changed in any of the view

 

Maybe it's time to revisit this again in light of the XOR mode being
fixed in OSX since wxWidgets 2.9.4.  Please be aware that KiCad does
it's own drawing mode thing, see include/gr_basic.h which may or may not
directly map to wxXOR so you may have to do some #ifdef foo to make it
work correctly on OSX.

On 7/22/2015 2:19 PM, Bob Gustafson wrote:
> Also see http://trac.wxwidgets.org/ticket/14982
> 
> It appears that the problem has been fixed for a few years in wxWidgets,
> but perhaps the call of the function needs tweeking. If the equivalent
> of XOR in OSX is named something different than XOR, then the different
> name needs to be used.
> 
> Bob G
> 
> On 07/22/2015 01:04 PM, Bob Gustafson wrote:
>> It does seem that wxWidgets is broken for XOR on OSX.
>>
>> wxWidgets needs some help - more or less like some of the other Kicad
>> wxWidgets patches.
>>
>> See also http://trac.wxwidgets.org/ticket/13095
>>
>> Bob G
>>
>> On 07/22/2015 10:22 AM, Garth Corral wrote:
>>>
>>> Bernhard is referring to a wxWidgets implementation.
>>>
>>> Garth
>>>
>>>> On Jul 22, 2015, at 6:09 AM, Bob Gustafson <bobgus@xxxxxxx
>>>> <mailto:bobgus@xxxxxxx>> wrote:
>>>>
>>>> If you do a Google search on:
>>>>
>>>>      XOR draw mode on OS X
>>>>
>>>> There are a lot of notes and bug reports.
>>>>
>>>> This one might have some useful hints:
>>>>
>>>>      
>>>> http://stackoverflow.com/questions/8951679/drawing-with-xor-in-quartz
>>>>
>>>> Hope this helps
>>>>
>>>> Bob G
>>>>
>>>> On 07/22/2015 12:47 AM, Bernhard Stegmaier wrote:
>>>>>
>>>>>> On 22 Jul 2015, at 05:10, Garth Corral <gcorral@xxxxxxxxx> wrote:
>>>>>>
>>>>>>
>>>>>>> On Jul 21, 2015, at 1:30 PM, Wayne Stambaugh
>>>>>>> <stambaughw@xxxxxxxxx> wrote:
>>>>>>>
>>>>>>> On 7/21/2015 4:19 PM, Bernhard Stegmaier wrote:
>>>>>>>> OK, got it… the crosshair is only shown in some modes (didn’t
>>>>>>>> really use
>>>>>>>> GAL up to now).
>>>>>>>> Yes, works also for me in GAL mode and not in default canvas.
>>>>>>>
>>>>>>> I'm not sure why this doesn't work in the default canvas.  Someone
>>>>>>> should probably take a look at it.  I'm guessing it has something
>>>>>>> to do
>>>>>>> with the overlays used on OSX.
>>>>>>>
>>>>>>
>>>>>> Um, perhaps it has something to do with this:
>>>>>>
>>>>>> #ifdef __WXMAC__
>>>>>>     m_defaultCursor = m_currentCursor = wxCURSOR_CROSS;
>>>>>>     m_showCrossHair = false;
>>>>>> #else
>>>>>>     m_defaultCursor = m_currentCursor = wxCURSOR_ARROW;
>>>>>>     m_showCrossHair = true;
>>>>>> #endif
>>>>>>
>>>>>> I’m assuming that this was done due to overlay issues as Wayne
>>>>>> suggests.
>>>>>
>>>>> You don’t have a XOR-drawing mode on OS X with wxWidgets, so the
>>>>> usual redraw-to-delete doesn’t work here.
>>>>> If you want to delete something you have to completely repaint the
>>>>> canvas or revert the the last state saved in the overlay (which is
>>>>> faster than a complete redraw but still not as fast as just drawing
>>>>> two lines).
>>>>>
>>>>> If I haven’t tried yet, but if you just remove that ifdef I guess
>>>>> deletion of the crosshair won’t work at all (you would just fill up
>>>>> the canvas with crosshairs). Or, it could be quite slow (there is
>>>>> already now some noticeable lag when quickly moving around objects).
>>>>> However, I can give it a try on the weekend...
>>>>>
>>>>> So, the real issue is not to have a XOR draw mode on OS X, which is
>>>>> quite the base of every drawing stuff in the default canvas of
>>>>> pcbnew and eeschema. Using this overlay hack is just a workaround
>>>>> with many problems (especially causing all those redraw issues in
>>>>> eeschema)...
>>>>>
>>>>>
>>>>> Regards,
>>>>> Bernhard
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Mailing list: https://launchpad.net/~kicad-developers
>>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>>>> More help   : https://help.launchpad.net/ListHelp
>>>>
>>>> _______________________________________________
>>>> Mailing list: https://launchpad.net/~kicad-developers
>>>> <https://launchpad.net/%7Ekicad-developers>
>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>> <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>>> <https://launchpad.net/%7Ekicad-developers>
>>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>
>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp
> 
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
> 


References