[table view] basic infrastructure
This commit is contained in:
parent
703b647321
commit
ec1fca7d90
@ -3,6 +3,7 @@ from PyQt5.QtWidgets import QStackedLayout, QWidget
|
||||
from nixview.ui.plotscreen import PlotScreen
|
||||
from nixview.ui.splashscreen import SplashScreen
|
||||
from nixview.ui.filescreen import FileScreen
|
||||
from nixview.ui.tablescreen import TableScreen
|
||||
|
||||
class CentralWidget(QWidget):
|
||||
|
||||
@ -13,10 +14,14 @@ class CentralWidget(QWidget):
|
||||
self._file_view = FileScreen(self)
|
||||
self._plot_screen = PlotScreen(self)
|
||||
self._plot_screen.close_signal.connect(self.on_plot_close)
|
||||
self._table_screen = TableScreen(self)
|
||||
self._table_screen.close_signal.connect(self.on_table_close)
|
||||
|
||||
self._stack = QStackedLayout(self)
|
||||
self._stack.addWidget(self._splash)
|
||||
self._stack.addWidget(self._file_view)
|
||||
self._stack.addWidget(self._plot_screen)
|
||||
self._stack.addWidget(self._table_screen)
|
||||
self.setLayout(self._stack)
|
||||
|
||||
def show_file_content(self):
|
||||
@ -27,9 +32,16 @@ class CentralWidget(QWidget):
|
||||
self._stack.setCurrentIndex(2)
|
||||
self._plot_screen.plot(item_descriptor)
|
||||
|
||||
def show_table(self, item_descriptor):
|
||||
self._stack.setCurrentIndex(3)
|
||||
self._table_screen.show(item_descriptor)
|
||||
|
||||
def on_plot_close(self):
|
||||
self._stack.setCurrentIndex(1)
|
||||
|
||||
def on_table_close(self):
|
||||
self._stack.setCurrentIndex(1)
|
||||
|
||||
def reset(self):
|
||||
self._file_view.reset()
|
||||
self._splash.reset()
|
||||
|
@ -69,7 +69,7 @@ class NixView(QMainWindow):
|
||||
self._table_action.setStatusTip("Show data as table")
|
||||
self._table_action.setShortcut(QKeySequence("Ctrl+t"))
|
||||
self._table_action.setEnabled(False)
|
||||
# self._table_action.triggered.connect(self.on_file_close)
|
||||
self._table_action.triggered.connect(self.on_item_show_table)
|
||||
|
||||
self._about_action = QAction("about")
|
||||
self._about_action.setStatusTip("Show about dialog")
|
||||
@ -167,6 +167,10 @@ class NixView(QMainWindow):
|
||||
if self._current_item is not None:
|
||||
self._cw.plot_item(self._current_item.node_descriptor)
|
||||
|
||||
def on_item_show_table(self, s):
|
||||
if self._current_item is not None:
|
||||
self._cw.show_table(self._current_item.node_descriptor)
|
||||
|
||||
def on_plot_error(self, s):
|
||||
self.statusBar().showMessage(s, 5000)
|
||||
|
||||
|
32
nixview/ui/tablescreen.py
Normal file
32
nixview/ui/tablescreen.py
Normal file
@ -0,0 +1,32 @@
|
||||
from PyQt5.QtWidgets import QWidget, QVBoxLayout, QPushButton, QTableWidget
|
||||
from PyQt5.QtCore import pyqtSignal, Qt
|
||||
|
||||
from nixview.util.file_handler import FileHandler
|
||||
|
||||
|
||||
class TableScreen(QWidget):
|
||||
close_signal = pyqtSignal()
|
||||
|
||||
def __init__(self, parent=None) -> None:
|
||||
super().__init__(parent=parent)
|
||||
self._file_handler = FileHandler()
|
||||
|
||||
self.table = QTableWidget()
|
||||
|
||||
close_btn = QPushButton("close")
|
||||
close_btn.clicked.connect(self.on_close)
|
||||
|
||||
self.setLayout(QVBoxLayout())
|
||||
self.layout().addWidget(self.table)
|
||||
self.layout().addWidget(close_btn)
|
||||
self._data_view = None
|
||||
|
||||
self._software_slide = False
|
||||
self.plotter = None
|
||||
|
||||
def on_close(self):
|
||||
self.close_signal.emit()
|
||||
|
||||
def show(self, item_descriptor):
|
||||
print("Table show")
|
||||
pass
|
Loading…
Reference in New Issue
Block a user