diff --git a/devsetup.cpp b/devsetup.cpp index 7bc1f2921..a3043244d 100644 --- a/devsetup.cpp +++ b/devsetup.cpp @@ -155,6 +155,12 @@ void DevSetup::initDlg() ui.dataBitsComboBox->setEnabled(m_catEnabled); ui.stopBitsComboBox->setEnabled(m_catEnabled); ui.handshakeComboBox->setEnabled(m_catEnabled); + ui.testCATButton->setEnabled(m_catEnabled); + ui.cbDTRoff->setEnabled(m_catEnabled); + ui.rbData->setEnabled(m_catEnabled); + ui.rbMic->setEnabled(m_catEnabled); + bool b=m_pttMethodIndex==1 or m_pttMethodIndex==2 or m_catEnabled; + ui.testPTTButton->setEnabled(b); ui.rigComboBox->setCurrentIndex(m_rigIndex); ui.catPortComboBox->setCurrentIndex(m_catPortIndex); ui.serialRateComboBox->setCurrentIndex(m_serialRateIndex); @@ -332,6 +338,9 @@ void DevSetup::on_cbPSKReporter_clicked(bool b) void DevSetup::on_pttMethodComboBox_activated(int index) { m_pttMethodIndex=index; + bool b=m_pttMethodIndex==1 or m_pttMethodIndex==2 or + (m_catEnabled and m_pttMethodIndex==0); + ui.testPTTButton->setEnabled(b); } void DevSetup::on_catPortComboBox_activated(int index) @@ -349,6 +358,13 @@ void DevSetup::on_cbEnableCAT_toggled(bool b) ui.dataBitsComboBox->setEnabled(b); ui.stopBitsComboBox->setEnabled(b); ui.handshakeComboBox->setEnabled(b); + ui.testCATButton->setEnabled(b); + ui.cbDTRoff->setEnabled(b); + ui.rbData->setEnabled(b); + ui.rbMic->setEnabled(b); + bool b2=(m_pttMethodIndex==1 or m_pttMethodIndex==2 or m_catEnabled) and + !(m_pttMethodIndex==3); + ui.testPTTButton->setEnabled(b2); } void DevSetup::on_serialRateComboBox_activated(int index) diff --git a/mainwindow.cpp b/mainwindow.cpp index 71cee4148..89d78e90a 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -25,7 +25,7 @@ WideGraph* g_pWideGraph = NULL; Rig* rig = NULL; QString rev="$Rev$"; -QString Program_Title_Version=" WSJT-X v0.9, r" + rev.mid(6,4) + +QString Program_Title_Version=" WSJT-X v0.95, r" + rev.mid(6,4) + " by K1JT"; //-------------------------------------------------- MainWindow constructor @@ -233,7 +233,6 @@ MainWindow::MainWindow(QSharedMemory *shdmem, QWidget *parent) : if(m_mode=="JT9-5") on_actionJT9_5_triggered(); if(m_mode=="JT9-10") on_actionJT9_10_triggered(); if(m_mode=="JT9-30") on_actionJT9_30_triggered(); - //g_pWideGraph->setRxRange(m_fMin,m_fMax); future1 = new QFuture; watcher1 = new QFutureWatcher; connect(watcher1, SIGNAL(finished()),this,SLOT(diskDat())); @@ -957,11 +956,6 @@ void MainWindow::msgBox(QString t) //msgBox msgBox0.exec(); } -void MainWindow::stub() //stub() -{ - msgBox("Not yet implemented."); -} - void MainWindow::on_actionOnline_Users_Guide_triggered() //Display manual { QDesktopServices::openUrl(QUrl( @@ -1087,11 +1081,6 @@ void MainWindow::on_actionF4_sets_Tx6_triggered() //F4 sets Tx6 m_kb8rq = !m_kb8rq; } -void MainWindow::on_actionNo_shorthands_if_Tx1_triggered() -{ - stub(); -} - void MainWindow::on_actionNone_triggered() //Save None { m_saveSynced=false; @@ -1126,16 +1115,57 @@ void MainWindow::on_actionSave_all_triggered() //Save All void MainWindow::on_actionKeyboard_shortcuts_triggered() { - stub(); //Display list of keyboard shortcuts + QTextEdit* pShortcuts; + pShortcuts = new QTextEdit(0); + pShortcuts->setReadOnly(true); + pShortcuts->setFontPointSize(10); + pShortcuts->setWindowTitle("Keyboard Shortcuts"); +// pShortcuts->setGeometry(m_wideGraphGeom); + pShortcuts->setGeometry(QRect(45,50,430,420)); + Qt::WindowFlags flags = Qt::WindowCloseButtonHint | + Qt::WindowMinimizeButtonHint; + pShortcuts->setWindowFlags(flags); + QString shortcuts = m_appDir + "/shortcuts.txt"; + QFile f(shortcuts); + if(!f.open(QIODevice::ReadOnly | QIODevice::Text)) { + msgBox("Cannot open " + shortcuts); + return; + } + QTextStream s(&f); + QString t; + for(int i=0; i<100; i++) { + t=s.readLine(); + pShortcuts->append(t); + if(s.atEnd()) break; + } + pShortcuts->show(); } void MainWindow::on_actionSpecial_mouse_commands_triggered() { - stub(); //Display list of mouse commands -} -void MainWindow::on_actionAvailable_suffixes_and_add_on_prefixes_triggered() -{ - stub(); //Display list of Add-On pfx/sfx + QTextEdit* pMouseCmnds; + pMouseCmnds = new QTextEdit(0); + pMouseCmnds->setReadOnly(true); + pMouseCmnds->setFontPointSize(10); + pMouseCmnds->setWindowTitle("Special Mouse Commands"); + pMouseCmnds->setGeometry(QRect(45,50,440,300)); + Qt::WindowFlags flags = Qt::WindowCloseButtonHint | + Qt::WindowMinimizeButtonHint; + pMouseCmnds->setWindowFlags(flags); + QString mouseCmnds = m_appDir + "/mouse_commands.txt"; + QFile f(mouseCmnds); + if(!f.open(QIODevice::ReadOnly | QIODevice::Text)) { + msgBox("Cannot open " + mouseCmnds); + return; + } + QTextStream s(&f); + QString t; + for(int i=0; i<100; i++) { + t=s.readLine(); + pMouseCmnds->append(t); + if(s.atEnd()) break; + } + pMouseCmnds->show(); } void MainWindow::on_DecodeButton_clicked() //Decode request diff --git a/mainwindow.h b/mainwindow.h index 872f22033..d58638678 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -69,12 +69,10 @@ private slots: void on_actionDecode_remaining_files_in_directory_triggered(); void on_actionDelete_all_wav_files_in_SaveDir_triggered(); void on_actionF4_sets_Tx6_triggered(); - void on_actionNo_shorthands_if_Tx1_triggered(); void on_actionNone_triggered(); void on_actionSave_all_triggered(); void on_actionKeyboard_shortcuts_triggered(); void on_actionSpecial_mouse_commands_triggered(); - void on_actionAvailable_suffixes_and_add_on_prefixes_triggered(); void on_DecodeButton_clicked(); void decode(); void decodeBusy(bool b); diff --git a/mainwindow.ui b/mainwindow.ui index 8479ea491..ec96e3ea8 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -7,7 +7,7 @@ 0 0 711 - 702 + 475 @@ -613,7 +613,7 @@ p, li { white-space: pre-wrap; } - Dial Frequency + 14.078 Qt::AlignCenter @@ -654,7 +654,7 @@ p, li { white-space: pre-wrap; } QTabWidget::Triangular - 1 + 0 @@ -724,7 +724,7 @@ p, li { white-space: pre-wrap; } - buttonGroup + buttonGroup @@ -755,7 +755,7 @@ p, li { white-space: pre-wrap; } true - buttonGroup + buttonGroup @@ -783,7 +783,7 @@ p, li { white-space: pre-wrap; } - buttonGroup + buttonGroup @@ -933,7 +933,7 @@ p, li { white-space: pre-wrap; } - buttonGroup + buttonGroup @@ -1066,7 +1066,7 @@ p, li { white-space: pre-wrap; } - buttonGroup + buttonGroup @@ -1094,7 +1094,7 @@ p, li { white-space: pre-wrap; } - buttonGroup + buttonGroup @@ -1330,7 +1330,7 @@ p, li { white-space: pre-wrap; } - + 0 @@ -1343,19 +1343,19 @@ p, li { white-space: pre-wrap; } 180 - + 1 - + 60.000000000000000 - + 0.000000000000000 - + 8 - + 0.000000000000000 @@ -1775,11 +1775,14 @@ p, li { white-space: pre-wrap; } true - QFrame::NoFrame + QFrame::HLine QFrame::Raised + + 2 + 0 @@ -1821,7 +1824,7 @@ p, li { white-space: pre-wrap; } - 0 + 70 27 @@ -1932,11 +1935,14 @@ p, li { white-space: pre-wrap; } true - QFrame::NoFrame + QFrame::HLine QFrame::Raised + + 2 + 0 @@ -1984,7 +1990,7 @@ p, li { white-space: pre-wrap; } - 0 + 70 27 @@ -2155,7 +2161,7 @@ p, li { white-space: pre-wrap; } 0 0 711 - 25 + 21 @@ -2477,11 +2483,17 @@ p, li { white-space: pre-wrap; } Keyboard shortcuts + + F3 + Special mouse commands + + F4 + @@ -2779,6 +2791,61 @@ p, li { white-space: pre-wrap; }
displaytext.h
+ + logQSOButton + stopButton + monitorButton + DecodeButton + EraseButton + tuneButton + autoButton + stopTxButton + bandComboBox + dxCallEntry + dxGridEntry + lookupButton + addButton + txFirstCheckBox + TxFreqSpinBox + pbR2T + pbT2R + rptSpinBox + pbCallCQ + pbAnswerCaller + pbSendRRR + pbSend73 + genMsg + freeTextMsg + pbAnswerCQ + pbSendReport + rbGenMsg + rbFreeText + genStdMsgsPushButton + tx1 + tx2 + tx3 + tx4 + tx5 + tx6 + txrb1 + txrb2 + txrb3 + txrb4 + txrb5 + txrb6 + txb1 + txb2 + txb3 + txb4 + txb5 + txb6 + tabWidget + inGain + decodedTextBrowser2 + decodedTextBrowser + NBcheckBox + NBslider + diff --git a/wsjtx.iss b/wsjtx.iss index 86e3e7ff7..a4d2b7553 100644 --- a/wsjtx.iss +++ b/wsjtx.iss @@ -1,6 +1,6 @@ [Setup] AppName=wsjtx -AppVerName=wsjtx Version 0.9 r3195 +AppVerName=wsjtx Version 0.95 r3226 AppCopyright=Copyright (C) 2001-2013 by Joe Taylor, K1JT DefaultDirName=c:\wsjtx DefaultGroupName=wsjtx @@ -14,6 +14,9 @@ Source: "c:\Users\joe\wsjt\wsjtx_install\afmhot.dat"; DestDir: "{app}"; Source: "c:\Users\joe\wsjt\wsjtx_install\blue.dat"; DestDir: "{app}"; Source: "c:\Users\joe\wsjt\wsjtx_install\CALL3.TXT"; DestDir: "{app}"; Flags: onlyifdoesntexist Source: "c:\Users\joe\wsjt\QtSupport\*.dll"; DestDir: "{app}"; Flags: onlyifdoesntexist +Source: "c:\Users\joe\wsjt\wsjtx_install\shortcuts.txt"; DestDir: "{app}" +Source: "c:\Users\joe\wsjt\wsjtx_install\mouse_commands.txt"; DestDir: "{app}" + Source: "c:\Users\joe\wsjt\wsjtx_install\save\Samples\130228_2158.wav"; DestDir: "{app}\save\Samples"; [Icons] diff --git a/wsjtx_changelog.txt b/wsjtx_changelog.txt index a0e03cc65..8031a221f 100644 --- a/wsjtx_changelog.txt +++ b/wsjtx_changelog.txt @@ -1,46 +1,51 @@ WSJT-X ChangeLog ------------------------------------------------------------------ -WSJT-X is in an active stage of development. It's likely that in -coming weeks there will be frequent updates with new features as well -as bug fixes. User input is greatly appreciated. The best place for -suggestions, bug reports, and requests for help is -wsjtgroup@yahoogroups.com, which you are welcome to join. +We are getting close to a stable "Version 1.0" release of WSJT-X. At +that point program features will be frozen temporarily while we +concentrate on any necessary bug fixes. If you have bug reports on +version 0.95 r3226, or very important feature requests, send them to +wsjtgroup@yahoogroups.com now! -April 25, 2013: v0.9, r3219 ---------------------------- +April 25, 2013: v0.95, r3226 +---------------------------- 1. Bi-directionsl CAT control re-established using calls to hamlib functions. Display dial frequency highlighted with red background if frequency differs from nominal for the selected band by more than 10 -kHz. (Is there a more useful or logical condition to flag?) CAT -control diagnostics are presently rather rudimentary, we're still -working on this. +kHz. (Is there a more useful or logical condition to flag?) Mode is +set to USB when rig is opened in main window. (Note: CAT control +diagnostics are presently rather rudimentary, we're still working on +this. Feedback is welcome!) -2. Three new controls on Setup | Configuration screen: +2. New controls on Setup | Configuration screen: - RTS/DTR OFF -- needed by K2 and maybe other radios + - Data / Mic -- select CAT-control PTT type - Test CAT Control -- try settings before returning to main screen - Test PTT -- try settings for toggling PTT On/Off -3. Option "Setup | Advanced | Allow multiple instances" enables the +3. Help menu now provides displays of Keyboard Shortcuts (quick access + via F3) and Special Mouse Commands (F4). + +4. Option "Setup | Advanced | Allow multiple instances" enables the use of more than one instance of WSJT-X. (The program must be copied and run from different directories.) -4. Posts to PSK Reporter are suppressed if band was changed during the +5. Posts to PSK Reporter are suppressed if band was changed during the reception period. -5. Tune button On/Off action was improved. +6. Tune button On/Off action was improved. -6. Improved inter-process communication between WSJT-X and JT-Alert-X. +7. Improved inter-process communication between WSJT-X and JT-Alert-X. -7. Better interaction between "Report" spinner control and Tx messages. +8. Better interaction between "Report" spinner control and Tx messages. -8. Removed the NB checkbox and slider. (Has anyone found these useful?) +9. Removed the NB checkbox and slider. (Has anyone found these useful?) -9. New buttons on main window: "Tx=Rx" sets Tx frequency to current Rx +10. New buttons on main window: "Tx=Rx" sets Tx frequency to current Rx frequency; "Rx=Tx" does the opposite. -10. Finally: a bug causing occasional, seemingly unpredictable program +11. Finally: a bug causing occasional, seemingly unpredictable program crashes has been fixed. April 17, 2013: v0.9, r3195