com.ibm.as400.vaccess.VSysvalTextDialog Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jt400 Show documentation
Show all versions of jt400 Show documentation
The Open Source version of the IBM Toolbox for Java
The newest version!
///////////////////////////////////////////////////////////////////////////////
//
// JTOpen (IBM Toolbox for Java - OSS version)
//
// Filename: VSysvalTextDialog.java
//
// The source code contained herein is licensed under the IBM Public License
// Version 1.0, which has been approved by the Open Source Initiative.
// Copyright (C) 1997-2000 International Business Machines Corporation and
// others. All rights reserved.
//
///////////////////////////////////////////////////////////////////////////////
package com.ibm.as400.vaccess;
import com.ibm.as400.access.Trace;
import com.ibm.as400.access.SystemValue;
import com.ibm.as400.access.SystemValueList;
import javax.swing.JDialog;
import javax.swing.JPanel;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.event.KeyListener;
import java.awt.event.KeyEvent;
import javax.swing.JLabel;
import javax.swing.JButton;
import javax.swing.JTextField;
import javax.swing.JList;
import javax.swing.BoxLayout;
import javax.swing.Box;
import javax.swing.JTabbedPane;
import javax.swing.JDialog;
import javax.swing.JScrollPane;
import javax.swing.ButtonGroup;
import javax.swing.Icon;
import javax.swing.JRadioButton;
import java.awt.Frame;
import java.awt.Component;
import java.math.BigDecimal;
import javax.swing.border.Border;
import javax.swing.border.EmptyBorder;
import java.awt.Container;
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.LayoutManager;
/**
* The class VsysvalTextDialog defines a dialog
* for the user to modify the system values
* of char type.
**/
class VSysvalTextDialog extends JDialog
implements ActionListener, KeyListener
{
private static final String copyright = "Copyright (C) 1997-2000 International Business Machines Corporation and others.";
// Private data.
private JTextField valueText_;
private VSystemValue systemValue_;
private Frame frame_;
private JButton okButton_ ;
private JButton cancelButton_ ;
private JButton applyButton_ ;
// MRI
final private static String okButtonText_;
final private static String cancelButtonText_;
final private static String applyButtonText_;
final private static String modifyDialogTitle_;
final private static String modifyActionTab_;
final private static String valueName_;
final private static String valueDescription_;
final private static String valueInformation_;
static
{
okButtonText_ = (String)ResourceLoader.getText("DLG_OK");
cancelButtonText_ = (String)ResourceLoader.getText("DLG_CANCEL");
applyButtonText_ = (String)ResourceLoader.getText("DLG_APPLY");
modifyDialogTitle_ = (String)ResourceLoader.getText("DLG_MODIFY_0"); // @C1C
modifyActionTab_ = (String)ResourceLoader.getText("ACTION_MODIFY");
valueName_ = (String)ResourceLoader.getText("COLUMN_NAME");
valueDescription_ = (String)ResourceLoader.getText("COLUMN_DESCRIPTION");
valueInformation_ = (String)ResourceLoader.getText("COLUMN_VALUE");
}
/** Constructs a VSysvalTextDialog object. It creates a dialog for the user
* to modify the system value.
* @param systemValue The VSystemValue to modify.
* @param frame The frame in which this dialog resides.
**/
public VSysvalTextDialog(VSystemValue systemValue, Frame frame)
{
super(frame, ResourceLoader.substitute(modifyDialogTitle_, systemValue.getName()), true); // @C1C
systemValue_ = systemValue;
frame_ = frame;
int length = systemValue_.getDescription().length();
if (length <=29)
length=30;
setSize(30+8*length,200);
setResizable(false);
JPanel line1 = new JPanel();
okButton_ = new JButton(okButtonText_);
cancelButton_ = new JButton(cancelButtonText_);
applyButton_ = new JButton(applyButtonText_);
applyButton_.setEnabled(false);
okButton_.addActionListener(this);
cancelButton_.addActionListener(this);
applyButton_.addActionListener(this);
line1.add(okButton_);
line1.add(cancelButton_);
line1.add(applyButton_);
JTabbedPane tabbedPane = new JTabbedPane();
tabbedPane.addTab(modifyActionTab_,getComponent());
Container c=getContentPane();
c.add("North",tabbedPane);
c.add("South",line1);
pack();
}
/**
* Processes the action event.
* @param e The action event.
**/
public void actionPerformed(ActionEvent e)
{
if (e.getSource().equals(okButton_))
{
try
{
applyChanges();
dispose();
}
catch(Exception x)
{
x.fillInStackTrace();
systemValue_.errorEventSupport_.fireError(x);
}
}
if (e.getSource().equals(cancelButton_))
dispose();
if (e.getSource().equals(applyButton_))
{
try
{
applyChanges();
applyButton_.setEnabled(false);
}
catch(Exception x)
{
x.fillInStackTrace();
systemValue_.errorEventSupport_.fireError(x);
}
}
}
/**
* Processes the change action.
**/
public void applyChanges()
{
int type = systemValue_.getType();
switch(type)
{
case SystemValueList.TYPE_INTEGER:
Integer intValue = null;
intValue = Integer.valueOf(valueText_.getText());
systemValue_.setValue(intValue);
break;
case SystemValueList.TYPE_DECIMAL:
BigDecimal decValue = null;
decValue = new BigDecimal(valueText_.getText());
systemValue_.setValue(decValue);
break;
case SystemValueList.TYPE_STRING:
systemValue_.setValue(valueText_.getText());
break;
}
Object value = null;
value = systemValue_.getValue();
applyButton_.setEnabled(false);
systemValue_.load();
}
/**
* Returns the component.
* @return The component to display the content.
**/
private Component getComponent()
{
JPanel jPanel1= new JPanel();
GridBagLayout gridBa2= new GridBagLayout();
jPanel1.setLayout(((LayoutManager)gridBa2));
jPanel1.setBorder(
((Border)new EmptyBorder(10, 10, 10, 10)));
int int3= 0;
int3++;
VUtilities.constrain(valueName_ + ": ",
systemValue_.getName(),
jPanel1,
gridBa2,
int3++);
int3++;
valueText_ = new JTextField();
valueText_.addKeyListener(this);
int valueType = systemValue_.getType();
String valueString = null;
Object valueObject = null;
valueObject = systemValue_.getValue();
Integer in = null;
BigDecimal bd = null;
switch(valueType)
{
case SystemValueList.TYPE_INTEGER:
in = (Integer) valueObject;
valueString = in.toString();
break;
case SystemValueList.TYPE_DECIMAL:
bd = (BigDecimal) valueObject;
valueString = bd.toString();
break;
case SystemValueList.TYPE_STRING:
valueString = (String) valueObject;
break;
}
valueText_.setText(valueString);
VUtilities.constrain(new JLabel( valueInformation_ + ": "),
jPanel1,
gridBa2,
0,
int3,
1,
1);
VUtilities.constrain(((Component)valueText_),
jPanel1,
gridBa2,
1,
int3++,
1,
1);
int3++;
int length1 = systemValue_.getDescription().length();
if(length1 < 29 )
{
StringBuffer sb = new StringBuffer(systemValue_.getDescription());
for(int i=0;i <29- length1 ;i++)
sb.append(" ");
VUtilities.constrain(valueDescription_+": ",
sb.toString(),
jPanel1,
gridBa2,
int3++);
}
else
{
VUtilities.constrain(valueDescription_+": ",
systemValue_.getDescription(),
jPanel1,
gridBa2,
int3++);
}
return ((Component)jPanel1);
}
/** The key is pressed.
* @param keyEvent The key event.
**/
public void keyPressed(KeyEvent keyEvent)
{
}
/** The key is released.
* @param keyEvent The key event.
**/
public void keyReleased(KeyEvent keyEvent)
{
}
/** The key is typed.
* @param keyEvent The key event.
**/
public void keyTyped(KeyEvent keyEvent)
{
applyButton_.setEnabled(true);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy