Exemplo n.º 1
0
    def __update(self, event):
        tr = Translate()
        text = self.__TextArea.get(1.0, END)[:-1]
        if len(text) > 0:
            bin = tr.toBin(text)
            doubles = tr.getDoubles()

            self.__TextTranslatedArea.delete(1.0, END)
            self.__TextTranslatedArea.insert(1.0, bin)
            self.__ListDict.delete(1, END)

            doubles = sorted(doubles, key=lambda x: x[1])
            doubles.reverse()
            for d in doubles:
                if len(d) == 2:
                    letter = d[0]
                    count = d[1]
                    if letter == " ":
                        letter = "[SPACE]"
                    elif letter == "µ":
                        letter = "[NewLine]"
                        count -= 0
                    if count > 0:
                        self.__ListDict.insert(self.__ListDict.size(),
                                               letter + ": " + str(count))

        else:
            self.__TextTranslatedArea.delete(1.0, END)
            self.__TextTranslatedArea.insert(
                1.0, "le code Huffman apparaitera ici !")
            self.__ListDict.delete(1, END)