1 |
/* |
/* |
2 |
* JSampler - a java front-end for LinuxSampler |
* JSampler - a java front-end for LinuxSampler |
3 |
* |
* |
4 |
* Copyright (C) 2005-2008 Grigor Iliev <grigor@grigoriliev.com> |
* Copyright (C) 2005-2009 Grigor Iliev <grigor@grigoriliev.com> |
5 |
* |
* |
6 |
* This file is part of JSampler. |
* This file is part of JSampler. |
7 |
* |
* |
22 |
|
|
23 |
package org.jsampler.task; |
package org.jsampler.task; |
24 |
|
|
|
import java.util.logging.Level; |
|
|
|
|
25 |
import net.sf.juife.Task; |
import net.sf.juife.Task; |
26 |
|
|
27 |
import org.jsampler.CC; |
import org.jsampler.CC; |
|
import org.jsampler.HF; |
|
28 |
import org.jsampler.JSPrefs; |
import org.jsampler.JSPrefs; |
29 |
import org.jsampler.SamplerChannelModel; |
import org.jsampler.SamplerChannelModel; |
30 |
import org.jsampler.SamplerModel; |
import org.jsampler.SamplerModel; |
58 |
} |
} |
59 |
|
|
60 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
61 |
|
@Override |
62 |
public void |
public void |
63 |
run() { |
exec() throws Exception { |
64 |
try { |
setResult(CC.getClient().addSamplerChannel()); |
65 |
setResult(CC.getClient().addSamplerChannel()); |
int chnId = getResult(); |
66 |
int chnId = getResult(); |
|
67 |
|
JSPrefs p = CC.getViewConfig().preferences(); |
68 |
JSPrefs p = CC.getViewConfig().preferences(); |
if(!p.getBoolProperty(USE_CHANNEL_DEFAULTS)) return; |
69 |
if(!p.getBoolProperty(USE_CHANNEL_DEFAULTS)) return; |
|
70 |
|
String s = p.getStringProperty(DEFAULT_ENGINE); |
71 |
String s = p.getStringProperty(DEFAULT_ENGINE); |
if(s != null && s.length() > 0) { |
72 |
if(s != null && s.length() > 0) { |
CC.getClient().loadSamplerEngine(s, chnId); |
|
CC.getClient().loadSamplerEngine(s, chnId); |
|
|
} |
|
|
|
|
|
s = p.getStringProperty(DEFAULT_MIDI_INPUT); |
|
|
if(s != null && s.equals("firstDevice")) { |
|
|
assignFirstMidiDevice(); |
|
|
} else if(s != null && s.equals("firstDeviceNextChannel")) { |
|
|
assignFirstMidiDeviceNextChannel(); |
|
|
} |
|
|
|
|
|
s = p.getStringProperty(DEFAULT_AUDIO_OUTPUT); |
|
|
if(s != null && s.equals("firstDevice")) { |
|
|
assignFirstAudioDevice(); |
|
|
} |
|
|
|
|
|
s = p.getStringProperty(DEFAULT_MIDI_INSTRUMENT_MAP); |
|
|
if(s != null && s.equals("midiInstrumentMap.none")) { |
|
|
CC.getClient().setChannelMidiInstrumentMap(chnId, -1); |
|
|
} else if(s != null && s.equals("midiInstrumentMap.default")) { |
|
|
CC.getClient().setChannelMidiInstrumentMap(chnId, -2); |
|
|
} |
|
|
|
|
|
float volume = p.getIntProperty(DEFAULT_CHANNEL_VOLUME); |
|
|
volume /= 100; |
|
|
CC.getClient().setChannelVolume(chnId, volume); |
|
|
} catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
73 |
} |
} |
74 |
|
|
75 |
|
s = p.getStringProperty(DEFAULT_MIDI_INPUT); |
76 |
|
if(s != null && s.equals("firstDevice")) { |
77 |
|
assignFirstMidiDevice(); |
78 |
|
} else if(s != null && s.equals("firstDeviceNextChannel")) { |
79 |
|
assignFirstMidiDeviceNextChannel(); |
80 |
|
} |
81 |
|
|
82 |
|
s = p.getStringProperty(DEFAULT_AUDIO_OUTPUT); |
83 |
|
if(s != null && s.equals("firstDevice")) { |
84 |
|
assignFirstAudioDevice(); |
85 |
|
} |
86 |
|
|
87 |
|
s = p.getStringProperty(DEFAULT_MIDI_INSTRUMENT_MAP); |
88 |
|
if(s != null && s.equals("midiInstrumentMap.none")) { |
89 |
|
CC.getClient().setChannelMidiInstrumentMap(chnId, -1); |
90 |
|
} else if(s != null && s.equals("midiInstrumentMap.default")) { |
91 |
|
CC.getClient().setChannelMidiInstrumentMap(chnId, -2); |
92 |
|
} |
93 |
|
|
94 |
|
float volume = p.getIntProperty(DEFAULT_CHANNEL_VOLUME); |
95 |
|
volume /= 100; |
96 |
|
CC.getClient().setChannelVolume(chnId, volume); |
97 |
} |
} |
98 |
|
|
99 |
private void |
private void |
179 |
} |
} |
180 |
|
|
181 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
182 |
|
@Override |
183 |
public void |
public void |
184 |
run() { |
exec() throws Exception { CC.getClient().removeSamplerChannel(channel); } |
|
try { CC.getClient().removeSamplerChannel(channel); } |
|
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
|
} |
|
185 |
} |
} |
186 |
|
|
187 |
/** |
/** |
203 |
} |
} |
204 |
|
|
205 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
206 |
|
@Override |
207 |
public void |
public void |
208 |
run() { |
exec() throws Exception { CC.getClient().resetChannel(channel); } |
|
try { CC.getClient().resetChannel(channel); } |
|
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
|
} |
|
209 |
} |
} |
210 |
|
|
211 |
/** |
/** |
236 |
} |
} |
237 |
|
|
238 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
239 |
|
@Override |
240 |
public void |
public void |
241 |
run() { |
exec() throws Exception { |
242 |
try { CC.getClient().setChannelAudioOutputChannel(chn, audioOut, audioIn); } |
CC.getClient().setChannelAudioOutputChannel(chn, audioOut, audioIn); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
243 |
} |
} |
244 |
} |
} |
245 |
|
|
266 |
} |
} |
267 |
|
|
268 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
269 |
|
@Override |
270 |
public void |
public void |
271 |
run() { |
exec() throws Exception { |
272 |
try { CC.getClient().setChannelAudioOutputDevice(channel, deviceID); } |
CC.getClient().setChannelAudioOutputDevice(channel, deviceID); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
273 |
} |
} |
274 |
} |
} |
275 |
|
|
297 |
} |
} |
298 |
|
|
299 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
300 |
|
@Override |
301 |
public void |
public void |
302 |
run() { |
exec() throws Exception { |
303 |
try { CC.getClient().setChannelMidiInputChannel(channel, midiChannel); } |
CC.getClient().setChannelMidiInputChannel(channel, midiChannel); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
304 |
} |
} |
305 |
} |
} |
306 |
|
|
327 |
} |
} |
328 |
|
|
329 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
330 |
|
@Override |
331 |
public void |
public void |
332 |
run() { |
exec() throws Exception { |
333 |
try { CC.getClient().setChannelMidiInputDevice(channel, deviceID); } |
CC.getClient().setChannelMidiInputDevice(channel, deviceID); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
334 |
} |
} |
335 |
} |
} |
336 |
|
|
357 |
} |
} |
358 |
|
|
359 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
360 |
|
@Override |
361 |
public void |
public void |
362 |
run() { |
exec() throws Exception { |
363 |
try { CC.getClient().setChannelMidiInputPort(channel, port); } |
CC.getClient().setChannelMidiInputPort(channel, port); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
364 |
} |
} |
365 |
} |
} |
366 |
|
|
367 |
/** |
/** |
368 |
* This task loads a sampler engine in a specific sampler channel. |
* This task loads a sampler engine in a specific sampler channel. |
|
* @author Grigor Iliev |
|
369 |
*/ |
*/ |
370 |
public static class LoadEngine extends EnhancedTask { |
public static class LoadEngine extends EnhancedTask { |
371 |
private String engine; |
private String engine; |
389 |
} |
} |
390 |
|
|
391 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
392 |
|
@Override |
393 |
public void |
public void |
394 |
run() { |
exec() throws Exception { CC.getClient().loadSamplerEngine(engine, channel); } |
|
try { CC.getClient().loadSamplerEngine(engine, channel); } |
|
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
|
} |
|
395 |
} |
} |
396 |
|
|
397 |
/** |
/** |
398 |
* This task loads and assigns an instrument to a sampler channel. |
* This task loads and assigns an instrument to a sampler channel. |
|
* @author Grigor Iliev |
|
399 |
*/ |
*/ |
400 |
public static class LoadInstrument extends EnhancedTask { |
public static class LoadInstrument extends EnhancedTask { |
401 |
private String filename; |
private String filename; |
421 |
} |
} |
422 |
|
|
423 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
424 |
|
@Override |
425 |
public void |
public void |
426 |
run() { |
exec() throws Exception { |
427 |
try { CC.getClient().loadInstrument(filename, instrIndex, channel, true); } |
CC.getClient().loadInstrument(filename, instrIndex, channel, true); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
428 |
} |
} |
429 |
} |
} |
430 |
|
|
453 |
} |
} |
454 |
|
|
455 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
456 |
|
@Override |
457 |
public void |
public void |
458 |
run() { |
exec() throws Exception { |
459 |
try { CC.getClient().setChannelMidiInstrumentMap(channel, mapId); } |
CC.getClient().setChannelMidiInstrumentMap(channel, mapId); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
460 |
} |
} |
461 |
} |
} |
462 |
|
|
483 |
} |
} |
484 |
|
|
485 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
486 |
|
@Override |
487 |
public void |
public void |
488 |
run() { |
exec() throws Exception { CC.getClient().setChannelMute(channel, mute); } |
|
try { CC.getClient().setChannelMute(channel, mute); } |
|
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
|
} |
|
489 |
} |
} |
490 |
|
|
491 |
/** |
/** |
511 |
} |
} |
512 |
|
|
513 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
514 |
|
@Override |
515 |
public void |
public void |
516 |
run() { |
exec() throws Exception { CC.getClient().setChannelSolo(channel, solo); } |
|
try { CC.getClient().setChannelSolo(channel, solo); } |
|
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
|
} |
|
517 |
} |
} |
518 |
|
|
519 |
/** |
/** |
538 |
} |
} |
539 |
|
|
540 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
541 |
|
@Override |
542 |
public void |
public void |
543 |
run() { |
exec() throws Exception { |
544 |
/* |
/* |
545 |
* Because of the rapid flow of volume change tasks in some cases |
* Because of the rapid flow of volume change tasks in some cases |
546 |
* we need to do some optimization to decrease the traffic. |
* we need to do some optimization to decrease the traffic. |
559 |
} |
} |
560 |
} |
} |
561 |
|
|
562 |
try { CC.getClient().setChannelVolume(channel, volume); } |
CC.getClient().setChannelVolume(channel, volume); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
563 |
} |
} |
564 |
|
|
565 |
/** |
/** |
589 |
} |
} |
590 |
|
|
591 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
592 |
|
@Override |
593 |
public void |
public void |
594 |
run() { |
exec() throws Exception { |
595 |
try { |
/* |
596 |
SamplerModel sm = CC.getSamplerModel(); |
* We don't want to bother the user if error occurs when updating |
597 |
sm.updateChannel(CC.getClient().getSamplerChannelInfo(channel)); |
* a channel because in most cases this happens due to a race |
598 |
} catch(Exception x) { |
* condition between delete/update events. So we just log this |
599 |
/* |
* error instead to indicate the failure of this task. |
600 |
* We don't want to bother the user if error occurs when updating |
*/ |
601 |
* a channel because in most cases this happens due to a race |
setSilent(true); |
602 |
* condition between delete/update events. So we just log this |
SamplerModel sm = CC.getSamplerModel(); |
603 |
* error instead to indicate the failure of this task. |
sm.updateChannel(CC.getClient().getSamplerChannelInfo(channel)); |
|
*/ |
|
|
String msg = getDescription() + ": " + HF.getErrorMessage(x); |
|
|
CC.getLogger().log(Level.INFO, msg, x); |
|
|
} |
|
604 |
} |
} |
605 |
|
|
606 |
/** |
/** |
648 |
} |
} |
649 |
|
|
650 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
651 |
|
@Override |
652 |
public void |
public void |
653 |
run() { |
exec() throws Exception { |
654 |
try { setResult(CC.getClient().createFxSend(channel, midiCtrl, name)); } |
setResult(CC.getClient().createFxSend(channel, midiCtrl, name)); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
x.printStackTrace(); |
|
|
} |
|
655 |
} |
} |
656 |
} |
} |
657 |
|
|
677 |
} |
} |
678 |
|
|
679 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
680 |
|
@Override |
681 |
public void |
public void |
682 |
run() { |
exec() throws Exception { CC.getClient().destroyFxSend(channel, fxSend); } |
|
try { CC.getClient().destroyFxSend(channel, fxSend); } |
|
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
|
} |
|
683 |
} |
} |
684 |
|
|
685 |
/** |
/** |
706 |
} |
} |
707 |
|
|
708 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
709 |
|
@Override |
710 |
public void |
public void |
711 |
run() { |
exec() throws Exception { setResult(CC.getClient().getFxSends(channel)); } |
|
try { |
|
|
setResult(CC.getClient().getFxSends(channel)); |
|
|
} catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
|
} |
|
712 |
|
|
713 |
/** |
/** |
714 |
* Gets the channel ID. |
* Gets the channel ID. |
746 |
} |
} |
747 |
|
|
748 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
749 |
|
@Override |
750 |
public void |
public void |
751 |
run() { |
exec() throws Exception { |
752 |
try { |
SamplerChannelModel scm; |
753 |
SamplerChannelModel scm; |
scm = CC.getSamplerModel().getChannelById(channel); |
754 |
scm = CC.getSamplerModel().getChannelById(channel); |
Integer[] fxSendIDs = CC.getClient().getFxSendIDs(channel); |
755 |
Integer[] fxSendIDs = CC.getClient().getFxSendIDs(channel); |
|
756 |
|
boolean found = false; |
757 |
boolean found = false; |
|
758 |
|
for(FxSend fxs : scm.getFxSends()) { |
759 |
for(FxSend fxs : scm.getFxSends()) { |
for(int i = 0; i < fxSendIDs.length; i++) { |
760 |
for(int i = 0; i < fxSendIDs.length; i++) { |
if(fxSendIDs[i] == fxs.getFxSendId()) { |
761 |
if(fxSendIDs[i] == fxs.getFxSendId()) { |
fxSendIDs[i] = -1; |
762 |
fxSendIDs[i] = -1; |
found = true; |
|
found = true; |
|
|
} |
|
763 |
} |
} |
|
|
|
|
if(!found) scm.removeFxSendById(fxs.getFxSendId()); |
|
|
found = false; |
|
764 |
} |
} |
765 |
|
|
766 |
FxSend fxs; |
if(!found) scm.removeFxSendById(fxs.getFxSendId()); |
767 |
|
found = false; |
768 |
for(int id : fxSendIDs) { |
} |
769 |
if(id >= 0) { |
|
770 |
fxs = CC.getClient().getFxSendInfo(channel, id); |
FxSend fxs; |
771 |
scm.addFxSend(fxs); |
|
772 |
} |
for(int id : fxSendIDs) { |
773 |
|
if(id >= 0) { |
774 |
|
fxs = CC.getClient().getFxSendInfo(channel, id); |
775 |
|
scm.addFxSend(fxs); |
776 |
} |
} |
|
} catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
777 |
} |
} |
778 |
} |
} |
779 |
} |
} |
803 |
} |
} |
804 |
|
|
805 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
806 |
|
@Override |
807 |
public void |
public void |
808 |
run() { |
exec() throws Exception { |
809 |
try { |
/* |
810 |
SamplerChannelModel scm; |
* We don't want to bother the user if error occurs when updating |
811 |
scm = CC.getSamplerModel().getChannelById(channel); |
* an effect send because in most cases this happens due to a race |
812 |
scm.updateFxSend(CC.getClient().getFxSendInfo(channel, fxSend)); |
* condition between delete/update events. So we just log this |
813 |
} catch(Exception x) { |
* error instead to indicate the failure of this task. |
814 |
/* |
*/ |
815 |
* We don't want to bother the user if error occurs when updating |
setSilent(true); |
816 |
* an effect send because in most cases this happens due to a race |
SamplerChannelModel scm; |
817 |
* condition between delete/update events. So we just log this |
scm = CC.getSamplerModel().getChannelById(channel); |
818 |
* error instead to indicate the failure of this task. |
scm.updateFxSend(CC.getClient().getFxSendInfo(channel, fxSend)); |
|
*/ |
|
|
String msg = getDescription() + ": " + HF.getErrorMessage(x); |
|
|
CC.getLogger().log(Level.INFO, msg, x); |
|
|
} |
|
819 |
} |
} |
820 |
} |
} |
821 |
|
|
846 |
} |
} |
847 |
|
|
848 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
849 |
|
@Override |
850 |
public void |
public void |
851 |
run() { |
exec() throws Exception { CC.getClient().setFxSendName(channel, fxSend, name); } |
|
try { CC.getClient().setFxSendName(channel, fxSend, name); } |
|
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
|
} |
|
852 |
} |
} |
853 |
|
|
854 |
/** |
/** |
882 |
} |
} |
883 |
|
|
884 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
885 |
|
@Override |
886 |
public void |
public void |
887 |
run() { |
exec() throws Exception { |
888 |
try { |
CC.getClient().setFxSendAudioOutputChannel ( |
889 |
CC.getClient().setFxSendAudioOutputChannel ( |
channel, fxSend, audioSrc, audioDst |
890 |
channel, fxSend, audioSrc, audioDst |
); |
|
); |
|
|
} |
|
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
891 |
} |
} |
892 |
} |
} |
893 |
|
|
918 |
} |
} |
919 |
|
|
920 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
921 |
|
@Override |
922 |
public void |
public void |
923 |
run() { |
exec() throws Exception { |
924 |
try { CC.getClient().setFxSendLevel(channel, fxSend, volume); } |
CC.getClient().setFxSendLevel(channel, fxSend, volume); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
925 |
} |
} |
926 |
} |
} |
927 |
|
|
953 |
} |
} |
954 |
|
|
955 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
956 |
|
@Override |
957 |
public void |
public void |
958 |
run() { |
exec() throws Exception { |
959 |
try { CC.getClient().setFxSendMidiController(channel, fxSend, midiCtrl); } |
CC.getClient().setFxSendMidiController(channel, fxSend, midiCtrl); |
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
960 |
} |
} |
961 |
} |
} |
962 |
|
|
981 |
} |
} |
982 |
|
|
983 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
984 |
|
@Override |
985 |
public void |
public void |
986 |
run() { |
exec() throws Exception { CC.getClient().editChannelInstrument(chn); } |
|
try { CC.getClient().editChannelInstrument(chn); } |
|
|
catch(Exception x) { |
|
|
setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x)); |
|
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
|
} |
|
987 |
} |
} |
988 |
|
|
989 |
/** |
/** |
1010 |
setTitle("Channel.SendMidiMsg_task"); |
setTitle("Channel.SendMidiMsg_task"); |
1011 |
String s = i18n.getMessage("Channel.SendMidiMsg.desc", channel); |
String s = i18n.getMessage("Channel.SendMidiMsg.desc", channel); |
1012 |
setDescription(s); |
setDescription(s); |
|
|
|
|
|
|
1013 |
} |
} |
1014 |
|
|
1015 |
/** The entry point of the task. */ |
/** The entry point of the task. */ |
1016 |
|
@Override |
1017 |
public void |
public void |
1018 |
run() { |
exec() throws Exception { |
1019 |
try { CC.getClient().sendChannelMidiData(chn, type, arg1, arg2); } |
setSilent(true); |
1020 |
catch(Exception x) { |
CC.getClient().sendChannelMidiData(chn, type, arg1, arg2); |
|
CC.getLogger().log(Level.FINE, getErrorMessage(), x); |
|
|
} |
|
1021 |
} |
} |
1022 |
} |
} |
|
|
|
1023 |
} |
} |