diff --git a/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupEditor.java b/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupEditor.java index 8f50a5cc..9d0a37c3 100644 --- a/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupEditor.java +++ b/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupEditor.java @@ -193,6 +193,11 @@ public class TalkgroupEditor extends DocumentListenerEditor { Protocol protocol = mComboProtocol.getItemAt(mComboProtocol.getSelectedIndex()); + if(protocol == null) + { + protocol = Protocol.UNKNOWN; + } + int value = -1; try diff --git a/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupFormat.java b/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupFormat.java index 213ffd6d..e904cf00 100644 --- a/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupFormat.java +++ b/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupFormat.java @@ -83,6 +83,14 @@ public enum TalkgroupFormat return mMaximumValue; } + /** + * Indicates if the value is valid for the protocol + */ + public boolean isValid(int value) + { + return getMinimumValidValue() <= value && value <= getMaximumValidValue(); + } + /** * Short description of the valid value range */ @@ -99,9 +107,14 @@ public enum TalkgroupFormat return mValidRangeHelpText; } - public static TalkgroupFormat get(Protocol prococol) + public static TalkgroupFormat get(Protocol protocol) { - switch(prococol) + if(protocol == null) + { + return UNKNOWN; + } + + switch(protocol) { case APCO25: return APCO25; diff --git a/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupRangeEditor.java b/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupRangeEditor.java index 312e5676..dca54176 100644 --- a/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupRangeEditor.java +++ b/src/main/java/io/github/dsheirer/alias/id/talkgroup/TalkgroupRangeEditor.java @@ -174,6 +174,8 @@ public class TalkgroupRangeEditor extends DocumentListenerEditor TalkgroupRange talkgroupRange = getTalkgroupRange(); + updateEditor(talkgroupRange.getProtocol()); + if(talkgroupRange != null) { mComboProtocol.getModel().setSelectedItem(talkgroupRange.getProtocol()); @@ -202,6 +204,12 @@ public class TalkgroupRangeEditor extends DocumentListenerEditor if(talkgroupRange != null) { Protocol protocol = mComboProtocol.getItemAt(mComboProtocol.getSelectedIndex()); + + if(protocol == null) + { + protocol = Protocol.UNKNOWN; + } + talkgroupRange.setProtocol(protocol); int minValue = -1;