// Path: src/com/editize/editorkit/EditizeEditorKit.java
// public static class NotifyingUndoManager extends CompoundingUndoManager {
// 	private PropertyChangeSupport pcs;
// 	private boolean active = true;
// /**
//  * NotifyingUndoManager constructor comment.
//  */
// public NotifyingUndoManager() {
// 	super();
// 	pcs = new PropertyChangeSupport(this);
// }
// public void addPropertyChangeListener(PropertyChangeListener l) {
// 	pcs.addPropertyChangeListener(l);
// }
// /**
//  * Insert the method's description here.
//  * Creation date: (28/08/2001 11:43:19 PM)
//  */
// public void discardAllEdits() {
// 	boolean oldCanUndo = canUndo();
// 	boolean oldCanRedo = canRedo();
// 	String oldUndoPresentationName = getUndoPresentationName();
// 	String oldRedoPresentationName = getRedoPresentationName();
// 	super.discardAllEdits();
// 	pcs.firePropertyChange("canUndo",oldCanUndo,canUndo());
// 	pcs.firePropertyChange("canRedo",oldCanRedo,canRedo());
// 	pcs.firePropertyChange("undoPresentationName",oldUndoPresentationName,getUndoPresentationName());
// 	pcs.firePropertyChange("redoPresentationName",oldRedoPresentationName,getRedoPresentationName());
// }
// /**
//  * Insert the method's description here.
//  * Creation date: (28/08/2001 11:43:19 PM)
//  */
// public void redo() throws CannotUndoException {
// 	if (!active) return;
// 	boolean oldCanUndo = canUndo();
// 	boolean oldCanRedo = canRedo();
// 	String oldUndoPresentationName = getUndoPresentationName();
// 	String oldRedoPresentationName = getRedoPresentationName();
// 	super.redo();
// 	pcs.firePropertyChange("canUndo",oldCanUndo,canUndo());
// 	pcs.firePropertyChange("canRedo",oldCanRedo,canRedo());
// 	pcs.firePropertyChange("undoPresentationName",oldUndoPresentationName,getUndoPresentationName());
// 	pcs.firePropertyChange("redoPresentationName",oldRedoPresentationName,getRedoPresentationName());
// }
// public void removePropertyChangeListener(PropertyChangeListener l) {
// 	pcs.removePropertyChangeListener(l);
// }
// public void undo() throws CannotUndoException {
// 	if (!active) return;
// 	boolean oldCanUndo = canUndo();
// 	boolean oldCanRedo = canRedo();
// 	String oldUndoPresentationName = getUndoPresentationName();
// 	String oldRedoPresentationName = getRedoPresentationName();
// 	super.undo();
// 	pcs.firePropertyChange("canUndo",oldCanUndo,canUndo());
// 	pcs.firePropertyChange("canRedo",oldCanRedo,canRedo());
// 	pcs.firePropertyChange("undoPresentationName",oldUndoPresentationName,getUndoPresentationName());
// 	pcs.firePropertyChange("redoPresentationName",oldRedoPresentationName,getRedoPresentationName());
// }
// 
// public boolean addEdit(UndoableEdit e) {
// 	if (!active) return false;
// 	boolean ret;
// 	boolean oldCanUndo = canUndo();
// 	boolean oldCanRedo = canRedo();
// 	String oldUndoPresentationName = getUndoPresentationName();
// 	String oldRedoPresentationName = getRedoPresentationName();
// 	ret = super.addEdit(e);
// 	pcs.firePropertyChange("canUndo",oldCanUndo,canUndo());
// 	pcs.firePropertyChange("canRedo",oldCanRedo,canRedo());
// 	pcs.firePropertyChange("undoPresentationName",oldUndoPresentationName,getUndoPresentationName());
// 	pcs.firePropertyChange("redoPresentationName",oldRedoPresentationName,getRedoPresentationName());
// 	return ret;
// }
// 
// public void setActive(boolean active)
// {
// 	this.active = active;
// 	if (!active) discardAllEdits();
// }
// public boolean isActive()
// {
// 	return active;
// }
// }


import javax.swing.text.StyledEditorKit;
import java.beans.PropertyChangeListener;
import com.editize.editorkit.EditizeEditorKit.NotifyingUndoManager;
import java.awt.event.ActionEvent;
import java.beans.PropertyChangeEvent;
package com.editize.editorkit;


public class UndoAction
		extends StyledEditorKit.StyledTextAction
		implements PropertyChangeListener
{
	protected static final int UNDO = 1;
	protected static final int REDO = 2;
	private int type;
	private javax.swing.undo.UndoManager undoMan;
// Path: src/com/editize/editorkit/EditizeEditorKit.java
// public static class NotifyingUndoManager extends CompoundingUndoManager {
// 	private PropertyChangeSupport pcs;
// 	private boolean active = true;
// /**
//  * NotifyingUndoManager constructor comment.
//  */
// public NotifyingUndoManager() {
// 	super();
// 	pcs = new PropertyChangeSupport(this);
// }
// public void addPropertyChangeListener(PropertyChangeListener l) {
// 	pcs.addPropertyChangeListener(l);
// }
// /**
//  * Insert the method's description here.
//  * Creation date: (28/08/2001 11:43:19 PM)
//  */
// public void discardAllEdits() {
// 	boolean oldCanUndo = canUndo();
// 	boolean oldCanRedo = canRedo();
// 	String oldUndoPresentationName = getUndoPresentationName();
// 	String oldRedoPresentationName = getRedoPresentationName();
// 	super.discardAllEdits();
// 	pcs.firePropertyChange("canUndo",oldCanUndo,canUndo());
// 	pcs.firePropertyChange("canRedo",oldCanRedo,canRedo());
// 	pcs.firePropertyChange("undoPresentationName",oldUndoPresentationName,getUndoPresentationName());
// 	pcs.firePropertyChange("redoPresentationName",oldRedoPresentationName,getRedoPresentationName());
// }
// /**
//  * Insert the method's description here.
//  * Creation date: (28/08/2001 11:43:19 PM)
//  */
// public void redo() throws CannotUndoException {
// 	if (!active) return;
// 	boolean oldCanUndo = canUndo();
// 	boolean oldCanRedo = canRedo();
// 	String oldUndoPresentationName = getUndoPresentationName();
// 	String oldRedoPresentationName = getRedoPresentationName();
// 	super.redo();
// 	pcs.firePropertyChange("canUndo",oldCanUndo,canUndo());
// 	pcs.firePropertyChange("canRedo",oldCanRedo,canRedo());
// 	pcs.firePropertyChange("undoPresentationName",oldUndoPresentationName,getUndoPresentationName());
// 	pcs.firePropertyChange("redoPresentationName",oldRedoPresentationName,getRedoPresentationName());
// }
// public void removePropertyChangeListener(PropertyChangeListener l) {
// 	pcs.removePropertyChangeListener(l);
// }
// public void undo() throws CannotUndoException {
// 	if (!active) return;
// 	boolean oldCanUndo = canUndo();
// 	boolean oldCanRedo = canRedo();
// 	String oldUndoPresentationName = getUndoPresentationName();
// 	String oldRedoPresentationName = getRedoPresentationName();
// 	super.undo();
// 	pcs.firePropertyChange("canUndo",oldCanUndo,canUndo());
// 	pcs.firePropertyChange("canRedo",oldCanRedo,canRedo());
// 	pcs.firePropertyChange("undoPresentationName",oldUndoPresentationName,getUndoPresentationName());
// 	pcs.firePropertyChange("redoPresentationName",oldRedoPresentationName,getRedoPresentationName());
// }
// 
// public boolean addEdit(UndoableEdit e) {
// 	if (!active) return false;
// 	boolean ret;
// 	boolean oldCanUndo = canUndo();
// 	boolean oldCanRedo = canRedo();
// 	String oldUndoPresentationName = getUndoPresentationName();
// 	String oldRedoPresentationName = getRedoPresentationName();
// 	ret = super.addEdit(e);
// 	pcs.firePropertyChange("canUndo",oldCanUndo,canUndo());
// 	pcs.firePropertyChange("canRedo",oldCanRedo,canRedo());
// 	pcs.firePropertyChange("undoPresentationName",oldUndoPresentationName,getUndoPresentationName());
// 	pcs.firePropertyChange("redoPresentationName",oldRedoPresentationName,getRedoPresentationName());
// 	return ret;
// }
// 
// public void setActive(boolean active)
// {
// 	this.active = active;
// 	if (!active) discardAllEdits();
// }
// public boolean isActive()
// {
// 	return active;
// }
// }


// Path: src/com/editize/editorkit/UndoAction.java
import javax.swing.text.StyledEditorKit;
import java.beans.PropertyChangeListener;
import com.editize.editorkit.EditizeEditorKit.NotifyingUndoManager;
import java.awt.event.ActionEvent;
import java.beans.PropertyChangeEvent;

package com.editize.editorkit;


public class UndoAction
		extends StyledEditorKit.StyledTextAction
		implements PropertyChangeListener
{
	protected static final int UNDO = 1;
	protected static final int REDO = 2;
	private int type;
	private javax.swing.undo.UndoManager undoMan;
	public UndoAction(int type, NotifyingUndoManager undoMan)