Compare commits

...

6 Commits

Author SHA1 Message Date
Jordan Sherer 10310d18cf Bump Version v0.6.5 2018-09-29 18:06:31 -04:00
Jordan Sherer a74d8c9f6b Bump EOL for v0.6.5 2018-09-29 18:05:47 -04:00
Jordan Sherer c54dfbbcda Bump to 0.6.4 2018-09-15 18:07:20 -04:00
Jordan Sherer afbcf35d1c Added test button to notification sounds 2018-09-15 17:33:19 -04:00
Jordan Sherer 300ba49e8d Fix configuration styling of compose text font. Added table colors. 2018-09-15 17:33:09 -04:00
Jordan Sherer dae1118bf3 Fix ALLCALL SNR query when ALLCALL or the station calling is selected 2018-09-15 08:22:24 -04:00
5 changed files with 722 additions and 337 deletions
+126 -9
View File
@@ -156,6 +156,7 @@
#include <QThread>
#include <QTimer>
#include <QStandardPaths>
#include <QSound>
#include <QFont>
#include <QFontDialog>
#include <QColorDialog>
@@ -433,6 +434,7 @@ private:
void insert_station ();
Q_SLOT void on_font_push_button_clicked ();
Q_SLOT void on_tableFontButton_clicked();
Q_SLOT void on_PTT_port_combo_box_activated (int);
Q_SLOT void on_CAT_port_combo_box_activated (int);
Q_SLOT void on_CAT_serial_baud_combo_box_currentIndexChanged (int);
@@ -461,8 +463,10 @@ private:
Q_SLOT void on_save_path_select_push_button_clicked (bool);
Q_SLOT void on_azel_path_select_push_button_clicked (bool);
Q_SLOT void on_sound_dm_path_select_push_button_clicked();
Q_SLOT void on_sound_dm_path_test_push_button_clicked();
Q_SLOT void on_sound_dm_path_reset_push_button_clicked();
Q_SLOT void on_sound_am_path_select_push_button_clicked();
Q_SLOT void on_sound_am_path_test_push_button_clicked();
Q_SLOT void on_sound_am_path_reset_push_button_clicked();
Q_SLOT void on_calibration_intercept_spin_box_valueChanged (double);
Q_SLOT void on_calibration_slope_ppm_spin_box_valueChanged (double);
@@ -470,6 +474,9 @@ private:
Q_SLOT void handle_transceiver_failure (QString const& reason);
Q_SLOT void on_pbCQmsg_clicked();
Q_SLOT void on_pbMyCall_clicked();
Q_SLOT void on_tableBackgroundButton_clicked();
Q_SLOT void on_tableSelectedRowBackgroundButton_clicked();
Q_SLOT void on_tableForegroundButton_clicked();
Q_SLOT void on_rxBackgroundButton_clicked();
Q_SLOT void on_rxForegroundButton_clicked();
Q_SLOT void on_rxFontButton_clicked();
@@ -515,6 +522,9 @@ private:
QFont font_;
QFont next_font_;
QFont table_font_;
QFont next_table_font_;
QFont rx_text_font_;
QFont next_rx_text_font_;
@@ -583,6 +593,14 @@ private:
QColor next_color_cq_;
QColor color_mycall_;
QColor next_color_mycall_;
QColor color_table_background_;
QColor next_color_table_background_;
QColor color_table_highlight_;
QColor next_color_table_highlight_;
QColor color_table_foreground_;
QColor next_color_table_foreground_;
QColor color_rx_background_;
QColor next_color_rx_background_;
QColor color_rx_foreground_;
@@ -698,6 +716,9 @@ bool Configuration::restart_audio_output () const {return m_->restart_sound_outp
auto Configuration::type_2_msg_gen () const -> Type2MsgGen {return m_->type_2_msg_gen_;}
bool Configuration::use_dynamic_grid() const {return m_->use_dynamic_info_; }
QString Configuration::my_callsign () const {return m_->my_callsign_;}
QColor Configuration::color_table_background() const { return m_->color_table_background_; }
QColor Configuration::color_table_highlight() const { return m_->color_table_highlight_; }
QColor Configuration::color_table_foreground() const { return m_->color_table_foreground_; }
QColor Configuration::color_CQ () const {return m_->color_cq_;}
QColor Configuration::color_MyCall () const {return m_->color_mycall_;}
QColor Configuration::color_rx_background () const {return m_->color_rx_background_;}
@@ -707,6 +728,7 @@ QColor Configuration::color_compose_background () const {return m_->color_compos
QColor Configuration::color_compose_foreground () const {return m_->color_compose_foreground_;}
QColor Configuration::color_DXCC () const {return m_->color_DXCC_;}
QColor Configuration::color_NewCall () const {return m_->color_NewCall_;}
QFont Configuration::table_font () const {return m_->table_font_;}
QFont Configuration::text_font () const {return m_->font_;}
QFont Configuration::rx_text_font () const {return m_->rx_text_font_;}
QFont Configuration::tx_text_font () const {return m_->tx_text_font_;}
@@ -1280,10 +1302,13 @@ void Configuration::impl::initialize_models ()
ui_->cq_message_line_edit->setText(cq_.toUpper());
ui_->reply_message_line_edit->setText (reply_.toUpper());
ui_->use_dynamic_grid->setChecked(use_dynamic_info_);
ui_->labCQ->setStyleSheet(QString("background: %1").arg(color_cq_.name()));
ui_->labMyCall->setStyleSheet(QString("background: %1").arg(color_mycall_.name()));
ui_->rxLabel->setStyleSheet(QString("background: %1").arg(color_rx_background_.name()));
ui_->tableBackgroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(next_color_table_background_.name()).arg(next_color_table_foreground_.name()));
ui_->tableSelectionBackgroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(next_color_table_highlight_.name()).arg(next_color_table_foreground_.name()));
ui_->labCQ->setStyleSheet(QString("background: %1; color: %2").arg(next_color_cq_.name()).arg(next_color_table_foreground_.name()));
ui_->labMyCall->setStyleSheet(QString("background: %1; color: %2").arg(next_color_mycall_.name()).arg(next_color_table_foreground_.name()));
ui_->rxLabel->setStyleSheet(QString("background: %1; color: %2").arg(color_rx_background_.name()).arg(color_rx_foreground_.name()));
ui_->rxForegroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(color_rx_background_.name()).arg(color_rx_foreground_.name()));
ui_->txForegroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(color_rx_background_.name()).arg(color_tx_foreground_.name()));
ui_->composeLabel->setStyleSheet(QString("background: %1; color: %2").arg(color_compose_background_.name()).arg(color_compose_foreground_.name()));
@@ -1428,6 +1453,10 @@ void Configuration::impl::read_settings ()
next_color_DXCC_ = color_DXCC_ = settings_->value("colorDXCC","#ff00ff").toString();
next_color_NewCall_ = color_NewCall_ = settings_->value("colorNewCall","#ffaaff").toString();
next_color_table_background_ = color_table_background_ = settings_->value("colorTableBackground", "#ffffff").toString();
next_color_table_highlight_ = color_table_highlight_ = settings_->value("colorTableHighlight", "#3498db").toString();
next_color_table_foreground_ = color_table_foreground_ = settings_->value("colorTableForeground","#000000").toString();
if (next_font_.fromString (settings_->value ("Font", QGuiApplication::font ().toString ()).toString ())
&& next_font_ != font_)
{
@@ -1476,9 +1505,20 @@ void Configuration::impl::read_settings ()
{
next_compose_text_font_ = compose_text_font_;
}
ui_->composeFontButton->setText(QString("Font (%1 %2)").arg(next_compose_text_font_.family()).arg(next_compose_text_font_.pointSize()));
if (next_table_font_.fromString (settings_->value ("tableFont", QGuiApplication::font ().toString ()).toString ())
&& next_table_font_ != table_font_)
{
table_font_ = next_table_font_;
Q_EMIT self_->table_font_changed (table_font_);
}
else
{
next_table_font_ = table_font_;
}
ui_->tableFontButton->setText(QString("Font (%1 %2)").arg(next_table_font_.family()).arg(next_table_font_.pointSize()));
id_interval_ = settings_->value ("IDint", 0).toInt ();
ntrials_ = settings_->value ("nTrials", 6).toInt ();
txDelay_ = settings_->value ("TxDelay",0.2).toDouble();
@@ -1666,9 +1706,18 @@ void Configuration::impl::write_settings ()
settings_->setValue("color_tx_foreground",color_tx_foreground_);
settings_->setValue("colorDXCC",color_DXCC_);
settings_->setValue("colorNewCall",color_NewCall_);
settings_->setValue("colorTableBackground",color_table_background_);
settings_->setValue("colorTableHighlight",color_table_highlight_);
settings_->setValue("colorTableForeground",color_table_foreground_);
settings_->setValue ("Font", font_.toString ());
settings_->setValue ("RXTextFont", rx_text_font_.toString ());
settings_->setValue ("TXTextFont", tx_text_font_.toString ());
settings_->setValue ("composeTextFont", compose_text_font_.toString ());
settings_->setValue ("tableFont", table_font_.toString());
settings_->setValue ("IDint", id_interval_);
settings_->setValue ("nTrials", ntrials_);
settings_->setValue ("TxDelay", txDelay_);
@@ -2048,6 +2097,12 @@ void Configuration::impl::accept ()
Q_EMIT self_->compose_text_font_changed (compose_text_font_);
}
if (next_table_font_ != table_font_)
{
table_font_ = next_table_font_;
Q_EMIT self_->table_font_changed (table_font_);
}
color_cq_ = next_color_cq_;
color_mycall_ = next_color_mycall_;
color_rx_background_ = next_color_rx_background_;
@@ -2057,6 +2112,9 @@ void Configuration::impl::accept ()
color_tx_foreground_ = next_color_tx_foreground_;
color_DXCC_ = next_color_DXCC_;
color_NewCall_ = next_color_NewCall_;
color_table_background_ = next_color_table_background_;
color_table_highlight_ = next_color_table_highlight_;
color_table_foreground_ = next_color_table_foreground_;
Q_EMIT self_->colors_changed();
@@ -2287,11 +2345,19 @@ void Configuration::impl::on_font_push_button_clicked ()
ui_->font_push_button->setText(QString("Application Font (%1 %2)").arg(next_font_.family()).arg(next_font_.pointSize()));
}
void Configuration::impl::on_tableFontButton_clicked ()
{
next_table_font_ = QFontDialog::getFont (0, next_table_font_, this);
ui_->tableFontButton->setText(QString("Table Font (%1 %2)").arg(next_table_font_.family()).arg(next_table_font_.pointSize()));
}
QColor getColor(QColor initial, QWidget *parent, QString title){
QList<QColor> custom = {
QColor("#66FF66"),
QColor("#FF6666"),
QColor("#FFEAA7")
QColor("#FFEAA7"),
QColor("#3498DB")
};
auto d = new QColorDialog(initial, parent);
@@ -2313,7 +2379,7 @@ void Configuration::impl::on_pbCQmsg_clicked()
if (new_color.isValid ())
{
next_color_cq_ = new_color;
ui_->labCQ->setStyleSheet(QString("background: %1").arg(next_color_cq_.name()));
ui_->labCQ->setStyleSheet(QString("background: %1; color: %2").arg(next_color_cq_.name()).arg(next_color_table_foreground_.name()));
}
}
@@ -2323,7 +2389,40 @@ void Configuration::impl::on_pbMyCall_clicked()
if (new_color.isValid ())
{
next_color_mycall_ = new_color;
ui_->labMyCall->setStyleSheet(QString("background: %1").arg(next_color_mycall_.name()));
ui_->labMyCall->setStyleSheet(QString("background: %1; color: %2").arg(next_color_mycall_.name()).arg(next_color_table_foreground_.name()));
}
}
void Configuration::impl::on_tableBackgroundButton_clicked()
{
auto new_color = getColor(next_color_table_background_, this, "Table Background Color");
if (new_color.isValid ())
{
next_color_table_background_ = new_color;
ui_->tableBackgroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(next_color_table_background_.name()).arg(next_color_table_foreground_.name()));
}
}
void Configuration::impl::on_tableSelectedRowBackgroundButton_clicked()
{
auto new_color = getColor(next_color_table_highlight_, this, "Table Selected Row Background Color");
if (new_color.isValid ())
{
next_color_table_highlight_ = new_color;
ui_->tableSelectionBackgroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(next_color_table_highlight_.name()).arg(next_color_table_foreground_.name()));
}
}
void Configuration::impl::on_tableForegroundButton_clicked()
{
auto new_color = getColor(next_color_table_foreground_, this, "Table Foreground Color");
if (new_color.isValid ())
{
next_color_table_foreground_ = new_color;
ui_->tableBackgroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(next_color_table_background_.name()).arg(next_color_table_foreground_.name()));
ui_->tableSelectionBackgroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(next_color_table_highlight_.name()).arg(next_color_table_foreground_.name()));
ui_->labCQ->setStyleSheet(QString("background: %1; color: %2").arg(next_color_cq_.name()).arg(next_color_table_foreground_.name()));
ui_->labMyCall->setStyleSheet(QString("background: %1; color: %2").arg(next_color_mycall_.name()).arg(next_color_table_foreground_.name()));
}
}
@@ -2333,7 +2432,7 @@ void Configuration::impl::on_rxBackgroundButton_clicked()
if (new_color.isValid ())
{
next_color_rx_background_ = new_color;
ui_->rxLabel->setStyleSheet(QString("background: %1").arg(next_color_rx_background_.name()));
ui_->rxLabel->setStyleSheet(QString("background: %1; color: %2").arg(color_rx_background_.name()).arg(color_rx_foreground_.name()));
ui_->rxForegroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(next_color_rx_background_.name()).arg(next_color_rx_foreground_.name()));
ui_->txForegroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(next_color_rx_background_.name()).arg(next_color_tx_foreground_.name()));
}
@@ -2345,7 +2444,7 @@ void Configuration::impl::on_rxForegroundButton_clicked()
if (new_color.isValid ())
{
next_color_rx_foreground_ = new_color;
ui_->rxLabel->setStyleSheet(QString("background: %1").arg(next_color_rx_background_.name()));
ui_->rxLabel->setStyleSheet(QString("background: %1; color: %2").arg(color_rx_background_.name()).arg(color_rx_foreground_.name()));
ui_->rxForegroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(next_color_rx_background_.name()).arg(next_color_rx_foreground_.name()));
ui_->txForegroundLabel->setStyleSheet(QString("background: %1; color: %2").arg(next_color_rx_background_.name()).arg(next_color_tx_foreground_.name()));
}
@@ -2805,6 +2904,15 @@ void Configuration::impl::on_sound_dm_path_select_push_button_clicked(){
}
}
void Configuration::impl::on_sound_dm_path_test_push_button_clicked(){
auto path = ui_->sound_dm_path_display_label->text();
if(path.isEmpty()){
return;
}
QSound::play(path);
}
void Configuration::impl::on_sound_dm_path_reset_push_button_clicked(){
ui_->sound_dm_path_display_label->clear();
}
@@ -2827,6 +2935,15 @@ void Configuration::impl::on_sound_am_path_select_push_button_clicked(){
}
}
void Configuration::impl::on_sound_am_path_test_push_button_clicked(){
auto path = ui_->sound_am_path_display_label->text();
if(path.isEmpty()){
return;
}
QSound::play(path);
}
void Configuration::impl::on_sound_am_path_reset_push_button_clicked(){
ui_->sound_am_path_display_label->clear();
}
+5
View File
@@ -103,6 +103,7 @@ public:
QString my_qth () const;
QString cq_message () const;
QString reply_message () const;
QFont table_font() const;
QFont text_font () const;
QFont rx_text_font () const;
QFont tx_text_font () const;
@@ -181,6 +182,9 @@ public:
QString sound_am_path() const;
QString rig_name () const;
Type2MsgGen type_2_msg_gen () const;
QColor color_table_background() const;
QColor color_table_highlight() const;
QColor color_table_foreground() const;
QColor color_CQ () const;
QColor color_MyCall () const;
QColor color_rx_background () const;
@@ -284,6 +288,7 @@ public:
Q_SIGNAL void tx_text_font_changed (QFont);
Q_SIGNAL void rx_text_font_changed (QFont);
Q_SIGNAL void compose_text_font_changed (QFont);
Q_SIGNAL void table_font_changed (QFont);
Q_SIGNAL void colors_changed ();
//
+522 -309
View File
@@ -2592,13 +2592,17 @@ Right click for insert and delete options.</string>
<property name="rightMargin">
<number>0</number>
</property>
<item row="0" column="0">
<widget class="QLabel" name="sound_dm_path_label">
<item row="1" column="4">
<widget class="QPushButton" name="sound_am_path_reset_push_button">
<property name="text">
<string>Directed Message Received:</string>
<string>Clear</string>
</property>
<property name="buddy">
<cstring>azel_path_select_push_button</cstring>
</widget>
</item>
<item row="0" column="4">
<widget class="QPushButton" name="sound_dm_path_reset_push_button">
<property name="text">
<string>Clear</string>
</property>
</widget>
</item>
@@ -2618,20 +2622,13 @@ Right click for insert and delete options.</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QPushButton" name="sound_dm_path_select_push_button">
<item row="1" column="2">
<widget class="QPushButton" name="sound_am_path_select_push_button">
<property name="text">
<string>Select</string>
</property>
</widget>
</item>
<item row="0" column="3">
<widget class="QPushButton" name="sound_dm_path_reset_push_button">
<property name="text">
<string>Clear</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="sound_am_path_label">
<property name="text">
@@ -2642,6 +2639,23 @@ Right click for insert and delete options.</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QPushButton" name="sound_dm_path_select_push_button">
<property name="text">
<string>Select</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="sound_dm_path_label">
<property name="text">
<string>Directed Message Received:</string>
</property>
<property name="buddy">
<cstring>azel_path_select_push_button</cstring>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="sound_am_path_display_label">
<property name="sizePolicy">
@@ -2658,17 +2672,17 @@ Right click for insert and delete options.</string>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QPushButton" name="sound_am_path_select_push_button">
<item row="0" column="3">
<widget class="QPushButton" name="sound_dm_path_test_push_button">
<property name="text">
<string>Select</string>
<string>Test</string>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="QPushButton" name="sound_am_path_reset_push_button">
<widget class="QPushButton" name="sound_am_path_test_push_button">
<property name="text">
<string>Clear</string>
<string>Test</string>
</property>
</widget>
</item>
@@ -2745,297 +2759,496 @@ Right click for insert and delete options.</string>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_9">
<property name="title">
<string>Band Activity Background:</string>
<widget class="QTabWidget" name="tabWidget">
<property name="currentIndex">
<number>0</number>
</property>
<layout class="QGridLayout" name="gridLayout_15">
<item row="0" column="0">
<widget class="QLabel" name="labCQ">
<property name="minimumSize">
<size>
<width>80</width>
<height>20</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QLabel{background-color: #66ff66}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QPushButton" name="pbCQmsg">
<property name="minimumSize">
<size>
<width>140</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>CQ Color</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QPushButton" name="pbMyCall">
<property name="minimumSize">
<size>
<width>140</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Directed Message Color</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="labMyCall">
<property name="minimumSize">
<size>
<width>80</width>
<height>20</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QLabel{background-color: #ff6666}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
<property name="tabBarAutoHide">
<bool>false</bool>
</property>
<widget class="QWidget" name="uiTab1">
<attribute name="title">
<string>Band &amp;&amp; Call Activity</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_18">
<property name="topMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>18</number>
</property>
<item>
<widget class="QGroupBox" name="groupBox_9">
<property name="title">
<string/>
</property>
<property name="flat">
<bool>false</bool>
</property>
<layout class="QGridLayout" name="gridLayout_5">
<item row="1" column="1">
<widget class="QLabel" name="tableBackgroundLabel">
<property name="minimumSize">
<size>
<width>80</width>
<height>20</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QLabel{background-color: white}&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;ui version=&quot;4.0&quot;&gt;
&lt;widget name=&quot;__qt_fake_top_level&quot;&gt;
&lt;widget class=&quot;QLabel&quot; name=&quot;labCQ&quot;&gt;
&lt;property name=&quot;geometry&quot;&gt;
&lt;rect&gt;
&lt;x&gt;12&lt;/x&gt;
&lt;y&gt;32&lt;/y&gt;
&lt;width&gt;302&lt;/width&gt;
&lt;height&gt;25&lt;/height&gt;
&lt;/rect&gt;
&lt;/property&gt;
&lt;property name=&quot;minimumSize&quot;&gt;
&lt;size&gt;
&lt;width&gt;80&lt;/width&gt;
&lt;height&gt;20&lt;/height&gt;
&lt;/size&gt;
&lt;/property&gt;
&lt;property name=&quot;styleSheet&quot;&gt;
&lt;string notr=&quot;true&quot;&gt;QLabel{background-color: #66ff66}&lt;/string&gt;
&lt;/property&gt;
&lt;property name=&quot;text&quot;&gt;
&lt;string&gt;K1ABC&lt;/string&gt;
&lt;/property&gt;
&lt;property name=&quot;alignment&quot;&gt;
&lt;set&gt;Qt::AlignCenter&lt;/set&gt;
&lt;/property&gt;
&lt;/widget&gt;
&lt;/widget&gt;
&lt;resources/&gt;
&lt;/ui&gt;
</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="5" column="3">
<widget class="QPushButton" name="pbMyCall">
<property name="minimumSize">
<size>
<width>140</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Directed Message Color</string>
</property>
</widget>
</item>
<item row="3" column="3">
<widget class="QPushButton" name="pbCQmsg">
<property name="minimumSize">
<size>
<width>140</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>CQ Color</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="labCQ">
<property name="minimumSize">
<size>
<width>80</width>
<height>20</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QLabel{background-color: #66ff66}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="2" column="3">
<widget class="QPushButton" name="tableSelectedRowBackgroundButton">
<property name="text">
<string>Selected Row Background</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLabel" name="tableSelectionBackgroundLabel">
<property name="minimumSize">
<size>
<width>80</width>
<height>20</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QLabel{background-color: #3498db}&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;ui version=&quot;4.0&quot;&gt;
&lt;widget name=&quot;__qt_fake_top_level&quot;&gt;
&lt;widget class=&quot;QLabel&quot; name=&quot;labCQ&quot;&gt;
&lt;property name=&quot;geometry&quot;&gt;
&lt;rect&gt;
&lt;x&gt;12&lt;/x&gt;
&lt;y&gt;32&lt;/y&gt;
&lt;width&gt;302&lt;/width&gt;
&lt;height&gt;25&lt;/height&gt;
&lt;/rect&gt;
&lt;/property&gt;
&lt;property name=&quot;minimumSize&quot;&gt;
&lt;size&gt;
&lt;width&gt;80&lt;/width&gt;
&lt;height&gt;20&lt;/height&gt;
&lt;/size&gt;
&lt;/property&gt;
&lt;property name=&quot;styleSheet&quot;&gt;
&lt;string notr=&quot;true&quot;&gt;QLabel{background-color: #66ff66}&lt;/string&gt;
&lt;/property&gt;
&lt;property name=&quot;text&quot;&gt;
&lt;string&gt;K1ABC&lt;/string&gt;
&lt;/property&gt;
&lt;property name=&quot;alignment&quot;&gt;
&lt;set&gt;Qt::AlignCenter&lt;/set&gt;
&lt;/property&gt;
&lt;/widget&gt;
&lt;/widget&gt;
&lt;resources/&gt;
&lt;/ui&gt;
</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QLabel" name="labMyCall">
<property name="minimumSize">
<size>
<width>80</width>
<height>20</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QLabel{background-color: #ff6666}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="6" column="3">
<widget class="QPushButton" name="tableForegroundButton">
<property name="text">
<string>Foreground Color</string>
</property>
</widget>
</item>
<item row="7" column="3">
<widget class="QPushButton" name="tableFontButton">
<property name="text">
<string>Font</string>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="QPushButton" name="tableBackgroundButton">
<property name="text">
<string>Table Background</string>
</property>
</widget>
</item>
<item row="8" column="3">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="uiTab2">
<attribute name="title">
<string>Messages</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_19">
<property name="topMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>18</number>
</property>
<item>
<widget class="QGroupBox" name="groupBox_8">
<property name="title">
<string/>
</property>
<layout class="QGridLayout" name="gridLayout_8">
<item row="5" column="1">
<widget class="QPushButton" name="rxFontButton">
<property name="text">
<string>Font</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QPushButton" name="rxBackgroundButton">
<property name="enabled">
<bool>true</bool>
</property>
<property name="minimumSize">
<size>
<width>140</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Textbox Background Color</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QPushButton" name="rxForegroundButton">
<property name="text">
<string>Foreground Color</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="rxForegroundLabel">
<property name="styleSheet">
<string notr="true">QLabel{background-color: #ffeaa7}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="rxLabel">
<property name="enabled">
<bool>true</bool>
</property>
<property name="minimumSize">
<size>
<width>80</width>
<height>20</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QLabel{background-color: #ffeaa7}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="8" column="0">
<widget class="QLabel" name="txForegroundLabel">
<property name="styleSheet">
<string notr="true">QLabel{background-color: #ffeaa7}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="7" column="0">
<widget class="QLabel" name="label_22">
<property name="text">
<string>Transmitted:</string>
</property>
</widget>
</item>
<item row="9" column="1">
<widget class="QPushButton" name="txFontButton">
<property name="text">
<string>Font</string>
</property>
</widget>
</item>
<item row="8" column="1">
<widget class="QPushButton" name="txForegroundButton">
<property name="text">
<string>Foreground Color</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_21">
<property name="text">
<string>Received:</string>
</property>
</widget>
</item>
<item row="10" column="1">
<spacer name="verticalSpacer_10">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="0">
<spacer name="verticalSpacer_9">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Minimum</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="6" column="0">
<spacer name="verticalSpacer_13">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Minimum</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="uiTab3">
<attribute name="title">
<string>Composition</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_20">
<property name="topMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>18</number>
</property>
<item>
<widget class="QGroupBox" name="groupBox_14">
<property name="title">
<string/>
</property>
<layout class="QGridLayout" name="gridLayout_18">
<item row="0" column="1">
<widget class="QPushButton" name="composeBackgroundButton">
<property name="text">
<string> Textbox Background Color</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="composeLabel">
<property name="enabled">
<bool>true</bool>
</property>
<property name="minimumSize">
<size>
<width>80</width>
<height>20</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QLabel{background-color: #FFF}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QPushButton" name="composeForegroundButton">
<property name="text">
<string>Foreground Color</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QPushButton" name="composeFontButton">
<property name="text">
<string>Font</string>
</property>
</widget>
</item>
<item row="4" column="1">
<spacer name="verticalSpacer_12">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_8">
<property name="title">
<string>Messages:</string>
</property>
<layout class="QGridLayout" name="gridLayout_8">
<item row="6" column="1">
<widget class="QPushButton" name="rxFontButton">
<property name="text">
<string>Font</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QPushButton" name="rxBackgroundButton">
<property name="enabled">
<bool>true</bool>
</property>
<property name="minimumSize">
<size>
<width>140</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Textbox Color</string>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QPushButton" name="rxForegroundButton">
<property name="text">
<string>Foreground Color</string>
</property>
</widget>
</item>
<item row="5" column="0">
<widget class="QLabel" name="rxForegroundLabel">
<property name="styleSheet">
<string notr="true">QLabel{background-color: #ffeaa7}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="rxLabel">
<property name="enabled">
<bool>true</bool>
</property>
<property name="minimumSize">
<size>
<width>80</width>
<height>20</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QLabel{background-color: #ffeaa7}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="9" column="0">
<widget class="QLabel" name="txForegroundLabel">
<property name="styleSheet">
<string notr="true">QLabel{background-color: #ffeaa7}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="8" column="0">
<widget class="QLabel" name="label_22">
<property name="text">
<string>Transmitted:</string>
</property>
</widget>
</item>
<item row="10" column="1">
<widget class="QPushButton" name="txFontButton">
<property name="text">
<string>Font</string>
</property>
</widget>
</item>
<item row="9" column="1">
<widget class="QPushButton" name="txForegroundButton">
<property name="text">
<string>Foreground Color</string>
</property>
</widget>
</item>
<item row="7" column="1">
<spacer name="verticalSpacer_10">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row="4" column="0">
<widget class="QLabel" name="label_21">
<property name="text">
<string>Received:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<spacer name="verticalSpacer_9">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_14">
<property name="title">
<string>Message Composition:</string>
</property>
<layout class="QGridLayout" name="gridLayout_18">
<item row="0" column="1">
<widget class="QPushButton" name="composeBackgroundButton">
<property name="text">
<string> Textbox Color</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QPushButton" name="composeFontButton">
<property name="text">
<string>Font</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="composeLabel">
<property name="enabled">
<bool>true</bool>
</property>
<property name="minimumSize">
<size>
<width>80</width>
<height>20</height>
</size>
</property>
<property name="styleSheet">
<string notr="true">QLabel{background-color: #FFF}</string>
</property>
<property name="text">
<string>K1ABC</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QPushButton" name="composeForegroundButton">
<property name="text">
<string>Foreground Color</string>
</property>
</widget>
</item>
<item row="1" column="1">
<spacer name="verticalSpacer_12">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
<widget class="QWidget" name="widget" native="true">
<property name="geometry">
@@ -3477,11 +3690,11 @@ soundcard changes</string>
</connections>
<buttongroups>
<buttongroup name="PTT_method_button_group"/>
<buttongroup name="CAT_data_bits_button_group"/>
<buttongroup name="CAT_stop_bits_button_group"/>
<buttongroup name="TX_audio_source_button_group"/>
<buttongroup name="split_mode_button_group"/>
<buttongroup name="CAT_data_bits_button_group"/>
<buttongroup name="TX_mode_button_group"/>
<buttongroup name="split_mode_button_group"/>
<buttongroup name="CAT_handshake_button_group"/>
</buttongroups>
</ui>
+1 -1
View File
@@ -1,6 +1,6 @@
# Version number components
set (WSJTX_VERSION_MAJOR 0)
set (WSJTX_VERSION_MINOR 6)
set (WSJTX_VERSION_PATCH 3)
set (WSJTX_VERSION_PATCH 5)
set (WSJTX_RC 0) # release candidate number, comment out or zero for development versions
set (WSJTX_VERSION_IS_RELEASE 0) # set to 1 for final release build
+68 -18
View File
@@ -304,8 +304,8 @@ namespace
edit->updateGeometry();
}
void setTextEditColors(QTextEdit *edit, QColor fg, QColor bg){
edit->setStyleSheet(QString("QTextEdit { color:%1; background: %2 }").arg(fg.name()).arg(bg.name()));
void setTextEditStyle(QTextEdit *edit, QColor fg, QColor bg, QFont font){
edit->setStyleSheet(QString("QTextEdit { color:%1; background: %2; %3; }").arg(fg.name()).arg(bg.name()).arg(font_as_stylesheet(font)));
QTimer::singleShot(10, nullptr, [edit, fg, bg](){
QPalette p = edit->palette();
@@ -728,6 +728,10 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple,
connect (&m_config, &Configuration::gui_text_font_changed, [this] (QFont const& font) {
set_application_font (font);
});
connect (&m_config, &Configuration::table_font_changed, [this] (QFont const&) {
ui->tableWidgetRXAll->setFont(m_config.table_font());
ui->tableWidgetCalls->setFont(m_config.table_font());
});
connect (&m_config, &Configuration::rx_text_font_changed, [this] (QFont const&) {
setTextEditFont(ui->textEditRX, m_config.rx_text_font());
});
@@ -735,8 +739,8 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple,
setTextEditFont(ui->extFreeTextMsgEdit, m_config.compose_text_font());
});
connect (&m_config, &Configuration::colors_changed, [this](){
setTextEditColors(ui->textEditRX, m_config.color_rx_foreground(), m_config.color_rx_background());
setTextEditColors(ui->extFreeTextMsgEdit, m_config.color_compose_foreground(), m_config.color_compose_background());
setTextEditStyle(ui->textEditRX, m_config.color_rx_foreground(), m_config.color_rx_background(), m_config.rx_text_font());
setTextEditStyle(ui->extFreeTextMsgEdit, m_config.color_compose_foreground(), m_config.color_compose_background(), m_config.compose_text_font());
// rehighlight
auto d = ui->textEditRX->document();
@@ -1412,7 +1416,7 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple,
if (!m_valid) throw std::runtime_error {"Fatal initialization exception"};
}
QDate eol(2018, 9, 30);
QDate eol(2018, 10, 8);
void MainWindow::expiry_warning_message()
{
@@ -1476,10 +1480,13 @@ void MainWindow::initializeDummyData(){
ad.utcTimestamp = dt;
m_bandActivity[500+100*i] = { ad };
markOffsetDirected(500+100*i, false);
i++;
}
displayTextForFreq("KN4CRD: ALLCALL? \u2301 ", 42, QDateTime::currentDateTimeUtc().addSecs(-315), true, true, true);
displayTextForFreq("J1Y: KN4CRD SNR -05 \u2301 ", 42, QDateTime::currentDateTimeUtc().addSecs(-300), false, true, true);
displayActivity(true);
@@ -1494,6 +1501,8 @@ void MainWindow::initialize_fonts ()
setTextEditFont(ui->textEditRX, m_config.rx_text_font());
setTextEditFont(ui->extFreeTextMsgEdit, m_config.tx_text_font());
displayActivity(true);
}
void MainWindow::splash_done ()
@@ -1836,10 +1845,8 @@ void MainWindow::readSettings()
//ui->bandHorizontalWidget->setGeometry( m_settings->value("PanelWaterfallGeometry", ui->bandHorizontalWidget->geometry()).toRect());
//qDebug() << m_settings->value("PanelTopGeometry") << ui->extFreeTextMsg;
setTextEditColors(ui->textEditRX, m_config.color_rx_foreground(), m_config.color_rx_background());
setTextEditColors(ui->extFreeTextMsgEdit, m_config.color_compose_foreground(), m_config.color_compose_background());
setTextEditStyle(ui->textEditRX, m_config.color_rx_foreground(), m_config.color_rx_background(), m_config.rx_text_font());
setTextEditStyle(ui->extFreeTextMsgEdit, m_config.color_compose_foreground(), m_config.color_compose_background(), m_config.compose_text_font());
{
auto const& coeffs = m_settings->value ("PhaseEqualizationCoefficients"
@@ -7993,6 +8000,8 @@ void MainWindow::on_tableWidgetRXAll_cellClicked(int /*row*/, int /*col*/){
ui->tableWidgetCalls->selectionModel()->select(
ui->tableWidgetCalls->selectionModel()->selection(),
QItemSelectionModel::Deselect);
displayCallActivity();
}
void MainWindow::on_tableWidgetRXAll_cellDoubleClicked(int row, int col){
@@ -8045,6 +8054,8 @@ void MainWindow::on_tableWidgetCalls_cellClicked(int /*row*/, int /*col*/){
ui->tableWidgetRXAll->selectionModel()->select(
ui->tableWidgetRXAll->selectionModel()->selection(),
QItemSelectionModel::Deselect);
displayBandActivity();
}
void MainWindow::on_tableWidgetCalls_cellDoubleClicked(int row, int col){
@@ -9456,12 +9467,8 @@ void MainWindow::processCommandActivity() {
// if this is an allcall, check to make sure we haven't replied to their allcall recently (in the past beacon interval)
// that way we never get spammed by allcalls at a high frequency than what we would beacon
if (isAllCall){
if(m_txAllcallCommandCache.contains(d.from) && m_txAllcallCommandCache[d.from]->secsTo(now) / 60 < m_config.beacon()) {
continue;
}
m_txAllcallCommandCache.insert(d.from, new QDateTime(now), 25);
if (isAllCall && m_txAllcallCommandCache.contains(d.from) && m_txAllcallCommandCache[d.from]->secsTo(now) / 60 < m_config.beacon()) {
continue;
}
// display the command activity
@@ -9540,8 +9547,9 @@ void MainWindow::processCommandActivity() {
if (d.cmd == "?") {
// do not respond to allcall ? if:
// 1. we recently responded to one
// 2. or, we are in a directed qso...(i.e., we have a callsign selected)
if(isAllCall && !callsignSelected().isEmpty()){
// 2. or, we are in a directed qso...(i.e., we have a callsign selected that isn't ALLCALL)
auto selectedCall = callsignSelected();
if(isAllCall && !selectedCall.isEmpty() && selectedCall != "ALLCALL" && selectedCall != d.from){
continue;
}
@@ -9768,6 +9776,11 @@ void MainWindow::processCommandActivity() {
continue;
}
// add ALLCALLs to the ALLCALL cache
if(isAllCall){
m_txAllcallCommandCache.insert(d.from, new QDateTime(now), 25);
}
// queue the reply here to be sent when a free interval is available on the frequency that was sent
// unless, this is an allcall, to which we should be responding on a clear frequency offset
// we always want to make sure that the directed cache has been updated at this point so we have the
@@ -9944,6 +9957,8 @@ void MainWindow::displayActivity(bool force) {
void MainWindow::displayBandActivity() {
auto now = QDateTime::currentDateTimeUtc();
ui->tableWidgetRXAll->setFont(m_config.table_font());
// Selected Offset
int selectedOffset = -1;
auto selectedItems = ui->tableWidgetRXAll->selectedItems();
@@ -10100,6 +10115,7 @@ void MainWindow::displayBandActivity() {
}
bool isDirectedAllCall = false;
qDebug() << "style" << (text.last().contains(Radio::base_callsign(m_config.my_callsign()))) << text.last();
// TODO: jsherer - there's a potential here for a previous allcall o poison the highlight.
if (
(isDirectedOffset(offset, &isDirectedAllCall) && !isDirectedAllCall) ||
@@ -10121,6 +10137,23 @@ void MainWindow::displayBandActivity() {
}
}
// Set table color
auto style = QString("QTableWidget { background:%1; selection-background-color:%2; alternate-background-color:%1; color:%3; }");
style = style.arg(m_config.color_table_background().name());
style = style.arg(m_config.color_table_highlight().name());
style = style.arg(m_config.color_table_foreground().name());
ui->tableWidgetRXAll->setStyleSheet(style);
// Set item fonts
for(int row = 0; row < ui->tableWidgetRXAll->rowCount(); row++){
for(int col = 0; col < ui->tableWidgetRXAll->columnCount(); col++){
auto item = ui->tableWidgetRXAll->item(row, col);
if(item){
item->setFont(m_config.table_font());
}
}
}
// Resize the table columns
ui->tableWidgetRXAll->resizeColumnToContents(0);
ui->tableWidgetRXAll->resizeColumnToContents(1);
@@ -10265,6 +10298,23 @@ void MainWindow::displayCallActivity() {
}
}
// Set table color
auto style = QString("QTableWidget { background:%1; selection-background-color:%2; alternate-background-color:%1; color:%3; }");
style = style.arg(m_config.color_table_background().name());
style = style.arg(m_config.color_table_highlight().name());
style = style.arg(m_config.color_table_foreground().name());
ui->tableWidgetCalls->setStyleSheet(style);
// Set item fonts
for(int row = 0; row < ui->tableWidgetCalls->rowCount(); row++){
for(int col = 0; col < ui->tableWidgetCalls->columnCount(); col++){
auto item = ui->tableWidgetCalls->item(row, col);
if(item){
item->setFont(m_config.table_font());
}
}
}
// Resize the table columns
ui->tableWidgetCalls->resizeColumnToContents(0);
ui->tableWidgetCalls->resizeColumnToContents(1);