Table Of Contents
Source code for kivy.input.factory
'''
Motion Event Factory
====================
Factory of :class:`~kivy.input.motionevent.MotionEvent` providers.
'''
__all__ = ('MotionEventFactory', )
[docs]class MotionEventFactory:
'''MotionEvent factory is a class that registers all availables input
factories. If you create a new input factory, you need to register
it here::
MotionEventFactory.register('myproviderid', MyInputProvider)
'''
__providers__ = {}
[docs] @staticmethod
def register(name, classname):
'''Register a input provider in the database'''
MotionEventFactory.__providers__[name] = classname
[docs] @staticmethod
def list():
'''Get a list of all available providers'''
return MotionEventFactory.__providers__
[docs] @staticmethod
def get(name):
'''Get a provider class from the provider id'''
if name in MotionEventFactory.__providers__:
return MotionEventFactory.__providers__[name]