|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2003 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.examples.modules.minicomposer; import org.netbeans.api.registry.Context; import org.netbeans.api.registry.ObjectRef; import org.netbeans.spi.looks.LookProvider; import org.netbeans.spi.looks.LookSelector; import org.netbeans.spi.looks.Selectors; import org.netbeans.examples.modules.minicomposer.registryutils.backcompatible.ObjectRefContextLook; import org.openide.execution.NbProcessDescriptor; import java.util.Enumeration; import java.util.Vector; final class PlayerLookSelector implements LookProvider { private static final LookSelector DEFAULT = Selectors.selector(new PlayerLookSelector()); static public LookSelector getDefault() { return DEFAULT; } private PlayerLookSelector () {} public Enumeration getLooksForObject(Object representedObject) { Enumeration en = null; if (representedObject instanceof Context) { Vector retVal = new Vector(); retVal.add(new CustomContextLook()); en = retVal.elements(); } if (representedObject instanceof ObjectRef) { ObjectRef ref = (ObjectRef) representedObject; Object object = ref.getObject(); en = Selectors.defaultTypes().getLooks(object); } if (en == null) en = Selectors.defaultTypes().getLooks(representedObject); return en; } private class CustomContextLook extends ObjectRefContextLook { public CustomContextLook() { super("Minicomposer", Player.class); } protected Object cloneBinding(Object object) { NbProcessDescriptor playerCommand = ((ExternalPlayer) object).getPlayerCommand(); return new ExternalPlayer(playerCommand); } } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.