Started basic selcal functionality
This commit is contained in:
parent
f3f051d17c
commit
a5b2eeab5d
@ -1678,6 +1678,7 @@ void MainWindow::writeSettings()
|
||||
m_settings->setValue("TextVerticalSplitter", ui->textVerticalSplitter->saveState());
|
||||
m_settings->setValue("ShowTimeDrift", ui->driftSyncFrame->isVisible());
|
||||
m_settings->setValue("TimeDrift", ui->driftSpinBox->value());
|
||||
m_settings->setValue("SelCal", ui->selcalButton->isChecked());
|
||||
|
||||
m_settings->endGroup();
|
||||
|
||||
@ -1783,6 +1784,7 @@ void MainWindow::readSettings()
|
||||
}
|
||||
ui->driftSyncFrame->setVisible(m_settings->value("ShowTimeDrift", false).toBool());
|
||||
ui->driftSpinBox->setValue(m_settings->value("TimeDrift", 0).toInt());
|
||||
ui->selcalButton->setChecked(m_settings->value("SelCal", false).toBool());
|
||||
|
||||
m_settings->endGroup();
|
||||
|
||||
@ -3695,6 +3697,7 @@ void MainWindow::readFromStdout() //readFromStdout
|
||||
m_messageBuffer[d.freq/10*10].msgs.append(d);
|
||||
}
|
||||
|
||||
|
||||
m_rxActivityQueue.append(d);
|
||||
m_bandActivity[offset].append(d);
|
||||
while(m_bandActivity[offset].count() > 10){
|
||||
@ -9183,7 +9186,7 @@ void MainWindow::updateButtonDisplay(){
|
||||
if(isTransmitting){
|
||||
int count = m_txFrameCount;
|
||||
int sent = count - m_txFrameQueue.count();
|
||||
ui->startTxButton->setText(QString("Sending (%1/%2)").arg(sent).arg(count));
|
||||
ui->startTxButton->setText(m_tune ? "Tuning" : QString("Sending (%1/%2)").arg(sent).arg(count));
|
||||
}
|
||||
}
|
||||
|
||||
@ -9254,7 +9257,7 @@ void MainWindow::markOffsetRecent(int offset){
|
||||
bool MainWindow::isDirectedOffset(int offset, bool *pIsAllCall){
|
||||
bool isDirected = (
|
||||
m_rxDirectedCache.contains(offset/10*10) &&
|
||||
m_rxDirectedCache[offset/10*10]->date.secsTo(DriftingDateTime::currentDateTimeUtc()) < 300
|
||||
m_rxDirectedCache[offset/10*10]->date.secsTo(DriftingDateTime::currentDateTimeUtc()) < 120
|
||||
);
|
||||
|
||||
if(isDirected){
|
||||
@ -9271,6 +9274,11 @@ void MainWindow::markOffsetDirected(int offset, bool isAllCall){
|
||||
m_rxDirectedCache.insert(offset/10*10+10, d2, 10);
|
||||
}
|
||||
|
||||
void MainWindow::clearOffsetDirected(int offset){
|
||||
m_rxDirectedCache.remove(offset/10*10);
|
||||
m_rxDirectedCache.remove(offset/10*10+10);
|
||||
}
|
||||
|
||||
bool MainWindow::isMyCallIncluded(const QString &text){
|
||||
QString myCall = Radio::base_callsign(m_config.my_callsign());
|
||||
|
||||
@ -9316,12 +9324,6 @@ void MainWindow::processRxActivity() {
|
||||
while (!m_rxActivityQueue.isEmpty()) {
|
||||
ActivityDetail d = m_rxActivityQueue.dequeue();
|
||||
|
||||
// if this is a compound message or it's a directed message needing a compound call, skip.
|
||||
// these messages will be displayed when the compound calls come through
|
||||
#if 0
|
||||
if(d.isCompound || (d.isDirected && d.text.contains("<....>"))){
|
||||
#endif
|
||||
|
||||
// if this is a _partial_ directed message, skip until the complete call comes through.
|
||||
if(d.isDirected && d.text.contains("<....>")){
|
||||
continue;
|
||||
@ -9347,19 +9349,6 @@ void MainWindow::processRxActivity() {
|
||||
shouldDisplay = shouldDisplay || !isDirectedAllCall;
|
||||
}
|
||||
|
||||
// TODO: jsherer - develop a better way to determine if we can display this band activity...
|
||||
#if 0
|
||||
if(isRecentOffset(freq) || isAllCallIncluded(d.text)){
|
||||
m_rxRecentCache.insert(freq, new QDateTime(DriftingDateTime::currentDateTimeUtc()), 25);
|
||||
shouldDisplay = true;
|
||||
}
|
||||
|
||||
if(isDirectedOffset(freq) || isMyCallIncluded(d.text)){
|
||||
m_rxDirectedCache.insert(freq, new QDateTime(DriftingDateTime::currentDateTimeUtc()), 25);
|
||||
shouldDisplay = true;
|
||||
}
|
||||
#endif
|
||||
|
||||
if(!shouldDisplay){
|
||||
continue;
|
||||
}
|
||||
@ -9379,6 +9368,10 @@ void MainWindow::processRxActivity() {
|
||||
// log it to the display!
|
||||
displayTextForFreq(d.text, d.freq, d.utcTimestamp, false, isFirst, isLast);
|
||||
|
||||
if(isLast){
|
||||
clearOffsetDirected(d.freq);
|
||||
}
|
||||
|
||||
if(isLast && !d.isBuffered){
|
||||
// buffered commands need the rxFrameBlockNumbers cache so it can fixup its display
|
||||
// all other "last" data frames can clear the rxFrameBlockNumbers cache so the next message will be on a new line.
|
||||
@ -9601,9 +9594,14 @@ void MainWindow::processCommandActivity() {
|
||||
cd.utcTimestamp = d.utcTimestamp;
|
||||
logCallActivity(cd, true);
|
||||
|
||||
bool toMe = d.to == m_config.my_callsign().trimmed() || d.to == Radio::base_callsign(m_config.my_callsign()).trimmed();
|
||||
|
||||
// we're only responding to allcall and our callsign at this point, so we'll end after logging the callsigns we've heard
|
||||
if (!isAllCall && d.to != m_config.my_callsign().trimmed() && d.to != Radio::base_callsign(m_config.my_callsign()).trimmed()) {
|
||||
if (!isAllCall && !toMe) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (isAllCall && ui->selcalButton->isChecked()) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -883,6 +883,7 @@ private:
|
||||
void markOffsetRecent(int offset);
|
||||
bool isDirectedOffset(int offset, bool *pIsAllCall);
|
||||
void markOffsetDirected(int offset, bool isAllCall);
|
||||
void clearOffsetDirected(int offset);
|
||||
void processActivity(bool force=false);
|
||||
void processRxActivity();
|
||||
void processCompoundActivity();
|
||||
|
589
mainwindow.ui
589
mainwindow.ui
@ -6,10 +6,16 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>960</width>
|
||||
<height>563</height>
|
||||
<width>872</width>
|
||||
<height>566</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>FT8Call</string>
|
||||
</property>
|
||||
@ -105,6 +111,9 @@
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QFrame { background:black; }</string>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
@ -278,6 +287,22 @@ QPushButton[oob="true"] {
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_9">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Expanding</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QFrame" name="frame_6">
|
||||
<property name="styleSheet">
|
||||
@ -419,6 +444,22 @@ color : white;
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_10">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeType">
|
||||
<enum>QSizePolicy::Expanding</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QFrame" name="frame_2">
|
||||
<property name="sizePolicy">
|
||||
@ -440,22 +481,64 @@ color : white;
|
||||
<enum>QFrame::Plain</enum>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_8">
|
||||
<property name="leftMargin">
|
||||
<number>18</number>
|
||||
<item row="1" column="3">
|
||||
<widget class="QPushButton" name="logQSOButton">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>6</number>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>18</number>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>75</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>6</number>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
<number>18</number>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Insert a new entry into the log</p></body></html></string>
|
||||
</property>
|
||||
<item row="3" column="1">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QPushButton {
|
||||
font-family: helvetica;
|
||||
font-weight: bold;
|
||||
background-color: lightgray;
|
||||
color: black;
|
||||
border-style: solid;
|
||||
border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:75px;
|
||||
min-height:30px;
|
||||
/*max-width:60px;*/
|
||||
max-height:30px;
|
||||
}
|
||||
QPushButton[state="error"] {
|
||||
background-color: red;
|
||||
}
|
||||
QPushButton[state="warning"] {
|
||||
background-color: orange;
|
||||
}
|
||||
QPushButton[state="ok"] {
|
||||
background-color: #00ff00;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>LOG</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="5" column="2">
|
||||
<spacer name="verticalSpacer_8">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
@ -468,17 +551,175 @@ color : white;
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QWidget" name="monitorContainer" native="true">
|
||||
<item row="2" column="2">
|
||||
<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>
|
||||
<item row="0" column="2">
|
||||
<spacer name="verticalSpacer_7">
|
||||
<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="2">
|
||||
<widget class="QPushButton" name="beaconButton">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<width>75</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<width>0</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Enable or disable the automatic beacon</p></body></html></string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QPushButton {
|
||||
font-family: helvetica;
|
||||
font-weight: bold;
|
||||
background-color: lightgray;
|
||||
color: black;
|
||||
border-style: solid;
|
||||
border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:75px;
|
||||
min-height:30px;
|
||||
/*max-width:60px;*/
|
||||
max-height:30px;
|
||||
}
|
||||
QPushButton[state="error"] {
|
||||
background-color: red;
|
||||
}
|
||||
QPushButton[state="warning"] {
|
||||
background-color: orange;
|
||||
}
|
||||
QPushButton[state="ok"] {
|
||||
background-color: #00ff00;
|
||||
}
|
||||
QPushButton:checked {
|
||||
background-color: #6699ff;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>BCN</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="3">
|
||||
<widget class="QPushButton" name="selcalButton">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>75</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Enable or disable selective calling (i.e., only directed messages to you will be displayed)</p></body></html></string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QPushButton {
|
||||
font-family: helvetica;
|
||||
font-weight: bold;
|
||||
background-color: lightgray;
|
||||
color: black;
|
||||
border-style: solid;
|
||||
border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:75px;
|
||||
min-height:30px;
|
||||
/*max-width:60px;*/
|
||||
max-height:30px;
|
||||
}
|
||||
QPushButton[state="error"] {
|
||||
background-color: red;
|
||||
}
|
||||
QPushButton[state="warning"] {
|
||||
background-color: orange;
|
||||
}
|
||||
QPushButton[state="ok"] {
|
||||
background-color: #00ff00;
|
||||
}
|
||||
QPushButton:checked {
|
||||
background-color: #6699ff;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>SELCAL</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QWidget" name="monitorContainer" native="true">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>75</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
@ -490,25 +731,25 @@ color : white;
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>60</width>
|
||||
<width>75</width>
|
||||
<height>30</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<width>75</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<width>0</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
@ -526,9 +767,9 @@ border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:60px;
|
||||
min-width:75px;
|
||||
min-height:30px;
|
||||
max-width:60px;
|
||||
/*max-width:60px;*/
|
||||
max-height:30px;
|
||||
}
|
||||
QPushButton[state="error"] {
|
||||
@ -559,25 +800,25 @@ background-color: #00ff00;
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>60</width>
|
||||
<width>75</width>
|
||||
<height>30</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<width>75</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<width>0</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
@ -594,9 +835,9 @@ border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:60px;
|
||||
min-width:75px;
|
||||
min-height:30px;
|
||||
max-width:60px;
|
||||
/*max-width:60px;*/
|
||||
max-height:30px;
|
||||
background-color: yellow;
|
||||
}
|
||||
@ -611,103 +852,26 @@ background-color: yellow;
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<spacer name="verticalSpacer_7">
|
||||
<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="1" column="1">
|
||||
<widget class="QPushButton" name="tuneButton">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Transmit a tuning tone</p></body></html></string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QPushButton {
|
||||
font-family: helvetica;
|
||||
font-weight: bold;
|
||||
background-color: lightgray;
|
||||
color: black;
|
||||
border-style: solid;
|
||||
border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:60px;
|
||||
min-height:30px;
|
||||
max-width:60px;
|
||||
max-height:30px;
|
||||
|
||||
}
|
||||
QPushButton[state="error"] {
|
||||
background-color: red;
|
||||
}
|
||||
QPushButton[state="warning"] {
|
||||
background-color: orange;
|
||||
}
|
||||
QPushButton[state="ok"] {
|
||||
background-color: #00ff00;
|
||||
}
|
||||
QPushButton:checked {
|
||||
background-color: yellow;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>TUNE</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<item row="4" column="1">
|
||||
<widget class="QPushButton" name="autoReplyButton">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<width>75</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<width>0</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
@ -725,9 +889,9 @@ border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:60px;
|
||||
min-width:75px;
|
||||
min-height:30px;
|
||||
max-width:60px;
|
||||
/*max-width:60px;*/
|
||||
max-height:30px;
|
||||
}
|
||||
QPushButton[state="error"] {
|
||||
@ -757,20 +921,20 @@ background-color: #6699ff;
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<width>75</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<width>0</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
@ -788,9 +952,9 @@ border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:60px;
|
||||
min-width:75px;
|
||||
min-height:30px;
|
||||
max-width:60px;
|
||||
/*max-width:60px;*/
|
||||
max-height:30px;
|
||||
}
|
||||
QPushButton[state="error"] {
|
||||
@ -814,126 +978,6 @@ background-color: #00ff00;
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QPushButton" name="beaconButton">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Enable or disable the automatic beacon</p></body></html></string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QPushButton {
|
||||
font-family: helvetica;
|
||||
font-weight: bold;
|
||||
background-color: lightgray;
|
||||
color: black;
|
||||
border-style: solid;
|
||||
border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:60px;
|
||||
min-height:30px;
|
||||
max-width:60px;
|
||||
max-height:30px;
|
||||
}
|
||||
QPushButton[state="error"] {
|
||||
background-color: red;
|
||||
}
|
||||
QPushButton[state="warning"] {
|
||||
background-color: orange;
|
||||
}
|
||||
QPushButton[state="ok"] {
|
||||
background-color: #00ff00;
|
||||
}
|
||||
QPushButton:checked {
|
||||
background-color: #6699ff;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>BCN</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="2">
|
||||
<widget class="QPushButton" name="logQSOButton">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>60</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Insert a new entry into the log</p></body></html></string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QPushButton {
|
||||
font-family: helvetica;
|
||||
font-weight: bold;
|
||||
background-color: lightgray;
|
||||
color: black;
|
||||
border-style: solid;
|
||||
border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:60px;
|
||||
min-height:30px;
|
||||
max-width:60px;
|
||||
max-height:30px;
|
||||
}
|
||||
QPushButton[state="error"] {
|
||||
background-color: red;
|
||||
}
|
||||
QPushButton[state="warning"] {
|
||||
background-color: orange;
|
||||
}
|
||||
QPushButton[state="ok"] {
|
||||
background-color: #00ff00;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>LOG</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
@ -1662,7 +1706,7 @@ background-color: #00ff00;
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>50</height>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
@ -1687,7 +1731,7 @@ background-color: #00ff00;
|
||||
<item>
|
||||
<widget class="QSlider" name="outAttenuation">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Expanding">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
<horstretch>1</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
@ -1752,6 +1796,71 @@ background: qlineargradient(x1:0, y1:0, x2:1, y2:1, stop:0 #2ecc71, stop:1 #00FF
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="tuneButton">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>30</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>16777215</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string><html><head/><body><p>Transmit a tuning tone</p></body></html></string>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QPushButton {
|
||||
/*
|
||||
font-family: helvetica;
|
||||
font-weight: bold;
|
||||
background-color: lightgray;
|
||||
color: black;
|
||||
border-style: solid;
|
||||
border-radius:2px;
|
||||
border-width:0px;
|
||||
border-color: gray;
|
||||
font-size:90%;
|
||||
min-width:75px;
|
||||
min-height:30px;
|
||||
/*max-width:60px;*/
|
||||
max-height:30px;
|
||||
*/
|
||||
}
|
||||
QPushButton[state="error"] {
|
||||
background-color: red;
|
||||
}
|
||||
QPushButton[state="warning"] {
|
||||
background-color: orange;
|
||||
}
|
||||
QPushButton[state="ok"] {
|
||||
background-color: #00ff00;
|
||||
}
|
||||
QPushButton:checked {
|
||||
background-color: yellow;
|
||||
}</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Tune</string>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
@ -4406,7 +4515,7 @@ list. The list can be maintained in Settings (F2).</string>
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>960</width>
|
||||
<width>872</width>
|
||||
<height>22</height>
|
||||
</rect>
|
||||
</property>
|
||||
|
Loading…
Reference in New Issue
Block a user