def __setattr__(self, name, val): if name == "tab_spacing": self.tabs_container.spacing = val else: if name == "current_page": val = self.find_page(val) if self.__dict__.get(name, "hamster_graphics_no_value_really") == val: return Box.__setattr__(self, name, val) if name == "tab_position" and hasattr(self, "tabs_container"): self.tabs_container.x = 0 self._position_contents() elif name == "scroll_position": # reorder sprites based on scroll position if val == "start": sprites = [self.before_tabs, self.tabs_back, self.tabs_forward, self._tabs_viewport, self.after_tabs] elif val == "end": sprites = [self.before_tabs, self._tabs_viewport, self.tabs_back, self.tabs_forward, self.after_tabs] else: sprites = [self.before_tabs, self.tabs_back, self._tabs_viewport, self.tabs_forward, self.after_tabs] self.tabbox.sprites = sprites elif name == "current_page": self._select_current_page()
def __setattr__(self, name, val): if self.__dict__.get(name, "hamster_graphics_no_value_really") == val: return Box.__setattr__(self, name, val) if name == "orient_horizontal" and hasattr(self, "up"): self.up.direction="left" if val else "up" self.down.direction="right" if val else "down" elif name == "size" and hasattr(self, "slider"): self._size_slider() elif name == "offset" and hasattr(self, "slider_zone"): self._position_slider()
def __setattr__(self, name, val): if self.__dict__.get(name, "hamster_graphics_no_value_really") == val: return Box.__setattr__(self, name, val) if name == "orient_horizontal" and hasattr(self, "up"): self.up.direction = "left" if val else "up" self.down.direction = "right" if val else "down" elif name == "size" and hasattr(self, "slider"): self._size_slider() elif name == "offset" and hasattr(self, "slider_zone"): self._position_slider()
def __setattr__(self, name, val): if name == "tab_spacing": self.tabs_container.spacing = val else: if name == "current_page": val = self.find_page(val) if self.__dict__.get(name, "hamster_graphics_no_value_really") == val: return Box.__setattr__(self, name, val) if name == "tab_position" and hasattr(self, "tabs_container"): self.tabs_container.x = 0 self._position_contents() elif name == "scroll_position": # reorder sprites based on scroll position if val == "start": sprites = [ self.before_tabs, self.tabs_back, self.tabs_forward, self._tabs_viewport, self.after_tabs ] elif val == "end": sprites = [ self.before_tabs, self._tabs_viewport, self.tabs_back, self.tabs_forward, self.after_tabs ] else: sprites = [ self.before_tabs, self.tabs_back, self._tabs_viewport, self.tabs_forward, self.after_tabs ] self.tabbox.sprites = sprites elif name == "current_page": self._select_current_page()
def __setattr__(self, name, val): if name == "hide_on_leave": name = "_hide_on_leave" Box.__setattr__(self, name, val)