Package org.onebusaway.quickstart.bootstrap.gui

Source Code of org.onebusaway.quickstart.bootstrap.gui.GtfsRealtimePathsPanel

/**
* Copyright (C) 2011 Google, Inc.
*
* 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.
*/
package org.onebusaway.quickstart.bootstrap.gui;

import javax.swing.JPanel;
import net.miginfocom.swing.MigLayout;
import javax.swing.JTextPane;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.UIManager;
import org.jdesktop.beansbinding.BeanProperty;
import org.jdesktop.beansbinding.AutoBinding;
import org.jdesktop.beansbinding.Bindings;
import org.jdesktop.beansbinding.AutoBinding.UpdateStrategy;
import org.onebusaway.quickstart.GuiQuickstartDataModel;
import org.onebusaway.quickstart.bootstrap.gui.widgets.JCustomTextField;

public class GtfsRealtimePathsPanel extends JPanel {

  private static final long serialVersionUID = 1L;

  private GuiQuickstartDataModel model;

  private JCustomTextField tripUpdatesUrlTextField;
  private JCustomTextField vehiclePositionsUrlTextField;
  private JCustomTextField alertsUrlTextField;

  /**
   * Create the panel.
   */
  public GtfsRealtimePathsPanel(GuiQuickstartDataModel model) {
    this.model = model;

    setLayout(new MigLayout("", "[450px,grow]", "[][][][][][][]"));

    JTextPane txtpnIfYouHave = new JTextPane();
    txtpnIfYouHave.setEditable(false);
    txtpnIfYouHave.setBackground(UIManager.getColor("control"));
    txtpnIfYouHave.setText("If you have access to real-time transit information in the GTFS-realtime format for your agency, specify the source URLs here.");
    txtpnIfYouHave.setToolTipText("");
    add(txtpnIfYouHave, "cell 0 0,grow");

    JLabel lblTripUpdatesUrl = new JLabel("Trip Updates URL:");
    add(lblTripUpdatesUrl, "cell 0 1");

    tripUpdatesUrlTextField = new JCustomTextField();
    add(tripUpdatesUrlTextField, "cell 0 2,growx");
    tripUpdatesUrlTextField.setColumns(10);

    JLabel lblVehiclePositionsUrl = new JLabel("Vehicle Positions URL:");
    add(lblVehiclePositionsUrl, "cell 0 3");

    vehiclePositionsUrlTextField = new JCustomTextField();
    add(vehiclePositionsUrlTextField, "cell 0 4,growx");
    vehiclePositionsUrlTextField.setColumns(10);

    JLabel lblAlertsUrl = new JLabel("Alerts URL:");
    add(lblAlertsUrl, "cell 0 5");

    alertsUrlTextField = new JCustomTextField();
    add(alertsUrlTextField, "cell 0 6,growx");
    alertsUrlTextField.setColumns(10);
    initDataBindings();

    tripUpdatesUrlTextField.addTextPropertyChangeEvent();
    vehiclePositionsUrlTextField.addTextPropertyChangeEvent();
    alertsUrlTextField.addTextPropertyChangeEvent();
  }
  protected void initDataBindings() {
    BeanProperty<GuiQuickstartDataModel, String> bootstrapDataModelBeanProperty = BeanProperty.create("tripUpdatesUrl");
    BeanProperty<JTextField, String> jTextFieldBeanProperty = BeanProperty.create("text");
    AutoBinding<GuiQuickstartDataModel, String, JTextField, String> autoBinding = Bindings.createAutoBinding(UpdateStrategy.READ_WRITE, model, bootstrapDataModelBeanProperty, tripUpdatesUrlTextField, jTextFieldBeanProperty);
    autoBinding.bind();
    //
    BeanProperty<GuiQuickstartDataModel, String> bootstrapDataModelBeanProperty_1 = BeanProperty.create("vehiclePositionsUrl");
    BeanProperty<JTextField, String> jTextFieldBeanProperty_1 = BeanProperty.create("text");
    AutoBinding<GuiQuickstartDataModel, String, JTextField, String> autoBinding_1 = Bindings.createAutoBinding(UpdateStrategy.READ_WRITE, model, bootstrapDataModelBeanProperty_1, vehiclePositionsUrlTextField, jTextFieldBeanProperty_1);
    autoBinding_1.bind();
    //
    BeanProperty<GuiQuickstartDataModel, String> bootstrapDataModelBeanProperty_2 = BeanProperty.create("alertsUrl");
    BeanProperty<JTextField, String> jTextFieldBeanProperty_2 = BeanProperty.create("text");
    AutoBinding<GuiQuickstartDataModel, String, JTextField, String> autoBinding_2 = Bindings.createAutoBinding(UpdateStrategy.READ_WRITE, model, bootstrapDataModelBeanProperty_2, alertsUrlTextField, jTextFieldBeanProperty_2);
    autoBinding_2.bind();
  }
}
TOP

Related Classes of org.onebusaway.quickstart.bootstrap.gui.GtfsRealtimePathsPanel

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.