def apply(self) -> None: """ Set current image as wallpaper """ for file in CURRENT_DIR.iterdir(): file.unlink() logger.debug(f'Deleted {short_path(file)}') image_id: str = self.sw.current_image_id() info: Dict[str, str] = image_info(image_id) image: Path = Path(info['image_id'] + info['extension']) self.progressbar.show() download = Download(image, CURRENT_DIR, info['full_image_url'], stream=True) download.finished_chunk.connect(self.set_progressbar) download.finished_file.connect(set_wall) download.save()
def save(self) -> None: """ Save image to CURRENT_DIR When image is saved, show Saved label """ image_id: str = self.sw.current_image_id() info: Dict[str, str] = image_info(image_id) image: Path = Path(info['image_id'] + info['extension']) self.progressbar.show() download = Download(image, SAVED_DIR, info['full_image_url'], stream=True) download.finished_chunk.connect(self.set_progressbar) download.save() # Show message "Saved" for 3 seconds in info layout self.info_layout.insertWidget(2, self.saved_msg) self.saved_msg.show() QTimer.singleShot(3000, self.hide_msg) save_msg: bool = config.getboolean('Program', 'show_save_message') def disable_save_msg(): config['Program']['show_save_message'] = 'no' config_save() logger.debug('Save message is now disabled') # Create and show "save message box" if it is set to True if save_msg: msgBox = QMessageBox(self) msgBox.setIcon(QMessageBox.Information) msgBox.setText('Saved') msgBox.setInformativeText( f'The image has been saved to \n{str(SAVED_DIR)}') msgBox.setStandardButtons(QMessageBox.Ok) dontshow_btn = msgBox.addButton("Don't show again", QMessageBox.ActionRole) dontshow_btn.clicked.connect(disable_save_msg) msgBox.exec_()
def update_(self) -> None: """ Download new json, new thumbnails and delete old ones with clearing stacked widget """ for file in THUMBS_DIR.iterdir(): logger.debug(f'Deleting {short_path(file)}') file.unlink() # Clear stacked widget for _ in range(self.sw.count()): widget = self.sw.widget(0) self.sw.removeWidget(widget) del widget download = Download(JSON_FILE, APP_DIR, SEARCH_URL, payload=self.payload) download.save() self.progressbar.show() self.download_thumbs()