Package de.timefinder.core.ui.form

Source Code of de.timefinder.core.ui.form.EventForm

/*
*  Copyright 2009 Peter Karich.
*
*  Licensed under the Apache License, Version 2.0 (the "License");
*  you may not use this file except in compliance with the License.
*  You may obtain a copy of the License at
*
*       http://www.apache.org/licenses/LICENSE-2.0
*
*  Unless required by applicable law or agreed to in writing, software
*  distributed under the License is distributed on an "AS IS" BASIS,
*  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*  See the License for the specific language governing permissions and
*  limitations under the License.
*  under the License.
*/
package de.timefinder.core.ui.form;

import de.timefinder.data.algo.DataPoolSettings;
import javax.swing.JComponent;
import org.springframework.binding.form.HierarchicalFormModel;
import org.springframework.binding.value.ValueModel;
import org.springframework.binding.value.support.ObservableList;
import org.springframework.richclient.form.binding.Binding;
import org.springframework.richclient.form.binding.swing.SwingBindingFactory;
import org.springframework.richclient.form.builder.TableFormBuilder;

/**
* @author Peter Karich
*/
public class EventForm extends AbstractDaoForm {

    private JComponent nameEditor;
    private DataPoolSettings settings;

    public EventForm(HierarchicalFormModel parentFormModel, String formId,
            ValueModel valueHolder, ObservableList masterList) {
        super(parentFormModel, formId, valueHolder, masterList);
    }

    public void setSettings(DataPoolSettings settings) {
        this.settings = settings;
    }

    @Override
    protected JComponent createFormControl() {
        SwingBindingFactory factory = (SwingBindingFactory) getBindingFactory();
        TableFormBuilder formBuilder = getFormBuilder();

        nameEditor = formBuilder.add("name")[1];
        formBuilder.row();

        Binding binding = new EventStartBinding(getFormModel(), settings);
        formBuilder.addBinding(binding, (JComponent) null, "colSpan=1 align=left");       

        formBuilder.add(factory.createBoundComboBox("duration", EventStartBinding.createList(1, settings.getTimeslotsPerDay() + 1)));
        formBuilder.row();

        formBuilder.addTextArea("description");
        formBuilder.row();

//        addFormValueChangeListener("start", new PropertyChangeListener() {
//
//            @Override
//            public void propertyChange(PropertyChangeEvent evt) {
//
//            }
//        });

        return super.createFormControl();
    }


    @Override
    public boolean requestFocusInWindow() {
        return nameEditor.requestFocusInWindow();
    }
}
TOP

Related Classes of de.timefinder.core.ui.form.EventForm

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.