61 inline static std::string_view logger_name =
62 "ores.qt.import_trade_dialog";
64 [[nodiscard]]
static auto& lg() {
66 static auto instance = make_logger(logger_name);
85 const std::vector<ore::xml::trade_import_item>& items,
86 const QString& source_label,
87 const std::string& market_data_dir,
89 const QString& username,
90 QWidget* parent =
nullptr);
108 void onImportClicked();
109 void onCancelClicked();
110 void onSelectAllChanged(Qt::CheckState state);
111 void onTradeCheckChanged();
112 void onApplyNettingSetToAll();
113 void onApplyCounterpartyToAll();
117 void populateTradeTable();
118 void populateCounterpartyCombos();
119 void loadCounterparties();
120 void updateImportButtonState();
121 void updateSelectionCount();
125 std::vector<ore::xml::trade_import_item> items_;
126 std::vector<std::string> validation_errors_;
127 std::vector<refdata::domain::counterparty> counterparties_;
128 QString source_label_;
129 std::string market_data_dir_;
134 QDateEdit* tradeDateEdit_;
135 QDateEdit* effectiveDateEdit_;
136 QDateEdit* terminationDateEdit_;
137 QComboBox* lifecycleEventCombo_;
138 QLineEdit* defaultNettingSetEdit_;
139 QComboBox* defaultCounterpartyCombo_;
140 QLabel* counterpartyStatusLabel_;
145 QCheckBox* selectAllCheckbox_;
146 QLabel* selectionCountLabel_;
147 QTableWidget* tradeTable_;
150 QProgressBar* progressBar_;
151 QLabel* statusLabel_;
152 QPushButton* importButton_;
153 QPushButton* cancelButton_;
155 bool importInProgress_;
156 std::atomic<bool> cancelRequested_;