MEP22 new proposal for user interaction

Hello everybody.

I just created a new
MEPhttps://github.com/matplotlib/matplotlib/wiki/Mep22 that is open
for discussion and destruction.

Background:

In my way to get a MultiFigureManager PR
https://github.com/matplotlib/matplotlib/pull/2465 we came to the
conclusion that the work has to be splitted in smaller PRs.

One of the goals of my PR was to "Be able to easily modify the toolbar
adding and removing toolitems." This mostly breakes the existing
infrastructure of Toolbar.

Working on a smaller PR https://github.com/matplotlib/matplotlib/pull/2557
to address this point, it became clear that a more radical change was
needed to have a clean interface for "User Interaction tools"

To make it easier to discuss, I created the MEP22 proposing a
separation of powers (insert political joke here). It is open to all
kind of modifications so don't be shy.

As reference, there are a couple of previous PRs relating to this
https://github.com/matplotlib/matplotlib/pull/1849 and
https://github.com/matplotlib/matplotlib/pull/2557
Both of these don't address the problem of reconfiguration

Thank you
Federico

···

--
Y yo que culpa tengo de que ellas se crean todo lo que yo les digo?

-- Antonio Alducin --

This looks quite good to me.

I'd like some feedback from Thomas Caswell, who's looked at this part of the code much more than I have lately, but assuming he's ok, you have my go ahead to start the implementation.

Cheers,
Mike

···

On 01/08/2014 10:55 AM, Federico Ariza wrote:

Hello everybody.

I just created a new
MEPhttps://github.com/matplotlib/matplotlib/wiki/Mep22 that is open
for discussion and destruction.

Background:

In my way to get a MultiFigureManager PR
Tabbed gtk3 figuremanager by fariza · Pull Request #2465 · matplotlib/matplotlib · GitHub we came to the
conclusion that the work has to be splitted in smaller PRs.

One of the goals of my PR was to "Be able to easily modify the toolbar
adding and removing toolitems." This mostly breakes the existing
infrastructure of Toolbar.

Working on a smaller PR Splitting navigation and toolbar by fariza · Pull Request #2557 · matplotlib/matplotlib · GitHub
  to address this point, it became clear that a more radical change was
needed to have a clean interface for "User Interaction tools"

To make it easier to discuss, I created the MEP22 proposing a
separation of powers (insert political joke here). It is open to all
kind of modifications so don't be shy.

As reference, there are a couple of previous PRs relating to this
NavigationToolbar2 refactored into NavigationBase and Toolbar2Base by warrd · Pull Request #1849 · matplotlib/matplotlib · GitHub and
Splitting navigation and toolbar by fariza · Pull Request #2557 · matplotlib/matplotlib · GitHub
Both of these don't address the problem of reconfiguration

Thank you
Federico

--
                    _

\/|o _|_ _. _ | | \.__ __|__|_|_ _ _ ._ _
>>(_| |(_|(/_| |_/|(_)(/_|_ |_|_)(_)(_)| | |

This looks quite good to me.

And to me. If the implementation works out well, this will be a very nice and much needed refactoring.

Eric

···

On 2014/01/13 5:11 AM, Michael Droettboom wrote:

I'd like some feedback from Thomas Caswell, who's looked at this part of
the code much more than I have lately, but assuming he's ok, you have my
go ahead to start the implementation.

Cheers,
Mike

On 01/08/2014 10:55 AM, Federico Ariza wrote:

Hello everybody.

I just created a new
MEPhttps://github.com/matplotlib/matplotlib/wiki/Mep22 that is open
for discussion and destruction.

Background:

In my way to get a MultiFigureManager PR
Tabbed gtk3 figuremanager by fariza · Pull Request #2465 · matplotlib/matplotlib · GitHub we came to the
conclusion that the work has to be splitted in smaller PRs.

One of the goals of my PR was to "Be able to easily modify the toolbar
adding and removing toolitems." This mostly breakes the existing
infrastructure of Toolbar.

Working on a smaller PR Splitting navigation and toolbar by fariza · Pull Request #2557 · matplotlib/matplotlib · GitHub
   to address this point, it became clear that a more radical change was
needed to have a clean interface for "User Interaction tools"

To make it easier to discuss, I created the MEP22 proposing a
separation of powers (insert political joke here). It is open to all
kind of modifications so don't be shy.

As reference, there are a couple of previous PRs relating to this
NavigationToolbar2 refactored into NavigationBase and Toolbar2Base by warrd · Pull Request #1849 · matplotlib/matplotlib · GitHub and
Splitting navigation and toolbar by fariza · Pull Request #2557 · matplotlib/matplotlib · GitHub
Both of these don't address the problem of reconfiguration

Thank you
Federico