Example #1
0
    def run(self):
        try:
            if self.rank == 1:
                for test in range(1, self.limit):
                    began = time()
                    kanji_set = []
                    while len(kanji_set) != 4:
                        kanji = Kanji.get_random(self.al.random_int())
                        if kanji is not None:
                            if kanji not in kanji_set:
                                kanji_set.append(kanji)
                    print 'Quadruple selected: ' + str(time() - began)
                    self.partDone.emit(float(test)/self.limit * 100)
            else:
                counter = 0.0
                while Kanji.picked_max() < self.rank:
                    began = time()
                    kanji_set = []
                    while len(kanji_set) != 4:
                        kanji = Kanji.get_random(self.al.random_int())
                        if kanji is not None:
                            if kanji not in kanji_set:
                                kanji_set.append(kanji)
                    print 'Quadruple selected: ' + str(time() - began)
                    counter += 0.0001
                    self.partDone.emit(float(counter) * 100)

        except Exception as e:
            print e.message

        self.over.emit(True)
Example #2
0
File: ui.py Project: Xifax/ransukan
    def run(self):
        try:
            kanji_set = []
            while len(kanji_set) != 4:
                kanji = Kanji.get_random(self.al.random_int())
                if kanji is not None:
                    # Should not get the same kanji in one set
                    if kanji not in kanji_set:
                        kanji_set.append(kanji)
            self.results['kanji_set'] = kanji_set
            self.results['success'] = True
        except MessedUpException as e:
            self.results['message'] = e.message

        self.done.emit(self.results)
Example #3
0
    def run(self):
        try:
            kanji_set = []
            while len(kanji_set) != 4:
                kanji = Kanji.get_random(self.al.random_int())
                if kanji is not None:
                    # Should not get the same kanji in one set
                    if kanji not in kanji_set:
                        kanji_set.append(kanji)
            self.results['kanji_set'] = kanji_set
            self.results['success'] = True
        except MessedUpException as e:
            self.results['message'] = e.message

        self.done.emit(self.results)
Example #4
0
    def eventFilter(self, object, event):

        if event.type() == QEvent.HoverEnter:
            object.setStyleSheet("QLabel { color: rgb(125, 125, 255); }")
        if event.type() == QEvent.HoverLeave:
            object.setStyleSheet("QLabel { color: rgb(0, 0, 0); }")
        if event.type() == QEvent.MouseButtonPress:
            if event.button() == Qt.LeftButton:
                try:
                    kanji = None
                    while kanji is None:
                        kanji = Kanji.get_random(
                            parent_up(object).al.random_int())
                    object.setText(kanji.character)
                    if object is parent_up(object).day:
                        parent_up(object).dayLabel.setText(
                            '<b>Day:</b> ' + str(kanji.frequency) + ' | ' +
                            str(kanji.dominance) + '%')
                    elif object is parent_up(object).week:
                        parent_up(object).weekLabel.setText(
                            '<b>Week:</b> ' + str(kanji.frequency) + ' | ' +
                            str(kanji.dominance) + '%')
                    elif object is parent_up(object).month:
                        parent_up(object).monthLabel.setText(
                            '<b>Month:</b> ' + str(kanji.frequency) + ' | ' +
                            str(kanji.dominance) + '%')
                    elif object is parent_up(object).year:
                        parent_up(object).yearLabel.setText(
                            '<b>Year:</b> ' + str(kanji.frequency) + ' | ' +
                            str(kanji.dominance) + '%')
                    parent_up(object).kanji_tooltip(object)
                    parent_up(object).stats.update_stat_info()
                    parent_up(object).stats.refresh_plot()
                except MessedUpException as e:
                    parent_up(object).show_message_then_hide(e.message)
            elif event.button() == Qt.RightButton:
                found = JDIC.search(object.text())
                if found:
                    parent_up(object).toggle_kanji_info(object, found)
                else:
                    parent_up(object).show_message_then_hide(
                        'No such kanji in kanjidic2!')
        return False
Example #5
0
File: ui.py Project: Xifax/ransukan
    def eventFilter(self, object, event):

        if event.type() == QEvent.HoverEnter:
            object.setStyleSheet("QLabel { color: rgb(125, 125, 255); }")
        if event.type() == QEvent.HoverLeave:
            object.setStyleSheet("QLabel { color: rgb(0, 0, 0); }")
        if event.type() == QEvent.MouseButtonPress:
            if event.button() == Qt.LeftButton:
                try:
                    kanji = None
                    while kanji is None:
                        kanji = Kanji.get_random(parent_up(object).al.random_int())
                    object.setText(kanji.character)
                    if object is parent_up(object).day:
                        parent_up(object).dayLabel.setText('<b>Day:</b> ' + str(kanji.frequency) + ' | '
                                                + str(kanji.dominance) + '%')
                    elif object is parent_up(object).week:
                        parent_up(object).weekLabel.setText('<b>Week:</b> ' + str(kanji.frequency) + ' | '
                                                + str(kanji.dominance) + '%')
                    elif object is parent_up(object).month:
                        parent_up(object).monthLabel.setText('<b>Month:</b> ' + str(kanji.frequency) + ' | '
                                                + str(kanji.dominance) + '%')
                    elif object is parent_up(object).year:
                        parent_up(object).yearLabel.setText('<b>Year:</b> ' + str(kanji.frequency) + ' | '
                                                + str(kanji.dominance) + '%')
                    parent_up(object).kanji_tooltip(object)
                    parent_up(object).stats.update_stat_info()
                    parent_up(object).stats.refresh_plot()
                except MessedUpException as e:
                    parent_up(object).show_message_then_hide(e.message)
            elif event.button() == Qt.RightButton:
                found = JDIC.search(object.text())
                if found:
                    parent_up(object).toggle_kanji_info(object, found)
                else:
                    parent_up(object).show_message_then_hide('No such kanji in kanjidic2!')
        return False