001    package org.apache.myfaces.tobago.example.demo.overview;
002    
003    /*
004     * Licensed to the Apache Software Foundation (ASF) under one or more
005     * contributor license agreements.  See the NOTICE file distributed with
006     * this work for additional information regarding copyright ownership.
007     * The ASF licenses this file to You under the Apache License, Version 2.0
008     * (the "License"); you may not use this file except in compliance with
009     * the License.  You may obtain a copy of the License at
010     *
011     *      http://www.apache.org/licenses/LICENSE-2.0
012     *
013     * Unless required by applicable law or agreed to in writing, software
014     * distributed under the License is distributed on an "AS IS" BASIS,
015     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
016     * See the License for the specific language governing permissions and
017     * limitations under the License.
018     */
019    
020    /*
021     * Created 19.01.2005 21:49:41.
022     * $Id: SheetConfig.java 578592 2007-09-23 18:51:32Z bommel $
023     */
024    
025    
026    import javax.faces.model.SelectItem;
027    
028    
029    public class SheetConfig {
030    
031      private static final String[] SHEET_PAGER_POSITION_KEYS = {
032          "none",
033          "left",
034          "center",
035          "right"
036      };
037    
038      private static final String[] SHEET_SELECTABLE_KEYS = {
039          "none",
040          "single",
041          "multi"
042      };
043    
044      private boolean sheetShowHeader;
045      private int sheetFirst;
046      private int sheetRows;
047      private int sheetDirectLinkCount;
048      private String sheetRowPagingPosition;
049      private String sheetDirectPagingPosition;
050      private String sheetPagePagingPosition;
051      private SelectItem[] sheetDirectLinkCountItems;
052      private SelectItem[] sheetPagingPositionItems;
053      private SelectItem[] sheetSelectableItems;
054      private String selectable;
055      private boolean sheetConfigPopup;
056    
057      public SheetConfig() {
058        sheetFirst = 0;
059        sheetRows = 10;
060        sheetDirectLinkCount = 5;
061        sheetDirectLinkCountItems = createSheetItems(new Integer[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15});
062        sheetShowHeader = true;
063        sheetRowPagingPosition = SHEET_PAGER_POSITION_KEYS[1];
064        sheetDirectPagingPosition = SHEET_PAGER_POSITION_KEYS[2];
065        sheetPagePagingPosition = SHEET_PAGER_POSITION_KEYS[3];
066        sheetPagingPositionItems = createSheetItems(SHEET_PAGER_POSITION_KEYS);
067        sheetSelectableItems = createSheetItems(SHEET_SELECTABLE_KEYS);
068        selectable = SHEET_SELECTABLE_KEYS[2];
069      }
070    
071    
072      public String configSheet() {
073        sheetConfigPopup = true;
074        return null;
075      }
076    
077      private SelectItem[] createSheetItems(Object[] values) {
078        SelectItem[] items = new SelectItem[values.length];
079    
080        for (int i = 0; i < values.length; i++) {
081          items[i] = new SelectItem(values[i], values[i].toString());
082        }
083        return items;
084      }
085    
086    
087      public boolean isSheetShowHeader() {
088        return sheetShowHeader;
089      }
090    
091      public void setSheetShowHeader(boolean sheetShowHeader) {
092        this.sheetShowHeader = sheetShowHeader;
093      }
094    
095      public int getSheetFirst() {
096        return sheetFirst;
097      }
098    
099      public int getSheetRows() {
100        return sheetRows;
101      }
102    
103      public void setSheetRows(int sheetRows) {
104        this.sheetRows = sheetRows;
105      }
106    
107      public int getSheetFirstValue() {
108        int value = getSheetFirst();
109        return (value - 1) < 0 ? 0 : value - 1;
110      }
111    
112      public void setSheetFirst(int sheetFirst) {
113        this.sheetFirst = sheetFirst;
114      }
115    
116      public boolean isSheetConfigPopup() {
117        return sheetConfigPopup;
118      }
119    
120      public void setSheetConfigPopup(boolean sheetConfigPopup) {
121        this.sheetConfigPopup = sheetConfigPopup;
122      }
123    
124      public int getSheetDirectLinkCount() {
125        return sheetDirectLinkCount;
126      }
127    
128      public void setSheetDirectLinkCount(int sheetDirectLinkCount) {
129        this.sheetDirectLinkCount = sheetDirectLinkCount;
130      }
131    
132      public SelectItem[] getSheetDirectLinkCountItems() {
133        return sheetDirectLinkCountItems;
134      }
135    
136      public String getSheetRowPagingPosition() {
137        return sheetRowPagingPosition;
138      }
139    
140      public void setSheetRowPagingPosition(String sheetRowPagingPosition) {
141        this.sheetRowPagingPosition = sheetRowPagingPosition;
142      }
143    
144      public String getSheetDirectPagingPosition() {
145        return sheetDirectPagingPosition;
146      }
147    
148      public void setSheetDirectPagingPosition(String sheetDirectPagingPosition) {
149        this.sheetDirectPagingPosition = sheetDirectPagingPosition;
150      }
151    
152      public String getSheetPagePagingPosition() {
153        return sheetPagePagingPosition;
154      }
155    
156      public void setSheetPagePagingPosition(String sheetPagePagingPosition) {
157        this.sheetPagePagingPosition = sheetPagePagingPosition;
158      }
159    
160      public SelectItem[] getSheetPagingPositionItems() {
161        return sheetPagingPositionItems;
162      }
163    
164      public SelectItem[] getSheetSelectableItems() {
165        return sheetSelectableItems;
166      }
167    
168      public void setSheetSelectableItems(SelectItem[] sheetSelectableItems) {
169        this.sheetSelectableItems = sheetSelectableItems;
170      }
171    
172      public String getSelectable() {
173        return selectable;
174      }
175    
176      public void setSelectable(String selectable) {
177        this.selectable = selectable;
178      }
179    }