DATABIND: Displays the binding info in the view model panel 33/20933/1
authorjaeyeol lee <jaeyeol148.lee@samsung.com>
Wed, 14 May 2014 05:06:57 +0000 (14:06 +0900)
committerjaeyeol lee <jaeyeol148.lee@samsung.com>
Wed, 14 May 2014 05:06:57 +0000 (14:06 +0900)
Change-Id: I813ee0c44a72539b8635a92239c7fb03d92d47f5
Signed-off-by: jaeyeol lee <jaeyeol148.lee@samsung.com>
org.tizen.webuibuilder/src/org/tizen/webuibuilder/BuilderConstants.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/gef/commands/SetViewModelCommand.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/databinding/DataBindingDnDManager.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/databinding/DataBindingPage.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/databinding/SetSourceDialog.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/databinding/dialog/Helper.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/databinding/model/BindingDataSet.java

index 8f222f4..1406bc1 100644 (file)
@@ -256,6 +256,8 @@ public class BuilderConstants {
        public static final String DATABINDING_ARRAYITEM_VALUE_SUFFIX = ", attr: { 'data-index': $index }"; //$NON-NLS-1$
        public static final String DATABINDING_TYPE_STATIC = "Static"; //$NON-NLS-1$
        public static final String DATABINDING_TYPE_REMOTECALL = "Remote Call"; //$NON-NLS-1$
+       public static final String DATABINDING_ARRAY_ICON = "temp.png"; //$NON-NLS-1$
+       public static final String DATABINDING_BINDING_ICON = "binded.gif"; //$NON-NLS-1$
        
        // HandlerCodeWriter
        public static final String FILENAME = "%FileName%"; //$NON-NLS-1$
index c6b0b8f..4c9fde7 100644 (file)
@@ -89,10 +89,10 @@ public class SetViewModelCommand extends Command {
     }
 
     private void setViewModel(BindingDataSetEventType type) {
+        if ((appManager.getViewModel(bindingData.getItemName()) != null ) && (!(appManager.getViewModel(bindingData.getItemName())).equals(bindingData))) {
+            bindingData = appManager.getViewModel(bindingData.getItemName());
+        }
         if (type.equals(BindingDataSetEventType.VIEWMODEL_REMOVED)) {
-            if (!(appManager.getViewModel(bindingData.getItemName())).equals(bindingData)) {
-                bindingData = appManager.getViewModel(bindingData.getItemName());
-            }
             appManager.removeViewModel(bindingData);
         } else {
             appManager.addViewModel(bindingData);
index 57dd5e7..0e41498 100644 (file)
@@ -512,7 +512,7 @@ public class DataBindingDnDManager {
 
         if ((treeItemData.getObjectType() != null)
                 && (treeItemData.getObjectType().equals("Array"))) {
-            newItem.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, "temp.png"));
+            newItem.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, BuilderConstants.DATABINDING_ARRAY_ICON));
         }
 
         setChildItems(newItem, sourceItem.getItems());
@@ -548,7 +548,7 @@ public class DataBindingDnDManager {
                 if ((sourceTreeItemData.getObjectType() != null)
                         && (sourceTreeItemData.getObjectType().equals("Array"))) {
                     treeItemData.setObjectType(sourceTreeItemData.getObjectType());
-                    item.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, "temp.png"));
+                    item.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, BuilderConstants.DATABINDING_ARRAY_ICON));
                 } else if ((sourceTreeItemData.getObjectType() != null)
                         && (sourceTreeItemData.getObjectType().equals("Object"))) {
                     treeItemData.setObjectType(sourceTreeItemData.getObjectType());
index 1739380..961864f 100644 (file)
@@ -373,9 +373,9 @@ public class DataBindingPage extends Page implements IBindingDataSetListener {
                 treeItem.setData("TREEITEMDATA", treeItemData);
 
                 if (!viewModel.getDataSourceObjects().isEmpty()) {
-                    makeSubTreeItem(treeItem, viewModel.getDataSourceObjects());
+                    makeSubTreeItem(treeItem, viewModel.getDataSourceObjects(), viewModel.getSourceName());
                 } else if (!viewModel.getViewModelObjects().isEmpty()) {
-                    makeSubTreeItem(treeItem, viewModel.getViewModelObjects());
+                    makeSubTreeItem(treeItem, viewModel.getViewModelObjects(), viewModel.getSourceName());
                 }
 
                 TreeItemData data = (TreeItemData) viewModelTree.getData("TREEITEMDATA");
@@ -409,7 +409,7 @@ public class DataBindingPage extends Page implements IBindingDataSetListener {
                 treeItemData.setModel(dataSource);
                 treeItem.setData("TREEITEMDATA", treeItemData);
 
-                makeSubTreeItem(treeItem, dataSource.getDataSourceObjects());
+                makeSubTreeItem(treeItem, dataSource.getDataSourceObjects(), null);
                 TreeItemData data = (TreeItemData) dataSourceTree.getData("TREEITEMDATA");
                 if (data == null) {
                     data = new TreeItemData();
@@ -420,11 +420,17 @@ public class DataBindingPage extends Page implements IBindingDataSetListener {
         }
     }
 
-    private void makeSubTreeItem(TreeItem parentTreeItem, List<BindingObject> list) {
+    private void makeSubTreeItem(TreeItem parentTreeItem, List<BindingObject> list, String sourceName) {
         if ((list == null) || (list.isEmpty())) {
             return;
         }
-
+        
+        BindingData dataSource = null;
+        if (sourceName != null) {
+            dataSource = pageDesigner.getAppManager().getDataSource(sourceName);
+        }
+            
+       
         BindingObject observableObject;
         for (int i = 0; i < list.size(); i++) {
             observableObject = list.get(i);
@@ -438,11 +444,21 @@ public class DataBindingPage extends Page implements IBindingDataSetListener {
 
             if ((treeItemData.getObjectType() != null)
                     && (treeItemData.getObjectType().equals("Array"))) {
-                treeItem.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, "temp.png"));
+                treeItem.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, BuilderConstants.DATABINDING_ARRAY_ICON));
+            }
+            
+            if (dataSource != null) {
+                List<BindingObject> sourceObjects = dataSource.getDataSourceObjects();
+                for (BindingObject sourceObject : sourceObjects) {
+                    if (sourceObject.getName().equals(observableObject.getName())) {
+                        treeItem.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, BuilderConstants.DATABINDING_BINDING_ICON));
+                    }
+                }
+
             }
 
             if (!observableObject.getItems().isEmpty()) {
-                makeSubTreeItem(treeItem, observableObject.getItems());
+                makeSubTreeItem(treeItem, observableObject.getItems(), null);
             }
         }
     }
index ff2d506..8921314 100644 (file)
@@ -387,7 +387,7 @@ public class SetSourceDialog extends Dialog {
                 if ((sourceTreeItemData.getObjectType() != null)
                         && (sourceTreeItemData.getObjectType().equals("Array"))) {
                     treeItemData.setObjectType(sourceTreeItemData.getObjectType());
-                    item.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, "temp.png"));
+                    item.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, BuilderConstants.DATABINDING_ARRAY_ICON));
                 } else if ((sourceTreeItemData.getObjectType() != null)
                         && (sourceTreeItemData.getObjectType().equals("Object"))) {
                     treeItemData.setObjectType(sourceTreeItemData.getObjectType());
@@ -485,7 +485,7 @@ public class SetSourceDialog extends Dialog {
                 if ((sourceTreeItemData.getObjectType() != null)
                         && (sourceTreeItemData.getObjectType().equals("Array"))) {
                     treeItemData.setObjectType(sourceTreeItemData.getObjectType());
-                    item.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, "temp.png"));
+                    item.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, BuilderConstants.DATABINDING_ARRAY_ICON));
                     combo.select(4);
                 } else if ((sourceTreeItemData.getObjectType() != null)
                         && (sourceTreeItemData.getObjectType().equals("Object"))) {
@@ -1493,7 +1493,7 @@ public class SetSourceDialog extends Dialog {
             treeItemData.setObjectType("Array");
             treeItem.setData("TREEITEMDATA", treeItemData);
 
-            treeItem.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, "temp.png"));
+            treeItem.setImage(ResourceManager.getImage(BuilderConstants.ICON_DIR, BuilderConstants.DATABINDING_ARRAY_ICON));
 
             if ((!array.isEmpty())
                     && (array.get(0).getClass().getName().equals("org.json.simple.JSONObject"))) {
index 27433e9..3b62529 100644 (file)
@@ -343,7 +343,7 @@ public class Helper {
         // }
 
         if ( type.equals( "Array" ) ) {
-            imageName = "temp.png";
+            imageName = BuilderConstants.DATABINDING_ARRAY_ICON;
         }
 
         if ( imageName != null ) {
index c6fcfb7..eb66548 100644 (file)
@@ -448,17 +448,6 @@ public class BindingDataSet {
         fireEvent(new BindingDataSetEvent(BindingDataSetEventType.DATASOURCE_CHANGED, bindingData, getNumberOfDataSources() - 1 , null));
     }
     
-//    public BindingData getDataSource(String name) {
-//     List<BindingData> DataSources = getDataSources();
-//     for (BindingData DataSource : DataSources) {
-//             if (DataSource.getSourceName().equals(name)) {
-//                     return DataSource;
-//             }
-//     }
-//     
-//     return null;
-//    }
-
     public BindingData getDataSource(String name) {
         List<BindingData> DataSources = getDataSources();
         for (BindingData DataSource : DataSources) {