mirror of https://github.com/f1xpl/openauto.git
Implement selection of recent address
parent
f01f057b68
commit
9db15b953e
|
@ -36,6 +36,7 @@ private slots:
|
||||||
void onConnectButtonClicked();
|
void onConnectButtonClicked();
|
||||||
void onConnectionFailed(const QString& message);
|
void onConnectionFailed(const QString& message);
|
||||||
void onConnectionSucceed(aasdk::tcp::ITCPEndpoint::SocketPointer socket, const std::string& ipAddress);
|
void onConnectionSucceed(aasdk::tcp::ITCPEndpoint::SocketPointer socket, const std::string& ipAddress);
|
||||||
|
void onRecentAddressClicked(const QModelIndex& index);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void insertIpAddress(const std::string& ipAddress);
|
void insertIpAddress(const std::string& ipAddress);
|
||||||
|
|
|
@ -46,8 +46,11 @@ void RecentAddressesList::read()
|
||||||
|
|
||||||
void RecentAddressesList::insertAddress(const std::string& address)
|
void RecentAddressesList::insertAddress(const std::string& address)
|
||||||
{
|
{
|
||||||
list_.push_front(address);
|
if(std::find(list_.begin(), list_.end(), address) != list_.end())
|
||||||
this->save();
|
{
|
||||||
|
list_.push_front(address);
|
||||||
|
this->save();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RecentAddressesList::RecentAddresses RecentAddressesList::getList() const
|
RecentAddressesList::RecentAddresses RecentAddressesList::getList() const
|
||||||
|
|
|
@ -24,6 +24,7 @@ ConnectDialog::ConnectDialog(boost::asio::io_service& ioService, aasdk::tcp::ITC
|
||||||
ui_->setupUi(this);
|
ui_->setupUi(this);
|
||||||
connect(ui_->pushButtonCancel, &QPushButton::clicked, this, &ConnectDialog::close);
|
connect(ui_->pushButtonCancel, &QPushButton::clicked, this, &ConnectDialog::close);
|
||||||
connect(ui_->pushButtonConnect, &QPushButton::clicked, this, &ConnectDialog::onConnectButtonClicked);
|
connect(ui_->pushButtonConnect, &QPushButton::clicked, this, &ConnectDialog::onConnectButtonClicked);
|
||||||
|
connect(ui_->listViewRecent, &QListView::clicked, this, &ConnectDialog::onRecentAddressClicked);
|
||||||
connect(this, &ConnectDialog::connectionSucceed, this, &ConnectDialog::onConnectionSucceed);
|
connect(this, &ConnectDialog::connectionSucceed, this, &ConnectDialog::onConnectionSucceed);
|
||||||
connect(this, &ConnectDialog::connectionFailed, this, &ConnectDialog::onConnectionFailed);
|
connect(this, &ConnectDialog::connectionFailed, this, &ConnectDialog::onConnectionFailed);
|
||||||
|
|
||||||
|
@ -81,6 +82,16 @@ void ConnectDialog::onConnectionFailed(const QString& message)
|
||||||
errorMessage.exec();
|
errorMessage.exec();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ConnectDialog::onRecentAddressClicked(const QModelIndex& index)
|
||||||
|
{
|
||||||
|
const auto& recentAddressesList = recentAddressesList_.getList();
|
||||||
|
|
||||||
|
if(static_cast<size_t>(index.row()) <= recentAddressesList.size())
|
||||||
|
{
|
||||||
|
ui_->lineEditIPAddress->setText(QString::fromStdString(recentAddressesList.at(index.row())));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void ConnectDialog::setControlsEnabledStatus(bool status)
|
void ConnectDialog::setControlsEnabledStatus(bool status)
|
||||||
{
|
{
|
||||||
ui_->pushButtonConnect->setVisible(status);
|
ui_->pushButtonConnect->setVisible(status);
|
||||||
|
|
|
@ -57,6 +57,9 @@
|
||||||
<height>141</height>
|
<height>141</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="editTriggers">
|
||||||
|
<set>QAbstractItemView::NoEditTriggers</set>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QLabel" name="labelHeadUnitServerInfo">
|
<widget class="QLabel" name="labelHeadUnitServerInfo">
|
||||||
|
|
Loading…
Reference in New Issue