← Back to team overview

kicad-developers team mailing list archive

Re: wxAui improvements.

 

On 12/9/2013 12:08 PM, jp charras wrote:
> Le 09/12/2013 16:50, Wayne Stambaugh a écrit :
>> On 12/9/2013 10:29 AM, jp charras wrote:
>>> Le 09/12/2013 15:06, Wayne Stambaugh a écrit :
>>>> On 12/9/2013 3:49 AM, Maciej Sumiński wrote:
>>>>> On 12/07/2013 01:42 AM, Wayne Stambaugh wrote:
>>>>>> I have just committed a small change to the testing branch (r4529) to
>>>>>> the Pcbnew footprint viewer that will allow the main toolbar to be
>>>>>> dockable.  I would like some feedback about how well saving and loading
>>>>>> the window state between session works on various platforms before I
>>>>>> start to do this to all of the KiCad application main frame windows.
>>>>>> The wxAui stuff was put in place a few years ago with the intent that
>>>>>> all of the fancy layout features would be enabled.  Since that hasn't
>>>>>> happened I thought I would start working on it incrementally rather than
>>>>>> get carried away an create a lot of problems.  When you have some spare
>>>>>> time, please test it and let me know if there are any major issues.  I
>>>>>> don't have wxWidgets 3 on my Linux partition and no access to OSX so
>>>>>> feedback from those users is very important since I cannot test those
>>>>>> platforms.
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> Wayne
>>>>>
>>>>> Hi Wayne,
>>>>>
>>>>> It is a great idea to have dockable toolbars. I tested it with wxWidgets
>>>>> 2.8/Linux and the freshest wxWidgets 3.0 and in general it works fine
>>>>> and the position of toolbar is saved.
>>>>> One major problem I stumbled upon is that while using wx3.0, I somehow
>>>>> lost the toolbar and now I cannot recover it. It could be an issue of my
>>>>> window manager, but anyway - it could be good to have a menu where one
>>>>> can toggle toolbars visibility.
>>>>>
>>>>> Regards,
>>>>> Orson
>>>>>
>>>>
>>>> Hey Orson,
>>>>
>>>> You should not be able to close the footprint viewer tool bar.  I
>>>> intentionally have the close button disabled.  If you managed to close
>>>> it, then there is a bug in wxWidgets.  What platform and wxWidgets
>>>> version where you using when this occurred?  If I can duplicate it, I
>>>> might be able to fix it.  As I apply this to the other KiCad apps, I
>>>> will add menu entries to show tool bars that have been closed.
>>>> Unfortunately the footprint viewer does not have a menu so I may have to
>>>> do something about that in the future if we want to be able to hide the
>>>> tool bars.  Thanks for the help with testing.
>>>>
>>>> Cheers,
>>>>
>>>> Wayne
>>>
>>> I am using wxWidgets 3.0
>>> I do not have this issue.
>>> However I noticed 2 minor issues (both on Windows and Linux):
>>>
>>> 1 - When the footprint viewer tool bar is stored vertical, when the
>>> footprint viewer is reopened, the tool-bar is displayed horizontally,
>>> inside a large rectangle.
>>> To reproduce this: move the tool-bar tho the left side, to have it
>>> displayed vertically. then move it to the center of the windows. it is
>>> still vertical. Close and reopen the viewer: the toolbar is horizontal,
>>> inside a large square background.
>>
>> It sounds like the wxAui perspective information is either not getting
>> saved or loaded correctly.  All of this is handled by wxAuiManager.  It
>> could also be a wxAuiPaneInfo configuration issue.  I'll see if I can
>> resolve these issues.
> 
> If the toolbar is docked vertically at a side, it is correctly reopened.
> The issue is only when it is far from its window sides.

I now see what you mean.  I originally thought this happened anytime the
toolbar was undocked and in the vertical orientation but it appears that
it does matter how far way from the edge of the window the toolbar is
located.  This behavior is odd.  I might have to break down and ask
someone on the wxWidgets mailing list if they know what's going on here.
 I also stumbled on Orson's disappearing toolbar problem.  When the
toolbar is floating and has the focus and you type Alt-F4, the toolbar
is closed not the main window.  This will probably require writing a
custom toolbar class derived from wxAuiToolBar to ignore the Alt-F4
keyboard accelerator.  I knew this wasn't going to be easy :).

> 
>>
>>>
>>> 2 - the second issue is relative to the optional tool to the right side
>>> of the toolbar (the tool to import a footprint from the viewer to the
>>> pcb editor).
>>> It is a bit strange:
>>> * if the toolbar is docked vertical at the left side, it is always
>>> correctly displayed.
>>> * if the toolbar is docked horizontally, it is not always correctly
>>> displayed:
>>> if previously the viewer was opened from the pcb editor tool bar, and
>>> therefore with no import tool, when it is reopened from the footprint
>>> load dialog (load from viewer), the import tool is not displayed (it is
>>> still accessible from the overflow arrow)
>>> Slightly moving the aui toolbar restores the correct display.
>>> if you reopen the viewer from the main toolbar, the optional tool is not
>>> displayed (as expected) but its area is visible in the toolbar.
>>> (Slightly moving the aui toolbar restores the correct display again.)
>>>
>>> Looks like an incorrect toolbar size was forced when reopen it.
>>>
>>
>> I did see the toolbar size problem when it was in the vertical
>> orientation and undocked from the main window.  I'm not sure what is
>> going on there.  Try deleting the ModViewFramePerpective
>> entry from the .pcbnew configuration file in you home folder and see if
>> that helps.  If I can't get it resolved, we may have to live with the
>> fixed tool bar positions until wxAui is more mature.
>>
>> Thanks,
>>
>> Wayne
> 
> We also can always show this tool, just disabled or enabled the tool,
> depending on it can be used or no.
> 

That's exactly what I planned to do.  I just added to my todo list about
an hour ago.  It might not be bad idea to always leave the insert
footprint button enabled.  This way if your browsing footprints and come
across something you want to add to the board, you wont have to exit out
of the viewer to add it with the add footprint tool.  If memory serves,
there was a bug filed about making this the default anytime you open the
viewer.  Maybe it was to Eeschema component viewer but the concept is
the same.

Wayne




References