← Back to team overview

kicad-developers team mailing list archive

Re: issues in GAL mode with event manager.

 

Le 20/01/2017 à 09:46, Maciej Sumiński a écrit :
> Hi Jean-Pierre,
> 
> Thank you for the report. I already see the first issue, the fix is in
> progress. I will check the second problem later as well.
> 
> Regards,
> Orson

Thanks.
FYI, in my last commit, I modified CONTEXT_TRACK_WIDTH_MENU::EventHandler to accept unexpected event
IDs, so the strange track width change does not happen now.

> 
> On 01/18/2017 08:06 PM, jp charras wrote:
>> Hi Orson and Tomasz,
>>
>> Sorry to give you a bit of work, but I found issues which are outside my knowledge.
>>
>> Recently, a grid sub-menu was added to the router tool context menu.
>> And I found issues when using it.
>> But issues are due to the events are managed in GAL mode, not due to this sub-menu.
>>
>> First (both on W7 and Linux):
>> The submenu exists in other context menus, and does not show a problem.
>> Especially, the current grid selection appears checked in context menu grid list, but not in the
>> ROUTER_TOOL_MENU context menu.
>> First time I saw that, I was thinking it is just a cosmetic issue.
>> But after more investigations, I am pretty sure this is a much more serious issue.
>>
>> Second, but only on Windows:
>> During investigations, I found a much more annoying behavior in GAL dispatch events.
>> This happens only on W7 (32bits for me), not on Linux. (I don't know on OSX)
>>
>> I saw EventHandler( const wxMenuEvent& aEvent ) living in many menus are called at least once,
>> regardless the menuid of the corresponding menu.
>>
>> I did not tested (obviously) all menus, but I tested:
>> CONTEXT_TRACK_WIDTH_MENU::EventHandler
>> ZOOM_MENU::EventHandler
>> GRID_MENU::EventHandler
>> (just add in these methods a call to a wxMessageBox: the result is very interesting)
>>
>> In context menus where both zoom and grid menu exist, and when you select a new grid or zoom, zoom
>> and grid EventHandler are called, regardless the menu clicked, then the right menu is called a
>> second time.
>> (Therefore the right handler is called twice. Usually, this is not a problem, but...)
>>
>> Especially, the CONTEXT_TRACK_WIDTH_MENU::EventHandler is called when a new grid is selected from
>> the router tool context menu.
>> And because the menuid is not expected in this handler, the width of tracks created after this
>> selection is very strange.
>>
>> (I have a fix for this menu in one of my working copy, but the best is to fix the source of issues)
>>
>>
>> Besides:
>> in many case, assert is used, instead of wxASSERT in sources.
>> At least on Windows, it makes the debug not usable (dbg is just closed, and you have no trace and no
>> message).
>> And when you have to debug an issue which happens only on Windows, this is a bit annoying.
>>
>> Thanks.
>>
> 
> 
> 
> 
> _______________________________________________
> 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
> 


-- 
Jean-Pierre CHARRAS


Follow ups

References