X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=erdslangetjie%2Feditor%2Feditor.py;h=998ad4057e90e4d4c3ea4b0cfad29a9e3eb42474;hb=df49c5d20f821b566981248725ba23cb10858655;hp=2d635d57d2701e599991db1833044234b547859d;hpb=7d29b66d3a08cb692a4a67c4dae9886852872cf9;p=erdslangetjie.git diff --git a/erdslangetjie/editor/editor.py b/erdslangetjie/editor/editor.py index 2d635d5..998ad40 100644 --- a/erdslangetjie/editor/editor.py +++ b/erdslangetjie/editor/editor.py @@ -1,23 +1,54 @@ +import sys +import os import kivy +from erdslangetjie.data import filepath, load kivy.require('1.6.0') from kivy.app import App +from kivy.logger import Logger, LoggerHistory from kivy.uix.widget import Widget + class EditorWindow(Widget): - pass + def __init__(self, level): + if os.path.exists(filepath(level)): + self.level_data = load(level) + self.level = level + elif os.path.exists(filepath('levels/' + level)): + self.level_data = load('levels/' + level) + self.level = 'levels/' + level + else: + print 'Unable to find %s - treating this as a new level' % level + self.level_data = load('levels/blank.txt') + if 'levels/' in level: + self.level = level + else: + self.level = 'levels/' + level + super(EditorWindow, self).__init__() class EditorApp(App): + def __init__(self, level): + self.level = level + super(EditorApp, self).__init__() + def build(self): - return EditorWindow() + return EditorWindow(self.level) def main(): - EditorApp().run() + if len(sys.argv) > 1: + level = sys.argv[1] + else: + level = 'level1.txt' + # Uncomment to silence excessive logging + #for hdlr in Logger.handlers[:]: + # if not isinstance(hdlr, LoggerHistory): + # Logger.removeHandler(hdlr) + EditorApp(level).run() if __name__ == '__main__':