Search in sources :

Example 1 with SpeciesPatternLocal

use of cbit.vcell.client.desktop.biomodel.RbmDefaultTreeModel.SpeciesPatternLocal in project vcell by virtualcell.

the class RbmObservableTreeCellRenderer method getTreeCellRendererComponent.

@Override
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus) {
    super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
    setBorder(null);
    if (value instanceof BioModelNode) {
        BioModelNode node = (BioModelNode) value;
        Object userObject = node.getUserObject();
        obj = userObject;
        String text = null;
        Icon icon = null;
        String toolTip = null;
        if (userObject instanceof RbmObservable) {
            RbmObservable ob = (RbmObservable) userObject;
            text = toHtml(ob);
            toolTip = toHtmlWithTip(ob);
            icon = VCellIcons.rbmObservableIcon;
        } else if (userObject instanceof SpeciesPatternLocal) {
            SpeciesPatternLocal spl = (SpeciesPatternLocal) userObject;
            text = toHtml(spl, true);
            toolTip = toHtmlWithTip(spl, true);
            icon = VCellIcons.rbmProductIcon;
        } else if (userObject instanceof MolecularTypePattern) {
            MolecularTypePattern molecularTypePattern = (MolecularTypePattern) userObject;
            text = toHtml(molecularTypePattern, true);
            toolTip = toHtmlWithTip(molecularTypePattern, true);
            if (owner == null) {
                icon = VCellIcons.rbmMolecularTypeSimpleIcon;
                ;
            } else {
                Graphics gc = owner.getGraphics();
                icon = new MolecularTypeSmallShape(1, 5, molecularTypePattern.getMolecularType(), null, gc, molecularTypePattern.getMolecularType(), null, issueManager);
            }
        } else if (userObject instanceof MolecularComponentPattern) {
            MolecularComponentPattern mcp = (MolecularComponentPattern) userObject;
            text = toHtml(mcp, true);
            toolTip = toHtmlWithTip(mcp, true);
            icon = VCellIcons.rbmComponentGrayIcon;
            if (mcp.getMolecularComponent().getComponentStateDefinitions().size() > 0) {
                icon = VCellIcons.rbmComponentGrayStateIcon;
            }
            if (mcp.isbVisible()) {
                icon = VCellIcons.rbmComponentGreenIcon;
                if (mcp.getMolecularComponent().getComponentStateDefinitions().size() > 0) {
                    icon = VCellIcons.rbmComponentGreenStateIcon;
                }
            }
            ComponentStatePattern csp = mcp.getComponentStatePattern();
            if (csp != null && !csp.isAny()) {
                icon = VCellIcons.rbmComponentGreenIcon;
                if (mcp.getMolecularComponent().getComponentStateDefinitions().size() > 0) {
                    icon = VCellIcons.rbmComponentGreenStateIcon;
                }
            }
            BioModelNode parent = (BioModelNode) ((BioModelNode) value).getParent().getParent().getParent();
            if (parent == null) {
                icon = VCellIcons.rbmComponentErrorIcon;
                return this;
            }
            Object parentObject = parent.getUserObject();
            if (!(parentObject instanceof RbmObservable)) {
                icon = VCellIcons.rbmComponentErrorIcon;
                return this;
            }
            if (hasErrorIssues((RbmObservable) parentObject, mcp, mcp.getMolecularComponent())) {
                icon = VCellIcons.rbmComponentErrorIcon;
            }
        } else if (userObject instanceof StateLocal) {
            StateLocal sl = (StateLocal) userObject;
            text = toHtml(sl, true);
            toolTip = toHtmlWithTip(sl, true);
            icon = VCellIcons.rbmComponentStateIcon;
        } else if (userObject instanceof BondLocal) {
            BondLocal bl = (BondLocal) userObject;
            text = toHtml(bl, sel);
            toolTip = toHtmlWithTip(bl, true);
            icon = VCellIcons.rbmBondIcon;
        } else {
            if (userObject != null) {
                System.out.println(userObject.toString());
                text = userObject.toString();
            } else {
                text = "null user object";
            }
        }
        setText(text);
        setIcon(icon);
        setToolTipText(toolTip == null ? text : toolTip);
    }
    return this;
}
Also used : MolecularComponentPattern(org.vcell.model.rbm.MolecularComponentPattern) RbmObservable(cbit.vcell.model.RbmObservable) ComponentStatePattern(org.vcell.model.rbm.ComponentStatePattern) StateLocal(cbit.vcell.client.desktop.biomodel.RbmDefaultTreeModel.StateLocal) BioModelNode(cbit.vcell.desktop.BioModelNode) Graphics(java.awt.Graphics) MolecularTypeSmallShape(cbit.vcell.graph.MolecularTypeSmallShape) SpeciesPatternLocal(cbit.vcell.client.desktop.biomodel.RbmDefaultTreeModel.SpeciesPatternLocal) BondLocal(cbit.vcell.client.desktop.biomodel.RbmDefaultTreeModel.BondLocal) Icon(javax.swing.Icon) MolecularTypePattern(org.vcell.model.rbm.MolecularTypePattern)

Aggregations

BondLocal (cbit.vcell.client.desktop.biomodel.RbmDefaultTreeModel.BondLocal)1 SpeciesPatternLocal (cbit.vcell.client.desktop.biomodel.RbmDefaultTreeModel.SpeciesPatternLocal)1 StateLocal (cbit.vcell.client.desktop.biomodel.RbmDefaultTreeModel.StateLocal)1 BioModelNode (cbit.vcell.desktop.BioModelNode)1 MolecularTypeSmallShape (cbit.vcell.graph.MolecularTypeSmallShape)1 RbmObservable (cbit.vcell.model.RbmObservable)1 Graphics (java.awt.Graphics)1 Icon (javax.swing.Icon)1 ComponentStatePattern (org.vcell.model.rbm.ComponentStatePattern)1 MolecularComponentPattern (org.vcell.model.rbm.MolecularComponentPattern)1 MolecularTypePattern (org.vcell.model.rbm.MolecularTypePattern)1