To provide a bit more information for those who have forgotten, here is an
excerpt from the MEP:
Abstract
The main goal of this MEP is to make it easier to modify (add, change,
remove) the way the user interacts with the figures.
The user interaction with the figure is deeply integrated within the Canvas
and Toolbar. Making extremely difficult to do any modification.
This MEP proposes the separation of this interaction into Toolbar,
Navigation and Tools to provide independent access and reconfiguration.
This approach will make easier to create and share tools among users. In
the far future, we can even foresee a kind of Marketplace for Tools where
the most popular can be added into the main distribution.
Detailed description
The reconfiguration of the Toolbar is complex, most of the time it requires
a custom backend.
The creation of custom Tools sometimes interferes with the Toolbar, as
example see https://github.com/matplotlib/matplotlib/issues/2694 also the
shortcuts are hardcoded and again not easily modifiable
https://github.com/matplotlib/matplotlib/issues/2699
The proposed solution is to take the actions out of the Toolbar and the
shortcuts out of the Canvas. This actions and shortcuts will be in the form
of Tools.
A new class Navigation will be the bridge between the events from the Canvas
and Toolbar and redirect them to the appropiate Tool.
At the end the user interaction will be divided into three classes:
- NavigationBase: This class is instantiated for each FigureManager and
connect the all user interactions with the Tools
- ToolbarBase: This existing class is relegated only as a GUI access to
Tools.
- ToolBase: Is the basic definition of Tools.
On Tue, Mar 17, 2015 at 8:29 AM, Federico Ariza <ariza.feder...@gmail.com>
wrote:
> Hello everybody.
>
> The implementation of MEP22 is pretty much completed
>
> https://github.com/matplotlib/matplotlib/pull/3652
>
> Please give it a try it's been sitting there for quite long time.
>
> Thanks
> Federico
>
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming The Go Parallel Website,
> sponsored
> by Intel and developed in partnership with Slashdot Media, is your hub for
> all
> things parallel software development, from weekly thought leadership blogs
> to
> news, videos, case studies, tutorials and more. Take a look and join the
> conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> Matplotlib-devel mailing list
> Matplotlib-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
>
>
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel