-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmain.py
74 lines (59 loc) · 2.22 KB
/
main.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
import kivy
kivy.require('1.9.0')
from kivy.app import App
from kivy.uix.screenmanager import ScreenManager, Screen, NoTransition
from kivy.properties import ObjectProperty
from kivy.uix.videoplayer import VideoPlayer
from kivy.core.audio import SoundLoader
from kivy.uix.actionbar import ActionBar
from kivy.uix.button import Button
from kivy.uix.image import Image
from kivy.uix.togglebutton import ToggleButton
class ScreenThree(Screen):
def test_on_enter(self, audname):
self.sound = SoundLoader.load(audname)
self.sound.play()
def on_play(self):
self.sound.play()
def on_stop(self):
self.sound.stop()
def on_leave(self):
pass
def onBackBtn(self):
self.sound.stop()
self.manager.current = self.manager.list_of_prev_screens.pop()
class ScreenTwo(Screen):
def test_on_enter(self, vidname):
self.vid = VideoPlayer(source=vidname, state='play',
options={'allow_stretch':False,
'eos': 'loop'})
self.add_widget(self.vid)
def on_leave(self):
pass
def onBackBtn(self):
self.vid.state = 'stop'
self.remove_widget(self.vid)
self.manager.current = self.manager.list_of_prev_screens.pop()
class ScreenOne(Screen):
def onNextScreen(self, btn, fileName):
self.manager.list_of_prev_screens.append(btn.parent.name)
self.manager.current = 'screen2'
self.manager.screen_two.test_on_enter('Resources/Videos/' + fileName +'.mp4')
def onNextScreenAudio(self, btn, fileName):
self.manager.list_of_prev_screens.append(btn.parent.name)
self.manager.current = 'screen3'
self.manager.screen_three.test_on_enter('Resources/Audios/' + fileName +'.wav')
class Manager(ScreenManager):
transition = NoTransition()
screen_one = ObjectProperty(None)
screen_two = ObjectProperty(None)
screen_three = ObjectProperty(None)
screen_four = ObjectProperty(None)
def __init__(self, *args, **kwargs):
super(Manager, self).__init__(*args, **kwargs)
self.list_of_prev_screens = []
class ScreensApp(App):
def build(self):
return Manager()
if __name__ == "__main__":
ScreensApp().run()