I wrote a "HexDumpEditorFrame" which is useful for checking the contents
of your sysex patches before you start working on the editor. It doesn't
allow any *editing*; it just does a hex dump to a textarea. Since it's
pretty generic, I've put it in synthdrivers.Generic. So, to get a quick
look at your patch data, you just add
protected JSLFrame editPatch(Patch p) {
return (new synthdrivers.Generic.HexDumpEditorFrame(p));
}
to your driver. Then, when you try to "Edit..." the patch, you get the
hex dump.
But here's the *really* wierd part. Whenever I use "Edit..." on one of
my patches, JSL appears to *send* the sysex out the midi interface. I've
tracked this down to the core.Actions.Worker.run() method. In that
method, is the following code:
try {
JSLFrame frm =
getSelectedFrame().editSelectedPatch();
if (frm != null) {
PatchEdit.getDesktop().add(frm);
frm.moveToDefaultLocation();
frm.setVisible(true);
when frm.setVisible(true) is run, JSL *sends* the sysex data. But
this should just display the JSLFrame, no?
This has me totally baffled.
- Joe
|