mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-31 04:25:35 +08:00
Further CRawFsdMessageComponent UI improvements
* Replace CheckBox with Pushbutton and Statusbar to enable/disable * Add Clear button to clear all messages in display and buffer * Keep all widgets always enabled ref T240
This commit is contained in:
committed by
Klaus Basan
parent
0c7d2b23f4
commit
c286635e76
@@ -55,9 +55,11 @@ namespace BlackGui
|
||||
connect(ui->le_FilterText, &QLineEdit::returnPressed, this, &CRawFsdMessagesComponent::changeStringFilter);
|
||||
connect(ui->cb_FilterPacketType, &QComboBox::currentTextChanged, this, &CRawFsdMessagesComponent::changePacketTypeFilter);
|
||||
connect(ui->gb_Filter, &QGroupBox::toggled, this, &CRawFsdMessagesComponent::expandFilters);
|
||||
connect(ui->gb_WriteToFile , &QGroupBox::toggled, this, &CRawFsdMessagesComponent::expandWritingToFile);
|
||||
connect(ui->gb_WriteToFile, &QGroupBox::toggled, this, &CRawFsdMessagesComponent::expandWritingToFile);
|
||||
connect(ui->pb_SelectFileDir, &QPushButton::clicked, this, &CRawFsdMessagesComponent::selectFileDir);
|
||||
connect(ui->le_MaxDisplayedMessages, &QLineEdit::returnPressed, this, &CRawFsdMessagesComponent::changeMaxDisplayedMessages);
|
||||
connect(ui->pb_EnableDisable, &QPushButton::clicked, this, &CRawFsdMessagesComponent::enableDisableRawFsdMessages);
|
||||
connect(ui->pb_ClearMessages, &QPushButton::clicked, this, &CRawFsdMessagesComponent::clearAllMessages);
|
||||
|
||||
QValidator *validator = new QIntValidator(10, 200, this);
|
||||
ui->le_MaxDisplayedMessages->setValidator(validator);
|
||||
@@ -76,17 +78,25 @@ namespace BlackGui
|
||||
readSettings();
|
||||
// Connect them after settings are read. Otherwise they get called.
|
||||
connect(ui->cb_FileWritingMode, QOverload<int>::of(&QComboBox::currentIndexChanged), this, &CRawFsdMessagesComponent::changeFileWritingMode);
|
||||
connect(ui->cb_EnableRawFsdMessages, &QCheckBox::toggled, this, &CRawFsdMessagesComponent::enableRawFsdMessages);
|
||||
}
|
||||
|
||||
void CRawFsdMessagesComponent::enableRawFsdMessages(bool enable)
|
||||
void CRawFsdMessagesComponent::enableDisableRawFsdMessages()
|
||||
{
|
||||
ui->cb_FilterPacketType->setEnabled(enable);
|
||||
ui->le_FilterText->setEnabled(enable);
|
||||
ui->le_MaxDisplayedMessages->setEnabled(enable);
|
||||
ui->le_FileDir->setEnabled(enable);
|
||||
ui->pb_SelectFileDir->setEnabled(enable);
|
||||
ui->cb_FileWritingMode->setEnabled(enable);
|
||||
bool enable;
|
||||
if (ui->pb_EnableDisable->text() == "Enable")
|
||||
{
|
||||
enable = true;
|
||||
ui->pb_EnableDisable->setText("Disable");
|
||||
ui->lbl_EnabledDisabled->setText("Enabled (Display + File)");
|
||||
ui->lbl_EnabledDisabled->setStyleSheet("background: green;");
|
||||
}
|
||||
else
|
||||
{
|
||||
enable = false;
|
||||
ui->pb_EnableDisable->setText("Enable");
|
||||
ui->lbl_EnabledDisabled->setText("Disabled (Display + File)");
|
||||
ui->lbl_EnabledDisabled->setStyleSheet("background: darkred;");
|
||||
}
|
||||
m_setting.setProperty(Vatsim::CRawFsdMessageSettings::IndexRawFsdMessagesEnabled, CVariant::fromValue(enable));
|
||||
}
|
||||
|
||||
@@ -197,18 +207,29 @@ namespace BlackGui
|
||||
ui->pte_RawFsdMessages->appendPlainText(rawFsdMessageToString(rawFsdMessage));
|
||||
}
|
||||
|
||||
void CRawFsdMessagesComponent::clearAllMessages()
|
||||
{
|
||||
ui->pte_RawFsdMessages->clear();
|
||||
m_buffer.clear();
|
||||
}
|
||||
|
||||
void CRawFsdMessagesComponent::readSettings()
|
||||
{
|
||||
const Vatsim::CRawFsdMessageSettings setting = m_setting.get();
|
||||
const bool enable = setting.areRawFsdMessagesEnabled();
|
||||
ui->cb_EnableRawFsdMessages->setChecked(enable);
|
||||
ui->cb_FilterPacketType->setEnabled(enable);
|
||||
ui->le_FilterText->setEnabled(enable);
|
||||
ui->le_MaxDisplayedMessages->setEnabled(enable);
|
||||
ui->le_FileDir->setEnabled(enable);
|
||||
if (enable)
|
||||
{
|
||||
ui->pb_EnableDisable->setText("Disable");
|
||||
ui->lbl_EnabledDisabled->setText("Enabled (Display + File)");
|
||||
ui->lbl_EnabledDisabled->setStyleSheet("background: green;");
|
||||
}
|
||||
else
|
||||
{
|
||||
ui->pb_EnableDisable->setText("Enable");
|
||||
ui->lbl_EnabledDisabled->setText("Disabled (Display + File)");
|
||||
ui->lbl_EnabledDisabled->setStyleSheet("background: darkred;");
|
||||
}
|
||||
ui->le_FileDir->setText(setting.getFileDir());
|
||||
ui->pb_SelectFileDir->setEnabled(enable);
|
||||
ui->cb_FileWritingMode->setEnabled(enable);
|
||||
const CRawFsdMessageSettings::FileWriteMode mode = setting.getFileWriteMode();
|
||||
ui->cb_FileWritingMode->setCurrentIndex(static_cast<int>(mode));
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ namespace BlackGui
|
||||
|
||||
private:
|
||||
void setupConnections();
|
||||
void enableRawFsdMessages(bool enable);
|
||||
void enableDisableRawFsdMessages();
|
||||
void expandFilters(bool expand);
|
||||
void expandWritingToFile(bool expand);
|
||||
void changeStringFilter();
|
||||
@@ -48,6 +48,7 @@ namespace BlackGui
|
||||
void selectFileDir();
|
||||
void changeFileWritingMode();
|
||||
void addFsdMessage(const BlackMisc::Network::CRawFsdMessage &rawFsdMessage);
|
||||
void clearAllMessages();
|
||||
void readSettings();
|
||||
|
||||
static QString rawFsdMessageToString(const BlackMisc::Network::CRawFsdMessage &rawFsdMessage);
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<property name="lineWidth">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout" rowstretch="1,0,0,0">
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<property name="leftMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
@@ -35,27 +35,43 @@
|
||||
<property name="bottomMargin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item row="0" column="0" alignment="Qt::AlignRight">
|
||||
<widget class="QCheckBox" name="cb_EnableRawFsdMessages">
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="lbl_EnabledDisabled">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<weight>75</weight>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Disabled</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QPushButton" name="pb_EnableDisable">
|
||||
<property name="text">
|
||||
<string>Enable</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QPlainTextEdit" name="pte_RawFsdMessages">
|
||||
<property name="lineWrapMode">
|
||||
<enum>QPlainTextEdit::NoWrap</enum>
|
||||
</property>
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="maximumBlockCount">
|
||||
<number>100</number>
|
||||
<item row="1" column="2">
|
||||
<widget class="QPushButton" name="pb_ClearMessages">
|
||||
<property name="text">
|
||||
<string>Clear</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<item row="2" column="0" colspan="3">
|
||||
<widget class="QGroupBox" name="gb_Filter">
|
||||
<property name="title">
|
||||
<string>Filter</string>
|
||||
@@ -72,6 +88,9 @@
|
||||
</property>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLabel" name="lbl_FilterText">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Text:</string>
|
||||
</property>
|
||||
@@ -80,7 +99,7 @@
|
||||
<item row="1" column="0">
|
||||
<widget class="QComboBox" name="cb_FilterPacketType">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Packet Type Filter</p></body></html></string>
|
||||
@@ -90,7 +109,7 @@
|
||||
<item row="1" column="1">
|
||||
<widget class="QLineEdit" name="le_FilterText">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Text Filter</p></body></html></string>
|
||||
@@ -102,6 +121,9 @@
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="lbl_FilterPacketType">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Type:</string>
|
||||
</property>
|
||||
@@ -110,7 +132,7 @@
|
||||
<item row="1" column="2">
|
||||
<widget class="QLineEdit" name="le_MaxDisplayedMessages">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Maximum No. of lines displayed</string>
|
||||
@@ -122,6 +144,9 @@
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="QLabel" name="lbl_MaxDisplayedMessages">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Max Displayed Messages:</string>
|
||||
</property>
|
||||
@@ -130,7 +155,20 @@
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<item row="0" column="0" colspan="3">
|
||||
<widget class="QPlainTextEdit" name="pte_RawFsdMessages">
|
||||
<property name="lineWrapMode">
|
||||
<enum>QPlainTextEdit::NoWrap</enum>
|
||||
</property>
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="maximumBlockCount">
|
||||
<number>100</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0" colspan="3">
|
||||
<widget class="QGroupBox" name="gb_WriteToFile">
|
||||
<property name="title">
|
||||
<string>Write to File</string>
|
||||
@@ -144,6 +182,9 @@
|
||||
<layout class="QGridLayout" name="gl_WriteToFile">
|
||||
<item row="4" column="0">
|
||||
<widget class="QLabel" name="lbl_FileDir">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Directory:</string>
|
||||
</property>
|
||||
@@ -151,6 +192,9 @@
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="lbl_FileWriteMode">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Write Mode</string>
|
||||
</property>
|
||||
@@ -159,7 +203,7 @@
|
||||
<item row="4" column="1">
|
||||
<widget class="QLineEdit" name="le_FileDir">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
@@ -172,7 +216,7 @@
|
||||
<item row="4" column="2">
|
||||
<widget class="QPushButton" name="pb_SelectFileDir">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Set</string>
|
||||
@@ -185,7 +229,7 @@
|
||||
<item row="1" column="1" colspan="2">
|
||||
<widget class="QComboBox" name="cb_FileWritingMode">
|
||||
<property name="enabled">
|
||||
<bool>false</bool>
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
Reference in New Issue
Block a user