From: Christian S. <ch...@us...> - 2007-04-24 19:55:20
|
Update of /cvsroot/nmedit/nmedit/nomad/nomad-source/plugins/net.sf.nmedit.nordmodular/src/net/sf/nmedit/nordmodular In directory sc8-pr-cvs16:/tmp/cvs-serv30491/nomad-source/plugins/net.sf.nmedit.nordmodular/src/net/sf/nmedit/nordmodular Modified Files: PatchDocument.java NmFileService.java Nordmodular.java NMSynthDeviceContext.java Added Files: PatchHistoryFeature.java Log Message: Index: NMSynthDeviceContext.java =================================================================== RCS file: /cvsroot/nmedit/nmedit/nomad/nomad-source/plugins/net.sf.nmedit.nordmodular/src/net/sf/nmedit/nordmodular/NMSynthDeviceContext.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** NMSynthDeviceContext.java 28 Mar 2007 00:11:48 -0000 1.3 --- NMSynthDeviceContext.java 24 Apr 2007 19:54:39 -0000 1.4 *************** *** 235,239 **** } ! protected boolean showSettings() { NordModular synth = getSynthesizer(); --- 235,239 ---- } ! protected boolean showSettings2() { NordModular synth = getSynthesizer(); Index: NmFileService.java =================================================================== RCS file: /cvsroot/nmedit/nmedit/nomad/nomad-source/plugins/net.sf.nmedit.nordmodular/src/net/sf/nmedit/nordmodular/NmFileService.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** NmFileService.java 28 Mar 2007 00:11:48 -0000 1.3 --- NmFileService.java 24 Apr 2007 19:54:39 -0000 1.4 *************** *** 43,47 **** public FSFileFilter getFileFilter() { ! return new NmFileFilter(this); } --- 43,47 ---- public FSFileFilter getFileFilter() { ! return new FSFileFilter(this, "pch"); } *************** *** 77,81 **** if (log.isWarnEnabled()) { ! log.warn(e); } return; --- 77,81 ---- if (log.isWarnEnabled()) { ! log.warn("open failed: "+file, e); } return; *************** *** 97,122 **** return new JTNMPatch(nmc.getStorageContext(), nmc.getContext(), patch); } - - private static class NmFileFilter extends FSFileFilter - { - - public NmFileFilter(FileService service) - { - super(service); - } - - @Override - public boolean accept(File f) - { - return f.isDirectory() || f.getName().toLowerCase().endsWith(".pch"); - } - - @Override - public String getDescription() - { - return PATCH_DESCRIPTION; - } - - } public Class<? extends Service> getServiceClass() --- 97,100 ---- *************** *** 138,142 **** { NMPatch patch = new NMPatch(nmc.getModuleDescriptions()); ! PatchDocument pd = createPatchDoc(patch); Nomad.sharedInstance() --- 116,120 ---- { NMPatch patch = new NMPatch(nmc.getModuleDescriptions()); ! patch.getHistory().setEnabled(true); PatchDocument pd = createPatchDoc(patch); Nomad.sharedInstance() Index: Nordmodular.java =================================================================== RCS file: /cvsroot/nmedit/nmedit/nomad/nomad-source/plugins/net.sf.nmedit.nordmodular/src/net/sf/nmedit/nordmodular/Nordmodular.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Nordmodular.java 28 Mar 2007 00:11:48 -0000 1.2 --- Nordmodular.java 24 Apr 2007 19:54:39 -0000 1.3 *************** *** 24,30 **** --- 24,34 ---- import java.net.URL; + import org.apache.commons.logging.Log; + import org.apache.commons.logging.LogFactory; import org.xml.sax.InputSource; import net.sf.nmedit.jpatch.clavia.nordmodular.NM1ModuleDescriptions; + import net.sf.nmedit.jpatch.transformation.Transformations; + import net.sf.nmedit.jpatch.transformation.impl.TransformationsBuilder; import net.sf.nmedit.jtheme.clavia.nordmodular.JTNM1Context; import net.sf.nmedit.jtheme.clavia.nordmodular.NMStorageContext; *************** *** 51,57 **** nm.init(); } ! catch (Exception e) { ! // TODO: handle exception ! e.printStackTrace(); } } --- 55,66 ---- nm.init(); } ! catch (Exception e) ! { ! Log log = LogFactory.getLog(Nordmodular.class); ! if (log.isWarnEnabled()) ! { ! //TODO: handle exception ! log.warn("init() failed", e); ! } } } *************** *** 85,88 **** --- 94,110 ---- source.close(); } + URL transURL = getClass().getClassLoader().getResource("module-descriptions/transformations.xml"); + + source = new FileInputStream(new File(transURL.toURI())); + try + { + Transformations t = + TransformationsBuilder.build(new InputSource(source), descriptions); + descriptions.setTransformations(t); + } + finally + { + source.close(); + } DefaultStorageContext storageContext; --- NEW FILE: PatchHistoryFeature.java --- /* Copyright (C) 2006 Christian Schneider * * This file is part of Nomad. * * Nomad 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 2 of the License, or * (at your option) any later version. * * Nomad 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 Nomad; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ package net.sf.nmedit.nordmodular; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import javax.swing.event.EventListenerList; import net.sf.nmedit.jpatch.history.History; import net.sf.nmedit.nomad.core.swing.document.HistoryFeature; public class PatchHistoryFeature implements HistoryFeature, ChangeListener { private EventListenerList listenerList = new EventListenerList(); private Object target; private transient ChangeEvent changeEvent; private History history; public PatchHistoryFeature(Object target, History history) { this.target = target; this.history = history; history.addChangeListener(this); } public void addChangeListener(ChangeListener l) { listenerList.add(ChangeListener.class, l); } public void removeChangeListener(ChangeListener l) { listenerList.remove(ChangeListener.class, l); } public void stateChanged(ChangeEvent e) { fireStateChanged(); } protected void fireStateChanged() { // Guaranteed to return a non-null array Object[] listeners = listenerList.getListenerList(); // Process the listeners last to first, notifying // those that are interested in this event for (int i = listeners.length-2; i>=0; i-=2) { if (listeners[i]==ChangeListener.class) { // Lazily create the event: if (changeEvent == null) changeEvent = new ChangeEvent(target); ((ChangeListener)listeners[i+1]).stateChanged(changeEvent); } } } public boolean canRedo() { return history.canRedo(); } public boolean canUndo() { return history.canUndo(); } public boolean isChanged() { return history.isChanged(); } public void redo() { history.redo(); } public void undo() { history.undo(); } } Index: PatchDocument.java =================================================================== RCS file: /cvsroot/nmedit/nmedit/nomad/nomad-source/plugins/net.sf.nmedit.nordmodular/src/net/sf/nmedit/nordmodular/PatchDocument.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PatchDocument.java 28 Mar 2007 00:11:48 -0000 1.3 --- PatchDocument.java 24 Apr 2007 19:54:39 -0000 1.4 *************** *** 27,30 **** --- 27,31 ---- import net.sf.nmedit.jtheme.clavia.nordmodular.JTNMPatch; import net.sf.nmedit.nomad.core.swing.document.Document; + import net.sf.nmedit.nomad.core.swing.document.HistoryFeature; public class PatchDocument implements Document *************** *** 36,39 **** --- 37,41 ---- private JTNMPatch jtpatch; private URI uri; + private HistoryFeature historyFeature; public PatchDocument(JTNMPatch patch) *************** *** 78,81 **** --- 80,96 ---- } + public <T> T getFeature(Class<T> featureClass) + { + if (HistoryFeature.class.equals(featureClass)) + { + if (historyFeature == null) + historyFeature = new PatchHistoryFeature(this, jtpatch.getPatch().getHistory()); + + return featureClass.cast(historyFeature); + } + + return null; + } + } |