View Javadoc

1   /*
2    *   Copyright 2004 The Apache Software Foundation
3    *
4    *   Licensed under the Apache License, Version 2.0 (the "License");
5    *   you may not use this file except in compliance with the License.
6    *   You may obtain a copy of the License at
7    *
8    *       http://www.apache.org/licenses/LICENSE-2.0
9    *
10   *   Unless required by applicable law or agreed to in writing, software
11   *   distributed under the License is distributed on an "AS IS" BASIS,
12   *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   *   See the License for the specific language governing permissions and
14   *   limitations under the License.
15   *
16   */
17  package org.apache.ldap.server.partition.impl.btree.gui ;
18  
19  
20  import java.awt.Frame;
21  import java.awt.event.ActionEvent;
22  import java.awt.event.ActionListener;
23  
24  import javax.naming.directory.Attributes;
25  import javax.swing.JButton;
26  import javax.swing.JComboBox;
27  import javax.swing.JDialog;
28  import javax.swing.JLabel;
29  import javax.swing.JPanel;
30  import javax.swing.JScrollPane;
31  import javax.swing.JTable;
32  import javax.swing.JTextField;
33  
34  
35  /***
36   * Allows for operations on entries.
37   * 
38   * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
39   * @version $Rev: 264732 $
40   */
41  public class EntryDialog extends JDialog
42  {
43      private static final long serialVersionUID = 3761684611092001592L;
44  
45      private JPanel m_namePnl = new JPanel() ;
46      private JPanel m_attrPnl = new JPanel() ;
47      private JPanel m_buttonPnl = new JPanel() ;
48      private JPanel m_rdnPnl = new JPanel() ;
49      private JPanel m_dnPnl = new JPanel() ;
50      private JLabel m_rdnLbl = new JLabel() ;
51      private JComboBox m_rdnChoice = new JComboBox() ;
52      private JTextField m_dnText = new JTextField() ;
53      private JScrollPane m_attrScrollPnl = new JScrollPane() ;
54      private JTable m_attrTbl = new JTable() ;
55      private JButton m_doneBut = new JButton() ;
56      private JButton m_cancelBut = new JButton() ;
57  
58      private String m_opMode = "Add" ;
59      private String m_dn ;
60      private String m_rdn ;
61      private Attributes m_entry ;
62  
63  
64      /***
65       * Creates new form JDialog
66       *  
67       * @param a_parent
68       * @param a_modal
69       */
70      public EntryDialog( Frame a_parent, String a_opMode, boolean a_modal )
71      {
72          super( a_parent, a_modal ) ;
73          m_opMode = a_opMode ;
74          initGUI() ;
75      }
76  
77  
78      /*** 
79       * This method is called from within the constructor to initialize the form.
80       */
81      private void initGUI( )
82      {
83          addWindowListener( new java.awt.event.WindowAdapter(  )
84          {
85              public void windowClosing( java.awt.event.WindowEvent evt )
86              {
87                  closeDialog( ) ;
88              }
89          } ) ;
90          pack(  ) ;
91          setBounds( new java.awt.Rectangle( 0, 0, 447, 364 ) ) ;
92          setTitle( "Entry Dialog" ) ;
93          getContentPane(  ).setLayout( new java.awt.GridBagLayout(  ) ) ;
94          getContentPane(  ).add( 
95              m_namePnl,
96              new java.awt.GridBagConstraints( 
97                  0,
98                  0,
99                  1,
100                 1,
101                 1.0,
102                 0.0,
103                 java.awt.GridBagConstraints.NORTH,
104                 java.awt.GridBagConstraints.HORIZONTAL,
105                 new java.awt.Insets( 5, 5, 5, 5 ),
106                 0,
107                 0 ) ) ;
108         getContentPane(  ).add( 
109             m_attrPnl,
110             new java.awt.GridBagConstraints( 
111                 0,
112                 1,
113                 1,
114                 1,
115                 1.0,
116                 1.0,
117                 java.awt.GridBagConstraints.CENTER,
118                 java.awt.GridBagConstraints.BOTH,
119                 new java.awt.Insets( 5, 5, 5, 5 ),
120                 0,
121                 0 ) ) ;
122         getContentPane(  ).add( 
123             m_buttonPnl,
124             new java.awt.GridBagConstraints( 
125                 0,
126                 2,
127                 1,
128                 1,
129                 1.0,
130                 0.05,
131                 java.awt.GridBagConstraints.CENTER,
132                 java.awt.GridBagConstraints.HORIZONTAL,
133                 new java.awt.Insets( 0, 0, 0, 20 ),
134                 0,
135                 0 ) ) ;
136         m_namePnl.setBorder( 
137             javax.swing.BorderFactory.createTitledBorder( 
138                 javax.swing.BorderFactory.createLineBorder( 
139                     new java.awt.Color( 153, 153, 153 ),
140                     1 ),
141                 "Naming",
142                 javax.swing.border.TitledBorder.LEADING,
143                 javax.swing.border.TitledBorder.TOP,
144                 new java.awt.Font( "SansSerif", 0, 14 ),
145                 new java.awt.Color( 60, 60, 60 ) ) ) ;
146         m_namePnl.setLayout( 
147             new javax.swing.BoxLayout( m_namePnl, javax.swing.BoxLayout.Y_AXIS ) ) ;
148         m_namePnl.add( m_rdnPnl ) ;
149         m_namePnl.add( m_dnPnl ) ;
150         m_rdnLbl.setText( "Rdn:" ) ;
151         m_rdnPnl.setLayout( new java.awt.GridBagLayout() ) ;
152         m_rdnPnl.add( 
153             m_rdnChoice,
154             new java.awt.GridBagConstraints( 
155                 1,
156                 0,
157                 1,
158                 1,
159                 1.0,
160                 0.0,
161                 java.awt.GridBagConstraints.WEST,
162                 java.awt.GridBagConstraints.NONE,
163                 new java.awt.Insets( 0, 10, 0, 0 ),
164                 0,
165                 0 ) ) ;
166         m_rdnPnl.add( 
167             m_rdnLbl,
168             new java.awt.GridBagConstraints( 
169                 0,
170                 0,
171                 1,
172                 1,
173                 0.0,
174                 0.0,
175                 java.awt.GridBagConstraints.WEST,
176                 java.awt.GridBagConstraints.NONE,
177                 new java.awt.Insets( 0, 10, 0, 0 ),
178                 0,
179                 0 ) ) ;
180         m_dnPnl.setLayout( new java.awt.GridBagLayout(  ) ) ;
181         m_dnPnl.add( 
182             m_dnText,
183             new java.awt.GridBagConstraints( 
184                 1,
185                 0,
186                 1,
187                 1,
188                 1.0,
189                 0.0,
190                 java.awt.GridBagConstraints.WEST,
191                 java.awt.GridBagConstraints.HORIZONTAL,
192                 new java.awt.Insets( 0, 5, 0, 0 ),
193                 0,
194                 0 ) ) ;
195         m_dnText.setText( "unknown" ) ;
196         m_dnText.setEditable( false ) ;
197         m_dnText.setBorder( 
198             javax.swing.BorderFactory.createTitledBorder( 
199                 javax.swing.BorderFactory.createLineBorder( 
200                     new java.awt.Color( 153, 153, 153 ),
201                     1 ),
202                 "Dn",
203                 javax.swing.border.TitledBorder.LEADING,
204                 javax.swing.border.TitledBorder.TOP,
205                 new java.awt.Font( "SansSerif", 0, 14 ),
206                 new java.awt.Color( 60, 60, 60 ) ) ) ;
207         m_rdnChoice.setEditable( true ) ;
208         m_rdnChoice.setMaximumRowCount( 6 ) ;
209         
210         m_rdnChoice.setSize( new java.awt.Dimension( 130, 24 ) ) ;
211         m_attrPnl.setLayout( new java.awt.BorderLayout(  ) ) ;
212         m_attrPnl.add( m_attrScrollPnl, java.awt.BorderLayout.CENTER ) ;
213         m_attrScrollPnl.getViewport(  ).add( m_attrTbl ) ;
214         m_attrTbl.setBounds( new java.awt.Rectangle( 78, 60, 32, 32 ) ) ;
215         m_attrTbl.setEditingColumn( 1 ) ;
216         m_attrTbl.setCellSelectionEnabled( true ) ;
217         m_doneBut.setText( "Done" ) ;
218         m_buttonPnl.setLayout( 
219             new java.awt.FlowLayout( java.awt.FlowLayout.RIGHT, 10, 5 ) ) ;
220         m_buttonPnl.add( m_doneBut ) ;
221         m_buttonPnl.add( m_cancelBut ) ;
222         m_cancelBut.setText( "Cancel" ) ;
223         m_cancelBut.addActionListener( new ActionListener () 
224         {
225             public void actionPerformed( ActionEvent a_evt )
226             {
227                 closeDialog() ;
228             }
229         } ) ;
230         m_attrScrollPnl.setBorder( 
231             javax.swing.BorderFactory.createTitledBorder( 
232                 javax.swing.BorderFactory.createLineBorder( 
233                     new java.awt.Color( 153, 153, 153 ),
234                     1 ),
235                 "Attributes",
236                 javax.swing.border.TitledBorder.LEADING,
237                 javax.swing.border.TitledBorder.TOP,
238                 new java.awt.Font( "SansSerif", 0, 14 ),
239                 new java.awt.Color( 60, 60, 60 ) ) ) ;
240     }
241 
242 
243     /*** Closes the dialog */
244     private void closeDialog()
245     {
246         setVisible( false ) ;
247         dispose() ;
248     }
249 
250 
251     public void setDn( String a_dn )
252     {
253         m_dn = a_dn ;
254         m_dnText.setText( a_dn ) ;
255     }
256     
257     
258     public void setRdn( String a_rdn )
259     {
260         m_rdn = a_rdn ;
261         // m_rdnChoice.setSelectedItem(  ) ;
262     }
263     
264     
265     public void setEntry( Attributes a_entry )
266     {
267         m_entry = a_entry ;
268     }
269 }