def resize(self, screen): if Background.resize(self, screen): size = (self.background.get_rect().width * 0.6, self.background.get_rect().height * 0.6) self.layout0 = pictures.get_image("layout{}.png".format(self.choices[0]), size) self.layout1 = pictures.get_image("layout{}.png".format(self.choices[1]), size) hinter = (self.rect.width - self.layout0.get_rect().width - self.layout1.get_rect().width) // 3 vinter = int(self.background.get_rect(center=self.rect.center).top + self.layout0.get_rect(center=self.background.get_rect().center).top * 1.3) self.layout0_pos = (hinter, vinter) self.layout1_pos = (hinter * 2 + self.layout0.get_rect().width, vinter) return True return False
def resize(self, screen): """Resize objects to fit to the screen. """ if self.rect != screen.get_rect(): self.rect = screen.get_rect() self.background = pictures.get_image(self.image_name, (self.rect.width, self.rect.height)) return True return False
def resize(self, screen): if Background.resize(self, screen): size = (self.get_rect().width * 0.6, self.get_rect().height * 0.6) self.layout0 = pictures.get_image( "layout{}.png".format(self.choices[0]), size) self.layout1 = pictures.get_image( "layout{}.png".format(self.choices[1]), size) inter = (self.get_rect().width - 2 * self.layout0.get_rect().width) // 3 x0 = int(self.get_rect().left + inter) x1 = int(self.get_rect().left + 2 * inter + self.layout0.get_rect().width) y = int(self.get_rect().top + self.get_rect().height * 0.3) self.layout0_pos = (x0, y) self.layout1_pos = (x1, y) if self.show_arrows: y = self.layout0_pos[1] + self.layout0.get_rect().height + 5 size = (self.get_rect().width * 0.1, self.get_rect().bottom - y - 5) self.left_arrow = pictures.get_image("arrow.png", size) self.right_arrow = pygame.transform.flip( self.left_arrow, True, False) inter = (self.get_rect().width - 2 * self.left_arrow.get_rect().width) // 4 x0 = int(self.get_rect().left + inter) x1 = int(self.get_rect().left + 3 * inter + self.left_arrow.get_rect().width) self.left_arrow_pos = (x0, y) self.right_arrow_pos = (x1, y) return True return False
def resize(self, screen): if Background.resize(self, screen): size = (self.get_rect().width * 0.6, self.get_rect().height * 0.6) self.layout = pictures.get_image( "layout{}.png".format(self.selected), size) x = self.layout.get_rect(center=self.get_rect().center).left y = int(self.get_rect().top + self.get_rect().height * 0.3) self.layout_pos = (x, y) return True return False
def resize(self, screen): if Background.resize(self, screen): if self.show_arrows: size = (self.get_rect().width * 0.3, self.get_rect().height * 0.3) self.left_arrow = pictures.get_image("arrow.png", size) x = int(self.get_rect().left + self.get_rect().width // 4 - self.left_arrow.get_rect().width // 2) y = int(self.get_rect().top + 2 * self.get_rect().height // 3) self.left_arrow_pos = (x, y) return True return False
def _update_background(self, image_name, pos=CENTER): """Show image on the background. """ buff_size, buff_image = self._buffered_images.get( image_name, (None, None)) if buff_image and self.size == buff_size: image = buff_image LOGGER.debug("Use buffered image '%s'", image_name) else: image = pictures.get_image(image_name, self.size) self._clear() self.surface.blit(image, self._pos_map[pos](image)) self._update_picture_number() if self.use_buffer and self.size != buff_size: LOGGER.debug("Add to buffer the image '%s'", image_name) self._buffered_images[image_name] = (self.size, image) self._current_background = (image_name, pos)
def _update_print_number(self): """Update the number of files in the printer queue. """ if not self._print_number: return # Dont show counter: no file in queue smaller = self.size[1] if self.size[1] < self.size[0] else self.size[0] side = int(smaller * 0.05) # 5% of the window if side > 0: image = pictures.get_image('printer.png', (side, side)) y = self.surface.get_rect().height - image.get_rect().height - 10 self.surface.blit(image, (10, y)) font = pygame.font.Font(fonts.get_filename("Amatic-Bold.ttf"), side) label = font.render(str(self._print_number), True, (255, 255, 255)) self.surface.blit(label, (side + 20, y))