mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-30 11:55:35 +08:00
Ref T659, network details component for FSD/voice setup
This commit is contained in:
committed by
Mat Sutcliffe
parent
298b040e26
commit
83254e97aa
@@ -8,10 +8,17 @@
|
|||||||
|
|
||||||
#include "networkdetailscomponent.h"
|
#include "networkdetailscomponent.h"
|
||||||
#include "ui_networkdetailscomponent.h"
|
#include "ui_networkdetailscomponent.h"
|
||||||
|
#include "blackgui/uppercasevalidator.h"
|
||||||
|
#include "blackgui/guiapplication.h"
|
||||||
|
#include "blackcore/context/contextnetwork.h"
|
||||||
|
#include "blackcore/webdataservices.h"
|
||||||
|
|
||||||
|
#include <QToolButton>
|
||||||
|
|
||||||
using namespace BlackMisc::Network;
|
using namespace BlackMisc::Network;
|
||||||
using namespace BlackMisc::Audio;
|
using namespace BlackMisc::Audio;
|
||||||
using namespace BlackCore;
|
using namespace BlackCore;
|
||||||
|
using namespace BlackCore::Data;
|
||||||
|
|
||||||
namespace BlackGui
|
namespace BlackGui
|
||||||
{
|
{
|
||||||
@@ -22,6 +29,44 @@ namespace BlackGui
|
|||||||
ui(new Ui::CNetworkDetailsComponent)
|
ui(new Ui::CNetworkDetailsComponent)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
|
ui->tw_Details->setCurrentIndex(0);
|
||||||
|
ui->sw_NetworkServerDetails->setCurrentIndex(PageServer);
|
||||||
|
|
||||||
|
connect(ui->comp_OtherServers, &CServerListSelector::serverChanged, this, &CNetworkDetailsComponent::onSelectedServerChanged);
|
||||||
|
connect(ui->comp_VatsimServers, &CServerListSelector::serverChanged, this, &CNetworkDetailsComponent::onSelectedServerChanged);
|
||||||
|
connect(ui->tw_Network, &QTabWidget::currentChanged, this, &CNetworkDetailsComponent::onServerTabWidgetChanged);
|
||||||
|
connect(ui->tw_Details, &QTabWidget::currentChanged, this, &CNetworkDetailsComponent::onDetailsTabChanged);
|
||||||
|
connect(ui->pb_OtherServersGotoSettings, &QPushButton::pressed, this, &CNetworkDetailsComponent::requestNetworkSettings);
|
||||||
|
connect(ui->pb_OverrideCredentialsVatsim, &QPushButton::clicked, this, &CNetworkDetailsComponent::onOverrideCredentialsToPilot);
|
||||||
|
connect(ui->pb_OverrideCredentialsOtherServers, &QPushButton::clicked, this, &CNetworkDetailsComponent::onOverrideCredentialsToPilot);
|
||||||
|
connect(ui->pb_DetailsVatsim, &QPushButton::clicked, this, &CNetworkDetailsComponent::onChangePage);
|
||||||
|
connect(ui->pb_DetailsOtherServers, &QPushButton::clicked, this, &CNetworkDetailsComponent::onChangePage);
|
||||||
|
connect(ui->pb_BackToServer, &QPushButton::clicked, this, &CNetworkDetailsComponent::onChangePage);
|
||||||
|
connect(&m_networkSetup, &CNetworkSetup::setupChanged, this, &CNetworkDetailsComponent::reloadOtherServersSetup, Qt::QueuedConnection);
|
||||||
|
|
||||||
|
// web service data
|
||||||
|
if (sGui && sGui->getWebDataServices())
|
||||||
|
{
|
||||||
|
connect(sGui->getWebDataServices(), &CWebDataServices::dataRead, this, &CNetworkDetailsComponent::onWebServiceDataRead, Qt::QueuedConnection);
|
||||||
|
}
|
||||||
|
|
||||||
|
ui->form_FsdDetails->showEnableInfo(true);
|
||||||
|
ui->form_FsdDetails->setFsdSetupEnabled(false);
|
||||||
|
ui->form_Voice->showEnableInfo(true);
|
||||||
|
ui->form_Voice->setVoiceSetupEnabled(false);
|
||||||
|
|
||||||
|
constexpr int MaxLength = 10;
|
||||||
|
constexpr int MinLength = 0;
|
||||||
|
CUpperCaseValidator *ucv = new CUpperCaseValidator(MinLength, MaxLength, ui->le_Copilot);
|
||||||
|
ucv->setAllowedCharacters09AZ();
|
||||||
|
ui->le_Copilot->setMaxLength(MaxLength);
|
||||||
|
ui->le_Copilot->setValidator(ucv);
|
||||||
|
|
||||||
|
const int tab = m_networkSetup.wasLastUsedWithOtherServer() ? LoginOthers : LoginVATSIM;
|
||||||
|
ui->tw_Network->setCurrentIndex(tab);
|
||||||
|
|
||||||
|
this->reloadOtherServersSetup();
|
||||||
|
this->onWebServiceDataRead(CEntityFlags::VatsimDataFile, CEntityFlags::ReadFinished, -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
CNetworkDetailsComponent::~CNetworkDetailsComponent()
|
CNetworkDetailsComponent::~CNetworkDetailsComponent()
|
||||||
@@ -32,14 +77,155 @@ namespace BlackGui
|
|||||||
return ui->frp_LoginMode->getLoginMode();
|
return ui->frp_LoginMode->getLoginMode();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CNetworkDetailsComponent::setLoginMode(INetwork::LoginMode mode)
|
||||||
|
{
|
||||||
|
ui->frp_LoginMode->setLoginMode(mode);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool CNetworkDetailsComponent::isVatsimServerSelected() const
|
||||||
|
{
|
||||||
|
const bool vatsim = ui->tw_Network->currentWidget() == ui->tb_NetworkVatsim;
|
||||||
|
return vatsim;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool CNetworkDetailsComponent::isOtherServerSelected() const
|
||||||
|
{
|
||||||
|
return ui->tw_Details->currentWidget() == ui->tb_OtherServers;
|
||||||
|
}
|
||||||
|
|
||||||
CVoiceSetup CNetworkDetailsComponent::getVoiceSetup() const
|
CVoiceSetup CNetworkDetailsComponent::getVoiceSetup() const
|
||||||
{
|
{
|
||||||
return ui->form_Voice->getValue();
|
return ui->form_Voice->getValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool CNetworkDetailsComponent::isVoiceSetupOverrideEnabled() const
|
||||||
|
{
|
||||||
|
return ui->form_Voice->isVoiceSetupEnabled();
|
||||||
|
}
|
||||||
|
|
||||||
CFsdSetup CNetworkDetailsComponent::getFsdSetup() const
|
CFsdSetup CNetworkDetailsComponent::getFsdSetup() const
|
||||||
{
|
{
|
||||||
return ui->form_FsdDetails->getValue();
|
return ui->form_FsdDetails->getValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool CNetworkDetailsComponent::isFsdSetupOverrideEnabled() const
|
||||||
|
{
|
||||||
|
return ui->form_FsdDetails->isFsdSetupEnabled();
|
||||||
|
}
|
||||||
|
|
||||||
|
void CNetworkDetailsComponent::setServerButtonsVisible(bool visible)
|
||||||
|
{
|
||||||
|
ui->wi_OtherServersButtons->setVisible(visible);
|
||||||
|
ui->wi_VatsimButtons->setVisible(visible);
|
||||||
|
}
|
||||||
|
|
||||||
|
void CNetworkDetailsComponent::onDetailsTabChanged(int index)
|
||||||
|
{
|
||||||
|
if (index == DetailsBack)
|
||||||
|
{
|
||||||
|
ui->sw_NetworkServerDetails->setCurrentIndex(PageServer);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Q_UNUSED(index);
|
||||||
|
const CServer server = this->getCurrentServer();
|
||||||
|
|
||||||
|
// only override if not yet enabled
|
||||||
|
if (!ui->form_FsdDetails->isFsdSetupEnabled()) { ui->form_FsdDetails->setValue(server.getFsdSetup()); }
|
||||||
|
if (!ui->form_Voice->isVoiceSetupEnabled()) { ui->form_Voice->setValue(server.getVoiceSetup()); }
|
||||||
|
}
|
||||||
|
|
||||||
|
void CNetworkDetailsComponent::onOverrideCredentialsToPilot()
|
||||||
|
{
|
||||||
|
CServer server;
|
||||||
|
const QObject *s = QObject::sender();
|
||||||
|
if (s == ui->pb_OverrideCredentialsOtherServers)
|
||||||
|
{
|
||||||
|
server = this->getCurrentOtherServer();
|
||||||
|
}
|
||||||
|
else if (s == ui->pb_OverrideCredentialsVatsim)
|
||||||
|
{
|
||||||
|
// the VATSIM server selected has no valid user credentials
|
||||||
|
server = m_networkSetup.getLastVatsimServer();
|
||||||
|
}
|
||||||
|
else { return; }
|
||||||
|
emit this->overridePilot(server.getUser());
|
||||||
|
}
|
||||||
|
|
||||||
|
void CNetworkDetailsComponent::onServerTabWidgetChanged(int index)
|
||||||
|
{
|
||||||
|
Q_UNUSED(index);
|
||||||
|
if (!m_updatePilotOnServerChanges) { return; }
|
||||||
|
const bool vatsim = this->isVatsimServerSelected();
|
||||||
|
const CServer server = vatsim ? this->getCurrentVatsimServer() : this->getCurrentOtherServer();
|
||||||
|
emit this->overridePilot(server.getUser());
|
||||||
|
}
|
||||||
|
|
||||||
|
void CNetworkDetailsComponent::onSelectedServerChanged(const CServer &server)
|
||||||
|
{
|
||||||
|
if (!m_updatePilotOnServerChanges) { return; }
|
||||||
|
const bool vatsim = this->isVatsimServerSelected();
|
||||||
|
const CUser user = vatsim ? this->getCurrentVatsimServer().getUser() : server.getUser();
|
||||||
|
emit this->overridePilot(server.getUser());
|
||||||
|
}
|
||||||
|
|
||||||
|
void CNetworkDetailsComponent::onWebServiceDataRead(CEntityFlags::Entity entity, CEntityFlags::ReadState state, int number)
|
||||||
|
{
|
||||||
|
if (!CEntityFlags::isFinishedReadState(state)) { return; }
|
||||||
|
Q_UNUSED(number);
|
||||||
|
|
||||||
|
if (entity == CEntityFlags::VatsimDataFile)
|
||||||
|
{
|
||||||
|
CServerList vatsimFsdServers = sGui->getIContextNetwork()->getVatsimFsdServers();
|
||||||
|
if (vatsimFsdServers.isEmpty()) { return; }
|
||||||
|
vatsimFsdServers.sortBy(&CServer::getName);
|
||||||
|
const CServer currentServer = m_networkSetup.getLastVatsimServer();
|
||||||
|
ui->comp_VatsimServers->setServers(vatsimFsdServers, true);
|
||||||
|
ui->comp_VatsimServers->preSelect(currentServer.getName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void CNetworkDetailsComponent::onChangePage()
|
||||||
|
{
|
||||||
|
const QObject *s = QObject::sender();
|
||||||
|
if (s == ui->pb_DetailsVatsim || s == ui->pb_DetailsOtherServers)
|
||||||
|
{
|
||||||
|
ui->sw_NetworkServerDetails->setCurrentIndex(PageDetails);
|
||||||
|
ui->tw_Details->setCurrentIndex(DetailsServer);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ui->sw_NetworkServerDetails->setCurrentIndex(PageServer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
CServer CNetworkDetailsComponent::getCurrentVatsimServer() const
|
||||||
|
{
|
||||||
|
CServer server = ui->comp_VatsimServers->currentServer();
|
||||||
|
if (!server.getUser().hasValidVatsimId())
|
||||||
|
{
|
||||||
|
// normally VATSIM server have no valid user associated
|
||||||
|
const CUser user = m_networkSetup.getLastVatsimServer().getUser();
|
||||||
|
server.setUser(user);
|
||||||
|
}
|
||||||
|
return server;
|
||||||
|
}
|
||||||
|
|
||||||
|
CServer CNetworkDetailsComponent::getCurrentOtherServer() const
|
||||||
|
{
|
||||||
|
return ui->comp_OtherServers->currentServer();
|
||||||
|
}
|
||||||
|
|
||||||
|
CServer CNetworkDetailsComponent::getCurrentServer() const
|
||||||
|
{
|
||||||
|
return this->isVatsimServerSelected() ? this->getCurrentVatsimServer() : this->getCurrentOtherServer();
|
||||||
|
}
|
||||||
|
|
||||||
|
void CNetworkDetailsComponent::reloadOtherServersSetup()
|
||||||
|
{
|
||||||
|
const CServerList otherServers(m_networkSetup.getOtherServersPlusPredefinedServers());
|
||||||
|
ui->comp_OtherServers->setServers(otherServers);
|
||||||
|
}
|
||||||
|
|
||||||
} // ns
|
} // ns
|
||||||
} // ns
|
} // ns
|
||||||
|
|||||||
@@ -14,9 +14,14 @@
|
|||||||
#include <QFrame>
|
#include <QFrame>
|
||||||
#include <QScopedPointer>
|
#include <QScopedPointer>
|
||||||
|
|
||||||
|
#include "blackcore/data/networksetup.h"
|
||||||
|
#include "blackcore/network.h"
|
||||||
|
#include "blackmisc/network/data/lastserver.h"
|
||||||
|
#include "blackmisc/network/entityflags.h"
|
||||||
#include "blackmisc/network/fsdsetup.h"
|
#include "blackmisc/network/fsdsetup.h"
|
||||||
#include "blackmisc/audio/voicesetup.h"
|
#include "blackmisc/audio/voicesetup.h"
|
||||||
#include "blackcore/network.h"
|
#include "blackmisc/settingscache.h"
|
||||||
|
#include "blackmisc/datacache.h"
|
||||||
|
|
||||||
namespace Ui { class CNetworkDetailsComponent; }
|
namespace Ui { class CNetworkDetailsComponent; }
|
||||||
namespace BlackGui
|
namespace BlackGui
|
||||||
@@ -29,6 +34,28 @@ namespace BlackGui
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
//! The tabs
|
||||||
|
enum Tab
|
||||||
|
{
|
||||||
|
LoginVATSIM,
|
||||||
|
LoginOthers,
|
||||||
|
};
|
||||||
|
|
||||||
|
//! Pages
|
||||||
|
enum Page
|
||||||
|
{
|
||||||
|
PageServer,
|
||||||
|
PageDetails
|
||||||
|
};
|
||||||
|
|
||||||
|
//! Details
|
||||||
|
enum Details
|
||||||
|
{
|
||||||
|
DetailsServer,
|
||||||
|
DetailsVoice,
|
||||||
|
DetailsBack
|
||||||
|
};
|
||||||
|
|
||||||
//! Ctor
|
//! Ctor
|
||||||
explicit CNetworkDetailsComponent(QWidget *parent = nullptr);
|
explicit CNetworkDetailsComponent(QWidget *parent = nullptr);
|
||||||
|
|
||||||
@@ -38,13 +65,69 @@ namespace BlackGui
|
|||||||
//! FSD setup
|
//! FSD setup
|
||||||
BlackMisc::Network::CFsdSetup getFsdSetup() const;
|
BlackMisc::Network::CFsdSetup getFsdSetup() const;
|
||||||
|
|
||||||
|
//! Specific setup enabled?
|
||||||
|
bool isFsdSetupOverrideEnabled() const;
|
||||||
|
|
||||||
//! Voice setup
|
//! Voice setup
|
||||||
BlackMisc::Audio::CVoiceSetup getVoiceSetup() const;
|
BlackMisc::Audio::CVoiceSetup getVoiceSetup() const;
|
||||||
|
|
||||||
|
//! Specific setup enabled?
|
||||||
|
bool isVoiceSetupOverrideEnabled() const;
|
||||||
|
|
||||||
//! Login mode
|
//! Login mode
|
||||||
BlackCore::INetwork::LoginMode getLoginMode() const;
|
BlackCore::INetwork::LoginMode getLoginMode() const;
|
||||||
|
|
||||||
|
//! Login mode
|
||||||
|
void setLoginMode(BlackCore::INetwork::LoginMode mode);
|
||||||
|
|
||||||
|
//! Selected server @{
|
||||||
|
bool isVatsimServerSelected() const;
|
||||||
|
bool isOtherServerSelected() const;
|
||||||
|
//! @}
|
||||||
|
|
||||||
|
//! Selected server (VATSIM)
|
||||||
|
BlackMisc::Network::CServer getCurrentVatsimServer() const;
|
||||||
|
|
||||||
|
//! Selected server (others)
|
||||||
|
BlackMisc::Network::CServer getCurrentOtherServer() const;
|
||||||
|
|
||||||
|
//! Current server based on selected tab
|
||||||
|
BlackMisc::Network::CServer getCurrentServer() const;
|
||||||
|
|
||||||
|
signals:
|
||||||
|
//! Override the pilot
|
||||||
|
void overridePilot(const BlackMisc::Network::CUser &user);
|
||||||
|
|
||||||
|
//! Request network settings
|
||||||
|
void requestNetworkSettings();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
//! Settings have been changed
|
||||||
|
void reloadOtherServersSetup();
|
||||||
|
|
||||||
|
//! Tab widget (server) changed
|
||||||
|
void onServerTabWidgetChanged(int index);
|
||||||
|
|
||||||
|
//! Server changed
|
||||||
|
void onSelectedServerChanged(const BlackMisc::Network::CServer &server);
|
||||||
|
|
||||||
|
//! Set the server buttons visible
|
||||||
|
void setServerButtonsVisible(bool visible);
|
||||||
|
|
||||||
|
//! Tab index changed
|
||||||
|
void onDetailsTabChanged(int index);
|
||||||
|
|
||||||
|
//! Override credentials
|
||||||
|
void onOverrideCredentialsToPilot();
|
||||||
|
|
||||||
|
//! VATSIM data file was loaded
|
||||||
|
void onWebServiceDataRead(BlackMisc::Network::CEntityFlags::Entity entity, BlackMisc::Network::CEntityFlags::ReadState state, int number);
|
||||||
|
|
||||||
|
//! Change page
|
||||||
|
void onChangePage();
|
||||||
|
|
||||||
|
BlackCore::Data::CNetworkSetup m_networkSetup; //!< servers last used
|
||||||
|
bool m_updatePilotOnServerChanges = true;
|
||||||
QScopedPointer<Ui::CNetworkDetailsComponent> ui;
|
QScopedPointer<Ui::CNetworkDetailsComponent> ui;
|
||||||
};
|
};
|
||||||
} // ns
|
} // ns
|
||||||
|
|||||||
@@ -2,10 +2,18 @@
|
|||||||
<ui version="4.0">
|
<ui version="4.0">
|
||||||
<class>CNetworkDetailsComponent</class>
|
<class>CNetworkDetailsComponent</class>
|
||||||
<widget class="QFrame" name="CNetworkDetailsComponent">
|
<widget class="QFrame" name="CNetworkDetailsComponent">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>394</width>
|
||||||
|
<height>134</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string>Network details</string>
|
<string>Network details</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="vl_FsdDetailsComponent">
|
<layout class="QVBoxLayout" name="vl_CNetworkDetailsComponent">
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
@@ -19,126 +27,360 @@
|
|||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QTabWidget" name="tw_Details">
|
<widget class="QStackedWidget" name="sw_NetworkServerDetails">
|
||||||
<property name="currentIndex">
|
<property name="currentIndex">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="tb_LoginMode">
|
<widget class="QWidget" name="tb_NetworkServer">
|
||||||
<attribute name="title">
|
<layout class="QVBoxLayout" name="vl_NetworkServerPage">
|
||||||
<string>Mode</string>
|
|
||||||
</attribute>
|
|
||||||
<layout class="QVBoxLayout" name="vl_LoginMode">
|
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
<number>3</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="topMargin">
|
<property name="topMargin">
|
||||||
<number>3</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="rightMargin">
|
<property name="rightMargin">
|
||||||
<number>3</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="bottomMargin">
|
<property name="bottomMargin">
|
||||||
<number>3</number>
|
<number>2</number>
|
||||||
</property>
|
|
||||||
<item alignment="Qt::AlignTop">
|
|
||||||
<widget class="BlackGui::CLoginModeButtons" name="frp_LoginMode"/>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
|
||||||
<widget class="QWidget" name="tb_FsdDetails">
|
|
||||||
<attribute name="title">
|
|
||||||
<string>FSD details</string>
|
|
||||||
</attribute>
|
|
||||||
<layout class="QVBoxLayout" name="vl_FsdDetails">
|
|
||||||
<property name="leftMargin">
|
|
||||||
<number>3</number>
|
|
||||||
</property>
|
|
||||||
<property name="topMargin">
|
|
||||||
<number>3</number>
|
|
||||||
</property>
|
|
||||||
<property name="rightMargin">
|
|
||||||
<number>3</number>
|
|
||||||
</property>
|
|
||||||
<property name="bottomMargin">
|
|
||||||
<number>3</number>
|
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QScrollArea" name="sa_FsdDetails">
|
<widget class="QTabWidget" name="tw_Network">
|
||||||
<property name="widgetResizable">
|
<property name="tabPosition">
|
||||||
<bool>true</bool>
|
<enum>QTabWidget::North</enum>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="qw_FsdDetails">
|
<property name="currentIndex">
|
||||||
<property name="geometry">
|
<number>0</number>
|
||||||
<rect>
|
</property>
|
||||||
<x>0</x>
|
<widget class="QWidget" name="tb_NetworkVatsim">
|
||||||
<y>0</y>
|
<property name="toolTip">
|
||||||
<width>192</width>
|
<string>Login at VATSIM</string>
|
||||||
<height>55</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="vl_ScrollAreaFsdDetails">
|
<attribute name="title">
|
||||||
|
<string>VATSIM</string>
|
||||||
|
</attribute>
|
||||||
|
<layout class="QGridLayout" name="gl_NetworkVATSIM">
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
<number>2</number>
|
<number>3</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="topMargin">
|
<property name="topMargin">
|
||||||
<number>2</number>
|
<number>3</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="rightMargin">
|
<property name="rightMargin">
|
||||||
<number>2</number>
|
<number>3</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="bottomMargin">
|
<property name="bottomMargin">
|
||||||
<number>2</number>
|
<number>3</number>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<property name="horizontalSpacing">
|
||||||
<widget class="BlackGui::Editors::CFsdSetupForm" name="form_FsdDetails"/>
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="QWidget" name="wi_VatsimButtons" native="true">
|
||||||
|
<layout class="QHBoxLayout" name="hl_VatsimButtons">
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<spacer name="hs_VatsimButtons">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="pb_DetailsVatsim">
|
||||||
|
<property name="text">
|
||||||
|
<string>details</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="pb_OverrideCredentialsVatsim">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>copy credentials to pilot section</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string> override pilot </string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="BlackGui::Components::CServerListSelector" name="comp_VatsimServers"/>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<widget class="QWidget" name="tb_OtherServers">
|
||||||
|
<attribute name="title">
|
||||||
|
<string>Other servers</string>
|
||||||
|
</attribute>
|
||||||
|
<layout class="QGridLayout" name="gl_OtherServers">
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="horizontalSpacing">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="BlackGui::Components::CServerListSelector" name="comp_OtherServers"/>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="QWidget" name="wi_OtherServersButtons" native="true">
|
||||||
|
<layout class="QHBoxLayout" name="hl_OtherServersButtons">
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<spacer name="hs_OtherServersButtons">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="pb_RefreshOtherServers">
|
||||||
|
<property name="text">
|
||||||
|
<string>reload</string>
|
||||||
|
</property>
|
||||||
|
<property name="icon">
|
||||||
|
<iconset resource="../../blackmisc/blackmisc.qrc">
|
||||||
|
<normaloff>:/diagona/icons/diagona/icons/arrow-circle-225.png</normaloff>:/diagona/icons/diagona/icons/arrow-circle-225.png</iconset>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="pb_OtherServersGotoSettings">
|
||||||
|
<property name="text">
|
||||||
|
<string>settings </string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="pb_DetailsOtherServers">
|
||||||
|
<property name="text">
|
||||||
|
<string>details</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="pb_OverrideCredentialsOtherServers">
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>copy credentials to pilot section</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string> override pilot </string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
<item>
|
||||||
</widget>
|
<widget class="QWidget" name="wi_FurtherLoginDetails" native="true">
|
||||||
<widget class="QWidget" name="tb_Voice">
|
<property name="minimumSize">
|
||||||
<attribute name="title">
|
<size>
|
||||||
<string>Voice</string>
|
<width>0</width>
|
||||||
</attribute>
|
<height>30</height>
|
||||||
<layout class="QVBoxLayout" name="vl_Voice">
|
</size>
|
||||||
<property name="leftMargin">
|
</property>
|
||||||
<number>3</number>
|
<layout class="QFormLayout" name="fl_FurtherLoginDetails">
|
||||||
</property>
|
<property name="leftMargin">
|
||||||
<property name="topMargin">
|
<number>0</number>
|
||||||
<number>3</number>
|
</property>
|
||||||
</property>
|
<property name="topMargin">
|
||||||
<property name="rightMargin">
|
<number>0</number>
|
||||||
<number>3</number>
|
</property>
|
||||||
</property>
|
<property name="rightMargin">
|
||||||
<property name="bottomMargin">
|
<number>0</number>
|
||||||
<number>3</number>
|
</property>
|
||||||
</property>
|
<property name="bottomMargin">
|
||||||
<item alignment="Qt::AlignTop">
|
<number>0</number>
|
||||||
<widget class="BlackGui::Editors::CVoiceSetupForm" name="form_Voice"/>
|
</property>
|
||||||
|
<item row="1" column="1">
|
||||||
|
<widget class="QLineEdit" name="le_Copilot">
|
||||||
|
<property name="placeholderText">
|
||||||
|
<string>partner callsign</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="lbl_Mode">
|
||||||
|
<property name="text">
|
||||||
|
<string>Login</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<widget class="BlackGui::CLoginModeButtons" name="frp_LoginMode">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="QLabel" name="lbl_Copilot">
|
||||||
|
<property name="text">
|
||||||
|
<string>Co/Pilot callsign</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QWidget" name="tb_MatchingLog">
|
<widget class="QWidget" name="tb_NetworkDetails">
|
||||||
<attribute name="title">
|
<layout class="QVBoxLayout" name="vl_NetworkDetailsPage">
|
||||||
<string>Matching log</string>
|
|
||||||
</attribute>
|
|
||||||
<layout class="QVBoxLayout" name="vl_MatchingLog">
|
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
<number>3</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="topMargin">
|
<property name="topMargin">
|
||||||
<number>3</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="rightMargin">
|
<property name="rightMargin">
|
||||||
<number>3</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="bottomMargin">
|
<property name="bottomMargin">
|
||||||
<number>3</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<item alignment="Qt::AlignTop">
|
<item>
|
||||||
<widget class="BlackGui::Components::CModelMatcherLogEnable" name="comp_MatchingLogEnabled"/>
|
<widget class="QTabWidget" name="tw_Details">
|
||||||
|
<property name="currentIndex">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<widget class="QWidget" name="tb_FsdDetails">
|
||||||
|
<attribute name="title">
|
||||||
|
<string>FSD details</string>
|
||||||
|
</attribute>
|
||||||
|
<layout class="QVBoxLayout" name="vl_FsdDetails">
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<item alignment="Qt::AlignLeft|Qt::AlignTop">
|
||||||
|
<widget class="BlackGui::Editors::CFsdSetupForm" name="form_FsdDetails">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>150</width>
|
||||||
|
<height>75</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<widget class="QWidget" name="tb_Voice">
|
||||||
|
<attribute name="title">
|
||||||
|
<string>Voice</string>
|
||||||
|
</attribute>
|
||||||
|
<layout class="QVBoxLayout" name="vl_Voice">
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>3</number>
|
||||||
|
</property>
|
||||||
|
<item alignment="Qt::AlignLeft|Qt::AlignTop">
|
||||||
|
<widget class="BlackGui::Editors::CVoiceSetupForm" name="form_Voice">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>150</width>
|
||||||
|
<height>50</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<widget class="QWidget" name="tb_BackTServer">
|
||||||
|
<attribute name="icon">
|
||||||
|
<iconset resource="../../blackmisc/blackmisc.qrc">
|
||||||
|
<normaloff>:/pastel/icons/pastel/16/close.png</normaloff>:/pastel/icons/pastel/16/close.png</iconset>
|
||||||
|
</attribute>
|
||||||
|
<attribute name="title">
|
||||||
|
<string>Back to server</string>
|
||||||
|
</attribute>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout">
|
||||||
|
<item alignment="Qt::AlignRight">
|
||||||
|
<widget class="QPushButton" name="pb_BackToServer">
|
||||||
|
<property name="text">
|
||||||
|
<string>back to server</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
@@ -160,10 +402,9 @@
|
|||||||
<container>1</container>
|
<container>1</container>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
<customwidget>
|
<customwidget>
|
||||||
<class>BlackGui::Components::CModelMatcherLogEnable</class>
|
<class>BlackGui::Components::CServerListSelector</class>
|
||||||
<extends>QFrame</extends>
|
<extends>QComboBox</extends>
|
||||||
<header>blackgui/components/modelmatcherlogenable.h</header>
|
<header>blackgui/components/serverlistselector.h</header>
|
||||||
<container>1</container>
|
|
||||||
</customwidget>
|
</customwidget>
|
||||||
<customwidget>
|
<customwidget>
|
||||||
<class>BlackGui::CLoginModeButtons</class>
|
<class>BlackGui::CLoginModeButtons</class>
|
||||||
@@ -172,6 +413,22 @@
|
|||||||
<container>1</container>
|
<container>1</container>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
</customwidgets>
|
</customwidgets>
|
||||||
<resources/>
|
<tabstops>
|
||||||
|
<tabstop>tw_Network</tabstop>
|
||||||
|
<tabstop>comp_VatsimServers</tabstop>
|
||||||
|
<tabstop>pb_DetailsVatsim</tabstop>
|
||||||
|
<tabstop>pb_OverrideCredentialsVatsim</tabstop>
|
||||||
|
<tabstop>le_Copilot</tabstop>
|
||||||
|
<tabstop>comp_OtherServers</tabstop>
|
||||||
|
<tabstop>pb_RefreshOtherServers</tabstop>
|
||||||
|
<tabstop>pb_OtherServersGotoSettings</tabstop>
|
||||||
|
<tabstop>pb_DetailsOtherServers</tabstop>
|
||||||
|
<tabstop>pb_OverrideCredentialsOtherServers</tabstop>
|
||||||
|
<tabstop>tw_Details</tabstop>
|
||||||
|
<tabstop>pb_BackToServer</tabstop>
|
||||||
|
</tabstops>
|
||||||
|
<resources>
|
||||||
|
<include location="../../blackmisc/blackmisc.qrc"/>
|
||||||
|
</resources>
|
||||||
<connections/>
|
<connections/>
|
||||||
</ui>
|
</ui>
|
||||||
|
|||||||
Reference in New Issue
Block a user