public void run() { propertyValue = component.get().getComponentDescriptor().getPropertyDescriptor(propertyName).getDefaultValue(); } });
private static TypeID getComponentTypeID(DesignComponent component, String propertyName) { return component.getComponentDescriptor().getPropertyDescriptor(propertyName).getType(); }
public void run() { for (String propertyName : propertyNames) { PropertyDescriptor propertyDescriptor = component.get().getComponentDescriptor().getPropertyDescriptor(propertyName); if (!(propertyDescriptor.getDefaultValue().getKind() != PropertyValue.Kind.NULL || propertyDescriptor.isAllowNull())) { supportsDefaultValue[0] = false; break; } } } });
private void filterResources(DesignComponent component,Collection<DesignComponent> resources) { for (DesignComponent child : component.getComponents()) { filterResources(child, resources); } Collection<DesignComponent> references = new ArrayList<DesignComponent>(); for (PropertyDescriptor pd : component.getComponentDescriptor().getPropertyDescriptors()) { Debug.collectAllComponentReferences(component.readProperty(pd.getName()), references); resources.removeAll(references); references.clear(); } }
private static boolean isComponentReferencedInRootTree (DesignComponent treeComponent, DesignComponent referenceComponent) { ArrayList<DesignComponent> referenced = new ArrayList<DesignComponent> (); ComponentDescriptor descriptor = treeComponent.getComponentDescriptor (); if (descriptor != null) { for (PropertyDescriptor propertyDescriptor : descriptor.getPropertyDescriptors ()) { PropertyValue propertyValue = treeComponent.readProperty (propertyDescriptor.getName ()); referenced.clear (); Debug.collectAllComponentReferences (propertyValue, referenced); if (referenced.contains (referenceComponent)) return true; } } for (DesignComponent child : treeComponent.getComponents ()) if (isComponentReferencedInRootTree (child, referenceComponent)) return true; return false; }
private static void collectUsedReferences (HashSet<DesignComponent> referencedComponents, DesignComponent component) { ComponentDescriptor descriptor = component.getComponentDescriptor (); Collection<PropertyDescriptor> propertyDescriptors = descriptor.getPropertyDescriptors (); for (PropertyDescriptor propertyDescriptor : propertyDescriptors) { if (! propertyDescriptor.isUseForSerialization ()) continue; PropertyValue propertyValue = component.readProperty (propertyDescriptor.getName ()); Debug.collectAllComponentReferences (propertyValue, referencedComponents); } }
protected void collectRequiredComponents(Collection<DesignComponent> requiredComponents) { DesignComponent component = getComponent(); ComponentDescriptor descriptor = component.getComponentDescriptor(); if (descriptor != null) for (PropertyDescriptor property : descriptor.getPropertyDescriptors()) Debug.collectAllComponentReferences(component.readProperty(property.getName()), requiredComponents); } }
public Image getIcon (DesignComponent component, InfoPresenter.IconType iconType) { if (InfoPresenter.IconType.COLOR_16x16.equals (iconType)) { ComponentDescriptor descriptor = component.getComponentDescriptor (); while (descriptor != null) { Image image = MidpTypes.getRegisteredIcon (descriptor.getTypeDescriptor ().getThisType ()); if (image != null) return image; descriptor = descriptor.getSuperDescriptor (); } } return null; }
/** * Creates a new component using a component descriptor with specified typeid. * <p> * Note: It does not add the component into a tree, you have to do it manually. * @param componentType the component typeid * @return the new component */ public DesignComponent createComponent (TypeID componentType) { DesignComponent component = createRawComponent (componentType); assert component != null; performComponentPostInit (component, component.getComponentDescriptor ()); PostInitializeProcessor.postInitializeComponent(getDocumentInterface().getProjectType(), component); return component; }
public Image getIcon(DesignComponent component, InfoPresenter.IconType iconType) { if (InfoPresenter.IconType.COLOR_16x16.equals(iconType)) { ComponentDescriptor descriptor = component.getComponentDescriptor(); while (descriptor != null) { Image image = MidpTypes.getRegisteredIcon(descriptor.getTypeDescriptor().getThisType()); if (image != null) return image; descriptor = descriptor.getSuperDescriptor(); } } return null; } }
/** * Removes a component from the component tree and removes references to this component from all property values * in all components in the document. * <p> * Note: It does not allows to remove the root component. * @param component the component */ public void deleteComponent (DesignComponent component) { assert transactionManager.isWriteAccess (); assert component != null && component != rootComponent; assert component.getDocument () == this; Collection<DesignComponent> components = component.getComponents (); if (components.size () > 0) Debug.warning ("Children has to be deleted before deleting the component", component, components); // NOI18N component.removeFromParentComponent (); ComponentDescriptor descriptor = component.getComponentDescriptor (); if (descriptor != null) for (PropertyDescriptor property : descriptor.getPropertyDescriptors ()) component.resetToDefault (property.getName ()); if (selectedComponents.contains (component)) { HashSet<DesignComponent> selected = new HashSet<DesignComponent> (selectedComponents); selected.remove (component); setSelectedComponents ("deleteComponent", selected); // NOI18N } assert ! Debug.isComponentReferencedInRootTree (component) : "Component (" + component + ") is referenced still after deletion"; // NOI18N }
private DesignComponent goThroughChildren(DesignComponent currentComponent, DesignComponent child, DescriptorRegistry registry) { Collection<PropertyDescriptor> descriptorsList = child.getComponentDescriptor().getPropertyDescriptors(); if (descriptorsList != null) { for (PropertyDescriptor descriptor : descriptorsList) { if (registry.isInHierarchy(PointCD.TYPEID, descriptor.getType())) { if (child.readProperty(descriptor.getName()).getComponent() == currentComponent) { return currentComponent; } } } } return null; }
Debug.warning ("Children has to be deleted before deleting the component", component, children); // NOI18N ComponentDescriptor descriptor = component.getComponentDescriptor (); if (descriptor != null) for (PropertyDescriptor property : descriptor.getPropertyDescriptors ())
public void run() { List<String> propertyNames = element.getPropertyValueNames(); for (String propertyName : propertyNames) { PropertyValue pv = component.readProperty(propertyName); if (PropertyValue.Kind.USERCODE.equals(pv.getKind())) { component.writeProperty(propertyName, component.getComponentDescriptor().getPropertyDescriptor(propertyName).getDefaultValue()); } } } });
private static void saveComponent (Document xml, Node parentNode, DesignComponent component) { ComponentDescriptor descriptor = component.getComponentDescriptor (); Node node = xml.createElement (COMPONENT_NODE); parentNode.appendChild (node); setAttribute (xml, node, COMPONENTID_ATTR, Long.toString (component.getComponentID ())); setAttribute (xml, node, TYPEID_ATTR, component.getType ().getEncoded ()); Collection<PropertyDescriptor> propertyDescriptors = descriptor.getPropertyDescriptors (); for (PropertyDescriptor propertyDescriptor : propertyDescriptors) { if (! propertyDescriptor.isUseForSerialization ()) continue; String propertyName = propertyDescriptor.getName (); if (component.isDefaultValue (propertyName)) continue; PropertyValue propertyValue = component.readProperty (propertyName); String serialized = propertyValue.serialize (); Node propertyNode = xml.createElement (PROPERTY_NODE); node.appendChild (propertyNode); setAttribute (xml, propertyNode, NAME_ATTR, propertyDescriptor.getName ()); setAttribute (xml, propertyNode, TYPEID_ATTR, propertyDescriptor.getType ().getEncoded ()); setAttribute (xml, propertyNode, VALUE_ATTR, serialized); } for (DesignComponent child : component.getComponents ()) saveComponent (xml, node, child); }
@Override public boolean isAcceptable (ComponentProducer producer, AcceptSuggestion suggestion) { if (getComponent().getComponentDescriptor().getPropertyDescriptor(DisplayableCD.PROP_COMMANDS).isReadOnly()) return false; DescriptorRegistry registry = getComponent().getDocument().getDescriptorRegistry(); return registry.isInHierarchy(CommandCD.TYPEID, producer.getMainComponentTypeID ()); }
assert component.getComponentDescriptor () != null; ComponentDescriptor descriptor = component.getComponentDescriptor ();
private void removeReferences(DesignComponent component) { List<PropertyDescriptor> descriptors = component.getComponentDescriptor().getDeclaredPropertyDescriptors(); if (descriptors == null) { return; } for (PropertyDescriptor descriptor : descriptors) { PropertyValue value = component.readProperty(descriptor.getName()); if (value.getComponent() != null && value.getComponent() == getComponent()) { component.writeProperty(descriptor.getName(), PropertyValue.createNull()); } } } };
private void analyze (DefaultListModel list, DesignComponent component) { ComponentDescriptor descriptor = component.getComponentDescriptor (); if (descriptor == null) return; VersionDescriptor version = descriptor.getVersionDescriptor (); if (! version.isCompatibleWith (MidpVersionDescriptor.MIDP_1)) { reportComponent (list, component); return; } for (PropertyDescriptor property : descriptor.getPropertyDescriptors ()) { if (! property.getVersionable ().isCompatibleWith (MidpVersionable.MIDP_1)) if (! component.isDefaultValue (property.getName ())) reportComponentProperty (list, component, property.getName ()); processComponentProperty (list, component, property); } for (DesignComponent child : component.getComponents ()) analyze (list, child); }
assert component.getComponentDescriptor() != null; continue; ComponentDescriptor descriptor = component.getComponentDescriptor(); if (descriptor == null) { continue;