/** * @version $Id: DicEditorDisposer.java 1839 2014-04-16 02:33:51Z yukihiro-kinjyo $ * * 2011/09/21 2:24:58 * @author kousuke-morishima * * Copyright 2011-2014 TIDAコンソーシアム All Rights Reserved. */ package com.tida_okinawa.corona.ui.editors; import java.util.List; import org.eclipse.ui.IPartListener; import org.eclipse.ui.IWorkbenchPart; import com.tida_okinawa.corona.io.model.dic.ICoronaDic; /** * @author kousuke-morishima */ public class DicEditorDisposer implements IPartListener { private IWorkbenchPart part; private List<ICoronaDic> dics; /** * @param editor * このインスタンスを登録する先のエディタ<br /> * このエディタが閉じた時だけ働く * @param dics * エディタが閉じたときに、updateを呼び出す辞書群 */ public DicEditorDisposer(IWorkbenchPart part, List<ICoronaDic> dics) { this.part = part; this.dics = dics; } @Override public void partClosed(IWorkbenchPart part) { if (part.equals(this.part)) { for (ICoronaDic dic : dics) { if (dic.isDirty()) { dic.update(); } } } } @Override public void partActivated(IWorkbenchPart part) { } @Override public void partBroughtToTop(IWorkbenchPart part) { } @Override public void partDeactivated(IWorkbenchPart part) { } @Override public void partOpened(IWorkbenchPart part) { } public void addDictionaries(List<ICoronaDic> dics) { this.dics.addAll(dics); } public void addDictionary(ICoronaDic dic) { dics.add(dic); } }