diff --git a/src/ui/bigtext/bigtext.py b/src/ui/bigtext/bigtext.py index a6e6eb7..e9b96a3 100644 --- a/src/ui/bigtext/bigtext.py +++ b/src/ui/bigtext/bigtext.py @@ -77,6 +77,7 @@ class BigText(QWidget): def __init__(self, model: LogFileModel, show_range_slider=True): super(BigText, self).__init__() + self.show_range_slider = show_range_slider self.model = model self.grid = QGridLayout() @@ -87,10 +88,7 @@ class BigText(QWidget): self.v_scroll_bar = ScaledScrollBar() - self.range_limit = RangeSlider() - self.range_limit.value_changed.connect(self._range_limit_event) - - self.big_text = InnerBigText(self, model, self.v_scroll_bar, self.range_limit) + self.big_text = InnerBigText(self, model, self.v_scroll_bar) self.big_text.setSizePolicy(QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding)) self.h_scroll_bar = QScrollBar(Qt.Orientation.Horizontal) @@ -102,9 +100,9 @@ class BigText(QWidget): self.v_scroll_bar.scaledValueChanged.connect(self.big_text.v_scroll_event) self.v_scroll_bar.scrolled_to_end.connect(self.big_text.v_scroll_update_follow_tail) - - if show_range_slider: + self.range_limit = RangeSlider() + self.range_limit.value_changed.connect(self._range_limit_event) self.grid.addWidget(self.range_limit, 0, 0) self.grid.addWidget(self.big_text, 0, 1) self.grid.addWidget(self.h_scroll_bar, 1, 1) @@ -149,14 +147,12 @@ class InnerBigText(QWidget): _range_start = 0 _range_end = -1 - def __init__(self, parent: BigText, model: LogFileModel, v_scaled_scrollbar: ScaledScrollBar, - range_limit: RangeSlider): + def __init__(self, parent: BigText, model: LogFileModel, v_scaled_scrollbar: ScaledScrollBar): super(InnerBigText, self).__init__() self.char_height = None self.char_width = None self.model = model self._v_scaled_scrollbar = v_scaled_scrollbar - self._range_limit = range_limit self.parent = parent self.setFocusPolicy(Qt.FocusPolicy.StrongFocus) self.setFocusPolicy(Qt.FocusPolicy.WheelFocus) @@ -219,7 +215,6 @@ class InnerBigText(QWidget): elif e.modifiers() == Qt.KeyboardModifier.ControlModifier and e.key() == 65: # ctrl + a self._select_all() - def wheelEvent(self, event: QWheelEvent): direction = 1 if event.angleDelta().y() < 0 else -1 if event.modifiers() == Qt.KeyboardModifier.ControlModifier: @@ -262,30 +257,31 @@ class InnerBigText(QWidget): manage_highlighting.setShortcut("CTRL+H") menu.addAction(manage_highlighting) - menu.addSeparator() + if self.parent.show_range_slider: + menu.addSeparator() - set_range_start = QAction( - Icon("icons/myicons/range-start.svg"), - _("Set Range Start"), - self, - triggered=lambda: self._set_range_start_by_y_pos(position.y()) - ) - menu.addAction(set_range_start) + set_range_start = QAction( + Icon("icons/myicons/range-start.svg"), + _("Set Range Start"), + self, + triggered=lambda: self._set_range_start_by_y_pos(position.y()) + ) + menu.addAction(set_range_start) - set_range_end = QAction( - Icon("icons/myicons/range-end.svg"), - _("Set Range End"), - self, - triggered=lambda: self._set_range_end_by_y_pos(position.y()) - ) - menu.addAction(set_range_end) + set_range_end = QAction( + Icon("icons/myicons/range-end.svg"), + _("Set Range End"), + self, + triggered=lambda: self._set_range_end_by_y_pos(position.y()) + ) + menu.addAction(set_range_end) - reset_range = QAction( - _("Reset Range"), - self, - triggered=lambda: self._reset_range() - ) - menu.addAction(reset_range) + reset_range = QAction( + _("Reset Range"), + self, + triggered=lambda: self._reset_range() + ) + menu.addAction(reset_range) menu.exec(self.mapToGlobal(position)) @@ -559,7 +555,8 @@ class InnerBigText(QWidget): byte_count = self.model.byte_count() vmax = byte_count - 1 if self._range_end < 0 else min(self._range_end, self.model.byte_count() - 1) self.parent.v_scroll_bar.setMaximum(vmax) - self.parent.range_limit.set_maximum(byte_count) + if self.parent.show_range_slider: + self.parent.range_limit.set_maximum(byte_count) for line in self.lines: self.update_longest_line(len(line.line()))