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

📄 selectresourcespanel1.java

📁 Sematic Assessment System: Java GUI application that store all data in an Ontology in protege.
💻 JAVA
字号:
package edu.stanford.smi.protegex.owl.ui.dialogs;

import java.util.Collection;
import java.util.Collections;
import javax.swing.JComponent;
import javax.swing.JTree;
import javax.swing.ListSelectionModel;
import edu.stanford.smi.protege.model.Cls;
import edu.stanford.smi.protege.model.KnowledgeBase;
import edu.stanford.smi.protege.ui.Finder;
import edu.stanford.smi.protege.ui.FrameRenderer;
import edu.stanford.smi.protege.ui.ParentChildRoot;
import edu.stanford.smi.protege.ui.SelectInstancesPanel1;
import edu.stanford.smi.protege.util.ComponentFactory;
import edu.stanford.smi.protege.util.LabeledComponent;
import edu.stanford.smi.protege.util.LazyTreeRoot;
import edu.stanford.smi.protegex.owl.model.OWLModel;

/**
 * @author Holger Knublauch  <holger@knublauch.com>
 */
public class SelectResourcesPanel1 extends SelectInstancesPanel1{

    private JTree _clsHierarchyTree;
    private LabeledComponent instanceLabelComponent;
    private Finder _instanceFinder;
    private Cls selectedCls;
    
    public SelectResourcesPanel1(OWLModel owlModel, Collection classes) {
        this(owlModel, classes, false);
       
    }

    public SelectResourcesPanel1(OWLModel owlModel, Collection classes, boolean allowsMultipleSelection) {
        super(owlModel, classes);
        if (!allowsMultipleSelection) {
            _instanceList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        }
    }

    protected LabeledComponent createClsesLabeledComponent(KnowledgeBase kb, Collection clses) {
        LabeledComponent lc = super.createClsesLabeledComponent(kb, clses);      
        return lc;
    }

    protected JComponent createClassHierarchyTree() {
        LazyTreeRoot root = new ParentChildRoot(Collections.EMPTY_LIST);
        _clsHierarchyTree = ComponentFactory.createSelectableTree(null, root);
        _clsHierarchyTree.setRootVisible(false);
        _clsHierarchyTree.setShowsRootHandles(false);
        FrameRenderer renderer = FrameRenderer.createInstance();
        renderer.setDisplayDirectInstanceCount(false);
        _clsHierarchyTree.setCellRenderer(renderer);
        return _clsHierarchyTree;
    }    
        
    protected LabeledComponent createInstanceLabeledComponent() {
    	instanceLabelComponent = super.createInstanceLabeledComponent();
        createClassHierarchyTree();
        _instanceFinder = (Finder) instanceLabelComponent.getFooterComponent();
        return instanceLabelComponent;
    }
    
    protected Collection getInstances(Cls cls) {
        selectedCls=cls;
 	return cls.getDirectInstances();
    }

    public Cls getSelectedInstance() {
 	return selectedCls;
    }
    
    public Collection getSelection() {
        return super.getSelection();
    }   
}

⌨️ 快捷键说明

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