fix error on export table columns

This commit is contained in:
woodser 2025-06-22 08:38:43 -04:00 committed by GitHub
parent 32148e7440
commit 5141574d70
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 14 additions and 4 deletions

View file

@ -165,7 +165,7 @@ public class LockedView extends ActivatableView<VBox, Void> {
numItems.setText(Res.get("shared.numItemsLabel", sortedList.size()));
exportButton.setOnAction(event -> {
ObservableList<TableColumn<LockedListItem, ?>> tableColumns = tableView.getColumns();
ObservableList<TableColumn<LockedListItem, ?>> tableColumns = GUIUtil.getContentColumns(tableView);
int reportColumns = tableColumns.size();
CSVEntryConverter<LockedListItem> headerConverter = item -> {
String[] columns = new String[reportColumns];

View file

@ -165,7 +165,7 @@ public class ReservedView extends ActivatableView<VBox, Void> {
numItems.setText(Res.get("shared.numItemsLabel", sortedList.size()));
exportButton.setOnAction(event -> {
ObservableList<TableColumn<ReservedListItem, ?>> tableColumns = tableView.getColumns();
ObservableList<TableColumn<ReservedListItem, ?>> tableColumns = GUIUtil.getContentColumns(tableView);
int reportColumns = tableColumns.size();
CSVEntryConverter<ReservedListItem> headerConverter = item -> {
String[] columns = new String[reportColumns];

View file

@ -203,7 +203,7 @@ public class TransactionsView extends ActivatableView<VBox, Void> {
numItems.setText(Res.get("shared.numItemsLabel", sortedDisplayedTransactions.size()));
exportButton.setOnAction(event -> {
final ObservableList<TableColumn<TransactionsListItem, ?>> tableColumns = tableView.getColumns();
final ObservableList<TableColumn<TransactionsListItem, ?>> tableColumns = GUIUtil.getContentColumns(tableView);
final int reportColumns = tableColumns.size() - 1; // CSV report excludes the last column (an icon)
CSVEntryConverter<TransactionsListItem> headerConverter = item -> {
String[] columns = new String[reportColumns];

View file

@ -397,7 +397,7 @@ public class TradesChartsView extends ActivatableViewAndModel<VBox, TradesCharts
}
private void exportToCsv() {
ObservableList<TableColumn<TradeStatistics3ListItem, ?>> tableColumns = tableView.getColumns();
ObservableList<TableColumn<TradeStatistics3ListItem, ?>> tableColumns = GUIUtil.getContentColumns(tableView);
int reportColumns = tableColumns.size() + 1;
boolean showAllTradeCurrencies = model.showAllTradeCurrenciesProperty.get();

View file

@ -1281,6 +1281,16 @@ public class GUIUtil {
}
}
public static <T> ObservableList<TableColumn<T, ?>> getContentColumns(TableView<T> tableView) {
ObservableList<TableColumn<T, ?>> contentColumns = FXCollections.observableArrayList();
for (TableColumn<T, ?> column : tableView.getColumns()) {
if (!column.getStyleClass().contains("first-column") && !column.getStyleClass().contains("last-column")) {
contentColumns.add(column);
}
}
return contentColumns;
}
public static ImageView getCurrencyIcon(String currencyCode) {
return getCurrencyIcon(currencyCode, 24);
}