Package org.openquark.cal.valuenode

Examples of org.openquark.cal.valuenode.ValueNode


        QualifiedName typeConstructorName = ((TypeConsApp)typeExpr).getName();
        DataConstructor[] dcList = valueEditorManager.getPerspective().getDataConstructorsForType(typeConstructorName);

        List<ValueNode> valueList = new ArrayList<ValueNode>();
        for (final DataConstructor dataConstructor : dcList) {
            ValueNode value = valueEditorManager.getValueNodeBuilderHelper().buildValueNode(null, dataConstructor, typeExpr);
            valueList.add(value);
        }

        return valueList;
    }
View Full Code Here


    @Override
    public void addRow() {
        TypeExpr typeExpr = listValueNode.getTypeExpr();
      
        TypeExpr elementTypeExpr = ((TypeConsApp) typeExpr).getArg(0);
        ValueNode elementVN = valueEditorManager.getValueNodeBuilderHelper().getValueNodeForTypeExpr(elementTypeExpr);
        listValueNode.add(elementVN);
       
        // The following two lines were commented out in Ken's change.  Why?
        int indexNewRow = listValueNode.getNElements() - 1;
        fireTableRowsInserted(indexNewRow, indexNewRow);
View Full Code Here

     * Note: Make sure that there is another row under it.
     */
    @Override
    public void moveRowDown(int row) {

        ValueNode moveRow = listValueNode.getValueAt(row);
        ValueNode nextRow = listValueNode.getValueAt(row + 1);

        listValueNode.setValueNodeAt(row + 1, moveRow);
        listValueNode.setValueNodeAt(row, nextRow);

        fireTableRowsUpdated(row, row + 1);
View Full Code Here

     * Note: Make sure that there is another row above it.
     */
    @Override
    public void moveRowUp(int row) {

        ValueNode moveRow = listValueNode.getValueAt(row);
        ValueNode nextRow = listValueNode.getValueAt(row - 1);

        listValueNode.setValueNodeAt(row - 1, moveRow);
        listValueNode.setValueNodeAt(row, nextRow);

        fireTableRowsUpdated(row - 1, row);
View Full Code Here

    protected void commitValue() {
   
        if (clearType) {
            // Note: For TypeExpr which contains uninstantiated TypeVars, we must 'duplicate' them somehow.
            TypeExpr instanceTypeExpr = getContext().getLeastConstrainedTypeExpr();
            ValueNode replacement = getOwnerValueNode().transmuteValueNode(valueEditorManager.getValueNodeBuilderHelper(), valueEditorManager.getValueNodeTransformer(), instanceTypeExpr);

            // Get the TypeVar that we are instantiating.
            replaceValueNode(replacement, true);

            notifyValueCommitted();
View Full Code Here

        // Get the date time values from the two inner value editors.
        Calendar calendar = dateValueEditor.getCalendar();
        timeValueEditor.getUpdatedCalendar(calendar);

        // Update the value in the ValueNode.
        ValueNode returnVN = new RelativeDateTimeValueNode(calendar.getTime(), getValueNode().getTypeExpr());
        replaceValueNode(returnVN, false);

        notifyValueCommitted();
    }
View Full Code Here

            TypeConsApp typeConsApp = getValueNodeBuilderHelper().getTypeConstructorForEntity(typeCons);

            if (typeConsApp != null) {
      
                ValueNode valueNode = valueNodeBuilderHelper.getValueNodeForTypeExpr(typeConsApp);
               
                if (getValueEditorProvider(valueNode, supportInfo, false) != null) {
                    types.add(typeConsApp);
                }
            }
        }
       
        // The Record type is special since it has no type constructor entity, but
        // there is a value node / value editor provider to handle it.
        Set<FieldName> fieldNames = new HashSet<FieldName>();
        TypeExpr recordType = TypeExpr.makeFreeRecordType(fieldNames);
        ValueNode valueNode = valueNodeBuilderHelper.getValueNodeForTypeExpr(recordType);
        if (getValueEditorProvider(valueNode, supportInfo, false) != null) {
            types.add(recordType);
        }

        // Prelude.Char is special since it can be directly entered into a VEP, but
View Full Code Here

        } else if (supportInfo.isSupported(typeToCheck)) {
            return true;
           
        } else {
            // Return whether there is a value editor for default value node of the given type.
            ValueNode valueNode = valueNodeBuilderHelper.getValueNodeForTypeExpr(typeToCheck);
            return valueNode != null && getValueEditorProvider(valueNode, supportInfo, false) != null;
        }
    }
View Full Code Here

                                          TypeExpr typeExpr,
                                          QualifiedName entityName,
                                          int argumentNumber,
                                          MetadataRunner metadataRunner) {
        // defer to the more general method
        ValueNode vn = valueNodeBuilderHelper.getValueNodeForTypeExpr(typeExpr);
        return getRootValueEditor(valueEditorHierarchyManager, vn, entityName, argumentNumber, metadataRunner);
    }
View Full Code Here

        // Check if there's default value metadata on the input.  If there is we can use a pick list
        // value editor.
        if (metadataRunner != null) {
            // Evaluate the expression
            ValueNode defaultValues = metadataRunner.evaluateDefaultValueMetadata(argumentNumber);

            if (defaultValues != null) {
                // If the value node is a list then use a pick list value entry panel which will popup a
                // customized list editor.  Otherwise the value node is a single value and we can use the
                // pick list value editor which is just a combo box.
                ModuleTypeInfo typeInfo = valueEditorHierarchyManager.getValueEditorManager().getPerspective().getWorkingModuleTypeInfo();
                TypeExpr dataType = valueNode.getTypeExpr();
                if (dataType.isListType() && TypeExpr.canUnifyType(dataType, defaultValues.getTypeExpr(), typeInfo)) {
                    return new PickListValueEntryPanel(valueEditorHierarchyManager,
                                                       valueNode,
                                                       (ListValueNode)defaultValues,
                                                       metadataRunner.useDefaultValuesOnly(argumentNumber));
                } else {
View Full Code Here

TOP

Related Classes of org.openquark.cal.valuenode.ValueNode

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.