Package org.ka2ddo.yaac.gui
Class MainGui
java.lang.Object
org.ka2ddo.yaac.gui.MainGui
- All Implemented Interfaces:
ConnectionRequestListener
,GuiIfc
This class defines the service functions for the Java AWT/Swing GUI of YAAC.
- Author:
- Andrew Pavlin, KA2DDO
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
This class handles an inbound AX.25 connection as a keyboard-to-keyboard Chat session, just as in the old packet radio days.static class
This panel prompts for the information needed for sending an APRS text message.Nested classes/interfaces inherited from interface org.ka2ddo.yaac.core.GuiIfc
GuiIfc.FullMapFunctor, GuiIfc.MapFunctor, GuiIfc.MessagingParams, GuiIfc.OsmImportParams, GuiIfc.TileDownloadParams
-
Constructor Summary
ConstructorDescriptionMainGui
(File baseDir, FirstWindow firstWindow) Create the main GUI manager of YAAC, which will subsequently create the default map view window and provide the service functions for launching all other display modes and windows. -
Method Summary
Modifier and TypeMethodDescriptionboolean
acceptInbound
(ConnState state, AX25Callsign originator, Connector port) Decide whether to accept the specified inbound AX.25 connected-mode session request.void
addSpecificTrackStripe
(String identifier) Add the identifier of a single station or object whose track stripe is to be plotted.void
Analyze the current configuration to report what the station as a whole will do.void
approveTacticalSender
(String originatingCallsign, String tacticalMsgText) Queue up a request to ask the user whether this TACTICAL message should be accepted and processed.static void
buildMenus
(ArrayList<AbstractMenuAction> actionList, JMenuBar menuBar, Window menuContainingWindow) Build the contents of a JFrame's JMenuBar.static JPopupMenu
buildPopupMenu
(int mx, int my, com.bbn.openmap.proj.Projection p, List<StationState> matchList, AX25Frame frame, GuiContentType widgetContentType) Create a popup menu contextually suitable for the point on the map that was clicked.static JPopupMenu
buildPopupMenu
(int mx, int my, com.bbn.openmap.proj.Projection p, List<StationState> matchList, AX25Frame frame, GuiContentType widgetContentType, ArrayList<AbstractPopupMenuAction> actionList) Create a popup menu contextually suitable for the point on the map that was clicked.static JPopupMenu
buildPopupMenu
(int mx, int my, com.bbn.openmap.proj.Projection p, List<StationState> matchList, GuiContentType widgetContentType) Create a popup menu contextually suitable for the point on the map that was clicked.static JPopupMenu
buildPopupMenu
(int mx, int my, List<StationState> matchList, GuiContentType widgetContentType) Create a popup menu contextually suitable for the point on the map that was clicked.buildStationComboBox
(boolean addStandardAliases, boolean excludeObjects, boolean addTacticalAliases) Create a choice widget populated with all the known station callsigns heard by YAAC, sorted in alphanumeric order.void
checkForUpdates
(boolean interactive) Check whether a newer release of YAAC is available, displaying status.static void
Clean up cached HelpSet data.void
Clear the plotting of all specific station/object track stripes.void
Close the window that currently has the keyboard focus (if it is part of the YAAC application).void
Display a form to allow transmitting a multi-line email message to someone via the APRS-WinLink gateways.void
confirmSendBroadcastQuery
(String confirmTag, String query) Broadcast a specified global query message after confirming the user really wants to send it.void
Set up a dumb-terminal connection to an old-style packet BBS.createProgressReporter
(String title, boolean modal) Open whatever the local operating system uses for a progress dialog and return an interface to send progress information to the dialog.void
displayAttentionAlert
(double latitude, double longitude, AX25Message.Precedence precedence) Display an AttentionAlert (flashing arrows) on the map for a particular station or object.void
Display an AttentionAlert (flashing arrows) on the map for a particular station or object.Object[]
displayHeardByDialog
(StationState[] stationsToPickFrom) Display a dialog asking for the parameters for a Heard-By (?APRSH) query.void
displayHelp
(String startingHelpId, Object parentWindow) Launch the JavaHelp browser, starting with the help corresponding to the specified help IDvoid
Display the Locate Landmark dialog, and handle user input to it.displayMessagingDialog
(ArrayList ssList) Display a dialog asking the user for the parameters needed to send a text message to another station.displayOsmImportDialog
(File osmFileDir) Ask the user how and where from to import an OpenStreetMap compressed data file.void
Display a popup with buttons to launch the user's web browser pointed at any of the major download sites for raw OpenStreetMap data.displayOsmTileDownloadDialog
(ChangeSet localChangeSet, ChangeSet serverChangeSet) Display a dialog asking the user which pre-compiled OSM tiles to download.void
displayStationSpecificMap
(StationState station) Open a map window centered on the station or object specified.displayTopoTileDownloadDialog
(File tileDir) Display a dialog asking the user which SRTM tiles to download.static void
disposeOfSplash
(Object oSplash) Get rid of the splash screen.void
editStationNotes
(StationState station, int mouseX, int mouseY) Display and edit notes attached to a specific station or object.boolean
ensureKeystoreIsOpen
(boolean dontBlock) Test if keystore has been opened with the correct password.static PrintableView
findPrintableView
(Component c, int depthLeft) Search the specified widget and its child widgets for a visible PrintableView.Get the UI platform top-level widget that currently holds the focus.static Window
Determine which YAAC window currently has the keyboard focus.Get the UI platform top-level widget that currently holds the focus, skipping child dialogs.Get the default (main) map window.Get a reference to the Image used as the title bar icon of the main frame.static ImageIcon
Load a Provider's image into a usable ImageIcon object.Get the singleton KenwoodMessageListTableModel.Get the primary or default map display.int
Get the number of APRS Messages collected by the application.Get the data structure used to cache incoming APRS Messages.Get the raw packet table model managed by this GUI.Get the SaveableTable (if any) in the specified view.Ask the current window whether it has any overriding grammar for speech command.void
Import a configuration from a saved XML file (File->Configure->Export to File) with appropriate interferences for callsign, directory, and serial port changing.void
initializeWindowMenu
(Object item, Object view) Create the entries on the dynamic Window menu on the menu bar corresponding to every window except the one containing the menu bar.void
Phase 2 of initializing the GUI (stuff that needs the GUI property of the main YAAC object to be already initialized).void
Start the configuration wizard at its first window.void
invokeObjectEditor
(String dialogTitleTag, Message or, int mouseX, int mouseY, ObjectReportTransmitter tx) Display the Object editing dialog, possibly initialized with the contents of an existing ObjectReport.void
invokeObjectEditor
(String dialogTitleTag, Message or, int mouseX, int mouseY, ObjectReportTransmitter tx, Scope scope) Display the Object editing dialog, possibly initialized with the contents of an existing ObjectReport.static boolean
Report whether rendering code should display old messages differently.boolean
Report if callsign combobox lists should exclude callsigns of stations with aliases (tactical names).boolean
Report the current visibility of the MemoryGCPanel.static boolean
Check current state of mouse.boolean
Report if the displays are in night mode.boolean
Report if Radio View window should only display packets received from RF.boolean
Report if Radio View window should be automatically opened upon startup.boolean
isSpecificallyTracked
(String identifier) Test if a given identifier is on the tracking list.boolean
Test if any identifiers are on the tracking list.boolean
isViewPrintable
(Object o, int depthLeft) Test if specified GUI view is printable.void
iterateOverAllMaps
(GuiIfc.FullMapFunctor functor) Apply the functor to every currently open map window.void
iterateOverAllMaps
(GuiIfc.MapFunctor functor) Apply the functor to every currently open map window.void
Query the user for a file from which to load saved APRS messages.void
Load APRS Object definitions from a user-specified file, using the .pos file format originated by UI-View.void
Load alias names and symbol codes for station callsigns and object names.static GridBagConstraints
makeGBC
(int x, int y) Convenience method to help build GridBagConstraints for any handlers created by the Provider that are laid out with GridBagLayout, creating a cell position for a 1x1 cell with left-aligned contents, weighted equally.static GridBagConstraints
makeGBC
(int x, int y, int w) Convenience method to help build GridBagConstraints for any handlers created by the Provider that are laid out with GridBagLayout, creating a cell position for a 1x1 cell with left-aligned contents, weighted equally.static GridBagConstraints
makeGBC
(int x, int y, int w, boolean fill) Convenience method to help build GridBagConstraints for any handlers created by the Provider that are laid out with GridBagLayout, creating a cell position for a 1x1 cell with left-aligned contents, weighted equally.static GridBagConstraints
makeGBC
(int x, int y, int w, int h) Convenience method to help build GridBagConstraints for any handlers created by the Provider that are laid out with GridBagLayout, creating a cell position for a 1x1 cell with left-aligned contents, weighted equally.pickAStation
(List<StationState> matchList, String titleTag) Select one of several stations.pickObject
(String titleTag, List<Object> matchList) Select one of several objects.void
Print the window that currently has the focus.void
registerMapWindow
(GeoMapIfc geoMapIfc) Register a newly opened map widget for updates.boolean
removeSpecificTrackStripe
(String identifier) Remove the identifier of a single station or object whose track stripe is no longer to be plotted.void
Query the user for a file in which to save the current visible set of APRS messages.void
Save the currently known APRS Objects to a file.void
Save alias names and symbol codes for station callsigns and object names.void
Schedule a short-running operation that should only occur on the GUI dispatch thread (however the implementing GUI chooses to do it).selectFile
(boolean isDirectory, String promptTag, String fileSelectTag) Select a file using an O/S-provided file chooser.selectFileForWrite
(File dir, String fileExtensionTag, String fileExtension) Open a file selection dialog for saving a file.static int
selectOneOf
(Window window, String title, String[] choices) Create a popup dialog to ask the user which of several choices should be used.int
selectOneOf
(String title, String[] choices) Create a popup dialog to ask the user which of several choices should be used.selectStation
(String titleBarTag, boolean stationsOnly, boolean inclTacticalAliases) Select one station (or object, if allowed) from the currently known list, or allow the user to manually type in a station callsign-SSID, and return the user selected value.void
sendQRU()
Broadcast a specified QRU query message after confirming the user really wants to send it.static void
setDontShowAsOld
(boolean dontShowAsOld) Specify whether rendering code should display old messages differently.void
setHideRealCallsignWhenHasTactical
(boolean hideRealCallsignWhenHasTactical) Specify if callsign combobox lists should exclude callsigns of stations with aliases (tactical names).void
Specify the title displayed in the map window's title bar.void
setMemoryGCPanelVisible
(boolean visible) Change the visibility of the memory usage status monitor.void
setNightMode
(boolean isNight) Specify that the displays should be in night mode (black backgrounds with white text/lines, for not ruining the night vision of the operator).void
setShowOnlyRFOnRadioView
(boolean onlyRFOnRadioView) Specify if Radio View window should only display packets received from RF.void
setShowRadioViewOnStartup
(boolean showRadioViewOnStartup) Specify if Radio View window should be automatically opened upon startup.void
setStationTimeout
(StationState station) Edit the timeout value for the specified station.static int
setTableColumnsWidths
(ColumnSizingTableModel tm, JTable table) Use the ColumnSizingTableModel to adjust the size of the table columns.void
Display the About dialog for the YAAC application.void
Display a bandwidth monitor for each open I/O port in YAAC.void
Display the window used to display bulletin messages, and compose locally originated bulletins for transmission.showCallsignInputDialog
(String titleTag, String msg) Show a text input dialog, with the specified title and message text, that will only take a callsign-SSID value for input.showCallsignInputDialog
(String titleTag, String msg, String oldValue) Show a text input dialog, with the specified title and message text, that will only take a callsign-SSID value for input.void
Start the regular configuration dialog.void
Display outstanding connected (I-frame) AX.25 sessions.void
Show a table view of all DX reports received by this station.void
Generate and display the blacklist editor.void
showEditFilterDialog
(Filter mainFilter, String dialogTitleTag) Generate and display the filter dialog.int
showGenericConfirmDialog
(String titleTag, String msg) Show a generic retry/skip/cancel dialog, with the specified title and message text.void
showGenericErrorDialog
(String titleTag, String msg) Show a generic error message dialog, with the specified title and message text.void
showGenericErrorDialogAlreadyLocalized
(String title, String msg) Show a generic error message dialog, with the specified title and message text.void
showGenericInfoDialog
(String titleTag, String msg) Show a generic informational message dialog, with the specified title and message text.showGenericInputDialog
(String titleTag, String msg) Show a generic text input dialog, with the specified title and message text.showGenericPasswordDialog
(String titleTag, String msg) Show a generic text input dialog, with the specified title and message text, where the entered text is masked (as should be done when entering a password).int
showGenericQuestionDialog
(String titleTag, String msg) Show a generic yes/no question dialog, with the specified title and message text.int
showGenericQuestionDialogWithHelp
(String titleTag, String msg) Show a generic yes/no question dialog, with the specified title and message text.showGenericStringChoiceDialog
(String titleTag, String msg, String[] choices) Show a generic choice-box dialog pre-populated with the specified strings, with the specified title and message text.showGenericStringChoiceDialog
(String titleTag, String msg, String[] choices, String initialChoice) Show a generic choice-box dialog pre-populated with the specified strings, with the specified title and message text.void
Display a monitor of the current status of all GPS receivers connected to YAAC.void
Show the current station health reports for all remote stations being monitored.void
Display a report of number of packets received from each station (or about each APRS Object/Item) over 15 minute intervals in the YAAC history.void
Display the message history for a specified station or object.void
showIOFailureDialog
(PortConfig config, String reason, PortFailureReportListener listener) Display an asynchronous non-blocking dialog on the screen to report an I/O error.void
showKeys()
Show a table view of the keys used to authenticate and verify the integrity of signed messages.void
Display a table of all Objects/Items being transmitted by this station.void
showMap()
Make visible and foreground the map window.void
Display the window used for receiving and logging filtered text messages.void
Open the MessageFrame (window displaying text message traffic in a table) and move it to the foreground.void
Display the window showing all messages (except beacons and status messages) pending for transmission from the local station.void
Display a dialog for selecting new officially supported plugins to install.void
showRadioView
(Message msg, String identifier) Show the dialog that looks like the Kenwood D710 control head APRS display.void
Display the singleton raw packet window.void
Display the release notes history for the YAAC application.static Object
Display the splash screen while YAAC is starting up.void
Show the window listing all the stations and objects heard by this station.void
Display all the current telemetry data heard by this station.void
Display a dialog for viewing and modifying the list of specifically tracked stations.void
Show a table view of the stations currently being Tx I-gated by this station.void
Display a monitor of the current conditions reported by the local weather station attached to YAAC.void
startChatSession
(String callsign) Open a Chat session window pointed at the specified remote station.void
unregisterMapWindow
(GeoMapIfc geoMapIfc) Unregister a closed map widget from updates.
-
Constructor Details
-
MainGui
Create the main GUI manager of YAAC, which will subsequently create the default map view window and provide the service functions for launching all other display modes and windows.- Parameters:
baseDir
- File referencing the installation directory for the YAAC softwarefirstWindow
- FirstWindow enum value indicating which display should come up first
-
-
Method Details
-
showSplashScreen
Display the splash screen while YAAC is starting up. Note that this is called only by Java Reflection.- Returns:
- the GUI object of the splash window
-
buildPopupMenu
public static JPopupMenu buildPopupMenu(int mx, int my, com.bbn.openmap.proj.Projection p, List<StationState> matchList, GuiContentType widgetContentType) Create a popup menu contextually suitable for the point on the map that was clicked. Each registered AbstractPopupMenuAction can decide for itself whether it should be included on the popup menu.- Parameters:
mx
- screen X coordinate where popup menu was requestedmy
- screen Y coordinate where popup menu was requestedp
- the current Projection for the mapmatchList
- an ArrayList of StationStates describing stations and objects at the point on the map that was clickedwidgetContentType
- GuiContentType of the widget that wants to launch a popup menu- Returns:
- a JPopupMenu of the chosen AbstractPopupMenuActions if any were enabled for this point, or null if no menu items should be enabled here
-
buildPopupMenu
public static JPopupMenu buildPopupMenu(int mx, int my, List<StationState> matchList, GuiContentType widgetContentType) Create a popup menu contextually suitable for the point on the map that was clicked. Each registered AbstractPopupMenuAction can decide for itself whether it should be included on the popup menu.- Parameters:
mx
- screen X coordinate where popup menu was requestedmy
- screen Y coordinate where popup menu was requestedmatchList
- an ArrayList of StationStates describing stations and objects at the point on the map that was clickedwidgetContentType
- GuiContentType of the widget that wants to launch a popup menu @return a JPopupMenu of the chosen AbstractPopupMenuActions if any were enabled for this point, or null if no menu items should be enabled here- Returns:
- a JPopupMenu of the chosen AbstractPopupMenuActions if any were enabled for this point, or null if no menu items should be enabled here
-
buildPopupMenu
public static JPopupMenu buildPopupMenu(int mx, int my, com.bbn.openmap.proj.Projection p, List<StationState> matchList, AX25Frame frame, GuiContentType widgetContentType) Create a popup menu contextually suitable for the point on the map that was clicked. Each registered AbstractPopupMenuAction can decide for itself whether it should be included on the popup menu.- Parameters:
mx
- screen X coordinate where popup menu was requestedmy
- screen Y coordinate where popup menu was requestedp
- the current Projection for the mapmatchList
- an ArrayList of StationStates describing stations and objects at the point on the map that was clickedframe
- AX25Frame in the selected table row, or null if not relevantwidgetContentType
- GuiContentType of the widget that wants to launch a popup menu @return a JPopupMenu of the chosen AbstractPopupMenuActions if any were enabled for this point, or null if no menu items should be enabled here- Returns:
- a JPopupMenu of the chosen AbstractPopupMenuActions if any were enabled for this point, or null if no menu items should be enabled here
-
buildPopupMenu
public static JPopupMenu buildPopupMenu(int mx, int my, com.bbn.openmap.proj.Projection p, List<StationState> matchList, AX25Frame frame, GuiContentType widgetContentType, ArrayList<AbstractPopupMenuAction> actionList) Create a popup menu contextually suitable for the point on the map that was clicked. Each registered AbstractPopupMenuAction can decide for itself whether it should be included on the popup menu.- Parameters:
mx
- screen X coordinate where popup menu was requestedmy
- screen Y coordinate where popup menu was requestedp
- the current Projection for the mapmatchList
- an ArrayList of StationStates describing stations and objects at the point on the map that was clickedframe
- AX25Frame in the selected table row, or null if not relevantwidgetContentType
- GuiContentType of the widget that wants to launch a popup menu @return a JPopupMenu of the chosen AbstractPopupMenuActions if any were enabled for this point, or null if no menu items should be enabled hereactionList
- ArrayList of AbstractPopupMenuAction objects to consider for menu- Returns:
- a JPopupMenu of the chosen AbstractPopupMenuActions if any were enabled for this point, or null if no menu items should be enabled here
-
setMainFrameTitle
public void setMainFrameTitle()Specify the title displayed in the map window's title bar.- Specified by:
setMainFrameTitle
in interfaceGuiIfc
-
disposeOfSplash
Get rid of the splash screen.- Parameters:
oSplash
- Object wrapped around the splash screen
-
initMainWindowMenuBar
public void initMainWindowMenuBar()Phase 2 of initializing the GUI (stuff that needs the GUI property of the main YAAC object to be already initialized).- Specified by:
initMainWindowMenuBar
in interfaceGuiIfc
-
buildMenus
public static void buildMenus(ArrayList<AbstractMenuAction> actionList, JMenuBar menuBar, Window menuContainingWindow) Build the contents of a JFrame's JMenuBar.- Parameters:
actionList
- ArrayList of AbstractMenuActions to be sorted and built into the menu barmenuBar
- JMenuBar to be populatedmenuContainingWindow
- the Window that contains the menu bar
-
iterateOverAllMaps
Apply the functor to every currently open map window.- Specified by:
iterateOverAllMaps
in interfaceGuiIfc
- Parameters:
functor
- MapFunctor to be iteratively called
-
iterateOverAllMaps
Apply the functor to every currently open map window.- Specified by:
iterateOverAllMaps
in interfaceGuiIfc
- Parameters:
functor
- FullMapFunctor to be iteratively called
-
registerMapWindow
Register a newly opened map widget for updates.- Parameters:
geoMapIfc
- GeoMapIfc implementor to register
-
unregisterMapWindow
Unregister a closed map widget from updates.- Parameters:
geoMapIfc
- GeoMapIfc implementor to register
-
getDefaultMap
Get the default (main) map window.- Returns:
- default map window
-
getMainMap
Get the primary or default map display.- Specified by:
getMainMap
in interfaceGuiIfc
- Returns:
- display object implementing the MapGeoIfc interface
-
displayAttentionAlert
Display an AttentionAlert (flashing arrows) on the map for a particular station or object.- Specified by:
displayAttentionAlert
in interfaceGuiIfc
- Parameters:
ss
- StationState of the station or object to highlight
-
displayAttentionAlert
public void displayAttentionAlert(double latitude, double longitude, AX25Message.Precedence precedence) Display an AttentionAlert (flashing arrows) on the map for a particular station or object.- Specified by:
displayAttentionAlert
in interfaceGuiIfc
- Parameters:
latitude
- double fractional degrees Northlongitude
- double fraction degrees Eastprecedence
- Precedence of the event to be reported
-
isDontShowAsOld
public static boolean isDontShowAsOld()Report whether rendering code should display old messages differently.- Returns:
- boolean true if old messages shouldn't be displayed as old
-
setDontShowAsOld
public static void setDontShowAsOld(boolean dontShowAsOld) Specify whether rendering code should display old messages differently.- Parameters:
dontShowAsOld
- boolean true if old messages shouldn't be displayed as old
-
getMessageModel
Get the data structure used to cache incoming APRS Messages.- Returns:
- the MessageModel
-
getMessageCount
public int getMessageCount()Get the number of APRS Messages collected by the application.- Specified by:
getMessageCount
in interfaceGuiIfc
- Returns:
- message count
-
getKenwoodMessageListTableModel
Get the singleton KenwoodMessageListTableModel.- Returns:
- KenwoodMessageListTableModel
-
invokeConfigWizard
public void invokeConfigWizard()Start the configuration wizard at its first window.- Specified by:
invokeConfigWizard
in interfaceGuiIfc
-
showConfigurationDialog
public void showConfigurationDialog()Start the regular configuration dialog.- Specified by:
showConfigurationDialog
in interfaceGuiIfc
-
isNightMode
public boolean isNightMode()Report if the displays are in night mode.- Specified by:
isNightMode
in interfaceGuiIfc
- Returns:
- boolean true if in night mode
-
setNightMode
public void setNightMode(boolean isNight) Specify that the displays should be in night mode (black backgrounds with white text/lines, for not ruining the night vision of the operator).- Specified by:
setNightMode
in interfaceGuiIfc
- Parameters:
isNight
- boolean true if should be in night mode
-
getIconImage
Get a reference to the Image used as the title bar icon of the main frame.- Returns:
- Image of the program icon
-
createProgressReporter
Open whatever the local operating system uses for a progress dialog and return an interface to send progress information to the dialog.- Specified by:
createProgressReporter
in interfaceGuiIfc
- Parameters:
title
- already-localized title String for the dialogmodal
- whether the dialog should be application-modal or modeless- Returns:
- StatusListener to use for sending progress reports to the dialog
-
initializeWindowMenu
Create the entries on the dynamic Window menu on the menu bar corresponding to every window except the one containing the menu bar.- Specified by:
initializeWindowMenu
in interfaceGuiIfc
- Parameters:
item
- JMenuItem corresponding to the Window menuview
- RootPaneContainer containing the menu bar
-
showGenericErrorDialog
Show a generic error message dialog, with the specified title and message text.- Specified by:
showGenericErrorDialog
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted error message text String
-
showGenericErrorDialogAlreadyLocalized
Show a generic error message dialog, with the specified title and message text.- Specified by:
showGenericErrorDialogAlreadyLocalized
in interfaceGuiIfc
- Parameters:
title
- String dialog title (already localized)msg
- already-localized and variable-substituted error message text String
-
showGenericInfoDialog
Show a generic informational message dialog, with the specified title and message text.- Specified by:
showGenericInfoDialog
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted error message text String
-
showGenericQuestionDialog
Show a generic yes/no question dialog, with the specified title and message text.- Specified by:
showGenericQuestionDialog
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted error message text String- Returns:
- 0 for Yes, 1 for No, -1 for dialog closed without an explicit answer
-
showGenericQuestionDialogWithHelp
Show a generic yes/no question dialog, with the specified title and message text.- Specified by:
showGenericQuestionDialogWithHelp
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted error message text String- Returns:
- 0 for Yes, 1 for No, 2 for Help, -1 for dialog closed without an explicit answer
-
showGenericConfirmDialog
Show a generic retry/skip/cancel dialog, with the specified title and message text.- Specified by:
showGenericConfirmDialog
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted error message text String- Returns:
- 0 for Retry, 1 for Skip, 2 for Cancel, -1 for dialog closed without an explicit answer
-
showGenericInputDialog
Show a generic text input dialog, with the specified title and message text.- Specified by:
showGenericInputDialog
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted prompt message text String- Returns:
- String text entered by user, or null to indicate dialog was closed without text entry
-
showCallsignInputDialog
Show a text input dialog, with the specified title and message text, that will only take a callsign-SSID value for input.- Specified by:
showCallsignInputDialog
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted prompt message text String- Returns:
- String text entered by user, or null to indicate dialog was closed without text entry
-
showCallsignInputDialog
Show a text input dialog, with the specified title and message text, that will only take a callsign-SSID value for input.- Specified by:
showCallsignInputDialog
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted prompt message text StringoldValue
- String previous value, or null to leave blank- Returns:
- String text entered by user, or null to indicate dialog was closed without text entry
-
showGenericPasswordDialog
Show a generic text input dialog, with the specified title and message text, where the entered text is masked (as should be done when entering a password).- Specified by:
showGenericPasswordDialog
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted prompt message text String- Returns:
- String text entered by user, or null to indicate dialog was closed without text entry
-
showGenericStringChoiceDialog
Show a generic choice-box dialog pre-populated with the specified strings, with the specified title and message text.- Specified by:
showGenericStringChoiceDialog
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted error message text Stringchoices
- String array of choices to populate the dropdown, or null for a text field- Returns:
- String text entered by user or selected from choices, or null to indicate dialog was closed without text entry/selection
-
showGenericStringChoiceDialog
public String showGenericStringChoiceDialog(String titleTag, String msg, String[] choices, String initialChoice) Show a generic choice-box dialog pre-populated with the specified strings, with the specified title and message text.- Specified by:
showGenericStringChoiceDialog
in interfaceGuiIfc
- Parameters:
titleTag
- String tag to look up locale-specific dialog titlemsg
- already-localized and variable-substituted error message text Stringchoices
- String array of choices to populate the dropdown, or null for a text fieldinitialChoice
- String to initialize the selection to, or null for no default- Returns:
- String text entered by user or selected from choices, or null to indicate dialog was closed without text entry/selection
-
getImageIcon
Load a Provider's image into a usable ImageIcon object.- Parameters:
p
- Provider to specify the image relative path (null implies theCoreProvider
of YAAC)- Returns:
- ImageIcon of the Provider's specified image, or null if the Provider does not specify an icon image
-
showAboutDialog
public void showAboutDialog()Display the About dialog for the YAAC application.- Specified by:
showAboutDialog
in interfaceGuiIfc
-
showReleaseNotes
public void showReleaseNotes()Display the release notes history for the YAAC application. Note this fetches the release notes over the Internet, so the notes may show changes in the future of the currently running build (if it hasn't been upgraded to the latest released build yet).- Specified by:
showReleaseNotes
in interfaceGuiIfc
-
getSaveableTableInView
Get the SaveableTable (if any) in the specified view.- Specified by:
getSaveableTableInView
in interfaceGuiIfc
- Parameters:
c
- top-level window or view to be tested- Returns:
- SaveableTable object in the view, or null if there isn't a SaveableTable in the view
-
buildStationComboBox
public JComboBox buildStationComboBox(boolean addStandardAliases, boolean excludeObjects, boolean addTacticalAliases) Create a choice widget populated with all the known station callsigns heard by YAAC, sorted in alphanumeric order.- Parameters:
addStandardAliases
- boolean true if standard service aliases should be prefixed to the list of station callsignsexcludeObjects
- boolean true if entries that only appear as Objects or Items should be excludedaddTacticalAliases
- boolean true if non-blank tactical aliases should be included in the list- Returns:
- editable JComboBox whose model is loaded with the currently known callsigns
-
selectStation
Select one station (or object, if allowed) from the currently known list, or allow the user to manually type in a station callsign-SSID, and return the user selected value.- Specified by:
selectStation
in interfaceGuiIfc
- Parameters:
titleBarTag
- String tag for localized title to display in popup dialogstationsOnly
- boolean true if entries appearing only as Objects/Items should be excluded from the pick listinclTacticalAliases
- boolean true if tactical aliases of stations and objects should be included in the selection list- Returns:
- String if user manually entered, StationState or String if selected from the pick list, or null if user cancelled the operation
-
selectOneOf
Create a popup dialog to ask the user which of several choices should be used.- Specified by:
selectOneOf
in interfaceGuiIfc
- Parameters:
title
- String title to display in dialog box titlechoices
- array of String choices to choose from- Returns:
- index of selected choice, or -1 if the dialog was cancelled without selecting a choice
-
selectOneOf
Create a popup dialog to ask the user which of several choices should be used.- Parameters:
window
- Window to parent the displayed dialogtitle
- String title to display in dialog box titlechoices
- array of String choices to choose from- Returns:
- index of selected choice, or -1 if the dialog was cancelled without selecting a choice
-
makeGBC
Convenience method to help build GridBagConstraints for any handlers created by the Provider that are laid out with GridBagLayout, creating a cell position for a 1x1 cell with left-aligned contents, weighted equally.- Parameters:
x
- int value to use for gridxy
- int value to use for gridy- Returns:
- GridBagConstraints
-
makeGBC
Convenience method to help build GridBagConstraints for any handlers created by the Provider that are laid out with GridBagLayout, creating a cell position for a 1x1 cell with left-aligned contents, weighted equally.- Parameters:
x
- int value to use for gridxy
- int value to use for gridyw
- int value to use for gridwidth- Returns:
- GridBagConstraints
-
makeGBC
Convenience method to help build GridBagConstraints for any handlers created by the Provider that are laid out with GridBagLayout, creating a cell position for a 1x1 cell with left-aligned contents, weighted equally.- Parameters:
x
- int value to use for gridxy
- int value to use for gridyw
- int value to use for gridwidthfill
- boolean true if constraints should specify filling the cell, false otherwise- Returns:
- GridBagConstraints
-
makeGBC
Convenience method to help build GridBagConstraints for any handlers created by the Provider that are laid out with GridBagLayout, creating a cell position for a 1x1 cell with left-aligned contents, weighted equally.- Parameters:
x
- int value to use for gridxy
- int value to use for gridyw
- int value to use for gridwidthh
- int value to use for gridheight- Returns:
- GridBagConstraints
-
loadAprsPackets
public void loadAprsPackets()Query the user for a file from which to load saved APRS messages.- Specified by:
loadAprsPackets
in interfaceGuiIfc
-
saveAprsPackets
public void saveAprsPackets()Query the user for a file in which to save the current visible set of APRS messages.- Specified by:
saveAprsPackets
in interfaceGuiIfc
-
displayOsmMirrorSiteList
public void displayOsmMirrorSiteList()Display a popup with buttons to launch the user's web browser pointed at any of the major download sites for raw OpenStreetMap data.- Specified by:
displayOsmMirrorSiteList
in interfaceGuiIfc
-
displayOsmImportDialog
Ask the user how and where from to import an OpenStreetMap compressed data file.- Specified by:
displayOsmImportDialog
in interfaceGuiIfc
- Parameters:
osmFileDir
- File pointing at the directory to initially look for importable OSM data files- Returns:
- null if user cancelled the request, or an OsmImportParams object containing the import parameters
-
displayOsmTileDownloadDialog
public GuiIfc.TileDownloadParams displayOsmTileDownloadDialog(ChangeSet localChangeSet, ChangeSet serverChangeSet) Display a dialog asking the user which pre-compiled OSM tiles to download.- Specified by:
displayOsmTileDownloadDialog
in interfaceGuiIfc
- Parameters:
localChangeSet
- the OSM ChangeSet of the last data downloaded or imported here (or null if OSM data was never installed)serverChangeSet
- the OSM ChangeSet currently available on the YAAC website- Returns:
- null if the user cancelled the request, or a TileDownloadParams structure containing the needed parameters for the download
-
displayTopoTileDownloadDialog
Display a dialog asking the user which SRTM tiles to download.- Specified by:
displayTopoTileDownloadDialog
in interfaceGuiIfc
- Parameters:
tileDir
- File pointing at the directory where tiles are kept- Returns:
- null if the user cancelled the request, or a TileDownloadParams structure containing the needed parameters for the download
-
selectFileForWrite
Open a file selection dialog for saving a file.- Specified by:
selectFileForWrite
in interfaceGuiIfc
- Parameters:
dir
- File for the initial directoryfileExtensionTag
- String tag for looking up localized string of file type descriptionfileExtension
- String file type- Returns:
- selected File to save the content to, or null if cancelled
-
selectFile
Select a file using an O/S-provided file chooser.- Specified by:
selectFile
in interfaceGuiIfc
- Parameters:
isDirectory
- boolean true if user should select a directory, false to select a filepromptTag
- String key to ResourceBundle localized dialog titlefileSelectTag
- String key to ResourceBundle localized select button label- Returns:
- String of selected file path, or null if not selected
-
importConfigFromFile
public void importConfigFromFile()Import a configuration from a saved XML file (File->Configure->Export to File) with appropriate interferences for callsign, directory, and serial port changing.- Specified by:
importConfigFromFile
in interfaceGuiIfc
-
analyzeConfiguration
public void analyzeConfiguration()Analyze the current configuration to report what the station as a whole will do. Intended to catch unreasonable configurations that don't do what the user wants it to do.- Specified by:
analyzeConfiguration
in interfaceGuiIfc
-
showRawPacketFrame
public void showRawPacketFrame()Display the singleton raw packet window.- Specified by:
showRawPacketFrame
in interfaceGuiIfc
-
showMessageFrame
public void showMessageFrame()Open the MessageFrame (window displaying text message traffic in a table) and move it to the foreground. This may be called from any thread (not just the GUI dispatch thread).- Specified by:
showMessageFrame
in interfaceGuiIfc
-
showMessageFilterPane
public void showMessageFilterPane()Display the window used for receiving and logging filtered text messages. Intended to support proposed field event logging as described in http://aprs.org/aprsevent.html- Specified by:
showMessageFilterPane
in interfaceGuiIfc
-
showBulletinBoard
public void showBulletinBoard()Display the window used to display bulletin messages, and compose locally originated bulletins for transmission.- Specified by:
showBulletinBoard
in interfaceGuiIfc
-
showOutstandingMessages
public void showOutstandingMessages()Display the window showing all messages (except beacons and status messages) pending for transmission from the local station.- Specified by:
showOutstandingMessages
in interfaceGuiIfc
-
showBandwidthMonitor
public void showBandwidthMonitor()Display a bandwidth monitor for each open I/O port in YAAC.- Specified by:
showBandwidthMonitor
in interfaceGuiIfc
-
showGpsStatusDialog
public void showGpsStatusDialog()Display a monitor of the current status of all GPS receivers connected to YAAC.- Specified by:
showGpsStatusDialog
in interfaceGuiIfc
-
showWeatherDialog
public void showWeatherDialog()Display a monitor of the current conditions reported by the local weather station attached to YAAC.- Specified by:
showWeatherDialog
in interfaceGuiIfc
-
showLocalObjects
public void showLocalObjects()Display a table of all Objects/Items being transmitted by this station.- Specified by:
showLocalObjects
in interfaceGuiIfc
-
showHeardList
public void showHeardList()Display a report of number of packets received from each station (or about each APRS Object/Item) over 15 minute intervals in the YAAC history.- Specified by:
showHeardList
in interfaceGuiIfc
-
showRadioView
Show the dialog that looks like the Kenwood D710 control head APRS display.- Specified by:
showRadioView
in interfaceGuiIfc
- Parameters:
msg
- a historical APRS Message to display, or null to display current real-time dataidentifier
- the originating station callsign associated with the historical message (ignored if null msg)
-
isShowOnlyRFOnRadioView
public boolean isShowOnlyRFOnRadioView()Report if Radio View window should only display packets received from RF.- Returns:
- boolean true if only RF packets will be displayed on Radio View
-
setShowOnlyRFOnRadioView
public void setShowOnlyRFOnRadioView(boolean onlyRFOnRadioView) Specify if Radio View window should only display packets received from RF.- Parameters:
onlyRFOnRadioView
- boolean true if only RF packets will be displayed on Radio View
-
isShowRadioViewOnStartup
public boolean isShowRadioViewOnStartup()Report if Radio View window should be automatically opened upon startup.- Returns:
- boolean true if Radio View should be automatically opened
-
setShowRadioViewOnStartup
public void setShowRadioViewOnStartup(boolean showRadioViewOnStartup) Specify if Radio View window should be automatically opened upon startup.- Parameters:
showRadioViewOnStartup
- boolean true if Radio View should be automatically opened
-
isHideRealCallsignWhenHasTactical
public boolean isHideRealCallsignWhenHasTactical()Report if callsign combobox lists should exclude callsigns of stations with aliases (tactical names).- Returns:
- boolean true if combo lists should exclude callsigns of included tactical names
-
setHideRealCallsignWhenHasTactical
public void setHideRealCallsignWhenHasTactical(boolean hideRealCallsignWhenHasTactical) Specify if callsign combobox lists should exclude callsigns of stations with aliases (tactical names).- Parameters:
hideRealCallsignWhenHasTactical
- boolean true if combo lists should exclude callsigns of included tactical names
-
showMap
public void showMap()Make visible and foreground the map window. -
displayStationSpecificMap
Open a map window centered on the station or object specified.- Specified by:
displayStationSpecificMap
in interfaceGuiIfc
- Parameters:
station
- StationState to center on
-
showStationList
public void showStationList()Show the window listing all the stations and objects heard by this station.- Specified by:
showStationList
in interfaceGuiIfc
-
showEditFilterDialog
Generate and display the filter dialog.- Specified by:
showEditFilterDialog
in interfaceGuiIfc
- Parameters:
mainFilter
- the top Filter in the Filter hierarchydialogTitleTag
- bundle tag for title to display on dialog
-
showEditBlacklistDialog
public void showEditBlacklistDialog()Generate and display the blacklist editor.- Specified by:
showEditBlacklistDialog
in interfaceGuiIfc
-
loadObjectsFromFile
public void loadObjectsFromFile()Load APRS Object definitions from a user-specified file, using the .pos file format originated by UI-View.- Specified by:
loadObjectsFromFile
in interfaceGuiIfc
-
saveObjectsToFile
public void saveObjectsToFile()Save the currently known APRS Objects to a file.- Specified by:
saveObjectsToFile
in interfaceGuiIfc
-
loadTacticalNames
public void loadTacticalNames()Load alias names and symbol codes for station callsigns and object names.- Specified by:
loadTacticalNames
in interfaceGuiIfc
-
saveTacticalNames
public void saveTacticalNames()Save alias names and symbol codes for station callsigns and object names.- Specified by:
saveTacticalNames
in interfaceGuiIfc
-
showHistory
Display the message history for a specified station or object.- Specified by:
showHistory
in interfaceGuiIfc
- Parameters:
ss
- StationState of the desired station or object
-
showTelemetryReport
public void showTelemetryReport()Display all the current telemetry data heard by this station.- Specified by:
showTelemetryReport
in interfaceGuiIfc
-
showHealthMonitorReport
public void showHealthMonitorReport()Show the current station health reports for all remote stations being monitored.- Specified by:
showHealthMonitorReport
in interfaceGuiIfc
-
showTXIGatedStations
public void showTXIGatedStations()Show a table view of the stations currently being Tx I-gated by this station.- Specified by:
showTXIGatedStations
in interfaceGuiIfc
-
ensureKeystoreIsOpen
public boolean ensureKeystoreIsOpen(boolean dontBlock) Test if keystore has been opened with the correct password. If it hasn't, prompt the user for the password so the keystore can be opened,- Specified by:
ensureKeystoreIsOpen
in interfaceGuiIfc
- Parameters:
dontBlock
- boolean true if this method should return immediately without blocking- Returns:
- boolean true if the keystore is now open
-
showKeys
public void showKeys()Show a table view of the keys used to authenticate and verify the integrity of signed messages. -
showDXReports
public void showDXReports()Show a table view of all DX reports received by this station.- Specified by:
showDXReports
in interfaceGuiIfc
-
showConnectionReport
public void showConnectionReport()Display outstanding connected (I-frame) AX.25 sessions.- Specified by:
showConnectionReport
in interfaceGuiIfc
-
setTableColumnsWidths
Use the ColumnSizingTableModel to adjust the size of the table columns.- Parameters:
tm
- ColumnSizingTableModel to extract widths fromtable
- JTable whose column sizes should be adjusted- Returns:
- total number of horizontal pixels allotted to sized columns
-
displayLocateLandmarkDialog
public void displayLocateLandmarkDialog()Display the Locate Landmark dialog, and handle user input to it.- Specified by:
displayLocateLandmarkDialog
in interfaceGuiIfc
-
composeWinlinkMessage
public void composeWinlinkMessage()Display a form to allow transmitting a multi-line email message to someone via the APRS-WinLink gateways.- Specified by:
composeWinlinkMessage
in interfaceGuiIfc
-
connectToStation
public void connectToStation()Set up a dumb-terminal connection to an old-style packet BBS.- Specified by:
connectToStation
in interfaceGuiIfc
-
confirmSendBroadcastQuery
Broadcast a specified global query message after confirming the user really wants to send it.- Specified by:
confirmSendBroadcastQuery
in interfaceGuiIfc
- Parameters:
confirmTag
- tag for resource file message for the confirmation queryquery
- the actual APRS message to send (must be valid according to the APRS protocol specification)
-
approveTacticalSender
Queue up a request to ask the user whether this TACTICAL message should be accepted and processed. This is expected to be called from a background thread, so the implementor is required to move it to the GUI dispatch thread.- Specified by:
approveTacticalSender
in interfaceGuiIfc
- Parameters:
originatingCallsign
- callsign String of message originatortacticalMsgText
- String of text message body (the TACTICAL directive)
-
sendQRU
public void sendQRU()Broadcast a specified QRU query message after confirming the user really wants to send it. and asking which QRU category to ask for. -
invokeObjectEditor
public void invokeObjectEditor(String dialogTitleTag, Message or, int mouseX, int mouseY, ObjectReportTransmitter tx) Display the Object editing dialog, possibly initialized with the contents of an existing ObjectReport.- Specified by:
invokeObjectEditor
in interfaceGuiIfc
- Parameters:
dialogTitleTag
- String tag for localized title to display on dialog title baror
- APRS Message to initialize the editor, or null for creating an object from scratchmouseX
- window X coordinate of mouse click (to generate initial coordinates), or -1 to not init position from mapmouseY
- window Y coordinate of mouse click (to generate initial coordinates), or -1 to not init position from maptx
- ObjectReportTransmitter to give any created or updated objects to
-
invokeObjectEditor
public void invokeObjectEditor(String dialogTitleTag, Message or, int mouseX, int mouseY, ObjectReportTransmitter tx, Scope scope) Display the Object editing dialog, possibly initialized with the contents of an existing ObjectReport.- Specified by:
invokeObjectEditor
in interfaceGuiIfc
- Parameters:
dialogTitleTag
- String tag for localized title to display on dialog title baror
- APRS Message to initialize the editor, or null for creating an object from scratchmouseX
- window X coordinate of mouse click (to generate initial coordinates), or -1 to not init position from mapmouseY
- window Y coordinate of mouse click (to generate initial coordinates), or -1 to not init position from maptx
- ObjectReportTransmitter to give any created or updated objects toscope
- Scope for new ObjectReport (ignored for existing ObjectReports), or null for default
-
editStationNotes
Display and edit notes attached to a specific station or object.- Specified by:
editStationNotes
in interfaceGuiIfc
- Parameters:
station
- StationState whose notes should be editedmouseX
- window X coordinate of mouse click (to generate initial coordinates), or -1 to not init position from mapmouseY
- window Y coordinate of mouse click (to generate initial coordinates), or -1 to not init position from map
-
setStationTimeout
Edit the timeout value for the specified station.- Specified by:
setStationTimeout
in interfaceGuiIfc
- Parameters:
station
- StationState whose inactivity time limit is to be modified
-
showTrackedStationsList
public void showTrackedStationsList()Display a dialog for viewing and modifying the list of specifically tracked stations.- Specified by:
showTrackedStationsList
in interfaceGuiIfc
-
showIOFailureDialog
public void showIOFailureDialog(PortConfig config, String reason, PortFailureReportListener listener) Display an asynchronous non-blocking dialog on the screen to report an I/O error. This method should only be called from background threads (such as port I/O handling threads), and not from the AWT dispatch thread.- Specified by:
showIOFailureDialog
in interfaceGuiIfc
- Parameters:
config
- PortConfig object describing the port with the problem, or null if not about a specific portreason
- String describing why the port is downlistener
- I/O subsystem that wants to be informed if the user dismisses the dialog
-
closeCurrentWindow
public void closeCurrentWindow()Close the window that currently has the keyboard focus (if it is part of the YAAC application).- Specified by:
closeCurrentWindow
in interfaceGuiIfc
-
pickAStation
Select one of several stations.- Specified by:
pickAStation
in interfaceGuiIfc
- Parameters:
matchList
- ArrayList of StationState objects to pick fromtitleTag
- String name of resource tag for title of prompting dialog- Returns:
- selected StationState, or null if the user cancelled
-
pickObject
Select one of several objects. The toString() method of each object in the specified list must return the name that should be displayed in the list for the object.- Specified by:
pickObject
in interfaceGuiIfc
- Parameters:
titleTag
- String name of resource tag for title of prompting dialogmatchList
- java.util.List of objects to pick from- Returns:
- selected StationState, or null if the user cancelled
-
getCurrentlyFocusedWindow
Determine which YAAC window currently has the keyboard focus. Note this overrides the normal Java AWT/Swing behavior in one case: when a new Window is being created and its menu bar is being built, this returns the window under construction, under the assumption that JCheckboxMenuItems will try to call this method for the Window under construction and would normally get the Window that requested the construction (which would be the wrong context for a menu callback).- Returns:
- currently focused Window
-
getCurrentlyFocusedView
Get the UI platform top-level widget that currently holds the focus.- Specified by:
getCurrentlyFocusedView
in interfaceGuiIfc
- Returns:
- top-level GUI object
-
getCurrentTopLevelView
Get the UI platform top-level widget that currently holds the focus, skipping child dialogs.- Specified by:
getCurrentTopLevelView
in interfaceGuiIfc
- Returns:
- top-level GUI object
-
getRawPacketTableModel
Get the raw packet table model managed by this GUI.- Returns:
- RawPacketTableModel instance
-
scheduleToGuiThread
Schedule a short-running operation that should only occur on the GUI dispatch thread (however the implementing GUI chooses to do it).- Specified by:
scheduleToGuiThread
in interfaceGuiIfc
- Parameters:
r
- Runnable to be scheduled as soon as possible on the GUI thread
-
isViewPrintable
Test if specified GUI view is printable.- Specified by:
isViewPrintable
in interfaceGuiIfc
- Parameters:
o
- Object of view containerdepthLeft
- number of levels of recursion allowed for the search- Returns:
- boolean true if view is printable
- See Also:
-
findPrintableView
Search the specified widget and its child widgets for a visible PrintableView.- Parameters:
c
- Component to checkdepthLeft
- int number of child generations that can still be searched- Returns:
- found visible PrintableView, or null if nothing visible in the hierarchy can be printed
-
printWindow
public void printWindow()Print the window that currently has the focus.- Specified by:
printWindow
in interfaceGuiIfc
- See Also:
-
setMemoryGCPanelVisible
public void setMemoryGCPanelVisible(boolean visible) Change the visibility of the memory usage status monitor.- Specified by:
setMemoryGCPanelVisible
in interfaceGuiIfc
- Parameters:
visible
- boolean true if memory status monitor should be visible
-
isMemoryGCPanelVisible
public boolean isMemoryGCPanelVisible()Report the current visibility of the MemoryGCPanel.- Specified by:
isMemoryGCPanelVisible
in interfaceGuiIfc
- Returns:
- boolean true if panel is visible
-
displayHeardByDialog
Display a dialog asking for the parameters for a Heard-By (?APRSH) query.- Specified by:
displayHeardByDialog
in interfaceGuiIfc
- Parameters:
stationsToPickFrom
- array of StationState objects specifying the list of stations to choose from, or null to get all currently known stations- Returns:
- null if the query was cancelled, or a two-element array specifying the station to query and the station that the queried station might have heard
-
displayMessagingDialog
Display a dialog asking the user for the parameters needed to send a text message to another station.- Specified by:
displayMessagingDialog
in interfaceGuiIfc
- Parameters:
ssList
- list of stations to populate the list with, or null for entire list of known stations- Returns:
- null if the user cancelled the request, or a MessagingParams structure containing the parameters
-
startChatSession
Open a Chat session window pointed at the specified remote station.- Specified by:
startChatSession
in interfaceGuiIfc
- Parameters:
callsign
- String senderCallsign of the remote station
-
displayHelp
Launch the JavaHelp browser, starting with the help corresponding to the specified help ID- Specified by:
displayHelp
in interfaceGuiIfc
- Parameters:
startingHelpId
- String help ID corresponding to an entry in a *.jhm file; null indicates the top of the TOC view, empty string indicates the top of the Index viewparentWindow
- window to parent an incarnation of the HelpBroker
-
clearAccruedHelpSets
public static void clearAccruedHelpSets()Clean up cached HelpSet data. Used byPluginStoreTableModel
when adding a new plugin that provides help. -
checkForUpdates
public void checkForUpdates(boolean interactive) Check whether a newer release of YAAC is available, displaying status.- Specified by:
checkForUpdates
in interfaceGuiIfc
- Parameters:
interactive
- boolean true if no-upgrade-needed status should be reported (out-of-date status is always reported)
-
showPluginStore
public void showPluginStore()Display a dialog for selecting new officially supported plugins to install.- Specified by:
showPluginStore
in interfaceGuiIfc
-
clearAllSpecificTrackStripes
public void clearAllSpecificTrackStripes()Clear the plotting of all specific station/object track stripes.- Specified by:
clearAllSpecificTrackStripes
in interfaceGuiIfc
-
addSpecificTrackStripe
Add the identifier of a single station or object whose track stripe is to be plotted.- Specified by:
addSpecificTrackStripe
in interfaceGuiIfc
- Parameters:
identifier
- String station or object identifier
-
removeSpecificTrackStripe
Remove the identifier of a single station or object whose track stripe is no longer to be plotted.- Specified by:
removeSpecificTrackStripe
in interfaceGuiIfc
- Parameters:
identifier
- String station or object identifier- Returns:
- boolean true if identifier was removed
-
isSpecificallyTracked
Test if a given identifier is on the tracking list.- Specified by:
isSpecificallyTracked
in interfaceGuiIfc
- Parameters:
identifier
- String station or object identifier- Returns:
- boolean true if this identifier is marked for track stripe display
-
isSpecificallyTracking
public boolean isSpecificallyTracking()Test if any identifiers are on the tracking list.- Specified by:
isSpecificallyTracking
in interfaceGuiIfc
- Returns:
- boolean true if any stations are specifically tagged for tracking
-
isMousePressed
public static boolean isMousePressed()Check current state of mouse. This is to handle cases where a mouse drag is started prematurely because the mouse press invoked the removal of a popup menu over the containing window before the mouse release was reported.- Returns:
- boolean true if last state of mouse was pressed
-
acceptInbound
Decide whether to accept the specified inbound AX.25 connected-mode session request. Note that the state is not fully connected at the point of this call (so the called code can choose to reject it), so the called code should register aConnectionEstablishmentListener
on the ConnState to be informed when the connection is fully established if the called code chooses to accept the connection request. Note this code is called from the background AX25Stack thread, so should respond quickly and not invoke any GUI functions directly.- Specified by:
acceptInbound
in interfaceConnectionRequestListener
- Parameters:
state
- ConnState object describing the session being builtoriginator
- AX25Callsign of the originating stationport
- Connector through which the request was received- Returns:
- boolean true if request should be accepted, false if not
- See Also:
-
getSpeechCustomGrammarForCurrentView
Ask the current window whether it has any overriding grammar for speech command. If it does, an object that will generate a map of speakable command strings (with certain macros) to the corresponding handlers should be returned. If the window does not have any overrides, the speech command plugin will continue to use the default grammar.For example, one command string for the message sender dialog could be:
to <callsign> via <alias>
- Specified by:
getSpeechCustomGrammarForCurrentView
in interfaceGuiIfc
- Returns:
- SpeechMapGeneratorIfc implementation, or null if no customization
-