Exemple #1
0
    def _add_special_input(self, text):
        special_input = text.split('=')[0].strip()
        text = text.split('=')[1].strip()

        table = StringUtils.get_table_from_input(text)

        builder = CategoricalTableBuilder(special_input)
        for key, value in table.items():
            builder.add_row(key, value)

        self._system.add_content(builder.build())
Exemple #2
0
    def _add_incremental_utterance(self, text):
        follow_previous = text.startswith('/')
        incomplete = text.endswith('/')
        text = text.replace('/', '').strip()

        table = StringUtils.get_table_from_input(text)

        # TODO: Use Thread
        self._system.add_content(
            Assignment(self._system.get_settings().user_speech,
                       'busy' if incomplete else 'None'))
        self._system.add_incremental_user_input(table, follow_previous)
        if not incomplete:
            self._system.get_state().set_as_committed(
                self._system.get_settings.user_input)
Exemple #3
0
    def AddToChatLogUser(self):
        umsg = self.userinput.text().strip()
        if self._system._paused:
            self.userinput.setText("")
        else:
            self.userinput.setText("")

            if umsg is '':
                return

            if '/' in umsg:
                self._add_incremental_utterance(umsg)
            elif '=' in umsg:
                self._add_special_input(umsg)
            else:
                self._system.add_user_input(
                    StringUtils.get_table_from_input(umsg))