package jp.co.cybec.laxide.model.commands;

import jp.co.cybec.laxide.model.base.LetsAjaxLabelModel;

import org.eclipse.gef.commands.Command;

/**
 * モデルの属性を直接編集するときに呼ばれるコマンドクラス ファイル名：DirectEditCommand.java
 * 
 * @author nakamura 作成時刻：15:28:47
 * 
 */
public class DirectEditCommand extends Command {
	private String oldText, newText;

	private LetsAjaxLabelModel targetModel;

	// オーバーライド
	public void execute() {
		// 以前のテキストの記録
		oldText = targetModel.getValue();
		// テキストの変更
		targetModel.setValue(newText);
	}

	public void setModel(Object model) {
		targetModel = (LetsAjaxLabelModel) model;
	}

	public void setText(String text) {
		newText = text;
	}

	// オーバーライド
	public void undo() {
		targetModel.setValue(oldText);
	}
}
