sidebar dissaperance
This commit is contained in:
@@ -710,15 +710,25 @@ class CollapsibleDock(QDockWidget):
|
|||||||
QDockWidget.DockWidgetMovable |
|
QDockWidget.DockWidgetMovable |
|
||||||
QDockWidget.DockWidgetFloatable)
|
QDockWidget.DockWidgetFloatable)
|
||||||
|
|
||||||
self.toggle_button = QToolButton(self)
|
# Create a widget for the title bar that contains both toggle button and close button
|
||||||
|
title_widget = QWidget()
|
||||||
|
title_layout = QHBoxLayout(title_widget)
|
||||||
|
title_layout.setContentsMargins(0, 0, 0, 0)
|
||||||
|
title_layout.setSpacing(0)
|
||||||
|
|
||||||
|
self.toggle_button = QToolButton()
|
||||||
self.toggle_button.setIcon(QIcon.fromTheme("arrow-left"))
|
self.toggle_button.setIcon(QIcon.fromTheme("arrow-left"))
|
||||||
self.toggle_button.setIconSize(QSize(16, 16))
|
self.toggle_button.setIconSize(QSize(16, 16))
|
||||||
self.toggle_button.setStyleSheet("border: none;")
|
self.toggle_button.setStyleSheet("border: none;")
|
||||||
self.toggle_button.clicked.connect(self.toggle_collapse)
|
self.toggle_button.clicked.connect(self.toggle_collapse)
|
||||||
|
|
||||||
self.setTitleBarWidget(self.toggle_button)
|
title_layout.addWidget(self.toggle_button)
|
||||||
|
title_layout.addStretch()
|
||||||
|
|
||||||
|
self.setTitleBarWidget(title_widget)
|
||||||
self.collapsed = False
|
self.collapsed = False
|
||||||
self.original_size = None
|
self.original_size = None
|
||||||
|
self.original_minimum_width = None
|
||||||
|
|
||||||
def toggle_collapse(self):
|
def toggle_collapse(self):
|
||||||
"""Toggle between collapsed and expanded states"""
|
"""Toggle between collapsed and expanded states"""
|
||||||
@@ -731,7 +741,9 @@ class CollapsibleDock(QDockWidget):
|
|||||||
"""Collapse the dock widget"""
|
"""Collapse the dock widget"""
|
||||||
if not self.collapsed:
|
if not self.collapsed:
|
||||||
self.original_size = self.size()
|
self.original_size = self.size()
|
||||||
self.setFixedWidth(40)
|
self.original_minimum_width = self.minimumWidth()
|
||||||
|
self.setMinimumWidth(0)
|
||||||
|
self.setMaximumWidth(0)
|
||||||
self.toggle_button.setIcon(QIcon.fromTheme("arrow-right"))
|
self.toggle_button.setIcon(QIcon.fromTheme("arrow-right"))
|
||||||
self.collapsed = True
|
self.collapsed = True
|
||||||
|
|
||||||
@@ -1497,6 +1509,15 @@ class MainWindow(QMainWindow):
|
|||||||
load_model_action.triggered.connect(self.load_model_directory)
|
load_model_action.triggered.connect(self.load_model_directory)
|
||||||
model_menu.addAction(load_model_action)
|
model_menu.addAction(load_model_action)
|
||||||
|
|
||||||
|
# View menu
|
||||||
|
view_menu = menubar.addMenu('View')
|
||||||
|
self.toggle_sidebar_action = QAction('Show Sidebar', self)
|
||||||
|
self.toggle_sidebar_action.setCheckable(True)
|
||||||
|
self.toggle_sidebar_action.setChecked(True)
|
||||||
|
self.toggle_sidebar_action.setShortcut('Ctrl+B')
|
||||||
|
self.toggle_sidebar_action.triggered.connect(self.toggle_sidebar_visibility)
|
||||||
|
view_menu.addAction(self.toggle_sidebar_action)
|
||||||
|
|
||||||
# Camera menu
|
# Camera menu
|
||||||
self.camera_menu = menubar.addMenu('Cameras')
|
self.camera_menu = menubar.addMenu('Cameras')
|
||||||
|
|
||||||
@@ -2074,6 +2095,13 @@ class MainWindow(QMainWindow):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
QMessageBox.warning(self, "Warning", f"Could not open directory: {str(e)}")
|
QMessageBox.warning(self, "Warning", f"Could not open directory: {str(e)}")
|
||||||
|
|
||||||
|
def toggle_sidebar_visibility(self):
|
||||||
|
"""Toggle the visibility of the sidebar"""
|
||||||
|
if self.toggle_sidebar_action.isChecked():
|
||||||
|
self.sidebar.expand()
|
||||||
|
else:
|
||||||
|
self.sidebar.collapse()
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
app = QApplication(sys.argv)
|
app = QApplication(sys.argv)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user