コード例 #1
0
    def __activate(self):
        if self.__lang is not None: return

        self.__lang = ScLang(self.__plugin)
        if not self.__lang.start():
            self.__lang = None
            self.__actions.get_action("ScedSuperColliderMode").set_active(
                False)
            return

        self.__log_panel = LogPanel()
        panel = self.__window.get_bottom_panel()
        panel.show()
        panel.add_item(self.__log_panel, _("SuperCollider output"),
                       gtk.STOCK_EXECUTE)
        self.__log_panel.show()
        self.__insert_sc_menu()

        self.__logger = Logger(self.__lang.stdout, self.__log_panel)
コード例 #2
0
    def on_sc_mode_activate(self, action):
        if action.get_active():
            self.__log_panel = LogPanel()
            panel = self.__window.get_bottom_panel()
            panel.show()
            panel.add_item(self.__log_panel, _("SuperCollider output"), gtk.STOCK_EXECUTE)
            self.__log_panel.show()

            self.__lang = ScLang(self.__plugin)
            self.__lang.start()

            self.__logger = Logger(self.__lang.stdout, self.__log_panel)
            self.__insert_sc_menu()
        else:
            panel = self.__window.get_bottom_panel()
            panel.remove_item(self.__log_panel)
            # FIXME: un-record
            self.__lang.stop()
            self.__logger.stop()
            self.__remove_sc_menu()