Subversion Repositories DevTools

Rev

Blame | Last modification | View Log | RSS feed

/*
 * Created on 29/03/2005
 */
package DMS;

import org.w3c.dom.Node;

/**
 * @author mtayler
 */
public class columnItem {

        private String FColumnName;
        private String FDataType;
        private String FFormat;
        private String FColumnLabel;
        private boolean FCanSort;
        private String FColumnWidth;
        private String FLink;
        private boolean FHideField;
        private boolean FFilter;
        
        public columnItem(Node root) {
                FColumnName = XMLParser.findNodeValue(root,"field-name");
                FDataType = XMLParser.findNodeValue(root,"datatype").toLowerCase();
                FFormat = XMLParser.findNodeValue(root,"format");
                FColumnLabel = XMLParser.findNodeValue(root,"label");
                FCanSort = DMSUtils.NVL(XMLParser.findNodeValue(root,"sort-field"),"false").equals("true");
                FColumnWidth = XMLParser.findNodeValue(root,"column-width");
                FHideField = XMLParser.findNodeValueBool(root,"hide-field");
                FLink = XMLParser.findNodeValue(root,"link");
                
                String sFilter = XMLParser.findNodeValue(root,"filter");
                
                FFilter = sFilter!=null && sFilter.toLowerCase().equals("true"); 
        }

        /**
         * @return Returns the FDataType.
         */
        public String getDataType() {
                return FDataType;
        }
        /**
         * @return Returns the FFormat.
         */
        public String getFormat() {
                String sFormat = FFormat;
                if (FFormat.trim().equals("")) //use default formats
                        if (FDataType.equals("float")) {
                                sFormat = "###,###,###,##0.00";                         
                        } else if (FDataType.equals("number")||FDataType.equals("int")||FDataType.equals("integer")||FDataType.equals("bigint")) {
                                sFormat = "###,###,###,##0";                                                                            
                        } else  if (FDataType.equals("date")) {
                                sFormat = "dd-MMM-yyyy";                                                                        
                        } else  if (FDataType.equals("datetime")) {
                                sFormat = "d-MMM-yyyy HH:mm";                                                           
                        }
                
                return sFormat;
        }
        /**
         * @return Returns the FColumnLabel.
         */
        public String getLabel() {
                return FColumnLabel;
        }

        /**
         * @return Returns the FColumnName.
         */
        public String getName() {
                return FColumnName;
        }

        /**
         * @return Returns the FCanSort
         */     
        public boolean canSort() {
                return FCanSort;
        }       
        /**
         * @return Returns the FFilter.
         */
        public boolean canFilter() {
                return FFilter;
        }
        /**
         * @return Returns the fColumnWidth.
         */
        public String getWidth() {
                return FColumnWidth;
        }
        /**
         * @return Returns the fLink.
         */
        public String getLink() {
                return FLink;
        }
        
        /**
         * @return Returns the fHideField.
         */
        public boolean isHideField() {
                return FHideField;
        }
        
        /**
         * @return Returns true if fLink is not empty.
         */
        public boolean isLink() {
                return FLink!=null && !FLink.equals("");
        }
        
}