Subversion Repositories SmartDukaan

Rev

Rev 5128 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1961 ankur.sing 1
package in.shop2020.catalog.dashboard.client;
2
 
3
import com.google.gwt.event.dom.client.ClickEvent;
4
import com.google.gwt.event.dom.client.ClickHandler;
5
import com.google.gwt.user.client.ui.Anchor;
6
import com.google.gwt.user.client.ui.Composite;
7
import com.google.gwt.user.client.ui.Tree;
8
import com.google.gwt.user.client.ui.TreeItem;
9
 
10
/**
2427 ankur.sing 11
 * A tree containing links to display different sets of items
12
 * based on item statuses and some other parameters.
1961 ankur.sing 13
 */
14
public class CatalogTree extends Composite {
2027 ankur.sing 15
 
16
    public static final String ALL_ITEMS = "All Items";
2359 ankur.sing 17
    public static final String ALL_ACTIVE_ITEMS = "Active Items";
18
    public static final String ALL_PHASED_OUT_ITEMS = "Phased Out Items";
19
    public static final String ALL_PAUSED_ITEMS = "Paused Items";
20
    public static final String IN_PROCESS_ITEMS = "In Process Items";
21
    public static final String CONTENT_COMPLETE_ITEMS = "Content Complete Items";
6530 vikram.rag 22
    public static final String INACTIVE_ITEMS_WITH_INVENTORY = "Inactive Items with Inventory";
5128 amit.gupta 23
    public static final String BREAKEVEN_ITEMS = "Items below Break Even Price";
2359 ankur.sing 24
 
25
    public static final String RISKY_ITEMS = "Risky Items";
26
 
2027 ankur.sing 27
    public static final String BEST_DEALS = "Best Deals";
28
    public static final String BEST_SELLERS = "Best Sellers";
29
    public static final String LATEST_ARRIVALS = "Latest Arrivals";
2359 ankur.sing 30
 
3872 chandransh 31
    public static final String SEARCH = "Search";
32
 
6530 vikram.rag 33
    public static final String INVENTORY_OUTOFSYNC_ITEM_LIST = "Inventory Out-of-Sync Items";
34
 
1992 ankur.sing 35
    private Tree tree;
36
 
37
    interface TreeListener {
2027 ankur.sing 38
        void onTreeItemClicked(String itemTypes);
1992 ankur.sing 39
    }
40
 
41
    TreeListener treeListener;
1961 ankur.sing 42
 
1992 ankur.sing 43
    public CatalogTree() {
44
        tree = new Tree();
45
        TreeItem root = new TreeItem("Catalog");
5128 amit.gupta 46
        TreeItem report = new TreeItem("Reports");
1992 ankur.sing 47
        tree.addItem(root);
5128 amit.gupta 48
        tree.addItem(report);
49
 
1961 ankur.sing 50
 
2027 ankur.sing 51
        addItem(root, ALL_ITEMS);
2208 ankur.sing 52
        addItem(root, ALL_ACTIVE_ITEMS);
53
        addItem(root, ALL_PHASED_OUT_ITEMS);
54
        addItem(root, ALL_PAUSED_ITEMS);
2359 ankur.sing 55
        addItem(root, IN_PROCESS_ITEMS);
56
        addItem(root, CONTENT_COMPLETE_ITEMS);
57
 
58
        addItem(root, RISKY_ITEMS);
59
 
2027 ankur.sing 60
        addItem(root, BEST_DEALS);
61
        addItem(root, BEST_SELLERS);
62
        addItem(root, LATEST_ARRIVALS);
2208 ankur.sing 63
 
3872 chandransh 64
        addItem(root, SEARCH);
6530 vikram.rag 65
        addItem(root,INVENTORY_OUTOFSYNC_ITEM_LIST);
5128 amit.gupta 66
 
67
        addItem(report, INACTIVE_ITEMS_WITH_INVENTORY);
68
        addItem(report, BREAKEVEN_ITEMS);
1961 ankur.sing 69
 
1992 ankur.sing 70
        root.setState(true);
71
        initWidget(tree);
72
    }
1961 ankur.sing 73
 
2027 ankur.sing 74
    private void addItem(TreeItem root, final String title) {
1992 ankur.sing 75
        Anchor item = new Anchor(title);
76
        root.addItem(item);
77
        item.addClickHandler(new ClickHandler() {
78
            @Override
79
            public void onClick(ClickEvent event) {
2027 ankur.sing 80
                treeListener.onTreeItemClicked(title);
1992 ankur.sing 81
            }
82
        });
83
    }
84
 
85
    public void setTreeListener(TreeListener treeListener) {
86
        this.treeListener = treeListener;
87
    }
1961 ankur.sing 88
}