:mod:`dip.shell.shells.main_window`
===================================
.. module:: dip.shell.shells.main_window

This module contains the implementation of a main window based
:term:`shell`.


:class:`MainWindowShell`
------------------------
.. class:: MainWindowShell

    Base class: :class:`~dip.shell.BaseShellFactory`

    The MainWindowShell class is a factory for shells that are implemented
    as a toolkit specific main window.

    .. attribute:: main_window = Instance(MainWindow)

        The main window factory.

    .. method:: MainWindowShell.create_shell(model, controller, parent)

        Create the view that implements the shell.
        
        :param model:
            is the model.
        :param controller:
            is the controller.
        :param parent:
            is the optional parent view.
        :return:
            the shell.
