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
|
"""
@package mapdisp.py
@brief Command line useg of GIS map display canvas.view).
Classes:
- Command
(C) 2006-2009 by the GRASS Development Team
This program is free software under the GNU General Public
License (>=v2). Read the file COPYING that comes with GRASS
for details.
@author Jachym Cepicky
"""
import sys
import time
from threading import Thread
class Command(Thread):
"""
Creates thread which will observe the command file and see, if
there is new command to be executed
"""
def __init__ (self, parent, Map, cmdfile):
Thread.__init__(self)
global cmdfilename
self.parent = parent
self.map = Map
self.cmdfile = open(cmdfile, "r")
def run(self):
"""
Run this in thread
"""
dispcmd = []
while 1:
self.parent.redraw = False
line = self.cmdfile.readline().strip()
if line == "quit":
break
if line:
try:
Debug.msg (3, "Command.run(): cmd=%s" % (line))
self.map.AddLayer(item=None, type="raster",
name='',
command=line,
l_opacity=1)
self.parent.redraw =True
except Exception, e:
print "Command Thread: ",e
time.sleep(0.1)
sys.exit()
|