📄 userloginpanel.java
字号:
/* * ==================================================================== * The Vovida Software License, Version 1.0 * * Copyright (c) 2000 Vovida Networks, Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * 3. The names "VOCAL", "Vovida Open Communication Application Library", * and "Vovida Open Communication Application Library (VOCAL)" must * not be used to endorse or promote products derived from this * software without prior written permission. For written * permission, please contact vocal@vovida.org. * * 4. Products derived from this software may not be called "VOCAL", nor * may "VOCAL" appear in their name, without prior written * permission of Vovida Networks, Inc. * * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND * NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL VOVIDA * NETWORKS, INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT DAMAGES * IN EXCESS OF $1,000, NOR FOR ANY INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH * DAMAGE. * * ==================================================================== * * This software consists of voluntary contributions made by Vovida * Networks, Inc. and many individuals on behalf of Vovida Networks, * Inc. For more information on Vovida Networks, Inc., please see * <http://www.vovida.org/>. * *//** * Title: <p> * Description: <p> * Copyright: Copyright (c) <p> * Company: <p> * @author * @version 1.0 */package vocal.ui;import vocal.userEditor.Buttons;import javax.swing.*;import javax.swing.border.EmptyBorder;import java.awt.BorderLayout;import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import vocal.pw.AccessLevels;import vocal.userEditor.StandaloneUserEditor;import vocal.comm.VPPTransactionWrapper;import vocal.pw.PasswordManager;public class UserLoginPanel extends LoginPanel{ private StandaloneUserEditor editor; private JDialog dialog; public UserLoginPanel(boolean isStandAlone, VPPTransactionWrapper con, JRootPane root) { super(isStandAlone, con, root); new PasswordManager(con); dialog = new JDialog((JFrame) this.getTopLevelAncestor(), "User Configuration", false); } public void doLogin() { { try { editor = new StandaloneUserEditor(connect); } catch (Exception e) { System.out.println("Could not create user configuration editor"); e.printStackTrace(); JOptionPane.showMessageDialog(this, "Could not create user configuration screen because: \n" + e, "ERROR", JOptionPane.ERROR_MESSAGE); return; } } try { editor.setUser(getLoginId()); } catch (Exception e) { e.printStackTrace(); return; } // The user editor goes in the center panel of a border layout JPanel temp = new JPanel(); temp.setLayout(new BorderLayout()); temp.add(editor, BorderLayout.CENTER); // add another panel at the top which has the back button JPanel temp2 = new JPanel(); temp2.setLayout(new BoxLayout(temp2, BoxLayout.X_AXIS)); JButton back = new JButton("Back"); back.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { dialog.setVisible(false); } }); temp2.add(back); temp2.add(Box.createHorizontalGlue()); temp2.setBorder(new EmptyBorder(5, 5, 5, 5)); temp.add(temp2, BorderLayout.NORTH); JScrollPane scroller = new JScrollPane(temp); dialog.setContentPane(scroller); dialog.pack(); dialog.setModal(true); Container parent = UserLoginPanel.this.getTopLevelAncestor(); parent.setVisible(false); dialog.setVisible(true); // modal if (editor.getLastButtonClicked() == Buttons.BUTTON_OK) { editor.writeBack(); } parent.setVisible(true); if (JFrame.class.isInstance(parent)) { ((JFrame) parent).toFront(); ((JFrame) parent).setState(JFrame.NORMAL); } } public int getAccessLevel() { return AccessLevels.USER; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -