Skip to content

Commit

Permalink
Merged in cbillington/lyse/feature2 (pull request #9)
Browse files Browse the repository at this point in the history
Added integer row labels to FileBox.
  • Loading branch information
chrisjbillington committed Apr 11, 2017
2 parents c1f0af5 + fdebe0d commit 3c5f49b
Showing 1 changed file with 18 additions and 2 deletions.
20 changes: 18 additions & 2 deletions __main__.py
Expand Up @@ -1187,6 +1187,7 @@ def remove_selection(self, confirm=True):
for name_item in selected_name_items:
row = name_item.row()
self._model.removeRow(row)
self.renumber_rows()

def mark_selection_not_done(self):
selected_indexes = self._view.selectedIndexes()
Expand Down Expand Up @@ -1340,8 +1341,6 @@ def update_row(self, filepath, dataframe_already_updated=False, status_percent=N
short_value_str = value_str
item.setText(short_value_str)
item.setToolTip(repr(value))
vert_header_item = QtGui.QStandardItem(os.path.splitext(os.path.basename(filepath))[0])
self._model.setVerticalHeaderItem(model_row_number, vert_header_item)

for i, column_name in enumerate(sorted(new_column_names)):
# Resize any new columns to fit contents:
Expand All @@ -1362,6 +1361,20 @@ def new_row(self, filepath):
name_item = QtGui.QStandardItem(filepath)
return [status_item, name_item]

def renumber_rows(self):
"""Add/update row indices - the rows are numbered in simple sequential order
for easy comparison with the dataframe"""
n_digits = len(str(self._model.rowCount()))
print(self._model.rowCount())
for row_number in range(self._model.rowCount()):
vertical_header_item = self._model.verticalHeaderItem(row_number)
filepath_item = self._model.item(row_number, self.COL_FILEPATH)
filepath = filepath_item.text()
basename = os.path.splitext(os.path.basename(filepath))[0]
row_number_str = str(row_number).rjust(n_digits)
vert_header_text = '{}. | {}'.format(row_number_str, basename)
vertical_header_item.setText(vert_header_text)

@inmain_decorator()
def add_files(self, filepaths, new_row_data=None):
to_add = []
Expand All @@ -1378,6 +1391,8 @@ def add_files(self, filepaths, new_row_data=None):
for filepath in to_add:
# Add the new row to the model:
self._model.appendRow(self.new_row(filepath))
vert_header_item = QtGui.QStandardItem('...loading...')
self._model.setVerticalHeaderItem(self._model.rowCount() - 1, vert_header_item)
self._view.resizeRowToContents(self._model.rowCount() - 1)
# Add the new rows to the dataframe.
if new_row_data is None:
Expand All @@ -1390,6 +1405,7 @@ def add_files(self, filepaths, new_row_data=None):
self.update_column_levels()
for filepath in to_add:
self.update_row(filepath, dataframe_already_updated=True)
self.renumber_rows()

@inmain_decorator()
def get_first_incomplete(self):
Expand Down

0 comments on commit 3c5f49b

Please sign in to comment.