View Javadoc

1   /*
2    * Fsgrep is a simple Java application which allows a user to
3    * search all files in a directory structure for lines matching
4    * a given pattern.  Its functionality is a combination of the
5    * Unix 'find' and 'grep' utilities.
6    * Visit [http://fsgrep.sourceforge.net/] for more information.
7    * 
8    * Copyright (C) 2003-2006 Murali Krishnan [murali_ca_us@users.sourceforge.net]
9    * 
10   * Fsgrep is free software; you can redistribute it and/or modify
11   * it under the terms of version 2 of the GNU General Public
12   * License as published by the Free Software Foundation.
13   * 
14   * Fsgrep is distributed in the hope that it will be useful,
15   * but WITHOUT ANY WARRANTY; without even the implied warranty of
16   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17   * GNU General Public License for more details.
18   * 
19   * You should have received a copy of the GNU General Public License
20   * along with Fsgrep (see the file named LICENSE.txt); if not, write
21   * to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
22   * Boston, MA  02111-1307  USA
23   */
24  
25  package mk.fsgrep.gui;
26  
27  
28  import java.awt.*;
29  import java.awt.event.*;
30  
31  import javax.swing.*;
32  
33  import mk.fsgrep.util.IconResource;
34  import mk.fsgrep.util.TextResource;
35  
36  
37  
38  /***
39   * A specialized button that displays an informational dialog.
40   * 
41   * @author  Murali Krishnan
42   *
43   */
44  public class InfoButton extends JButton {
45  
46      //------------------------------------------------------------
47      //- Class Variables
48  
49      private static Icon _iconForButton = IconResource.get("info.jpg");
50  
51  
52  
53      //------------------------------------------------------------
54      //- Class Functions
55  
56      protected static Icon getIconForButton() {return _iconForButton;}
57  
58  
59  
60      //------------------------------------------------------------
61      //- Instance Variables
62  
63  
64  
65      //------------------------------------------------------------
66      //- Constructors
67  
68      InfoButton(final Component parent, String resource) {
69          super(getIconForButton());
70  
71          setBorderPainted(false);
72          setToolTipText("Explain this field.");
73          setMargin(new Insets(0, 0, 0, 0));
74  
75          final String info = TextResource.get("info/" + resource);
76  
77          addActionListener(new ActionListener () {
78                  public void actionPerformed (ActionEvent e) {
79                      new InfoDialog(parent, "Fsgrep feature description", info);
80                  }
81              });
82      }
83  
84  
85      //------------------------------------------------------------
86      //- Accessors
87  
88  
89  
90      //------------------------------------------------------------
91      //- Settors
92  
93  
94  
95      //------------------------------------------------------------
96      //- Private/Protected Utility Functions
97  
98  
99  
100     //------------------------------------------------------------
101     //- Public Interface Functions
102 
103 
104 
105     //------------------------------------------------------------
106     //- Class Interface Functions
107 
108 
109 
110     //------------------------------------------------------------
111     //- Inner Classes
112 
113 
114 
115     //------------------------------------------------------------
116     //- Main
117 
118 
119 
120 }