mirror of
https://github.com/barkeser2002/CoomerDL.git
synced 2026-09-25 08:49:55 +03:00
89 lines
3.5 KiB
Python
89 lines
3.5 KiB
Python
from PySide6.QtCore import Qt
|
|
from PySide6.QtWidgets import (
|
|
QWidget,
|
|
QVBoxLayout,
|
|
QHBoxLayout,
|
|
QLabel,
|
|
QLineEdit,
|
|
QPushButton,
|
|
QCheckBox,
|
|
)
|
|
|
|
|
|
class DownloadPanel(QWidget):
|
|
def __init__(self, parent=None, tr=None):
|
|
super().__init__(parent)
|
|
self.tr = tr if tr else (lambda key, **kwargs: key.format(**kwargs) if kwargs else key)
|
|
|
|
root = QVBoxLayout(self)
|
|
root.setContentsMargins(0, 0, 0, 0)
|
|
root.setSpacing(10)
|
|
|
|
self.url_label = QLabel(self.tr("DOWNLOAD_PANEL_URL_LABEL"))
|
|
root.addWidget(self.url_label)
|
|
|
|
url_row = QHBoxLayout()
|
|
self.url_input = QLineEdit()
|
|
self.url_input.setPlaceholderText(self.tr("DOWNLOAD_PANEL_URL_PLACEHOLDER"))
|
|
url_row.addWidget(self.url_input, 1)
|
|
|
|
self.browse_button = QPushButton(self.tr("DOWNLOAD_PANEL_SELECT_FOLDER"))
|
|
url_row.addWidget(self.browse_button)
|
|
root.addLayout(url_row)
|
|
|
|
self.folder_label = QLabel("")
|
|
self.folder_label.setTextInteractionFlags(Qt.TextSelectableByMouse)
|
|
root.addWidget(self.folder_label)
|
|
|
|
options_row = QHBoxLayout()
|
|
|
|
self.images_check = QCheckBox(self.tr("DOWNLOAD_PANEL_DOWNLOAD_IMAGES"))
|
|
self.images_check.setChecked(True)
|
|
options_row.addWidget(self.images_check)
|
|
|
|
self.videos_check = QCheckBox(self.tr("DOWNLOAD_PANEL_DOWNLOAD_VIDEOS"))
|
|
self.videos_check.setChecked(True)
|
|
options_row.addWidget(self.videos_check)
|
|
|
|
self.compressed_check = QCheckBox(self.tr("DOWNLOAD_PANEL_DOWNLOAD_COMPRESSED"))
|
|
self.compressed_check.setChecked(True)
|
|
options_row.addWidget(self.compressed_check)
|
|
|
|
options_row.addStretch(1)
|
|
|
|
self.only_this_url_check = QCheckBox(self.tr("DOWNLOAD_PANEL_ONLY_THIS_URL"))
|
|
self.only_this_url_check.setChecked(False)
|
|
self.only_this_url_check.setToolTip(
|
|
self.tr("DOWNLOAD_PANEL_ONLY_THIS_URL_TOOLTIP")
|
|
)
|
|
options_row.addWidget(self.only_this_url_check)
|
|
|
|
self.autoscroll_log_check = QCheckBox(self.tr("DOWNLOAD_PANEL_AUTOSCROLL_LOG"))
|
|
self.autoscroll_log_check.setChecked(True)
|
|
options_row.addWidget(self.autoscroll_log_check)
|
|
|
|
root.addLayout(options_row)
|
|
|
|
buttons_row = QHBoxLayout()
|
|
self.download_button = QPushButton(self.tr("DOWNLOAD_PANEL_DOWNLOAD"))
|
|
buttons_row.addWidget(self.download_button)
|
|
|
|
self.cancel_button = QPushButton(self.tr("DOWNLOAD_PANEL_CANCEL_DOWNLOAD"))
|
|
self.cancel_button.setEnabled(False)
|
|
buttons_row.addWidget(self.cancel_button)
|
|
|
|
buttons_row.addStretch(1)
|
|
root.addLayout(buttons_row)
|
|
|
|
def retranslate_ui(self):
|
|
self.url_label.setText(self.tr("DOWNLOAD_PANEL_URL_LABEL"))
|
|
self.url_input.setPlaceholderText(self.tr("DOWNLOAD_PANEL_URL_PLACEHOLDER"))
|
|
self.browse_button.setText(self.tr("DOWNLOAD_PANEL_SELECT_FOLDER"))
|
|
self.images_check.setText(self.tr("DOWNLOAD_PANEL_DOWNLOAD_IMAGES"))
|
|
self.videos_check.setText(self.tr("DOWNLOAD_PANEL_DOWNLOAD_VIDEOS"))
|
|
self.compressed_check.setText(self.tr("DOWNLOAD_PANEL_DOWNLOAD_COMPRESSED"))
|
|
self.only_this_url_check.setText(self.tr("DOWNLOAD_PANEL_ONLY_THIS_URL"))
|
|
self.only_this_url_check.setToolTip(self.tr("DOWNLOAD_PANEL_ONLY_THIS_URL_TOOLTIP"))
|
|
self.autoscroll_log_check.setText(self.tr("DOWNLOAD_PANEL_AUTOSCROLL_LOG"))
|
|
self.download_button.setText(self.tr("DOWNLOAD_PANEL_DOWNLOAD"))
|
|
self.cancel_button.setText(self.tr("DOWNLOAD_PANEL_CANCEL_DOWNLOAD")) |