예제 #1
0
 def draw_uix(self):
     self.test_field.add_widget(utils.microgrid(False, self.prvni))
     self.test_field.add_widget(utils.microgrid(False, self.druhy))
     self.test_field.add_widget(utils.microgrid(False, self.treti))
     self.test_field.add_widget(utils.microgrid(False, self.ctvrty))
     self.test_field.add_widget(utils.microgrid(False, self.paty))
     self.test_field.add_widget(self.number_list)
     self.add_widget(self.test_field)
     super(SevenTest, self).draw_uix()
예제 #2
0
 def draw_uix(self):
     self.test_field.add_widget(
         utils.microgrid(False, utils.AudioButton("sounds/ins4-2.mp3"),
                         self.normal_chb, self.normal_lb,
                         utils.AudioButton("sounds/ins4-3.mp3")))
     self.test_field.add_widget(
         utils.microgrid(False, utils.AudioButton("sounds/ins4-4.mp3"),
                         self.reverse_chb, self.reverse_lb))
     self.add_widget(self.test_field)
     super(NumberTest, self).draw_uix()
예제 #3
0
 def draw_uix(self):
     self.test_field.add_widget(
         utils.microgrid(
             False, *[
                 utils.microgrid(False, self.ch_boxes[label], label)
                 for label in self.labels
             ]))
     self.test_field.add_widget(
         Label(text=datetime.datetime.now().strftime("%H:%M %d. %h")))
     self.add_widget(self.test_field)
     super(OrientationTest, self).draw_uix()
예제 #4
0
    def result_screen(self, *args):
        self.desetup_tests()
        screen = GridLayout(cols=1)
        save_button = Button(text="Export")
        save_button.bind(
            on_press=lambda x: self.subject.save_results(self.tests))
        with screen.canvas.before:
            Color(.2, .2, .2)
            Rectangle(size=Window.size)

        for desc, test_list in self.tests.values():
            screen.add_widget(Label(text=desc))

            if len(test_list) > 1:
                points = [t.export_layout() for t in test_list] + [
                    Label(text=str(sum([t.points for t in test_list])))
                ]

            else:
                points = [test_list[0].export_layout()]

            screen.add_widget(microgrid(False, *points))

        screen.add_widget(save_button)

        self.add_widget(screen)
예제 #5
0
 def draw_uix(self):
     self.add_widget(self.wordlist)
     self.test_field.add_widget(self.text_field)
     self.test_field.add_widget(
         utils.microgrid(False, self.undo_button, self.count_lb,
                         self.counter_button))
     self.add_widget(self.test_field)
     super(KTest, self).draw_uix()
예제 #6
0
 def draw_uix(self):
     self.test_field.add_widget(
         utils.microgrid(
             False, self.start_btn,
             self.letters_lb))  # self.hide_btn, self.letters_lb))
     self.test_field.add_widget(self.clap_btn)
     self.add_widget(self.test_field)
     super(LettersTest, self).draw_uix()
예제 #7
0
    def draw_uix(self):
        self.test_field.add_widget(Label(text="Bez nápovědy", size_hint_x=.3))
        """ This is cheaky and i like it. Basicly, iterates thru all labels, create microgrid from 
			Label and first try, which is important... not really, and from all this, create new microgrid,
			so i can easily add labels to side.
		"""
        self.test_field.add_widget(
            utils.microgrid(
                False, *[
                    utils.microgrid(True, x, self.f_try[x])
                    for x in self.labels
                ]))
        self.test_field.add_widget(Label(text="Kategoriální", size_hint_x=.3))
        self.test_field.add_widget(
            utils.microgrid(False, *[self.s_try[x] for x in self.labels]))
        self.test_field.add_widget(Label(text="Výběr", size_hint_x=.3))
        self.test_field.add_widget(
            utils.microgrid(False, *[self.t_try[x] for x in self.labels]))

        self.add_widget(self.test_field)
        super(AdvancedRememberTest, self).draw_uix()
예제 #8
0
    def welcome_screen(self):
        screen = GridLayout(cols=1, size_hint=(.60, .6), pos_hint={"x":.2, "y":.3}, row_default_height=70, row_force_default=True)
        with screen.canvas.before:
            Color(.2,.2,.2)
            Rectangle(size=Window.size)
        name = TextInput(multiline=False, size_hint=(.3, .1), hint_text=u"Jméno",  font_size=60 )
        mez = Label(text=u"",  font_size=10,  height = 5)
        age = TextInput(multiline=False, size_hint=(.1, .1), hint_text=u"Věk",  font_size=60 )
        mez1 = Label(text=u"",  font_size=10,  height = 5)
        edu = TextInput(multiline=False, size_hint=(.15, .1), hint_text=u"Vzdělání",  font_size=60 )
        mez2 = Label(text=u"",  font_size=10,  height = 5)
        study = TextInput(multiline=False,text='DV', hint_text="Studie")
        mez3 = Label(text=u"",  font_size=10,  height = 5)
        start_button = Button(text="Start", size_hint=(.25,.3),  font_size=60 )
        sex_m = CheckBox(text=u"Muž", group="sex")
        sex_f = CheckBox(label=u"Žena", group="sex")
        lab_sex_m = Label(text=u"Muž",  font_size=60 )
        lab_sex_f = Label(text=u"Žena",  font_size=60 )
        sex = microgrid(False, lab_sex_m, sex_m, lab_sex_f, sex_f)
        
        screen.add_widget(name)
        screen.add_widget(mez)
        screen.add_widget(edu)
        screen.add_widget(mez1)
        screen.add_widget(age)
        screen.add_widget(mez2)
        screen.add_widget(sex)
        screen.add_widget(mez3)
        screen.add_widget(start_button)
        
        def start_btn(self, button):
            try:
                if not os.path.exists("/sdcard/vysledky/{0}".format(study.text)):
                    os.makedirs("/sdcard/vysledky/{0}".format(study.text))

                self.subject = Person(name=name.text, age=age.text,
                                      edu=edu.text, sex = "m" if sex_m.active else "f",
                                      study=study.text)
                self.remove_widget(screen)
                self.setup_tests()
            except:
                pass 
        
        start_button.bind(on_press=partial(start_btn, self))
        self.add_widget(screen)
예제 #9
0
    def draw_uix(self):
        self.test_field.add_widget(Label(text="Slovo", size_hint_x=.3))
        self.test_field.add_widget(
            utils.microgrid(
                False,
                *([utils.microgrid(True, label) for label in self.labels] +
                  [utils.AudioButton("sounds/ins3-2.mp3")])))

        self.test_field.add_widget(Label(text="1. pokus", size_hint_x=.3))
        self.test_field.add_widget(
            utils.microgrid(
                False,
                *([
                    utils.microgrid(True, self.f_try[label])
                    for label in self.labels
                ] + [
                    utils.AudioButton("sounds/ins3-3.mp3",
                                      size_hint=(None, None),
                                      width=32,
                                      height=32)
                ])))

        self.test_field.add_widget(Label(text="2. pokus", size_hint_x=.3))
        self.test_field.add_widget(
            utils.microgrid(
                False,
                *([
                    utils.microgrid(True, self.s_try[label])
                    for label in self.labels
                ] + [
                    utils.AudioButton("sounds/ins3-4.mp3",
                                      size_hint=(None, None),
                                      width=32,
                                      height=32)
                ])))

        self.add_widget(self.test_field)
        super(RememberTest, self).draw_uix()
예제 #10
0
 def export_layout(self):
     return utils.microgrid(True, Label(text=self.desc),
                            Label(text=str(self.points)))