From 2394d51a51537aa7405fc61951d212fa8b4a8b24 Mon Sep 17 00:00:00 2001 From: Denny Sheirer Date: Sun, 17 Feb 2019 05:49:26 -0500 Subject: [PATCH] Resolves #537 (#539) Updates application title bar with currently displayed tuner. --- .../java/io/github/dsheirer/gui/SDRTrunk.java | 36 +++++++++-------- .../dsheirer/spectrum/ShowTunerMenuItem.java | 40 +++++++++++-------- .../spectrum/SpectralDisplayPanel.java | 32 ++++++++------- 3 files changed, 60 insertions(+), 48 deletions(-) diff --git a/src/main/java/io/github/dsheirer/gui/SDRTrunk.java b/src/main/java/io/github/dsheirer/gui/SDRTrunk.java index fcf63d8f..7bd769e5 100644 --- a/src/main/java/io/github/dsheirer/gui/SDRTrunk.java +++ b/src/main/java/io/github/dsheirer/gui/SDRTrunk.java @@ -1,21 +1,23 @@ /* - * ****************************************************************************** - * sdrtrunk - * Copyright (C) 2014-2019 Dennis Sheirer * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * * ****************************************************************************** + * * Copyright (C) 2014-2019 Dennis Sheirer + * * + * * This program is free software: you can redistribute it and/or modify + * * it under the terms of the GNU General Public License as published by + * * the Free Software Foundation, either version 3 of the License, or + * * (at your option) any later version. + * * + * * This program is distributed in the hope that it will be useful, + * * but WITHOUT ANY WARRANTY; without even the implied warranty of + * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * * GNU General Public License for more details. + * * + * * You should have received a copy of the GNU General Public License + * * along with this program. If not, see + * * ***************************************************************************** * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see - * ***************************************************************************** */ package io.github.dsheirer.gui; @@ -395,9 +397,9 @@ public class SDRTrunk implements Listener viewMenu.add(new BroadcastStatusVisibleMenuItem(mControllerPanel)); viewMenu.add(new JSeparator()); - for(Tuner tuner: mSourceManager.getTunerModel().getTuners()) + for(Tuner tuner : mSourceManager.getTunerModel().getTuners()) { - viewMenu.add(new ShowTunerMenuItem(mSpectralPanel, tuner)); + viewMenu.add(new ShowTunerMenuItem(mSourceManager.getTunerModel(), tuner)); } viewMenu.add(new JSeparator()); @@ -406,7 +408,7 @@ public class SDRTrunk implements Listener viewMenu.add(new JSeparator()); JMenuItem preferencesItem = new JMenuItem("Preferences"); preferencesItem.addActionListener(e -> MyEventBus.getEventBus() - .post(new PreferenceEditorViewRequest(PreferenceEditorType.CHANNEL_EVENT))); + .post(new PreferenceEditorViewRequest(PreferenceEditorType.CHANNEL_EVENT))); viewMenu.add(preferencesItem); menuBar.add(viewMenu); diff --git a/src/main/java/io/github/dsheirer/spectrum/ShowTunerMenuItem.java b/src/main/java/io/github/dsheirer/spectrum/ShowTunerMenuItem.java index 660dccaf..4e23e4b7 100644 --- a/src/main/java/io/github/dsheirer/spectrum/ShowTunerMenuItem.java +++ b/src/main/java/io/github/dsheirer/spectrum/ShowTunerMenuItem.java @@ -1,22 +1,30 @@ -/******************************************************************************* - * sdr-trunk - * Copyright (C) 2014-2018 Dennis Sheirer +/* * - * This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public - * License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any - * later version. + * * ****************************************************************************** + * * Copyright (C) 2014-2019 Dennis Sheirer + * * + * * This program is free software: you can redistribute it and/or modify + * * it under the terms of the GNU General Public License as published by + * * the Free Software Foundation, either version 3 of the License, or + * * (at your option) any later version. + * * + * * This program is distributed in the hope that it will be useful, + * * but WITHOUT ANY WARRANTY; without even the implied warranty of + * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * * GNU General Public License for more details. + * * + * * You should have received a copy of the GNU General Public License + * * along with this program. If not, see + * * ***************************************************************************** * - * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with this program. - * If not, see - * - ******************************************************************************/ + */ package io.github.dsheirer.spectrum; import io.github.dsheirer.properties.SystemProperties; import io.github.dsheirer.source.tuner.Tuner; +import io.github.dsheirer.source.tuner.TunerEvent; +import io.github.dsheirer.source.tuner.TunerModel; import javax.swing.JMenuItem; import java.awt.EventQueue; @@ -25,13 +33,13 @@ import java.awt.event.ActionListener; public class ShowTunerMenuItem extends JMenuItem { - private SpectralDisplayPanel mSpectralDisplayPanel; + private TunerModel mTunerModel; private Tuner mTuner; - public ShowTunerMenuItem(SpectralDisplayPanel spectralDisplayPanel, Tuner tuner) + public ShowTunerMenuItem(TunerModel tunerModel, Tuner tuner) { super(tuner != null ? "Show: " + tuner.getName() : "(empty)"); - mSpectralDisplayPanel = spectralDisplayPanel; + mTunerModel = tunerModel; mTuner = tuner; addActionListener(new ActionListener() @@ -44,7 +52,7 @@ public class ShowTunerMenuItem extends JMenuItem @Override public void run() { - mSpectralDisplayPanel.showTuner(mTuner); + mTunerModel.broadcast(new TunerEvent(mTuner, TunerEvent.Event.REQUEST_MAIN_SPECTRAL_DISPLAY)); SystemProperties properties = SystemProperties.getInstance(); properties.set(SpectralDisplayPanel.SPECTRAL_DISPLAY_ENABLED, true); } diff --git a/src/main/java/io/github/dsheirer/spectrum/SpectralDisplayPanel.java b/src/main/java/io/github/dsheirer/spectrum/SpectralDisplayPanel.java index a2973638..35a9a507 100644 --- a/src/main/java/io/github/dsheirer/spectrum/SpectralDisplayPanel.java +++ b/src/main/java/io/github/dsheirer/spectrum/SpectralDisplayPanel.java @@ -1,21 +1,23 @@ /* - * ****************************************************************************** - * sdrtrunk - * Copyright (C) 2014-2019 Dennis Sheirer * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. + * * ****************************************************************************** + * * Copyright (C) 2014-2019 Dennis Sheirer + * * + * * This program is free software: you can redistribute it and/or modify + * * it under the terms of the GNU General Public License as published by + * * the Free Software Foundation, either version 3 of the License, or + * * (at your option) any later version. + * * + * * This program is distributed in the hope that it will be useful, + * * but WITHOUT ANY WARRANTY; without even the implied warranty of + * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * * GNU General Public License for more details. + * * + * * You should have received a copy of the GNU General Public License + * * along with this program. If not, see + * * ***************************************************************************** * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see - * ***************************************************************************** */ package io.github.dsheirer.spectrum; @@ -806,7 +808,7 @@ public class SpectralDisplayPanel extends JPanel implements Listener