'Show all figures.
`show` blocks by calling `mainloop` if *block* is ``True``, or if it
is ``None`` and we are neither in IPython\'s ``%pylab`` mode, nor in
`interactive` mode.'

@classmethod
def show(cls, block=None):

    if (cls.mainloop is None):
        return
    managers = Gcf.get_all_fig_managers()
    if (not managers):
        return
    for manager in managers:
        manager.show()
    if (block is None):
        from matplotlib import pyplot
        try:
            ipython_pylab = (not pyplot.show._needmain)
        except AttributeError:
            ipython_pylab = False
        block = ((not ipython_pylab) and (not is_interactive()))
        if (get_backend() == u'WebAgg'):
            block = True
    if block:
        cls.mainloop()
