Go to the documentation of this file.00001 __author__ = 'tom1231'
00002 from PyQt4.QtGui import *
00003 from BAL.Interface.DeviceFrame import DeviceFrame, EX_DEV, Keyboard
00004 from lxml.etree import SubElement
00005
00006
00007 class KeyboardTeleop(DeviceFrame):
00008 def __init__(self, frame, data):
00009 DeviceFrame.__init__(self, EX_DEV, frame, data)
00010 self._cmd = 'cmd_val'
00011
00012 def getName(self):
00013 return 'keyboardTel'
00014
00015 def add(self):
00016 if not self.nameIsValid():
00017 error = QErrorMessage()
00018 error.setWindowTitle("Same name error")
00019 error.showMessage("Name already taken.")
00020 error.exec_()
00021 self._isValid = False
00022 return
00023 self._cmd = str(self.cmd.text())
00024 self._isValid = True
00025
00026 def showDetails(self, items=None):
00027 self.cmd = QLineEdit(self._cmd)
00028
00029 self._frame.layout().addRow(QLabel('Differential drive name: '), self.cmd)
00030
00031 def fromDict(self, data):
00032 self._cmd = data['cmd']
00033
00034 def printDetails(self):
00035 self._frame.layout().addRow(QLabel('Differential drive name: '), QLabel(self._cmd))
00036
00037 def saveToFile(self, parent):
00038 element = SubElement(parent, 'include', {
00039 'file': '$(find ric_base_station)/launch/keyboard_teleop.launch'
00040 })
00041 SubElement(element, 'arg', {
00042 'name': 'topic',
00043 'value': self._cmd
00044 })
00045
00046 def toDict(self):
00047 data = dict()
00048
00049 data['type'] = Keyboard
00050 data['cmd'] = self._cmd
00051
00052 return data