Package com.sun.star.pgp

Source Code of com.sun.star.pgp.PGPMainDialog

/*************************************************************************
*
*  $RCSfile: PGPMainDialog.java,v $
*
*  $Revision: 1.1.1.1 $
*
*  last change: $Author: hr $ $Date: 2000/09/18 16:16:50 $
*
*  The Contents of this file are made available subject to the terms of
*  either of the following licenses
*
*         - GNU Lesser General Public License Version 2.1
*         - Sun Industry Standards Source License Version 1.1
*
*  Sun Microsystems Inc., October, 2000
*
*  GNU Lesser General Public License Version 2.1
*  =============================================
*  Copyright 2000 by Sun Microsystems, Inc.
*  901 San Antonio Road, Palo Alto, CA 94303, USA
*
*  This library is free software; you can redistribute it and/or
*  modify it under the terms of the GNU Lesser General Public
*  License version 2.1, as published by the Free Software Foundation.
*
*  This library is distributed in the hope that it will be useful,
*  but WITHOUT ANY WARRANTY; without even the implied warranty of
*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
*  Lesser General Public License for more details.
*
*  You should have received a copy of the GNU Lesser General Public
*  License along with this library; if not, write to the Free Software
*  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
*  MA  02111-1307  USA
*
*
*  Sun Industry Standards Source License Version 1.1
*  =================================================
*  The contents of this file are subject to the Sun Industry Standards
*  Source License Version 1.1 (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.openoffice.org/license.html.
*
*  Software provided under this License is provided on an "AS IS" basis,
*  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
*  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
*  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
*  See the License for the specific provisions governing your rights and
*  obligations concerning the Software.
*
*  The Initial Developer of the Original Code is: Sun Microsystems, Inc.
*
*  Copyright: 2000 by Sun Microsystems, Inc.
*
*  All Rights Reserved.
*
*  Contributor(s): _______________________________________
*
*
************************************************************************/
package com.sun.star.pgp;

import java.util.ResourceBundle;
import java.awt.GridBagLayout;
import java.awt.GridBagConstraints;
import java.awt.Insets;
import java.awt.event.ItemListener;
import java.awt.event.ItemEvent;
import javax.swing.*;
import javax.swing.event.*;

import com.sun.star.pgp.IPGP;
import com.sun.star.pgp.UserInfo;


//==================================================================================================
public class PGPMainDialog extends JPanel
{
  private static final boolean DEBUG = true;

  private ResourceBundle m_aBundle= null;
  private JList    _recipientsList;
  private JCheckBox  _convCheck;
 
  //______________________________________________________________________________________________
  public boolean useConvEncryption()
  {
    return _convCheck.isSelected();
  }
  //______________________________________________________________________________________________
  public UserInfo[] getRecipients()
  {
    Object objs[]    = _recipientsList.getSelectedValues();
    UserInfo infos[] = new UserInfo[objs.length];
   
    for ( int nPos = 0; nPos < infos.length; ++nPos )
      infos[nPos] = (UserInfo)objs[nPos];
   
    return infos;
  }

  // for internale use ( this file)
  boolean hasSelection()
  {
    Object objs[] = _recipientsList.getSelectedValues();
    return objs.length > 0 ? true : false;
  }
  //----------------------------------------------------------------------------------------------
  PGPMainDialog(ResourceBundle bundle, IPGP pgp, String recipientsMail[] )
  {
   
    super( new GridBagLayout() );
    m_aBundle= bundle;
    Insets insets = new Insets( 2, 2, 2, 2 );

    // Recipients d1_label1= "Recipients"
    add( new JLabel( m_aBundle.getString("d1_label1") ),
       new JXGridBagConstraints( 0, 0, 2, 1, 1.0, 0.0,
                     GridBagConstraints.WEST, GridBagConstraints.NONE,
                     insets, 0, 0 ) );

    // Recipients list
    _recipientsList = new JList();
   
    UserInfo infos[] = pgp.getPublicUserInfos();
    _recipientsList.setListData( infos );

    UserInfo info = null;
    for ( int nPos = 0; nPos < recipientsMail.length; ++nPos )
    {
      info = UserInfo.getInfoFromEMail( recipientsMail[nPos], infos );
      if (info != null)
        _recipientsList.setSelectedValue( info, false );
    }
    if (info != null)
      _recipientsList.setSelectedValue( info, true ); // scroll to last selected value
    //d1_toolTip1="Select Recipients of your EMail"
    _recipientsList.setToolTipText( m_aBundle.getString("d1_toolTip1") );
    add( new JScrollPane( _recipientsList,
                JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
                JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED ),
       new JXGridBagConstraints( 0, 1, 2, 1, 1.0, 1.0,
                     GridBagConstraints.WEST, GridBagConstraints.BOTH,
                     insets, 0, 0 ) );

    // encryption type checkbox
    // d1_checkBox1= "Use Conventional Encryption"
    _convCheck = new JCheckBox( m_aBundle.getString("d1_checkBox1"));
    // d1_toolTip2= "Check this if you don't wnat public key encryption"
    _convCheck.setToolTipText( m_aBundle.getString("d1_toolTip2") );
    add( _convCheck,
       new JXGridBagConstraints( 0, 2, 2, 1, 1.0, 0.0,
                     GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
                     insets, 0, 0 ) );
  }

  //##############################################################################################

 
  //==============================================================================================
  public   static PGPMainDialog invoke( ResourceBundle bundle,IPGP pgp, String recipientsMail[] )
  {
    PGPMainDialog dialog = new PGPMainDialog( bundle, pgp, recipientsMail );

    Object obj[]={ bundle.getString("g_ok"), bundle.getString("g_cancel")};
    JOptionPane pane= new JOptionPane(dialog, JOptionPane.QUESTION_MESSAGE,
                      JOptionPane.OK_CANCEL_OPTION, null,
                      obj, obj[0] );
    // d1_title1="Choose Recipients"   
    JDialog dlg= pane.createDialog(null, bundle.getString("d1_title1"));
    dlg.show();

    if( obj[0].equals( pane.getValue()) )
    {
      //check for a selection
      if(dialog.hasSelection() || dialog.useConvEncryption())
        return dialog;
      return
        null;
    }
    else
      return null;
  }
}
TOP

Related Classes of com.sun.star.pgp.PGPMainDialog

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.