Skip to content

Commit

Permalink
Align document labels
Browse files Browse the repository at this point in the history
Aligns document labels following the design specified in issue #117.
It did not specify how it would change with window resize, so it
currently expands the progressbar/error message width and keeps the
document name fixed in size.
  • Loading branch information
deeplow committed Nov 14, 2022
1 parent d04ffe5 commit 9d573ed
Showing 1 changed file with 19 additions and 18 deletions.
37 changes: 19 additions & 18 deletions dangerzone/gui/main_window.py
Original file line number Diff line number Diff line change
Expand Up @@ -589,23 +589,27 @@ def __init__(

# Dangerous document label
self.dangerous_doc_label = QtWidgets.QLabel()
self.dangerous_doc_label.setAlignment(QtCore.Qt.AlignCenter)
self.dangerous_doc_label.setAlignment(
QtCore.Qt.AlignVCenter | QtCore.Qt.AlignLeft
)
self.dangerous_doc_label.setText(os.path.basename(self.document.input_filename))
self.dangerous_doc_label.setMinimumWidth(200)
self.dangerous_doc_label.setMaximumWidth(200)

# Conversion status images
self.img_status_unconverted = self.load_status_image("status_unconverted.png")
self.img_status_converting = self.load_status_image("status_converting.png")
self.img_status_failed = self.load_status_image("status_failed.png")
self.img_status_safe = self.load_status_image("status_safe.png")
self.status_image = QtWidgets.QLabel()
self.status_image.setMaximumWidth(15)
self.status_image.setPixmap(self.img_status_unconverted)

# Label
self.label = QtWidgets.QLabel()
self.label.setAlignment(QtCore.Qt.AlignCenter)
self.label.setWordWrap(True)
self.label.setStyleSheet("QLabel { font-size: 18px; }")
self.label.hide() # only show on error
# Error label
self.error_label = QtWidgets.QLabel()
self.error_label.setAlignment(QtCore.Qt.AlignVCenter | QtCore.Qt.AlignLeft)
self.error_label.setWordWrap(True)
self.error_label.hide() # only show on error

# Progress bar
self.progress = QtWidgets.QProgressBar()
Expand All @@ -616,10 +620,8 @@ def __init__(
layout = QtWidgets.QHBoxLayout()
layout.addWidget(self.status_image)
layout.addWidget(self.dangerous_doc_label)
layout.addStretch()
layout.addWidget(self.progress)
layout.addWidget(self.label, stretch=1)
layout.addStretch()
layout.addWidget(self.error_label)
self.setLayout(layout)

def start(self) -> None:
Expand All @@ -629,17 +631,16 @@ def start(self) -> None:
self.convert_t.start()

def update_progress(self, error: bool, text: str, percentage: int) -> None:
self.update_status_image()
if error:
self.error = True
self.status_image.show()
self.error_label.setText(text)
self.error_label.setToolTip(text)
self.error_label.show()
self.progress.hide()
self.label.show()

self.update_status_image()

self.label.setText(text)
self.progress.setToolTip(text)
self.progress.setValue(percentage)
else:
self.progress.setToolTip(text)
self.progress.setValue(percentage)

def load_status_image(self, filename: str) -> QtGui.QPixmap:
path = get_resource_path(filename)
Expand Down

0 comments on commit 9d573ed

Please sign in to comment.