001: /*
002: * DefaultFormatterFactory.java
003: *
004: * Created on 4. September 2006, 11:47
005: *
006: * To change this template, choose Tools | Template Manager
007: * and open the template in the editor.
008: */
009:
010: package org.wings.text;
011:
012: import org.wings.SFormattedTextField;
013:
014: /**
015: *
016: * @author erik
017: */
018: public class SDefaultFormatterFactory extends
019: SFormattedTextField.SAbstractFormatterFactory {
020:
021: private SAbstractFormatter defaultFormat;
022: private SAbstractFormatter displayFormat;
023: private SAbstractFormatter editFormat;
024: private SAbstractFormatter nullFormat;
025:
026: /** Creates a new instance of DefaultFormatterFactory */
027: public SDefaultFormatterFactory() {
028: }
029:
030: public SDefaultFormatterFactory(SAbstractFormatter defaultFormat) {
031: this (defaultFormat, null);
032: }
033:
034: public SDefaultFormatterFactory(SAbstractFormatter defaultFormat,
035: SAbstractFormatter displayFormat) {
036: this (defaultFormat, displayFormat, null);
037: }
038:
039: public SDefaultFormatterFactory(SAbstractFormatter defaultFormat,
040: SAbstractFormatter displayFormat,
041: SAbstractFormatter editFormat) {
042: this (defaultFormat, displayFormat, editFormat, null);
043: }
044:
045: public SDefaultFormatterFactory(SAbstractFormatter defaultFormat,
046: SAbstractFormatter displayFormat,
047: SAbstractFormatter editFormat, SAbstractFormatter nullFormat) {
048: this .defaultFormat = defaultFormat;
049: this .displayFormat = displayFormat;
050: this .editFormat = editFormat;
051: this .nullFormat = nullFormat;
052: }
053:
054: public void setDefaultFormatter(SAbstractFormatter atf) {
055: defaultFormat = atf;
056: }
057:
058: public SAbstractFormatter getDefaultFormatter() {
059: return defaultFormat;
060: }
061:
062: public void setDisplayFormatter(SAbstractFormatter atf) {
063: this .displayFormat = atf;
064: }
065:
066: public SAbstractFormatter getDisplayFormatter() {
067: return displayFormat;
068: }
069:
070: public void setEditFormatter(SAbstractFormatter atf) {
071: this .editFormat = atf;
072: }
073:
074: public SAbstractFormatter getEditFormatter() {
075: return editFormat;
076: }
077:
078: public void setNullFormatter(SAbstractFormatter atf) {
079: this .nullFormat = atf;
080: }
081:
082: public SAbstractFormatter getNullFormatter() {
083: return nullFormat;
084: }
085:
086: public SAbstractFormatter getFormatter(SFormattedTextField source) {
087: SAbstractFormatter format = null;
088:
089: if (source != null) {
090:
091: Object value = source.getText();
092:
093: if (value == null) {
094: format = getNullFormatter();
095: }
096: if (format == null) {
097: format = getDisplayFormatter();
098: if (format == null) {
099: format = getDefaultFormatter();
100: }
101: }
102: }
103: return format;
104: }
105:
106: }
|