/*
 * Copyright (C) 2005 NTT DATA Corporation
 * 
 */
package org.postgresforest.tool.view.action;

import org.eclipse.jface.action.IAction;
import org.eclipse.jface.window.Window;
import org.eclipse.ui.IViewPart;
import org.postgresforest.tool.action.ConfigAction;
import org.postgresforest.tool.bean.ConfigInfo;
import org.postgresforest.tool.db.GSCdata;
import org.postgresforest.tool.dialog.config.ConfigDialog;
import org.postgresforest.tool.util.SessionProperty;

/**
 * TODO この生成された型コメントのテンプレートを変更するには次へジャンプ:
 * ウィンドウ - 設定 - Java - コード・スタイル - コード・テンプレート
 */
public class AddConfigAction extends ActionBase {
	private ConfigDialog m_dialog;
	public static final String ID = "org.postgresforest.tool.view.action.AddConfigAction";
	public void init(IViewPart view) {
		super.init(view);
		m_dialog = new ConfigDialog(false);

	}

	/*
	 * (非 Javadoc)
	 * 
	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
	 */
	public void run(IAction action) {
		//ダイアログを表示する
		if (m_dialog.open() == Window.OK) {
			ConfigInfo configInfo = m_dialog.getConfigInfo();

			GSCdata gsc = (GSCdata)SessionProperty.get("gsc");
			if(gsc == null)
				return;
			
			ConfigAction addConfig = new ConfigAction(gsc);
			try {
				addConfig.add(configInfo);
			} catch (Exception e) {
			}

		}
		m_view.update();
	}


}
