home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / inprise / JSAMPLES.Z / ShipToPanel.java < prev    next >
Text File  |  1998-05-08  |  5KB  |  118 lines

  1. /*
  2.  * Copyright (c) 1997-1998 Borland International, Inc. All Rights Reserved.
  3.  * 
  4.  * This SOURCE CODE FILE, which has been provided by Borland as part
  5.  * of a Borland product for use ONLY by licensed users of the product,
  6.  * includes CONFIDENTIAL and PROPRIETARY information of Borland.  
  7.  *
  8.  * USE OF THIS SOFTWARE IS GOVERNED BY THE TERMS AND CONDITIONS 
  9.  * OF THE LICENSE STATEMENT AND LIMITED WARRANTY FURNISHED WITH
  10.  * THE PRODUCT.
  11.  *
  12.  * IN PARTICULAR, YOU WILL INDEMNIFY AND HOLD BORLAND, ITS RELATED
  13.  * COMPANIES AND ITS SUPPLIERS, HARMLESS FROM AND AGAINST ANY CLAIMS
  14.  * OR LIABILITIES ARISING OUT OF THE USE, REPRODUCTION, OR DISTRIBUTION
  15.  * OF YOUR PROGRAMS, INCLUDING ANY CLAIMS OR LIABILITIES ARISING OUT OF
  16.  * OR RESULTING FROM THE USE, MODIFICATION, OR DISTRIBUTION OF PROGRAMS
  17.  * OR FILES CREATED FROM, BASED ON, AND/OR DERIVED FROM THIS SOURCE
  18.  * CODE FILE.
  19.  */
  20.  
  21. package borland.samples.intl.gui;
  22.  
  23. import java.awt.*;
  24. import java.awt.event.*;
  25. import java.util.*;
  26. import borland.jbcl.layout.*;
  27. import borland.jbcl.control.*;
  28.  
  29. import borland.samples.intl.application.*;
  30. import borland.samples.intl.beans.*;
  31. import borland.samples.intl.beans.event.*;
  32.  
  33. public class ShipToPanel extends BevelPanel implements LocaleChangeListener {
  34.   private AppDataModule appDataModule = AppDataModule.getDataModule();
  35.  
  36.   BevelPanel bevelPanel1 = new BevelPanel();
  37.   BorderLayout borderLayout1 = new BorderLayout();
  38.   InterchangeableCustomerInfoPanel customerInfoPanel;
  39.   BorderLayout borderLayout2 = new BorderLayout();
  40.   CheckboxControl useSameAddressCheckbox = new CheckboxControl();
  41.   ResourceBundle textRes = java.util.ResourceBundle.getBundle("borland.samples.intl.gui.resources.TextRes",
  42.                                                               LocaleChangeManager.getLocale());
  43.   ResourceBundle guiRes = java.util.ResourceBundle.getBundle("borland.samples.intl.gui.resources.GuiRes",
  44.                                                              LocaleChangeManager.getLocale());
  45.  
  46.   public ShipToPanel() {
  47.     try {
  48.       // customerInfoPanel is loaded at runtime, so we can't design it using
  49.       // the designer.  But we get it and set its properties here so it can
  50.       // be added to the panel in jbInit()
  51.       customerInfoPanel = (InterchangeableCustomerInfoPanel) guiRes.getObject("ShipToCustomerInfoPanel");
  52.       customerInfoPanel.setReadOnly(true);
  53.       customerInfoPanel.setDataSet(appDataModule.getCustomerDataSet());
  54.       customerInfoPanel.localeChanged(new LocaleChangeEvent(this, LocaleChangeManager.getLocale()));
  55.       jbInit();
  56.       LocaleChangeManager.getLocaleChangeManager().addLocaleChangeListener(this);
  57.     }
  58.     catch (Exception e) {
  59.       e.printStackTrace();
  60.     }
  61.   }
  62.  
  63.   public void jbInit() throws Exception{
  64.     useSameAddressCheckbox.setChecked(true);
  65.     useSameAddressCheckbox.setLabel(textRes.getString("Use_same_address"));
  66.     useSameAddressCheckbox.addItemListener(new ShipToPanel_useSameAddressCheckbox_itemListenerAdapter(this));
  67.     this.setLayout(borderLayout1);
  68.     this.add(useSameAddressCheckbox, BorderLayout.NORTH);
  69.     this.add((Panel) customerInfoPanel, BorderLayout.CENTER);
  70.  
  71.   }
  72.  
  73.   void useSameAddressCheckbox_itemStateChanged(ItemEvent e) {
  74.     if (useSameAddressCheckbox.isChecked()) {
  75.        customerInfoPanel.setReadOnly(true);
  76.        customerInfoPanel.setDataSet(appDataModule.getCustomerDataSet());
  77.     } else {
  78.        customerInfoPanel.setReadOnly(false);
  79.        customerInfoPanel.setDataSet(appDataModule.getOrderDataSet());
  80.     }
  81.   }
  82.  
  83.   public void localeChanged(LocaleChangeEvent e) {
  84.     textRes = java.util.ResourceBundle.getBundle("borland.samples.intl.gui.resources.TextRes", e.getLocale());
  85.     guiRes = java.util.ResourceBundle.getBundle("borland.samples.intl.gui.resources.GuiRes", e.getLocale());
  86.     useSameAddressCheckbox.setLabel(textRes.getString("Use_same_address"));
  87.     this.remove((Panel) customerInfoPanel);
  88.     customerInfoPanel = (InterchangeableCustomerInfoPanel) guiRes.getObject("ShipToCustomerInfoPanel");
  89.     customerInfoPanel.localeChanged(e);
  90.     this.add((Panel) customerInfoPanel, BorderLayout.CENTER);
  91.     if (useSameAddressCheckbox.isChecked()) {
  92.        customerInfoPanel.setReadOnly(true);
  93.        customerInfoPanel.setDataSet(appDataModule.getCustomerDataSet());
  94.     } else {
  95.        customerInfoPanel.setReadOnly(false);
  96.        customerInfoPanel.setDataSet(appDataModule.getOrderDataSet());
  97.     }
  98.   }
  99.  
  100. }
  101.  
  102. class ShipToPanel_useSameAddressCheckbox_itemListenerAdapter implements java.awt.event.ItemListener {
  103.   ShipToPanel adaptee;
  104.  
  105.   ShipToPanel_useSameAddressCheckbox_itemListenerAdapter(ShipToPanel adaptee) {
  106.     this.adaptee = adaptee;
  107.   }
  108.  
  109.   public void itemStateChanged(ItemEvent e) {
  110.     adaptee.useSameAddressCheckbox_itemStateChanged(e);
  111.   }
  112. }
  113.  
  114.  
  115.  
  116.  
  117.  
  118.