mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-03-23 12:38:53 -04:00
Proper splash screen and release notes help menu link
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7007 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
3832683180
commit
afed56d008
@ -607,6 +607,7 @@ set (TOP_LEVEL_RESOURCES
|
||||
cty.dat
|
||||
icons/Darwin/wsjtx.iconset/icon_128x128.png
|
||||
contrib/gpl-v3-logo.svg
|
||||
artwork/splash.png
|
||||
)
|
||||
|
||||
set (PALETTE_FILES
|
||||
|
24
main.cpp
24
main.cpp
@ -19,6 +19,8 @@
|
||||
#include <QStringList>
|
||||
#include <QLockFile>
|
||||
#include <QStack>
|
||||
#include <QSplashScreen>
|
||||
#include <QPixmap>
|
||||
|
||||
#if QT_VERSION >= 0x050200
|
||||
#include <QCommandLineParser>
|
||||
@ -109,6 +111,26 @@ int main(int argc, char *argv[])
|
||||
a.setApplicationVersion (version ());
|
||||
bool multiple {false};
|
||||
|
||||
QPixmap splash_pic {":/splash.png"};
|
||||
QSplashScreen splash {splash_pic, Qt::WindowStaysOnTopHint};
|
||||
splash.showMessage ("<h2>" + QString {"Alpha Release: WSJT-X v" +
|
||||
QCoreApplication::applicationVersion() + " " +
|
||||
revision ()}.simplified () + "</h2>"
|
||||
"V1.7 has many new features, most aimed at VHF/UHF/Microwave users.<br />"
|
||||
"Some are not yet described in the User Guide and may not be thoroughly<br />"
|
||||
"tested. The release notes have more details.<br /><br />"
|
||||
"As a test user you have an obligation to report anomalous results<br />"
|
||||
"to the development team. We are particularly interested in tests<br />"
|
||||
"of experimental modes QRA64 (intended for EME) and MSK144<br />"
|
||||
"(intended for meteor scatter).<br /><br />"
|
||||
"Send reports to wsjtgroup@yahoogroups.com, and be sure to save .wav<br />"
|
||||
"files where appropriate.<br /><br />"
|
||||
"<b>Open the Help menu and select Release Notes for more details.</b><br />"
|
||||
"<img src=\":/icon_128x128.png\" />"
|
||||
"<img src=\":/gpl-v3-logo.svg\" height=\"80\" />", Qt::AlignCenter);
|
||||
splash.show ();
|
||||
a.processEvents ();
|
||||
|
||||
#if QT_VERSION >= 0x050200
|
||||
QCommandLineParser parser;
|
||||
parser.setApplicationDescription ("\nJT65A & JT9 Weak Signal Communications Program.");
|
||||
@ -297,7 +319,7 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
|
||||
// run the application UI
|
||||
MainWindow w(temp_dir, multiple, &multi_settings, &mem_jt9, downSampleFactor, new QNetworkAccessManager {&a});
|
||||
MainWindow w(temp_dir, multiple, &multi_settings, &mem_jt9, downSampleFactor, new QNetworkAccessManager {&a}, &splash);
|
||||
w.show();
|
||||
QObject::connect (&a, SIGNAL (lastWindowClosed()), &a, SLOT (quit()));
|
||||
result = a.exec();
|
||||
|
@ -24,6 +24,7 @@
|
||||
#include <QToolTip>
|
||||
#include <QAction>
|
||||
#include <QActionGroup>
|
||||
#include <QSplashScreen>
|
||||
|
||||
#include "revision_utils.hpp"
|
||||
#include "qt_helpers.hpp"
|
||||
@ -162,9 +163,10 @@ namespace
|
||||
MainWindow::MainWindow(QDir const& temp_directory, bool multiple,
|
||||
MultiSettings * multi_settings, QSharedMemory *shdmem,
|
||||
unsigned downSampleFactor, QNetworkAccessManager * network_manager,
|
||||
QWidget *parent) :
|
||||
QSplashScreen * splash, QWidget *parent) :
|
||||
QMainWindow(parent),
|
||||
m_valid {true},
|
||||
m_splash {splash},
|
||||
m_dataDir {QStandardPaths::writableLocation (QStandardPaths::DataLocation)},
|
||||
m_revision {revision ()},
|
||||
m_multiple {multiple},
|
||||
@ -859,12 +861,20 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple,
|
||||
connect (&minuteTimer, &QTimer::timeout, this, &MainWindow::on_the_minute);
|
||||
minuteTimer.setSingleShot (true);
|
||||
minuteTimer.start (ms_minute_error () + 60 * 1000);
|
||||
m_bSplash=true;
|
||||
|
||||
connect (&splashTimer, &QTimer::timeout, this, &MainWindow::splash_done);
|
||||
splashTimer.setSingleShot (true);
|
||||
splashTimer.start (20 * 1000);
|
||||
|
||||
// this must be the last statement of constructor
|
||||
if (!m_valid) throw std::runtime_error {"Fatal initialization exception"};
|
||||
}
|
||||
|
||||
void MainWindow::splash_done ()
|
||||
{
|
||||
m_splash->close ();
|
||||
}
|
||||
|
||||
void MainWindow::on_the_minute ()
|
||||
{
|
||||
if (minuteTimer.isSingleShot ())
|
||||
@ -1811,6 +1821,11 @@ void MainWindow::on_stopButton_clicked() //stopButton
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::on_actionRelease_Notes_triggered ()
|
||||
{
|
||||
QDesktopServices::openUrl (QUrl {"http://physics.princeton.edu/pulsar/k1jt/v1.7_Features.txt"});
|
||||
}
|
||||
|
||||
void MainWindow::on_actionOnline_User_Guide_triggered() //Display manual
|
||||
{
|
||||
#if defined (CMAKE_BUILD)
|
||||
@ -2549,29 +2564,7 @@ void MainWindow::guiUpdate()
|
||||
double txDuration;
|
||||
QString rt;
|
||||
|
||||
//### TEMPORARY MESSAGE TO USERS ###
|
||||
if(m_bSplash) {
|
||||
MessageBox::information_message (this,
|
||||
"<h2>" + QString {"Alpha Release: WSJT-X v" +
|
||||
QCoreApplication::applicationVersion() + " " +
|
||||
revision ()}.simplified () + "</h2>"
|
||||
"V1.7 has many new features, most aimed at VHF/UHF/Microwave users.<br />"
|
||||
"Some are not yet described in the User Guide and may not be thoroughly<br />"
|
||||
"tested. Click on the link at bottom for a brief description.<br /><br />"
|
||||
"As a test user you have an obligation to report anomalous results<br />"
|
||||
"to the development team. We are particularly interested in tests<br />"
|
||||
"of experimental modes QRA64 (intended for EME) and MSK144<br />"
|
||||
"(intended for meteor scatter).<br /><br />"
|
||||
"Send reports to wsjtgroup@yahoogroups.com, and be sure to save .wav<br />"
|
||||
"files where appropriate.<br /><br />"
|
||||
"<a href=" WSJTX_STRINGIZE (PROJECT_HOMEPAGE) ">"
|
||||
"<img src=\":/icon_128x128.png\" /></a>"
|
||||
"<a href=\"http://physics.princeton.edu/pulsar/k1jt/v1.7_Features.txt\">"
|
||||
"<img src=\":/gpl-v3-logo.svg\" height=\"80\" /><br />"
|
||||
"http://physics.princeton.edu/pulsar/k1jt/v1.7_Features.txt</a>");
|
||||
m_bSplash=false;
|
||||
}
|
||||
//###
|
||||
if (m_splash && m_splash->isVisible ()) m_splash->raise ();
|
||||
|
||||
if(m_TRperiod==0) m_TRperiod=60;
|
||||
txDuration=0.0;
|
||||
|
@ -91,6 +91,7 @@ public:
|
||||
explicit MainWindow(QDir const& temp_directory, bool multiple, MultiSettings *,
|
||||
QSharedMemory *shdmem, unsigned downSampleFactor,
|
||||
QNetworkAccessManager * network_manager,
|
||||
QSplashScreen *,
|
||||
QWidget *parent = nullptr);
|
||||
~MainWindow();
|
||||
|
||||
@ -131,6 +132,7 @@ private slots:
|
||||
void on_autoButton_clicked (bool);
|
||||
void on_stopTxButton_clicked();
|
||||
void on_stopButton_clicked();
|
||||
void on_actionRelease_Notes_triggered ();
|
||||
void on_actionOnline_User_Guide_triggered();
|
||||
void on_actionLocal_User_Guide_triggered();
|
||||
void on_actionWide_Waterfall_triggered();
|
||||
@ -251,6 +253,7 @@ private slots:
|
||||
void on_cbCQRx_toggled(bool b);
|
||||
void on_actionMSK144_triggered();
|
||||
void on_actionQRA64_triggered();
|
||||
void splash_done ();
|
||||
|
||||
private:
|
||||
Q_SIGNAL void initializeAudioOutputStream (QAudioDeviceInfo,
|
||||
@ -280,6 +283,7 @@ private:
|
||||
void astroUpdate ();
|
||||
|
||||
bool m_valid;
|
||||
QSplashScreen * m_splash;
|
||||
QDir m_dataDir;
|
||||
QString m_revision;
|
||||
bool m_multiple;
|
||||
@ -412,7 +416,6 @@ private:
|
||||
bool m_bDoubleClickAfterCQnnn;
|
||||
bool m_bRefSpec;
|
||||
bool m_bUseRef;
|
||||
bool m_bSplash;
|
||||
float m_pctZap;
|
||||
int m_ihsym;
|
||||
int m_nzap;
|
||||
@ -461,6 +464,7 @@ private:
|
||||
QTimer TxAgainTimer;
|
||||
QTimer RxQSYTimer;
|
||||
QTimer minuteTimer;
|
||||
QTimer splashTimer;
|
||||
|
||||
QString m_path;
|
||||
QString m_baseCall;
|
||||
|
@ -2,14 +2,6 @@
|
||||
<ui version="4.0">
|
||||
<class>MainWindow</class>
|
||||
<widget class="QMainWindow" name="MainWindow">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>896</width>
|
||||
<height>565</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>WSJT-X by K1JT</string>
|
||||
</property>
|
||||
@ -2284,14 +2276,6 @@ QPushButton[state="ok"] {
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QMenuBar" name="menuBar">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>896</width>
|
||||
<height>21</height>
|
||||
</rect>
|
||||
</property>
|
||||
<widget class="QMenu" name="menuFile">
|
||||
<property name="title">
|
||||
<string>File</string>
|
||||
@ -2344,6 +2328,7 @@ QPushButton[state="ok"] {
|
||||
<property name="title">
|
||||
<string>Help</string>
|
||||
</property>
|
||||
<addaction name="actionRelease_Notes"/>
|
||||
<addaction name="actionOnline_User_Guide"/>
|
||||
<addaction name="actionLocal_User_Guide"/>
|
||||
<addaction name="download_samples_action"/>
|
||||
@ -2847,6 +2832,11 @@ QPushButton[state="ok"] {
|
||||
<string>QRA64</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionRelease_Notes">
|
||||
<property name="text">
|
||||
<string>Release Notes</string>
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<layoutdefault spacing="6" margin="11"/>
|
||||
<customwidgets>
|
||||
|
Loading…
Reference in New Issue
Block a user