[jboss-svn-commits] JBL Code SVN: r35026 - labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Sep 6 12:17:41 EDT 2010
Author: jervisliu
Date: 2010-09-06 12:17:40 -0400 (Mon, 06 Sep 2010)
New Revision: 35026
Modified:
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/AbstractTree.java
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/BrowseTree.java
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/DeploymentTree.java
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/ExplorerNodeConfig.java
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/PackagesNewMenu.java
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/PackagesTree.java
Log:
GWTExt replacement: GUVNOR-618: status list is not refreshed after adding a new status
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/AbstractTree.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/AbstractTree.java 2010-09-06 15:40:01 UTC (rev 35025)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/AbstractTree.java 2010-09-06 16:17:40 UTC (rev 35026)
@@ -37,6 +37,10 @@
return Util.getHeaderHTML(image, name);
}
+ public void refreshTree() {
+
+ }
+
protected void launchWizard(String format, String title, boolean showCats) {
NewAssetWizard pop = new NewAssetWizard(new EditItemEvent() {
public void open(String key) {
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/BrowseTree.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/BrowseTree.java 2010-09-06 15:40:01 UTC (rev 35025)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/BrowseTree.java 2010-09-06 16:17:40 UTC (rev 35026)
@@ -17,6 +17,7 @@
package org.drools.guvnor.client.explorer;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.Map;
import org.drools.guvnor.client.common.GenericCallback;
@@ -28,14 +29,17 @@
import org.drools.guvnor.client.images.Images;
import org.drools.guvnor.client.messages.Constants;
+import com.google.gwt.user.client.ui.Tree;
import com.google.gwt.user.client.ui.TreeItem;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.Command;
import com.google.gwt.core.client.GWT;
+import com.google.gwt.event.logical.shared.OpenEvent;
+import com.google.gwt.event.logical.shared.OpenHandler;
import com.google.gwt.event.logical.shared.SelectionEvent;
-public class BrowseTree extends AbstractTree {
+public class BrowseTree extends AbstractTree implements OpenHandler<TreeItem> {
private static Constants constants = GWT.create(Constants.class);
private static Images images = (Images) GWT.create(Images.class);
@@ -74,23 +78,23 @@
this.name = constants.Browse();
this.image = images.ruleAsset();
- mainTree = ExplorerNodeConfig.getBrowseTree(itemWidgets);
-
- //Add Selection listener
+ mainTree = new Tree();
+ mainTree.setAnimationEnabled(true);
+ ExplorerNodeConfig.setupBrowseTree(mainTree, itemWidgets);
mainTree.addSelectionHandler(this);
+ mainTree.addOpenHandler((OpenHandler<TreeItem>)this);
}
+ public void refreshTree() {
+ mainTree.clear();
+ itemWidgets.clear();
+ ExplorerNodeConfig.setupBrowseTree(mainTree, itemWidgets);
+ }
+
// Show the associated widget in the deck panel
public void onSelection(SelectionEvent<TreeItem> event) {
TreeItem item = event.getSelectedItem();
String widgetID = itemWidgets.get(item);
-
-/* //this refreshes the list.
- if (content.equals(ExplorerNodeConfig.CATEGORY_ID)) {
- //self.getParentNode().replaceChild(ExplorerNodeConfig.getCategoriesStructure(), self);
- } else if (content.equals(ExplorerNodeConfig.STATES_ID)) {
- //self.getParentNode().replaceChild(ExplorerNodeConfig.getStatesStructure(), self);
- } else */
if (widgetID.equals(ExplorerNodeConfig.FIND_ID)) {
centertabbedPanel.openFind();
@@ -105,6 +109,41 @@
}
}
+ public void onOpen(OpenEvent<TreeItem> event) {
+ final TreeItem node = event.getTarget();
+ if (ExplorerNodeConfig.STATES_ROOT_ID.equals(itemWidgets.get(node))) {
+ removeStateIDs(itemWidgets);
+ node.removeItems();
+ ExplorerNodeConfig.setupStatesStructure(node, itemWidgets);
+ } else if (ExplorerNodeConfig.CATEGORY_ROOT_ID.equals(itemWidgets.get(node))) {
+ removeCategoryIDs(itemWidgets);
+ node.removeItems();
+ ExplorerNodeConfig.setupCategoriesStructure(node, itemWidgets);
+ }
+ }
+
+ private void removeStateIDs(Map<TreeItem, String> itemWidgets) {
+ Iterator<TreeItem> it = itemWidgets.keySet().iterator();
+ while(it.hasNext()) {
+ TreeItem item = (TreeItem)it.next();
+ String id = itemWidgets.get(item);
+ if(id.startsWith(ExplorerNodeConfig.STATES_ID + "-")) {
+ it.remove();
+ }
+ }
+ }
+
+ private void removeCategoryIDs(Map<TreeItem, String> itemWidgets) {
+ Iterator<TreeItem> it = itemWidgets.keySet().iterator();
+ while(it.hasNext()) {
+ TreeItem item = (TreeItem)it.next();
+ String id = itemWidgets.get(item);
+ if(id.startsWith(ExplorerNodeConfig.CATEGORY_ID + "-")) {
+ it.remove();
+ }
+ }
+ }
+
/**
* Show the inbox of the given name.
*/
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/DeploymentTree.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/DeploymentTree.java 2010-09-06 15:40:01 UTC (rev 35025)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/DeploymentTree.java 2010-09-06 16:17:40 UTC (rev 35026)
@@ -63,6 +63,8 @@
RepositoryServiceFactory.getService().listSnapshots(conf.name,
new GenericCallback<SnapshotInfo[]>() {
public void onSuccess(SnapshotInfo[] snaps) {
+ node.removeItems();
+ //node.removeItem(node.getChild(0));
for (final SnapshotInfo snapInfo : snaps) {
TreeItem snap = new TreeItem(snapInfo.name);
//snap.setTooltip(snapInfo.comment);
@@ -70,7 +72,6 @@
snap.setUserObject(new Object[] { snapInfo, conf });
node.addItem(snap);
}
- node.removeItem(node.getChild(0));
}
});
}
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/ExplorerNodeConfig.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/ExplorerNodeConfig.java 2010-09-06 15:40:01 UTC (rev 35025)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/ExplorerNodeConfig.java 2010-09-06 16:17:40 UTC (rev 35026)
@@ -44,8 +44,10 @@
//Browse
public static final String FIND_ID = "find";
+ public static String CATEGORY_ROOT_ID = "rootcategory"; //NON-NLS
public static String CATEGORY_ID = "category"; //NON-NLS
public static String STATES_ID = "states"; //NON-NLS
+ public static String STATES_ROOT_ID = "rootstates"; //NON-NLS
public static final String RECENT_EDITED_ID = "recentEdited";
public static final String RECENT_VIEWED_ID = "recentViewed";
public static final String INCOMING_ID = "incoming";
@@ -202,11 +204,8 @@
return tree;
}
- public static Tree getBrowseTree(Map<TreeItem, String> itemWidgets) {
+ public static void setupBrowseTree(Tree tree, Map<TreeItem, String> itemWidgets) {
//TODO: TreeItem.setState(true) does not work as expected.
-
- Tree tree = new Tree();
- tree.setAnimationEnabled(true);
TreeItem root = tree.addItem(Util.getHeader(images.ruleAsset(), constants.AssetsTreeView()));
//itemWidgets.put(root, constants.AssetsTreeView());
@@ -219,16 +218,19 @@
root.addItem(inbox);
if (ExplorerLayoutManager.shouldShow(Capabilities.SHOW_PACKAGE_VIEW)) {
- TreeItem states = getStatesStructure(itemWidgets);
+ final TreeItem byStatus = new TreeItem(Util.getHeader(images.statusSmall(), constants.ByStatus()));
+ itemWidgets.put(byStatus, STATES_ROOT_ID);
+ setupStatesStructure(byStatus, itemWidgets);
//states.setState(true);
- root.addItem(states);
+ root.addItem(byStatus);
}
- TreeItem categories = getCategoriesStructure(itemWidgets);
- //categories.setState(true);
- root.addItem(categories);
+ TreeItem byCategory = new TreeItem(Util.getHeader(images.chartOrganisation(), constants.ByCategory()));
+ itemWidgets.put(byCategory, CATEGORY_ROOT_ID);
- return tree;
+ setupCategoriesStructure(byCategory, itemWidgets);
+ //categories.setState(true);
+ root.addItem(byCategory);
}
private static TreeItem getInboxStructure(Map<TreeItem, String> itemWidgets) {
@@ -249,10 +251,8 @@
return inbox;
}
- public static TreeItem getCategoriesStructure(final Map<TreeItem, String> itemWidgets) {
- TreeItem byCategory = new TreeItem(Util.getHeader(images.chartOrganisation(), constants.ByCategory()));
+ public static void setupCategoriesStructure(TreeItem byCategory, final Map<TreeItem, String> itemWidgets) {
doCategoryNode(byCategory, "/", itemWidgets);
- return byCategory;
}
private static void doCategoryNode(final TreeItem treeItem,
@@ -333,9 +333,7 @@
treeNode.removeItems();
}
- public static TreeItem getStatesStructure(final Map<TreeItem, String> itemWidgets) {
- final TreeItem byStatus = new TreeItem(Util.getHeader(images.statusSmall(), constants.ByStatus()));
-
+ public static void setupStatesStructure(final TreeItem byStatus, final Map<TreeItem, String> itemWidgets) {
RepositoryServiceFactory.getService().listStates( new GenericCallback<String[]>() {
public void onSuccess(String[] value) {
for ( int i = 0; i < value.length; i++ ) {
@@ -348,8 +346,6 @@
}
}
} );
-
- return byStatus;
}
public static Tree getQAStructure(final Map<TreeItem, String> itemWidgets) {
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/PackagesNewMenu.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/PackagesNewMenu.java 2010-09-06 15:40:01 UTC (rev 35025)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/PackagesNewMenu.java 2010-09-06 16:17:40 UTC (rev 35026)
@@ -47,7 +47,7 @@
public void execute() {
NewPackageWizard wiz = new NewPackageWizard(new Command() {
public void execute() {
- //refreshPackageTree();
+ manager.refreshTree();
}
});
wiz.show(); }
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/PackagesTree.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/PackagesTree.java 2010-09-06 15:40:01 UTC (rev 35025)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/PackagesTree.java 2010-09-06 16:17:40 UTC (rev 35026)
@@ -19,7 +19,6 @@
import java.util.HashMap;
import java.util.Map;
-import org.drools.guvnor.client.common.AssetFormats;
import org.drools.guvnor.client.common.GenericCallback;
import org.drools.guvnor.client.common.RulePackageSelector;
import org.drools.guvnor.client.common.Util;
@@ -41,7 +40,6 @@
import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.ui.Tree;
import com.google.gwt.user.client.ui.TreeItem;
-import com.gwtext.client.widgets.tree.TreeNode;
@@ -68,7 +66,9 @@
add(packagesPanel);
*/
- mainTree = packageExplorer(tabbedPanel);
+ mainTree = new Tree();
+ mainTree.setAnimationEnabled(true);
+ setupPackagesTree(tabbedPanel);
mainTree.addSelectionHandler(this);
}
@@ -80,22 +80,19 @@
}
}
*/
- private void refreshPackageTree() {
- //TODO (JLIU):
- //packagesPanel.remove(1);
- //packagesPanel.add(packageExplorer(centertabbedPanel));
+ public void refreshTree() {
+ mainTree.clear();
+ itemWidgets.clear();
+ setupPackagesTree(centertabbedPanel);
}
- private Tree packageExplorer(final ExplorerViewCenterPanel tabPanel) {
- Tree rootNode = new Tree();
- rootNode.setAnimationEnabled(true);
-
- TreeItem packageRootNode = rootNode.addItem(Util.getHeader(images.chartOrganisation(), constants.Packages()));
+ private void setupPackagesTree(final ExplorerViewCenterPanel tabPanel) {
+ TreeItem packageRootNode = mainTree.addItem(Util.getHeader(images.chartOrganisation(), constants.Packages()));
packageRootNode.setState(true);
loadPackages(packageRootNode, itemWidgets);
- rootNode.addItem(packageRootNode);
+ mainTree.addItem(packageRootNode);
- loadGlobal(rootNode, itemWidgets);
+ loadGlobal(mainTree, itemWidgets);
/* @Override
public void onCollapseNode(final TreeItem node) {
@@ -108,7 +105,7 @@
}
}*/
- return rootNode;
+ //return mainTree;
}
private void loadPackages(final TreeItem root, final Map<TreeItem, String> itemWidgets) {
@@ -179,13 +176,6 @@
public void onSelection(SelectionEvent<TreeItem> event) {
TreeItem node = event.getSelectedItem();
//String widgetID = itemWidgets.get(node);
-
-/* //this refreshes the list.
- if (content.equals(ExplorerNodeConfig.CATEGORY_ID)) {
- //self.getParentNode().replaceChild(ExplorerNodeConfig.getCategoriesStructure(), self);
- } else if (content.equals(ExplorerNodeConfig.STATES_ID)) {
- //self.getParentNode().replaceChild(ExplorerNodeConfig.getStatesStructure(), self);
- } else */
if (node.getUserObject() instanceof PackageConfigData
&& !"global".equals(((PackageConfigData) node.getUserObject()).name)) {
@@ -196,7 +186,7 @@
centertabbedPanel.openPackageEditor(uuid, new Command() {
public void execute() {
// refresh the package tree.
- refreshPackageTree();
+ refreshTree();
}
});
} else if (node.getUserObject() instanceof Object[]) {
More information about the jboss-svn-commits
mailing list