Package reportgen.math.condition.unaryexist

Source Code of reportgen.math.condition.unaryexist.MathExpressionConditionUnaryExistPanel

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

/*
* ConditionPanelUnary.java
*
* Created on 28.04.2009, 14:22:13
*/

package reportgen.math.condition.unaryexist;

import reportgen.prototype.context.group.ExpressionEditorPanel;
import java.awt.BorderLayout;
import java.awt.Window;
import javax.swing.JPanel;
import reportgen.math.MathExpression;
import reportgen.math.MathExpressionOperand;
import reportgen.math.reference.inline.MathExpressionInlineRef;

/**
*
* @author axe
*/
abstract class MathExpressionConditionUnaryExistPanel
        extends ExpressionEditorPanel<MathExpressionConditionUnaryExist> {

    private final Window parent;
    protected final MathExpressionConditionUnaryExist me;
    private ExpressionEditorPanel operandPanel = null;

    public MathExpressionConditionUnaryExistPanel(Window aParent,
            MathExpressionConditionUnaryExist exp) {
        initComponents();
        this.parent = aParent;
        if(exp != null) {
            this.me = exp;
        } else {
            this.me = initNew();
        }

        mainPanel.add(me.getOperator().getPanel(parent), BorderLayout.NORTH);

        //берем операнд
        //если не пустой, берем у него панель
        MathExpressionOperand operand = me.getOperand();
        if(operand != null) {
            //панель останется как нулл
            mainPanel.add(operand.getPanel(parent), BorderLayout.CENTER);
        else {
            //иначе создаем панель
            operandPanel =  MathExpressionInlineRef.GROUP.getCreatePanel(parent,
                me.getChildContext(MathExpressionInlineRef.GROUP));
            mainPanel.add(operandPanel);
        }
        mainPanel.validate();
    }

    /**
     *
     * @return
     */
    @Override
    public MathExpressionConditionUnaryExist getValue()  {
        if(operandPanel != null) {
            MathExpression value = operandPanel.getValue();
            if(value == null) {
                return null;
            }
            me.setOperand((MathExpressionOperand) value);
        }
        return me;
    }

    protected abstract MathExpressionConditionUnaryExist initNew();

    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jPanel6 = new javax.swing.JPanel();
        mainPanel = new javax.swing.JPanel();

        jPanel6.setLayout(new java.awt.BorderLayout(5, 5));

        mainPanel.setLayout(new java.awt.BorderLayout());
        jPanel6.add(mainPanel, java.awt.BorderLayout.CENTER);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jPanel6, javax.swing.GroupLayout.DEFAULT_SIZE, 376, Short.MAX_VALUE)
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jPanel6, javax.swing.GroupLayout.PREFERRED_SIZE, 295, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
    }// </editor-fold>//GEN-END:initComponents

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JPanel jPanel6;
    private javax.swing.JPanel mainPanel;
    // End of variables declaration//GEN-END:variables
}
TOP

Related Classes of reportgen.math.condition.unaryexist.MathExpressionConditionUnaryExistPanel

TOP
Copyright © 2018 www.massapi.com. 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.