def _update_tree_store(self):
        """ Updates TreeStore of the Gtk.ListView according internal combo knowledge gained by
        _update_internal_data_base function call.
        """

        self.list_store.clear()
        if self.view_dict['transitions_internal'] and isinstance(self.model, ContainerStateModel) and \
                len(self.model.state.transitions) > 0:
            for transition_id in self.combo['internal'].keys():
                # print("TRANSITION_ID: ", transition_id, self.model.state.transitions)
                t = self.model.state.transitions[transition_id]

                if t.from_state is not None:
                    from_state = self.model.state.states[t.from_state]
                    from_state_label = from_state.name
                    from_outcome_label = from_state.outcomes[t.from_outcome].name
                else:
                    from_state_label = "self (" + self.model.state.name + ")"
                    from_outcome_label = ""

                if t.to_state is None:
                    to_state_label = "self (" + self.model.state.name + ")"
                    to_outcome = None if t.to_outcome is None else self.model.state.outcomes[t.to_outcome]
                    to_outcome_label = "None" if to_outcome is None else to_outcome.name
                else:
                    # print(t.to_state, self.model.states)
                    if t.to_state == self.model.state.state_id:
                        to_state_label = "self (" + self.model.state.name + ")"
                        to_outcome_label = self.model.state.outcomes[t.to_outcome].name
                    else:
                        to_state_label = self.model.state.states[t.to_state].name
                        to_outcome_label = None

                self.list_store.append([transition_id,  # id
                                        from_state_label,  # from-state
                                        from_outcome_label,  # from-outcome
                                        to_state_label,  # to-state
                                        to_outcome_label,  # to-outcome
                                        False,  # is_external
                                        t,
                                        self.model.state,
                                        True,
                                        self.model.get_transition_m(transition_id)])

        if self.view_dict['transitions_external'] and self.model.parent and \
                len(self.model.parent.state.transitions) > 0:
            for transition_id in self.combo['external'].keys():
                # print("TRANSITION_ID: ", transition_id, self.model.parent.state.transitions)
                try:
                    t = self.model.parent.state.transitions[transition_id]
                    # logger.info(str(t))
                    from_state = None
                    if t.from_state is not None:
                        from_state = self.model.parent.states[t.from_state].state

                    if from_state is None:
                        from_state_label = "parent (" + self.model.state.parent.name + ")"
                        from_outcome_label = ""
                    elif from_state.state_id == self.model.state.state_id:
                        from_state_label = "self (" + from_state.name + ")"
                        from_outcome_label = from_state.outcomes[t.from_outcome].name
                    else:
                        from_state_label = from_state.name
                        from_outcome_label = from_state.outcomes[t.from_outcome].name

                    if t.to_state == self.model.parent.state.state_id:
                        to_state_label = 'parent (' + self.model.parent.state.name + ")"
                        to_outcome_label = self.model.parent.state.outcomes[t.to_outcome].name
                    else:
                        if t.to_state == self.model.state.state_id:
                            to_state_label = "self (" + self.model.state.name + ")"
                        else:
                            to_state_label = self.model.parent.state.states[t.to_state].name
                        to_outcome_label = None

                    self.list_store.append([transition_id,  # id
                                            from_state_label,  # from-state
                                            from_outcome_label,  # from-outcome
                                            to_state_label,  # to-state
                                            to_outcome_label,  # to-outcome
                                            True,  # is_external
                                            t,
                                            self.model.state,
                                            True,
                                            self.model.parent.get_transition_m(transition_id)])
                except Exception as e:
                    logger.warning("There was a problem while updating the data-flow widget TreeStore. {0}".format(e))
Updates TreeStore of the Gtk.ListView according internal combo knowledge gained by
        _update_internal_data_base function call.