⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dslcontentprovider.java

📁 jboss规则引擎
💻 JAVA
字号:
package org.drools.ide.dsl.editor;

import org.drools.lang.dsl.template.NLMappingItem;
import org.eclipse.jface.viewers.IStructuredContentProvider;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.Viewer;

/**
 * Content provider for the Domain Specific Language editor.
 * @author Michael Neale
 */
public class DSLContentProvider
    implements
    IStructuredContentProvider, IMappingListViewer {

    private TableViewer viewer;
    private NLGrammarModel model;
    
    public DSLContentProvider(TableViewer viewer, NLGrammarModel model) {
        this.viewer = viewer;
        this.model = model;
    }
    
    public void dispose() {
        model.removeChangeListener( this );
    }
    
    public void inputChanged(Viewer viewer,
                             Object oldInput,
                             Object newInput) {
        if (newInput != null)
            ((NLGrammarModel) newInput).addChangeListener(this);
        if (oldInput != null)
            ((NLGrammarModel) oldInput).removeChangeListener(this);

    }

    public void addMapping(NLMappingItem item) {
        viewer.add( item );
        
    }

    public void removeMapping(NLMappingItem item) {

        viewer.remove( item );
    }

    public void updateMapping(NLMappingItem item) {
        viewer.update( item, null );
    }

    public Object[] getElements(Object inputElement) {
        return model.getMappings().toArray();        
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -