Bill -- Thanks for the quick fix. Probably I should have been able to figure out what was wrong, myself; but I'm not particularly comfortable with the use of QVariants, and I hadn't quite figured out what you were doing with the "frequencies" list.
Surely the line on_bandComboBox_activated(i); should now read on_bandComboBox_activated(row); ?? Now might be a good time to mention a growing concern about our code in WSJT-X. It seems to me that mainwindow.cpp is getting far too big and unwieldy -- more than 4000 lines now. Too many things have been just "added on", most recently all the WSPR mode stuff. Arguably the state-machine logic used in guiUpdate() is complicated, hard to follow, and perhaps out-of-place anyway in an event-driven program. In short, I think mainwindow.cpp could use a big dose of what I guess is now called "refactoring" by real programmers (which I'm not). :-) Thoughts on this topic from others would be welcome. -- Joe On 5/29/2015 6:23 AM, Bill Somerville wrote: > On 29/05/2015 01:55, Joe Taylor wrote: >> Hi Bill, > Hi Joe, >> >> Thanks for your work on the frequency/mode combinations. >> >> An unwanted side effect is that WSPR-mode band hopping no longer works. >> Not sure why, but I've determined that the structure >> >> auto f = frequency.value<Frequency>(); >> >> presently at line 4349 in mainwindow.cpp always evaluates to f=0. > Sorry about that. The problem is that I had used the Qt compatible data > model to access the underlying filtered frequency list and the default > role for the data() access function is the display role which is a > string including the band name rather than the raw Frequency type value. > > I have put in a quick fix for now but I will improve the whole access to > underlying model data implementation when I get back later. >> >> -- Joe > 73 > Bill > G4WJS. >> >> On 5/28/2015 7:32 PM, Bill Somerville wrote: >>> Hi All, >>> >>> I have added a change to make working frequencies mode dependent. The >>> first thing you will notice is that your working frequencies will have >>> disappeared, this is because the format of the frequencies table has >>> changed. To restore the frequencies go to Settings->Frequencies and >>> click the new "Reset" button, this will reset the working frequencies to >>> default values. >>> >>> The default frequencies are defined in FrequencyList.cpp, they are a >>> work in progress and will almost certainly need adjusting before >>> release. Ferquencies can either have a specific mode value from the >>> FrequencyList::Modes enumeration or the NULL_MODE value. If a frequency >>> is designated as NULL_MODE it will appear whatever mode is chosen. >>> >>> I have removed the +2 kHz check box since changing to JT9 will select >>> the JT9 frequencies and QSY to the one on the current band if there is >>> one. Going to another mode will QSY to that mode's working frequency if >>> there is one for the current band. >>> >>> This is all WIP so expect a few glitches but I thought that the >>> functionality improvements my be worth a little pain with defects from >>> early exposure. As always comments, suggestions and testing is welcome. >>> >>> 73 >>> Bill >>> G4WJS. > > > ------------------------------------------------------------------------------ > _______________________________________________ > wsjt-devel mailing list > wsjt-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wsjt-devel ------------------------------------------------------------------------------ _______________________________________________ wsjt-devel mailing list wsjt-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wsjt-devel