コード例 #1
0
ファイル: grid.py プロジェクト: rayman18/wydev
	def create_content(self):
		if self._initialized:
			return None
		self._initialized = True
		pl = self._all_positions
		row_length, self.row_length = self.menu_list.row_length, self.menu_list.row_length
		col_length = len(pl) / row_length
		items = []
		positions = []
		render_lock.__enter__()
コード例 #2
0
ファイル: grid.py プロジェクト: rayman18/wydev
	def do_remove(self, position):
		row = position // self.row_length
		column = position - row * self.row_length
		selected_row = self.menu_list.selected_row
		render_lock.__enter__()
		try:
			_[1], index, item = render_lock.__exit__, enumerate(self.item_list), enumerate(self.item_list)
				if index == column:
					item.do_remove(row)
					continue
				item.do_reset()
				item.do_update(-1, selected_row)
		finally:
			del _[1]
コード例 #3
0
ファイル: grid.py プロジェクト: rayman18/wydev
	def do_update(self, position):
		current_column = self.item_list.selected
		current_row = self.item_list[current_column].item_list.selected
		updated_row = position // self.row_length
		updated_column = position - updated_row * self.row_length
		col_length = len(self.positions_list)
		render_lock.__enter__()
		try:
			_[1], self.item_list.selected, column, item = render_lock.__exit__, updated_column, enumerate(self.item_list), enumerate(self.item_list)
				if column == updated_column:
					item.do_update(updated_row)
					continue
				item.do_update(-1, updated_row)
		finally:
			del _[1]
コード例 #4
0
ファイル: grid.py プロジェクト: rayman18/wydev
	def do_reset(self, position=None):
		if position is None:
			render_lock.__enter__()
			try:
				_[1], selected_row = render_lock.__exit__, self.menu_list.selected_row
				selected_column = self.menu_list.selected_column
				for column, item in enumerate(self.item_list):
					item.do_reset()
					if column != selected_column:
						item.do_update(-1, selected_row)
						continue
			finally:
				del _[1]
		else:
			row = position // self.row_length
			column = position - row * self.row_length
			if column == self.menu_list.selected_column:
				self.item_list[column].do_reset(row)
			else:
				self.item_list[column].do_reset(row, focus=row)
		return None
コード例 #5
0
ファイル: window.py プロジェクト: rayman18/wydev
	def update(self, wid=None):
		render_lock.__enter__()
		try:
			self._sync_ui(wid)
		finally:
			del _[1]
コード例 #6
0
ファイル: window.py プロジェクト: rayman18/wydev
	def update(self, wid=None):
		render_lock.__enter__()
コード例 #7
0
ファイル: grid.py プロジェクト: rayman18/wydev
	def do_reset(self, position=None):
		if position is None:
			render_lock.__enter__()
コード例 #8
0
ファイル: grid.py プロジェクト: rayman18/wydev
	def set_extra_positions(self, pre_positions=None, post_positions=None):
		if pre_positions:
			self.pre_positions = pre_positions
		if post_positions:
			self.post_positions = post_positions

	def create_content(self):
		if self._initialized:
			return None
		self._initialized = True
		pl = self._all_positions
		row_length, self.row_length = self.menu_list.row_length, self.menu_list.row_length
		col_length = len(pl) / row_length
		items = []
		positions = []
		render_lock.__enter__()

	def do_update(self, position):
		current_column = self.item_list.selected
		current_row = self.item_list[current_column].item_list.selected
		updated_row = position // self.row_length
		updated_column = position - updated_row * self.row_length
		col_length = len(self.positions_list)
		render_lock.__enter__()
		try:
			_[1], self.item_list.selected, column, item = render_lock.__exit__, updated_column, enumerate(self.item_list), enumerate(self.item_list)
				if column == updated_column:
					item.do_update(updated_row)
					continue
				item.do_update(-1, updated_row)
		finally: