KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > nqadmin > swingSet > formatting > SSCurrencyFormatterFactory


1 /* $Id: SSCurrencyFormatterFactory.java,v 1.6 2005/02/04 22:42:06 yoda2 Exp $
2  *
3  * Tab Spacing = 4
4  *
5  * Copyright (c) 2004-2005, The Pangburn Company, Prasanth R. Pasala and
6  * Diego Gil
7  * All rights reserved.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted provided that the following conditions are met:
11  *
12  * Redistributions of source code must retain the above copyright notice, this
13  * list of conditions and the following disclaimer. Redistributions in binary
14  * form must reproduce the above copyright notice, this list of conditions and
15  * the following disclaimer in the documentation and/or other materials
16  * provided with the distribution. The names of its contributors may not be
17  * used to endorse or promote products derived from this software without
18  * specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
24  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
30  * POSSIBILITY OF SUCH DAMAGE.
31  *
32  */

33
34 package com.nqadmin.swingSet.formatting;
35
36 import javax.swing.text.NumberFormatter JavaDoc;
37 import java.text.NumberFormat JavaDoc;
38 import java.util.Locale JavaDoc;
39
40 import java.io.Serializable JavaDoc;
41 import java.text.ParseException JavaDoc;
42
43 /**
44  *
45  * @author dags
46  */

47 public class SSCurrencyFormatterFactory extends javax.swing.text.DefaultFormatterFactory JavaDoc implements Serializable JavaDoc {
48     
49     /**
50      * SSCurrencyFormatterFactory constructor, without arguments.
51      * Creates a SSCurrencyFormatter with default Locale for
52      */

53     
54     public SSCurrencyFormatterFactory() {
55         this.setDefaultFormatter(new NumberFormatter JavaDoc(NumberFormat.getCurrencyInstance()));
56         this.setNullFormatter(null);
57         this.setEditFormatter(new NumberFormatter JavaDoc(NumberFormat.getInstance(Locale.US)));
58         this.setDisplayFormatter(new NumberFormatter JavaDoc(NumberFormat.getCurrencyInstance()));
59     }
60     
61     public SSCurrencyFormatterFactory(int precision, int decimals) {
62         NumberFormat JavaDoc nfd = NumberFormat.getCurrencyInstance(Locale.US);
63         nfd.setMaximumFractionDigits(decimals);
64         nfd.setMinimumFractionDigits(decimals);
65         
66         nfd.setMaximumIntegerDigits(precision);
67         nfd.setMinimumIntegerDigits(1);
68         
69         this.setDefaultFormatter(new NumberFormatter JavaDoc(NumberFormat.getCurrencyInstance()));
70         this.setNullFormatter(null);
71         this.setEditFormatter(new NumberFormatter JavaDoc(NumberFormat.getInstance(Locale.US)));
72         this.setDisplayFormatter(new NumberFormatter JavaDoc(nfd));
73     }
74     
75     public SSCurrencyFormatterFactory(int precision, int decimals, Locale JavaDoc editor_locale, Locale JavaDoc display_locale) {
76         
77         NumberFormat JavaDoc nfe = NumberFormat.getCurrencyInstance(editor_locale);
78         nfe.setMaximumFractionDigits(decimals);
79         nfe.setMinimumFractionDigits(decimals);
80         nfe.setMaximumIntegerDigits(precision);
81         nfe.setMinimumIntegerDigits(1);
82         this.setEditFormatter(new NumberFormatter JavaDoc(nfe));
83         
84         NumberFormat JavaDoc nfd = NumberFormat.getCurrencyInstance(display_locale);
85         nfd.setMaximumFractionDigits(decimals);
86         nfd.setMinimumFractionDigits(decimals);
87         nfd.setMaximumIntegerDigits(precision);
88         nfd.setMinimumIntegerDigits(1);
89         this.setDisplayFormatter(new NumberFormatter JavaDoc(nfd));
90         
91         this.setDefaultFormatter(new NumberFormatter JavaDoc(NumberFormat.getCurrencyInstance()));
92         this.setNullFormatter(null);
93
94     }
95     
96 }
97
98 /*
99  * $Log: SSCurrencyFormatterFactory.java,v $
100  * Revision 1.6 2005/02/04 22:42:06 yoda2
101  * Updated Copyright info.
102  *
103  * Revision 1.5 2005/01/18 23:37:59 dags
104  * Diego's name fix
105  *
106  * Revision 1.4 2005/01/18 22:34:29 dags
107  * sincronization update
108  *
109  * Revision 1.3 2004/12/13 20:50:16 dags
110  * Fix package name
111  *
112  * Revision 1.2 2004/12/13 18:46:13 prasanth
113  * Added License.
114  *
115  */

116
Popular Tags