Add specifying filename to editor
[erdslangetjie.git] / erdslangetjie / editor / editor.py
1 import sys
2 import os
3 import kivy
4 from erdslangetjie.data import filepath, load
5
6 kivy.require('1.6.0')
7
8 from kivy.app import App
9 from kivy.uix.widget import Widget
10
11
12
13 class EditorWindow(Widget):
14     def __init__(self, level):
15         if os.path.exists(filepath(level)):
16             self.level_data = load(level)
17             self.level = level
18         elif os.path.exists(filepath('levels/' + level)):
19             self.level_data = load('levels/' + level)
20             self.level = 'levels/' + level
21         else:
22             print 'Unable to find %s - treating this as a new level' % level
23             self.level_data = load('levels/blank.txt')
24             if 'levels/' in level:
25                 self.level = level
26             else:
27                 self.level = 'levels/' + level
28         super(EditorWindow, self).__init__()
29
30
31 class EditorApp(App):
32
33     def __init__(self, level):
34         self.level = level
35         super(EditorApp, self).__init__()
36
37     def build(self):
38         return EditorWindow(self.level)
39
40
41 def main():
42     if len(sys.argv) > 1:
43         level = sys.argv[1]
44     else:
45         level = 'level1.txt'
46     EditorApp(level).run()
47
48
49 if __name__ == '__main__':
50     main()