@@ -51,6 +51,8 @@ public class ModSampleDialog extends JDialog
51
51
{
52
52
private static final long serialVersionUID = -9058637708283713743L ;
53
53
54
+ private static String [] AUTOVIBRATO_TYPES = new String [] { "Sine" , "Square" , "Ramp Up" , "Ramp Down" , "Random" };
55
+
54
56
private JLabel labelSelectSample = null ;
55
57
private JSpinner selectSample = null ;
56
58
private JTextField sampleType = null ;
@@ -821,31 +823,63 @@ private SampleImagePanel getImageBufferPanel()
821
823
}
822
824
return imageBufferPanel ;
823
825
}
824
- private static String [] AUTOVIBRATO_TYPES = new String [] { "Sine" , "Square" , "Ramp Up" , "Ramp Down" , "Random" };
826
+ private void clearSample ()
827
+ {
828
+ getSampleType ().setText (Helpers .EMPTY_STING );
829
+ getSampleName ().setText (Helpers .EMPTY_STING );
830
+ getDosFileName ().setText (Helpers .EMPTY_STING );
831
+ getDefaultVolume ().setText (Helpers .EMPTY_STING );
832
+ getGlobalVolume ().setText (Helpers .EMPTY_STING );
833
+ getSetPan ().setFixedState (false );
834
+ getSetPanValue ().setText (Helpers .EMPTY_STING );
835
+ getFineTuneValue ().setText (Helpers .EMPTY_STING );
836
+ getBaseFreqValue ().setText (Helpers .EMPTY_STING );
837
+ getTransposeValue ().setText (Helpers .EMPTY_STING );
838
+ getLoopTypeValue ().setText (Helpers .EMPTY_STING );
839
+ getLoopStartValue ().setText (Helpers .EMPTY_STING );
840
+ getLoopEndValue ().setText (Helpers .EMPTY_STING );
841
+ getSustainLoopTypeValue ().setText (Helpers .EMPTY_STING );
842
+ getSustainLoopStartValue ().setText (Helpers .EMPTY_STING );
843
+ getSustainLoopEndValue ().setText (Helpers .EMPTY_STING );
844
+ getAutoVibTypeValue ().setText (Helpers .EMPTY_STING );
845
+ getAutoVibDepthValue ().setText (Helpers .EMPTY_STING );
846
+ getAutoVibSweepValue ().setText (Helpers .EMPTY_STING );
847
+ getAutoVibRateValue ().setText (Helpers .EMPTY_STING );
848
+ // can handle NULL-Sample:
849
+ getImageBufferPanel ().setSample (null );
850
+ getImageBufferPanel ().drawMe ();
851
+ }
825
852
private void fillWithSample (final Sample sample )
826
853
{
827
- getSampleType ().setText (sample .getSampleTypeString ());
828
- getSampleName ().setText (sample .name );
829
- getDosFileName ().setText (sample .dosFileName );
830
- getDefaultVolume ().setText (Integer .toString (sample .volume ));
831
- getGlobalVolume ().setText (Integer .toString (sample .globalVolume ));
832
- getSetPan ().setFixedState (sample .panning !=-1 );
833
- getSetPanValue ().setText (Integer .toString (sample .panning ));
834
- getFineTuneValue ().setText (Integer .toString (sample .fineTune ));
835
- getBaseFreqValue ().setText (Integer .toString (sample .baseFrequency ));
836
- getTransposeValue ().setText (Integer .toString (sample .transpose ));
837
- getLoopTypeValue ().setText ((sample .loopType &ModConstants .LOOP_ON )==0 ?"Off" :(sample .loopType &ModConstants .LOOP_IS_PINGPONG )==0 ?"On" :"Bidi" );
838
- getLoopStartValue ().setText (Integer .toString (sample .loopStart ));
839
- getLoopEndValue ().setText (Integer .toString (sample .loopStop ));
840
- getSustainLoopTypeValue ().setText ((sample .loopType &ModConstants .LOOP_SUSTAIN_ON )==0 ?"Off" :(sample .loopType &ModConstants .LOOP_SUSTAIN_IS_PINGPONG )==0 ?"On" :"Bidi" );
841
- getSustainLoopStartValue ().setText (Integer .toString (sample .sustainLoopStart ));
842
- getSustainLoopEndValue ().setText (Integer .toString (sample .sustainLoopStop ));
843
- getAutoVibTypeValue ().setText (AUTOVIBRATO_TYPES [sample .vibratoType ]);
844
- getAutoVibDepthValue ().setText (Integer .toString (sample .vibratoDepth ));
845
- getAutoVibSweepValue ().setText (Integer .toString (sample .vibratoSweep ));
846
- getAutoVibRateValue ().setText (Integer .toString (sample .vibratoRate ));
847
- getImageBufferPanel ().setSample (sample );
848
- getImageBufferPanel ().drawMe ();
854
+ if (sample ==null )
855
+ {
856
+ clearSample ();
857
+ }
858
+ else
859
+ {
860
+ getSampleType ().setText (sample .getSampleTypeString ());
861
+ getSampleName ().setText (sample .name );
862
+ getDosFileName ().setText (sample .dosFileName );
863
+ getDefaultVolume ().setText (Integer .toString (sample .volume ));
864
+ getGlobalVolume ().setText (Integer .toString (sample .globalVolume ));
865
+ getSetPan ().setFixedState (sample .panning !=-1 );
866
+ getSetPanValue ().setText (Integer .toString (sample .panning ));
867
+ getFineTuneValue ().setText (Integer .toString (sample .fineTune ));
868
+ getBaseFreqValue ().setText (Integer .toString (sample .baseFrequency ));
869
+ getTransposeValue ().setText (Integer .toString (sample .transpose ));
870
+ getLoopTypeValue ().setText ((sample .loopType &ModConstants .LOOP_ON )==0 ?"Off" :(sample .loopType &ModConstants .LOOP_IS_PINGPONG )==0 ?"On" :"Bidi" );
871
+ getLoopStartValue ().setText (Integer .toString (sample .loopStart ));
872
+ getLoopEndValue ().setText (Integer .toString (sample .loopStop ));
873
+ getSustainLoopTypeValue ().setText ((sample .loopType &ModConstants .LOOP_SUSTAIN_ON )==0 ?"Off" :(sample .loopType &ModConstants .LOOP_SUSTAIN_IS_PINGPONG )==0 ?"On" :"Bidi" );
874
+ getSustainLoopStartValue ().setText (Integer .toString (sample .sustainLoopStart ));
875
+ getSustainLoopEndValue ().setText (Integer .toString (sample .sustainLoopStop ));
876
+ getAutoVibTypeValue ().setText (AUTOVIBRATO_TYPES [sample .vibratoType ]);
877
+ getAutoVibDepthValue ().setText (Integer .toString (sample .vibratoDepth ));
878
+ getAutoVibSweepValue ().setText (Integer .toString (sample .vibratoSweep ));
879
+ getAutoVibRateValue ().setText (Integer .toString (sample .vibratoRate ));
880
+ getImageBufferPanel ().setSample (sample );
881
+ getImageBufferPanel ().drawMe ();
882
+ }
849
883
}
850
884
public void fillWithSamples (final Sample [] samples )
851
885
{
@@ -855,7 +889,9 @@ public void fillWithSamples(final Sample [] samples)
855
889
ArrayList <Integer > list = new ArrayList <Integer >(samples .length );
856
890
for (int i =0 ; i <samples .length ; i ++) list .add (Integer .valueOf (i +1 ));
857
891
getSelectSample ().setModel (new SpinnerListModel (list ));
858
- if ( samples [ 0 ]!= null ) fillWithSample (samples [0 ]);
892
+ fillWithSample (samples [0 ]);
859
893
}
894
+ else
895
+ clearSample ();
860
896
}
861
897
}
0 commit comments