def __init__(self, notebook):
        Editor.__init__(self, notebook)

        self.buf = ShellBuffer(self.notebook)
        self.view = ShellView(self.buf)
        self.config_state = None

        self.view.connect('notify::sidebar-open', self.on_notify_sidebar_open)

        global_settings.watch('editor-font-is-custom', self.__update_font)
        global_settings.watch('editor-font-name', self.__update_font)
        self.__update_font()

        self.widget = ViewSidebarLayout()
        self.widget.set_view(self.view)
        self.widget.set_sidebar(self.view.sidebar)
        self.widget.set_sidebar_open(self.view.sidebar_open)
        self.widget.connect('notify::sidebar-width',
                            self.on_notify_sidebar_width)

        self.widget.show_all()

        self.buf.worksheet.sig_filename_changed.connect(
            lambda *args: self._update_filename())
        self.buf.worksheet.sig_file.connect(lambda *args: self._update_file())
        self.buf.worksheet.sig_code_modified.connect(
            lambda *args: self._update_modified())
        self.buf.worksheet.sig_state.connect(
            lambda *args: self._update_state())
    def __init__(self, notebook):
        Editor.__init__(self, notebook)

        self.buf = ShellBuffer(self.notebook, edit_only=True)
        self.view = ShellView(self.buf)

        self.__font_is_custom_connection = global_settings.watch(
            'editor-font-is-custom', self.__update_font)
        self.__font_name_connection = global_settings.watch(
            'editor-font-name', self.__update_font)
        self.__update_font()

        self.widget = gtk.ScrolledWindow()
        self.widget.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)

        self.widget.add(self.view)

        self.widget.show_all()

        self.buf.worksheet.sig_filename_changed.connect(
            lambda *args: self._update_filename())
        self.buf.worksheet.sig_file.connect(lambda *args: self._update_file())
        self.buf.worksheet.sig_code_modified.connect(
            lambda *args: self._update_modified())