view demos/pychan_demo/sliders.py @ 386:fed41c6364d4

Put the correct header back in
author prock@33b003aa-7bff-0310-803a-e67f0ece8222
date Thu, 21 Jan 2010 21:22:45 +0000
parents 64738befdf3b
children 70697641fca3
line wrap: on
line source

# -*- coding: utf-8 -*-

from pychan_test import PyChanExample
from fife.extensions import pychan

class SliderExample(PyChanExample):
	def __init__(self):
		super(SliderExample,self).__init__('gui/slider.xml')
	def start(self):
		self.widget = pychan.loadXML(self.xmlFile)
		self.widget.mapEvents({
			'xslider': self.update,
			'yslider': self.update,
			'closeButton':self.stop,
		})
		self.update()
		self.widget.show()
	def update(self):
		"""
		Update Icon position from the sliders.
		"""
		icon = self.widget.findChild(name="icon")
		# sliders have floats, guichan is picky and wants ints
		# so we convert here.
		icon.position = map(int, self.widget.collectData('xslider','yslider'))
		# we distribute to the labels with the x,y value.
		# That's user visible 'text' - so pychan wants unicode.
		self.widget.distributeInitialData({
			'xvalue' : unicode(icon.x),
			'yvalue' : unicode(icon.y),
		})