package com.hundsun.ares.studio.jres.metadata.ui.editors.editingsupport; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import com.hundsun.ares.studio.core.IARESResource; import com.hundsun.ares.studio.jres.model.metadata.Function; import com.hundsun.ares.studio.jres.model.metadata.util.MenuUtils; import com.hundsun.ares.studio.ui.cellEditor.AresContentProposalProvider; import com.hundsun.ares.studio.ui.cellEditor.IContentProposalProviderHelper; public class FuncProxyContentProposalProvider extends AresContentProposalProvider { IARESResource resource; public FuncProxyContentProposalProvider(IContentProposalProviderHelper helper,IARESResource resource) { super(helper); this.resource = resource; } @Override public void updateContent(Object element) { Map<String, Function> map = new HashMap<String, Function>(); List<String>names = new ArrayList<String>(); for(Function func : MenuUtils.getFunctions(resource)){ String name = func.getName(); String code = func.getSubTransCode(); if(MenuUtils.isStockDepartment()){ if(names.contains(name)){ map.remove(name); }else{ names.add(name); map.put(name, func); } }else{ if(names.contains(code)){ map.remove(code); }else{ names.add(code); map.put(code, func); } } } setInput(map.values().toArray()); } }