widgets.custom_qtableview¶
Custom QTableView classes that support copy-paste and the like.
| author: |
|
|---|---|
| date: | 18.5.2018 |
Module Contents¶
-
class
widgets.custom_qtableview.CopyPasteTableView[source]¶ Bases:
PySide2.QtWidgets.QTableViewCustom QTableView class with copy and paste methods.
-
static
_read_pasted_text(text)[source]¶ Parses a tab separated CSV text table.
Parameters: text (str) – a CSV formatted table Returns: a list of rows
-
static
-
class
widgets.custom_qtableview.AutoFilterMenu(parent)[source]¶ Bases:
PySide2.QtWidgets.QMenuA widget to show the auto filter ‘menu’.
-
parent¶ the parent widget.
Type: QTableView
-
_proxy_model_filter_accepts_row(self, source_row, source_parent)[source]¶ Overridden method to always accept first row.
-
-
class
widgets.custom_qtableview.AutoFilterCopyPasteTableView(parent)[source]¶ Bases:
widgets.custom_qtableview.CopyPasteTableViewCustom QTableView class with autofilter functionality.
-
parent¶ The parent of this view
Type: QWidget
-
setModel(self, model)[source]¶ Disconnect sectionPressed signal, only connect it to show_filter_menu slot. Otherwise the column is selected when pressing on the header.
-
toggle_auto_filter(self, logical_index)[source]¶ Called when user clicks on a horizontal section header. Show/hide the auto filter widget.
-
update_auto_filter(self)[source]¶ Called when the user selects Ok in the auto filter menu. Set ‘filtered out values’ in auto filter model.
-
-
class
widgets.custom_qtableview.FrozenTableView(parent=None)[source]¶ Bases:
PySide2.QtWidgets.QTableView
-
class
widgets.custom_qtableview.SimpleCopyPasteTableView(parent=None)[source]¶ Bases:
PySide2.QtWidgets.QTableViewCustom QTableView class that copies and paste data in response to key press events.
-
parent¶ The parent of this view
Type: QWidget
-
-
class
widgets.custom_qtableview.IndexedParameterValueTableViewBase[source]¶ Bases:
widgets.custom_qtableview.CopyPasteTableViewCustom QTableView base class with copy and paste methods for indexed parameter values.
-
class
widgets.custom_qtableview.TimeSeriesFixedResolutionTableView[source]¶ Bases:
widgets.custom_qtableview.IndexedParameterValueTableViewBaseA QTableView for fixed resolution time series table.
-
static
_read_pasted_text(text)[source]¶ Parses the given CSV table.
Parsing is locale aware.
Parameters: text (str) – a CSV table containing numbers Returns: A list of floats
-
_paste_to_values_column(self, values, first_row, paste_length)[source]¶ Pastes data to the Values column.
Parameters: - values (list) – a list of float values to paste
- first_row (int) – index of the first row where to paste
- paste_length (int) – length of the paste selection (can be different from len(values))
Returns: A tuple (list(pasted indexes), list(pasted values))
-
static
-
class
widgets.custom_qtableview.IndexedValueTableView[source]¶ Bases:
widgets.custom_qtableview.IndexedParameterValueTableViewBaseA QTableView class with for variable resolution time series and time patterns.
-
_paste_two_columns(self, data_indexes, data_values, first_row, paste_length)[source]¶ Pastes data indexes and values.
Parameters: - data_indexes (list) – a list of data indexes (time stamps/durations)
- data_values (list) – a list of data values
- first_row (int) – first row index
- paste_length (int) – selection length for pasting
Returns: a tuple (modified model indexes, modified model values)
-
_paste_single_column(self, values, first_row, first_column, paste_length)[source]¶ Pastes a single column of data
Parameters: - values (list) – a list of data to paste (data indexes or values)
- first_row (int) – first row index
- paste_length (int) – selection length for pasting
Returns: a tuple (modified model indexes, modified model values)
-