diff --git a/package.nw/GridTracker.html b/package.nw/GridTracker.html
index 0ad6c6d..d8ee4f6 100644
--- a/package.nw/GridTracker.html
+++ b/package.nw/GridTracker.html
@@ -2978,6 +2978,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
diff --git a/package.nw/lib/defaults.js b/package.nw/lib/defaults.js
index 51a9bee..78a9135 100644
--- a/package.nw/lib/defaults.js
+++ b/package.nw/lib/defaults.js
@@ -61,6 +61,7 @@ var def_appSettings = {
lookupPasswordQth: "",
lookupService: "CALLOOK",
lookupCallookPreferred: false,
+ clearRosterOnBandChange: false,
moonPath: 0,
moonTrack: 0,
mouseTrack: 0,
diff --git a/package.nw/lib/gt.js b/package.nw/lib/gt.js
index 7bff87d..7736d85 100644
--- a/package.nw/lib/gt.js
+++ b/package.nw/lib/gt.js
@@ -12943,6 +12943,7 @@ function loadMapSettings()
focusRigValue.checked = g_mapSettings.focusRig;
haltAllOnTxValue.checked = g_mapSettings.haltAllOnTx;
strikesAlert.value = g_mapSettings.strikesAlert;
+ clearRosterOnBandChange.checked = g_appSettings.clearRosterOnBandChange;
setStrikesButton();
@@ -14391,6 +14392,11 @@ function loadLookupDetails()
else lookupCredentials.style.display = "block";
}
+function clearRosterOnBandChangeValueChanged(what)
+{
+ g_appSettings.clearRosterOnBandChange = clearRosterOnBandChange.checked;
+}
+
function lookupValueChanged(what)
{
if (g_appSettings.lookupService != lookupService.value)
diff --git a/package.nw/lib/roster/renderRoster.js b/package.nw/lib/roster/renderRoster.js
index 5984ec0..20514cb 100644
--- a/package.nw/lib/roster/renderRoster.js
+++ b/package.nw/lib/roster/renderRoster.js
@@ -21,11 +21,30 @@ function renderRoster(callRoster, rosterSettings)
// var visibleCallList = callRoster.filter(entry => entry.tx);
var visibleCallList = [];
+ var band =
+ window.opener.g_appSettings.gtBandFilter == "auto"
+ ? window.opener.g_appSettings.myBand
+ : window.opener.g_appSettings.gtBandFilter.length == 0
+ ? ""
+ : window.opener.g_appSettings.gtBandFilter;
for (entry in callRoster)
{
+ // entry should populate in general
if (callRoster[entry].tx)
{
- visibleCallList.push(callRoster[entry]);
+ // check setting for call roster clear on band change.
+ // if true and band is current band, populate
+ if (window.opener.g_appSettings.clearRosterOnBandChange)
+ {
+ if (callRoster[entry].callObj.band == band)
+ {
+ visibleCallList.push(callRoster[entry]);
+ }
+ }
+ else if (!window.opener.g_appSettings.clearRosterOnBandChange)
+ {
+ visibleCallList.push(callRoster[entry]);
+ }
}
}