/**
* <p>Copyright: Copyright (c) 2009</p>
* <p>Company: �������ӹɷ�����˾</p>
*/
package com.hundsun.ares.studio.ui.action;
import org.eclipse.jface.action.Action;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.viewers.StructuredViewer;
import org.eclipse.ui.navigator.IExtensionStateModel;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import com.hundsun.ares.studio.ui.ARESPreferences;
import com.hundsun.ares.studio.ui.ARESUI;
/**
*
* @author sundl
*/
public class ToggleShowCategoryAction extends Action {
private StructuredViewer viewer;
private IExtensionStateModel stateModel;
private boolean showCategory;
public ToggleShowCategoryAction(IExtensionStateModel model, StructuredViewer viewer) {
super("��ʾ����", AS_CHECK_BOX);
setImageDescriptor(AbstractUIPlugin.imageDescriptorFromPlugin(ARESUI.PLUGIN_ID, "/icons/obj16/folder.gif"));
this.stateModel = model;
this.viewer = viewer;
}
public void setShowCategory(boolean show) {
showCategory = show;
}
@Override
public void run() {
//boolean curState = stateModel.getBooleanProperty(ARESUI.SHOW_CATEGORY);
//this.stateModel.setBooleanProperty(ARESUI.SHOW_CATEGORY, !curState);
IPreferenceStore store = ARESUI.getDefault().getPreferenceStore();
//if (store.getBoolean(ARESUI.SHOWCATEGORY) != showCategory) {
store.setValue(ARESPreferences.SHOW_CATEGORY, !showCategory);
showCategory = !showCategory;
viewer.getControl().setRedraw(false);
try {
viewer.refresh();
} finally {
viewer.getControl().setRedraw(true);
}
//}
}
}