2121#include < miner.h>
2222#include < net.h>
2323#include < primitives/block.h>
24- #include < sidechain.h>
2524#include < txdb.h>
2625#include < validation.h>
2726#include < wallet/coincontrol.h>
@@ -48,20 +47,24 @@ SidechainPage::SidechainPage(QWidget *parent) :
4847 for (const Sidechain& s : ValidSidechains) {
4948 QListWidgetItem *item = new QListWidgetItem (ui->listWidgetSidechains );
5049
51- // TODO keep list of sidechain icons and display correct icon based on nSidechain
5250 // Set icon
53- QIcon icon (" :/icons/sidechain_one " );
51+ QIcon icon (SidechainIcons[s. nSidechain ] );
5452 item->setIcon (icon);
5553
5654 // Set text
5755 item->setText (QString::fromStdString (s.GetSidechainName ()));
5856 QFont font = item->font ();
59- font.setPointSize (22 );
57+ font.setPointSize (16 );
6058 item->setFont (font);
6159
6260 ui->listWidgetSidechains ->addItem (item);
6361 }
6462
63+ // Setup sidechain selection combo box
64+ for (const Sidechain& s : ValidSidechains) {
65+ ui->comboBoxSidechains ->addItem (QString::fromStdString (s.GetSidechainName ()));
66+ }
67+
6568 // Initialize models
6669 escrowModel = new SidechainEscrowTableModel (this );
6770 withdrawalModel = new SidechainWithdrawalTableModel (this );
@@ -207,7 +210,7 @@ void SidechainPage::on_pushButtonDeposit_clicked()
207210 // Successful deposit message box
208211 messageBox.setWindowTitle (" Deposit transaction created!" );
209212 QString result = " Deposited to " + QString::fromStdString (GetSidechainName (nSidechain));
210- result += " Sidechain. \n " ;
213+ result += " \n " ;
211214 result += " txid: " + QString::fromStdString (tx->GetHash ().ToString ());
212215 result += " \n " ;
213216 result += " Amount deposited: " ;
@@ -228,6 +231,24 @@ void SidechainPage::on_pushButtonClear_clicked()
228231 ui->payTo ->clear ();
229232}
230233
234+ void SidechainPage::on_comboBoxSidechains_currentIndexChanged (const int i)
235+ {
236+ if (!IsSidechainNumberValid (i))
237+ return ;
238+
239+ ui->listWidgetSidechains ->setCurrentRow (i);
240+
241+ // Update deposit button text
242+ QString strSidechain = QString::fromStdString (GetSidechainName (i));
243+ QString str = " Deposit to: " + strSidechain;
244+ ui->pushButtonDeposit ->setText (str);
245+ }
246+
247+ void SidechainPage::on_listWidgetSidechains_doubleClicked (const QModelIndex& i)
248+ {
249+ ui->comboBoxSidechains ->setCurrentIndex (i.row ());
250+ }
251+
231252bool SidechainPage::validateDepositAmount ()
232253{
233254 if (!ui->payAmount ->validate ()) {
0 commit comments