Mercurial > fife-parpg
view clients/editor/fifedit.py @ 141:5e85737281bc
- some modification to loaders and serializers/xmlmap, now you can set a callback which informs you about finished parts of the maploading process
- this can be used to prepare other parts of your client (e. g. load ingame gui) or to show a maploading progress bar
USAGE (example):
- map = loadMapFile(mapfile, engine, my_callback)
- def mycallback(msg, percent): print msg; print percent
author | chewie@33b003aa-7bff-0310-803a-e67f0ece8222 |
---|---|
date | Fri, 03 Oct 2008 12:14:39 +0000 |
parents | 4a0efb7baf70 |
children | 28532ae6f9f6 |
line wrap: on
line source
# coding: utf-8 import fife import pychan import pychan.widgets as widgets class Fifedit(): """ Fifedit is the editor tool. It is designed to be embedded in clients, most notably the editor. Fifedit is a plugin system for editing tools. See L{registerPlugin}. """ def __init__(self, engine): pychan.init(engine,debug=False) self.gui = pychan.loadXML('content/gui/rootpanel.xml') eventMap = { 'quitButton' : self.quit } self.gui.mapEvents(eventMap) self.gui.show() self.active = True # To create a plugin, just define menu_items with string keys and function values. # The key will be displayed on the Editor menu, and the value will be called when the key is clicked. def registerPlugin(self, plugin): plugin.install(self.gui) def quit(self): self.gui.hide() self.active = False