From 82a715596659dc9a46f2d33a7ae3ed51ebe86a51 Mon Sep 17 00:00:00 2001 From: denny Date: Sun, 29 Nov 2015 07:14:21 -0500 Subject: [PATCH] Adjusted color gradient used in spectral display and some code cleanup. --- .../ConfigurationControllerModel.java | 3 ++ .../demodulate/fm/FMDemodulatorModule.java | 5 ++- src/spectrum/ChannelSpectrumPanel.java | 33 ------------------- src/spectrum/OverlayPanel.java | 12 +++++-- src/spectrum/SpectrumPanel.java | 2 +- 5 files changed, 17 insertions(+), 38 deletions(-) diff --git a/src/controller/ConfigurationControllerModel.java b/src/controller/ConfigurationControllerModel.java index 8b20b272..9ace2ec2 100644 --- a/src/controller/ConfigurationControllerModel.java +++ b/src/controller/ConfigurationControllerModel.java @@ -39,6 +39,8 @@ import source.tuner.TunerGroupNode; import source.tuner.TunerNode; import source.tuner.TunerSelectionListener; import controller.channel.Channel; +import controller.channel.ChannelEvent; +import controller.channel.ChannelEvent.Event; import controller.channel.ChannelNode; import controller.site.Site; import controller.system.System; @@ -183,6 +185,7 @@ public class ConfigurationControllerModel extends DefaultTreeModel SourceConfigTuner sourceConfig = new SourceConfigTuner(); sourceConfig.setFrequency( frequency ); channel.setSourceConfiguration( sourceConfig ); + mResourceManager.getChannelManager().channelChanged( new ChannelEvent( channel, Event.CHANNEL_ADDED ) ); channel.setEnabled( true, true ); site.addChannel( channel ); diff --git a/src/module/demodulate/fm/FMDemodulatorModule.java b/src/module/demodulate/fm/FMDemodulatorModule.java index 871e2d0c..2d2afe16 100644 --- a/src/module/demodulate/fm/FMDemodulatorModule.java +++ b/src/module/demodulate/fm/FMDemodulatorModule.java @@ -133,7 +133,10 @@ public class FMDemodulatorModule extends Module implements IComplexBufferListene mDemodulator.dispose(); mDemodulator = null; - mDCRemovalFilter.dispose(); + if( mDCRemovalFilter != null ) + { + mDCRemovalFilter.dispose(); + } mDCRemovalFilter = null; if( mAutomaticFrequencyControl != null ) diff --git a/src/spectrum/ChannelSpectrumPanel.java b/src/spectrum/ChannelSpectrumPanel.java index a3bd460a..40bd0d99 100644 --- a/src/spectrum/ChannelSpectrumPanel.java +++ b/src/spectrum/ChannelSpectrumPanel.java @@ -492,37 +492,4 @@ public class ChannelSpectrumPanel extends JPanel { mSpectrumPanel.setSmoothingType( type ); } - - public class SampleAssembler implements RealSampleListener - { - private Listener mListener; - - public SampleAssembler( Listener listener ) - { - mListener = listener; - } - - @Override - public void receive( float sample ) - { - mSamples[ mSamplePointer++ ] = sample; - - if( mSamplePointer >= mSamples.length ) - { - if( mEnabled.get() ) - { - float[] copy = Arrays.copyOf( mSamples, mSamples.length ); - - mListener.receive( new ComplexBuffer( copy ) ); - } - - mSamplePointer = 0; - - if( mSamples.length != mSampleBufferSize ) - { - mSamples = new float[ mSampleBufferSize ]; - } - } - } - } } diff --git a/src/spectrum/OverlayPanel.java b/src/spectrum/OverlayPanel.java index d70b22d8..1b10bf59 100644 --- a/src/spectrum/OverlayPanel.java +++ b/src/spectrum/OverlayPanel.java @@ -75,7 +75,7 @@ public class OverlayPanel extends JPanel } private final static BasicStroke DASHED_STROKE = new BasicStroke(0.8f, - BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 5.0f, new float[] {5.0f}, 0.0f); + BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 5.0f, new float[] {2.0f, 4.0f}, 0.0f); private static DecimalFormat CURSOR_FORMAT = new DecimalFormat( "000.00000" ); private long mFrequency = 0; @@ -342,7 +342,7 @@ public class OverlayPanel extends JPanel { Stroke currentStroke = graphics.getStroke(); - graphics.setStroke( DASHED_STROKE ); +// graphics.setStroke( DASHED_STROKE ); long minFrequency = getMinDisplayFrequency(); long maxFrequency = getMaxDisplayFrequency(); @@ -352,6 +352,12 @@ public class OverlayPanel extends JPanel int major = mLabelSizeMonitor.getMajorTickIncrement( graphics ); int minor = mLabelSizeMonitor.getMinorTickIncrement( graphics ); + //Avoid divide by zero error + if( minor == 0 ) + { + minor = 1; + } + //Adjust the start frequency to a multiple of the minor tick spacing long frequency = minFrequency - ( minFrequency % minor ); @@ -373,7 +379,7 @@ public class OverlayPanel extends JPanel frequency += minor; } - graphics.setStroke( currentStroke ); +// graphics.setStroke( currentStroke ); } /** diff --git a/src/spectrum/SpectrumPanel.java b/src/spectrum/SpectrumPanel.java index a272e3b1..d2295cbe 100644 --- a/src/spectrum/SpectrumPanel.java +++ b/src/spectrum/SpectrumPanel.java @@ -189,7 +189,7 @@ public class SpectrumPanel extends JPanel //Define the gradient GradientPaint gradient = new GradientPaint( 0, - getSize().height / 4, + ( getSize().height - mSpectrumInset ) / 2, mColorSpectrumGradientTop, 0, getSize().height,