OpenConcerto

Dépôt officiel du code source de l'ERP OpenConcerto
sonarqube

svn://code.openconcerto.org/openconcerto

Rev

Blame | Last modification | View Log | RSS feed

/*
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
 * 
 * Copyright 2011-2019 OpenConcerto, by ILM Informatique. All rights reserved.
 * 
 * The contents of this file are subject to the terms of the GNU General Public License Version 3
 * only ("GPL"). You may not use this file except in compliance with the License. You can obtain a
 * copy of the License at http://www.gnu.org/licenses/gpl-3.0.html See the License for the specific
 * language governing permissions and limitations under the License.
 * 
 * When distributing the software, include this License Header Notice in each file.
 */
 
 
package org.openconcerto.erp.core.sales.invoice.ui;

import org.openconcerto.sql.model.SQLRowAccessor;
import org.openconcerto.ui.DefaultGridBagConstraints;
import org.openconcerto.ui.JDate;
import org.openconcerto.utils.ExceptionHandler;

import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;

import javax.swing.AbstractAction;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;

public class DecaleEcheancePanel extends JPanel {

    public DecaleEcheancePanel(final SQLRowAccessor row) {
        super(new GridBagLayout());
        JLabel labelCom = new JLabel("Décaler l'écheance au");

        GridBagConstraints c = new DefaultGridBagConstraints();
        this.add(labelCom, c);
        c.gridx++;
        final JDate dateDeb = new JDate();
        this.add(dateDeb, c);

        dateDeb.setValue(row.getDate("DATE").getTime());

        final JButton buttonValid = new JButton(new AbstractAction("Valider") {

            @Override
            public void actionPerformed(ActionEvent e) {
                try {
                    if (dateDeb.getDate() != null) {
                        row.createEmptyUpdateRow().put("DATE", dateDeb.getDate()).commit();
                    }
                    ((JFrame) SwingUtilities.getRoot(DecaleEcheancePanel.this)).dispose();
                } catch (Exception e1) {
                    ExceptionHandler.handle("Erreur", e1);
                }

            }

        });
        c.gridx++;
        this.add(buttonValid, c);
    }

}