Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/plugins/rfid/rfid.py
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/rfid/rfid.py')
-rw-r--r--plugins/rfid/rfid.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/plugins/rfid/rfid.py b/plugins/rfid/rfid.py
index 1b3bc48..2b825e4 100644
--- a/plugins/rfid/rfid.py
+++ b/plugins/rfid/rfid.py
@@ -26,6 +26,7 @@ from plugins.plugin import Plugin
from TurtleArt.tapalette import make_palette
from TurtleArt.talogo import primitive_dictionary
from TurtleArt.tautils import debug_output
+from TurtleArt.taprimitive import Primitive
import logging
_logger = logging.getLogger('turtleart-activity RFID plugin')
@@ -81,7 +82,6 @@ class Rfid(Plugin):
def setup(self):
# set up RFID-specific blocks
- primitive_dictionary['rfid'] = self.prim_read_rfid
palette = make_palette('sensor',
colors=["#FF6060", "#A06060"],
help_string=_('Palette of sensor blocks'),
@@ -104,7 +104,9 @@ class Rfid(Plugin):
prim_name='rfid')
self._parent.lc.def_prim(
- 'rfid', 0, lambda self: primitive_dictionary['rfid']())
+ 'rfid', 0,
+ Primitive(self.prim_read_rfid,
+ call_afterwards=self.after_rfid))
def _status_report(self):
debug_output('Reporting RFID status: %s' % (str(self._status)))
@@ -150,3 +152,7 @@ class Rfid(Plugin):
return self.rfid_idn
else:
return '0'
+
+ def after_rfid(self):
+ if self._parent.lc.update_values:
+ self._parent.lc.update_label_value('rfid', self.rfid_idn)