-
Notifications
You must be signed in to change notification settings - Fork 0
/
home.py
108 lines (95 loc) · 5.6 KB
/
home.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
from kivy.app import App
from kivy.clock import Clock
from kivy.uix.label import Label
from kivy.lang.builder import Builder
import kivy
from kivy.resources import resource_add_path
import os
import ViewSelectSequenceType
import ViewSelectSequenceFile
from kivy.uix.screenmanager import ScreenManager, Screen
import ControllerSecretary as ControllerSecretary
import ViewTargetSequence
import ViewOutputDestination
import ViewReview
import sys
import ViewSuccess
from kivy.deps import sdl2, glew
from kivy.core.window import Window
Window.clearcolor = (.901, .901, .901, 1)
project_directory = os.path.dirname(os.path.abspath(__file__))
class SequenceFinderApp(App):
session_secretary = None
def resource_path(self):
if hasattr(sys, '_MEIPASS'):
return os.path.join(sys._MEIPASS)
return os.path.join(os.path.abspath("."))
def __init__(self, **kwargs):
super().__init__(**kwargs)
kivy.resources.resource_add_path(self.resource_path())
self.session_secretary = ControllerSecretary.ControllerSecretary()
self.sm = ScreenManager()
self.sm.add_widget(ViewSelectSequenceType.ViewSelectSequenceType(name="Sequence Type",
secretary=self.session_secretary,
next_screen="File name",
screen_manager=self.sm))
self.sm.add_widget(ViewSelectSequenceFile.ViewSelectSequenceFile(name="File name",
previous_screen="Sequence Type",
next_screen="Target",
secretary=self.session_secretary,
screen_manager=self.sm))
self.sm.add_widget(ViewTargetSequence.ViewTargetSequence(name="Target",
next_screen="Save",
previous_screen="File name",
secretary=self.session_secretary,
screen_manager=self.sm
))
self.sm.add_widget(ViewOutputDestination.ViewOutputDestination(
name="Save",
next_screen="Review",
previous_screen="Target",
secretary=self.session_secretary,
screen_manager=self.sm
))
self.sm.add_widget(ViewReview.ViewReview(name="Review", next_screen="Success", previous_screen="Save",
screen_manager=self.sm, secretary=self.session_secretary))
self.sm.add_widget(ViewSuccess.ViewSuccess(name="Success", previous_screen="Review",
secretary=self.session_secretary,
screen_manager=self.sm, home=self))
self.sm.current = "Sequence Type"
def set_screens(self):
'''
self.session_secretary = ControllerSecretary.ControllerSecretary()
self.sm.add_widget(ViewSelectSequenceType.ViewSelectSequenceType(name="Sequence Type",
secretary=self.session_secretary,
next_screen="File name",
screen_manager=self.sm))
self.sm.add_widget(ViewSelectSequenceFile.ViewSelectSequenceFile(name="File name",
previous_screen="Sequence Type",
next_screen="Target",
secretary=self.session_secretary,
screen_manager=self.sm))
self.sm.add_widget(ViewTargetSequence.ViewTargetSequence(name="Target",
next_screen="Save",
previous_screen="File name",
secretary=self.session_secretary,
screen_manager=self.sm
))
self.sm.add_widget(ViewOutputDestination.ViewOutputDestination(
name="Save",
next_screen="Review",
previous_screen="Target",
secretary=self.session_secretary,
screen_manager=self.sm
))
self.sm.add_widget(ViewReview.ViewReview(name="Review", next_screen="Success", previous_screen="Save",
screen_manager=self.sm, secretary=self.session_secretary))
self.sm.add_widget(ViewSuccess.ViewSuccess(name="Success", previous_screen="Review",
secretary=self.session_secretary,
screen_manager=self.sm, home=self))
self.sm.current = "Sequence Type"
'''
def build(self):
return self.sm
if __name__ == '__main__':
SequenceFinderApp().run()