class Editor: def __init__(self): bg = new(window.Image()) bg.src = js('/media/editor/images/trans-bg-big.png') window.layouts['main']['items'][2]['items'][0]['buttons'][0]['handler'] = self.onProjectInfoSave new(window.Ext.Viewport(window.layouts['main'])) self.pid = None project_name = str(window.location.hash)[1:] if not project_name: window.location = js('/create/') self.nav = NavMan(self) self.media = MediaManager(self) self.loader = Loader(self, project_name) self.sprites = SpriteEditor(self) self.objects = ObjectEditor(self) self.maps = MapEditor(self) self.editors = {'sprites': self.sprites, 'objects':self.objects, 'maps':self.maps} def load(self, project, assets, loader): self.project = project self.pid = project['pk'] self.assets = assets self.populate_project_info() window.setTimeout(lambda:self.reloadFolders(loader), 100) def reloadFolders(self, loader): def cb(context): loader.increment() if loader.isDone(): loader.done() self.nav.reload('sprites', cb) self.nav.reload('objects', cb) self.nav.reload('maps', cb) def populate_project_info(self): form = js.jq('#project-info form') js.jq('input[name=title]').val(self.project['fields']['title']) js.jq('input[name=version]').val(self.project['fields']['version']) js.jq('textarea[name=description]').val(self.project['fields']['description']) window.Ext.getCmp('project-status').setValue(self.project['fields']['status']) def attach_buttons(self): window.Ext.getCmp('new-sprite-button').on('click', self.new_sprite); window.Ext.getCmp('new-object-button').on('click', self.new_object); window.Ext.getCmp('new-map-button').on('click', self.new_map); def onProjectInfoSave(self, *a): print 'saving pinfo!'
def __init__(self): bg = new(window.Image()) bg.src = js('/media/editor/images/trans-bg-big.png') window.layouts['main']['items'][2]['items'][0]['buttons'][0]['handler'] = self.onProjectInfoSave new(window.Ext.Viewport(window.layouts['main'])) self.pid = None project_name = str(window.location.hash)[1:] if not project_name: window.location = js('/create/') self.nav = NavMan(self) self.media = MediaManager(self) self.loader = Loader(self, project_name) self.sprites = SpriteEditor(self) self.objects = ObjectEditor(self) self.maps = MapEditor(self) self.editors = {'sprites': self.sprites, 'objects':self.objects, 'maps':self.maps}