'''[[[cog
import element_utilities

element_utilities.generate_element('../schemas/uispritesheet_schema.json')
]]]'''
# GENERATED SECTION, DO NOT HAND EDIT
class UISpritesheet(UIPicture):
	def __init__(self, type, origin, size, justify, anchor, color, alpha, mod_col, mod_alp, image, sprite, sprite_size, gap_size):
		self.type = type
		self.origin = origin
		self.size = size
		self.justify = justify
		self.anchor = anchor
		self.color = color
		self.alpha = alpha
		self.mod_col = mod_col
		self.mod_alp = mod_alp
		self.image = image
		self.sprite = sprite
		self.sprite_size = sprite_size
		self.gap_size = gap_size

# [ Data Getter / Setter ]
	def _get_sprite(self):
		 return self.__sprite

	def _set_sprite(self, value):
		if not isinstance(value, list):
			raise TypeError("sprite must be set to an array")
		if len(value) < 2:
			raise TypeError("sprite must have at least 2 elements")
		if len(value) > 2:
			raise TypeError("sprite cannot have more than 2 elements")
		for element in value:
			if not isinstance(element, int) and not isinstance(element, float):
				raise TypeError("sprite must only contain float or int %s" % str(type(element)))
		self.__sprite = value

	def _get_sprite_size(self):
		 return self.__sprite_size

	def _set_sprite_size(self, value):
		if not isinstance(value, list):
			raise TypeError("sprite_size must be set to an array")
		if len(value) < 2:
			raise TypeError("sprite_size must have at least 2 elements")
		if len(value) > 2:
			raise TypeError("sprite_size cannot have more than 2 elements")
		for element in value:
			if not isinstance(element, int) and not isinstance(element, float):
				raise TypeError("sprite_size must only contain float or int %s" % str(type(element)))
		self.__sprite_size = value

	def _get_gap_size(self):
		 return self.__gap_size

	def _set_gap_size(self, value):
		if not isinstance(value, list):
			raise TypeError("gap_size must be set to an array")
		if len(value) < 2:
			raise TypeError("gap_size must have at least 2 elements")
		if len(value) > 2:
			raise TypeError("gap_size cannot have more than 2 elements")
		for element in value:
			if not isinstance(element, int) and not isinstance(element, float):
				raise TypeError("gap_size must only contain float or int %s" % str(type(element)))
		self.__gap_size = value


# [ Public Properties ]
	sprite = property(_get_sprite, _set_sprite) #number array
	sprite_size = property(_get_sprite_size, _set_sprite_size) #number array
	gap_size = property(_get_gap_size, _set_gap_size) #number array

# [ Backing Properties ]
	__sprite = [] #number array
	__sprite_size = [] #number array
	__gap_size = [] #number array
# END GENERATED SECTION
#[[[end]]]