Advertisement
Guest User

Untitled

a guest
Jul 1st, 2014
216
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.99 KB | None | 0 0
  1. class HAL_SpinButton(gtk.SpinButton, _HalWidgetBase):
  2. __gtype_name__ = "HAL_SpinButton"
  3.  
  4. def validate(self, *a):
  5. data = self.get_text()
  6. if data[-3:] == 'tpi':
  7. self.set_text(str(25.4/float(data[:-3])))
  8. elif data[-2:] == 'in':
  9. self.set_text(str(25.4*float(data[:-2])))
  10. elif data[-2:] == 'mm':
  11. self.set_text(str(float(data[:-2])/25.4))
  12. elif data[-5:] == 'pitch':
  13. self.set_text(str(25.4/float(data[:-5])))
  14.  
  15. def hal_update(self, *a):
  16. data = self.get_value()
  17. self.hal_pin_f.set(float(data))
  18. self.hal_pin_s.set(int(data))
  19.  
  20. def _hal_init(self):
  21. self.hal_pin_f = self.hal.newpin(self.hal_name+"-f", hal.HAL_FLOAT, hal.HAL_OUT)
  22. self.hal_pin_s = self.hal.newpin(self.hal_name+"-s", hal.HAL_S32, hal.HAL_OUT)
  23. self.connect("value-changed", self.hal_update)
  24. self.connect("changed", self.validate)
  25. self.emit("value-changed")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement