FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Removing figureoptions from subclassed NavigationToolbar2QT · Issue #4574 · matplotlib/matplotlib · GitHub

Repository navigation

Removing figureoptions from subclassed NavigationToolbar2QT #4574

Closed

Description

Subclassing a NavigationToolbar2QT allows one to add and remove buttons on the navigation bar. However, the figure options menu remains and cannot be removed like the other default buttons. I was able to construct a temporary solution by importing matplotlib.backends.backend_qt and setting figureoptions = None. Please see below example:

from matplotlib.backends.backend_qt4agg import NavigationToolbar2QT
import matplotlib.backends.backend_qt5 as backend


class MplToolbar(NavigationToolbar2QT):
    def __init__(self, canvas_, parent_):
        backend.figureoptions = None  # Monkey patched to kill the figure options button on matplotlib toolbar

        self.toolitems = (
            ('Home', 'Reset original view', 'home', 'home'),
            ('Back', 'Back to previous view', 'back', 'back'),
            ('Forward', 'Forward to next view', 'forward', 'forward'),
            (None, None, None, None),
            ('Pan', 'Pan axes with left mouse, zoom with right', 'move', 'pan'),
            ('Zoom', 'Zoom to rectangle', 'zoom_to_rect', 'zoom'),
            (None, None, None, None),
            ('Save', 'Save the current image', 'filesave', 'save_figure'),
            )
        NavigationToolbar2QT.__init__(self, canvas_, parent_)

Is there another, better solution out there? Appreciated!

Activity

  1. tacaswell commented on Jul 1, 2015

    Member

    We are in the process of completely overhauling how the toolbars are build and managed.

    attn @OceanWolf @fariza

  2. tacaswell commented on Jul 1, 2015

    Member

    Sorry, hit the wrong button, did not mean to close this issue!

  3. OceanWolf commented on Jul 1, 2015

    Member

    @jclark754 short answer right now no, but in the next release yes.

    As @tacaswell explains, we currently overhaul all of the Toolbar #3652 (and Window #4143) logic, introducing a completely new Toolbar/Tool system allowing you to do all the kind of tool changes you want and in a 100% backend neutral way.

    If you use the bleeding edge master branch then you can already use the overhauled toolbars on the GTK3 and Tk backends, however the Window refactor (not yet in master) will make a few small adjustments, fixing a few of the remaining issues we had with the new toolbar, after that the other backends should follow quite rapidly, ready in time for the next release.

  4. added this to the milestone on Jul 7, 2015
  5. fariza commented on Sep 10, 2015

    Member

    @jclark754 did @OceanWolf comment answer your question?

  6. fariza commented on Sep 14, 2015

    Member

    Closing this, as the changes are already in place for this to work with the new Toolbar and Toolmanager

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions


      Back | FazBrowse Home | New Git URL