[jboss-svn-commits] JBL Code SVN: r16706 - labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Nov 20 12:53:33 EST 2007


Author: fmeyer
Date: 2007-11-20 12:53:33 -0500 (Tue, 20 Nov 2007)
New Revision: 16706

Added:
   labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerNodeConfig.java
Removed:
   labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerStaticNodeConfig.java
Modified:
   labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerLayoutManager.java
Log:
JBRULES-1309 updating tree structure

Modified: labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerLayoutManager.java
===================================================================
--- labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerLayoutManager.java	2007-11-20 16:21:21 UTC (rev 16705)
+++ labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerLayoutManager.java	2007-11-20 17:53:33 UTC (rev 16706)
@@ -40,537 +40,605 @@
 
 public class ExplorerLayoutManager {
 
-    private Map screens = new HashMap();
+	private Map screens = new HashMap();
 
-    private TextField searchField;
-    private TreeFilter treeFilter;
-    private DelayedTask delayedTask = new DelayedTask();
-    private BorderLayout layout;
+	private TextField searchField;
+	private TreeFilter treeFilter;
+	private DelayedTask delayedTask = new DelayedTask();
+	private BorderLayout layout;
 
-    public BorderLayout getBaseLayout() {
-	return layout;
-    }
+	public BorderLayout getBaseLayout() {
+		return layout;
+	}
 
-    public ExplorerLayoutManager() {
-	Field.setMsgTarget("side");
-	QuickTips.init();
+	public ExplorerLayoutManager() {
+		Field.setMsgTarget("side");
+		QuickTips.init();
 
-	layout = createBorderLayout();
+		layout = createBorderLayout();
 
-	ContentPanel ncp = new ContentPanel("north", "North Title");
+		ContentPanel ncp = new ContentPanel("north", "North Title");
 
-	DockPanel dock = new DockPanel();
-	dock.setVerticalAlignment(DockPanel.ALIGN_MIDDLE);
-	dock
-		.add(
-			new HTML(
-				"<div class='headerBarblue'><img src='images/hdrlogo_drools50px.gif' /></div>"),
-			DockPanel.WEST);
+		DockPanel dock = new DockPanel();
+		dock.setVerticalAlignment(DockPanel.ALIGN_MIDDLE);
+		dock
+				.add(
+						new HTML(
+								"<div class='headerBarblue'><img src='images/hdrlogo_drools50px.gif' /></div>"),
+						DockPanel.WEST);
 
-	dock.setWidth("100%");
-	ncp.add(dock);
+		dock.setWidth("100%");
+		ncp.add(dock);
 
-	layout.add(LayoutRegionConfig.NORTH, ncp);
+		layout.add(LayoutRegionConfig.NORTH, ncp);
 
-	// setup the main / center panel
-	ContentPanel centerPanel = new ContentPanel("center-panel");
-	VerticalPanel contentPanel = new VerticalPanel();
-	contentPanel.setWidth("100%");
-	contentPanel.setHeight("100%");
-	centerPanel.add(contentPanel);
-	layout.add(LayoutRegionConfig.CENTER, centerPanel);
+		// setup the main / center panel
+		ContentPanel centerPanel = new ContentPanel("center-panel");
+		VerticalPanel contentPanel = new VerticalPanel();
+		contentPanel.setWidth("100%");
+		contentPanel.setHeight("100%");
+		centerPanel.add(contentPanel);
+		layout.add(LayoutRegionConfig.CENTER, centerPanel);
 
-	// add a navigation tree menu
+		// add a navigation tree menu
 
-	final TabPanel tp = new TabPanel("tab-1");
-	tp.setWidth("100%");
-	tp.setHeight("100%");
+		final TabPanel tp = new TabPanel("tab-1");
+		tp.setWidth("100%");
+		tp.setHeight("100%");
 
-	TabPanelItem tpCategory = tp.addTab("tpi1", "Rules", false);
-	TabPanelItem tpStateManager = tp.addTab("tpi2", "Packages", false);
-	TabPanelItem tpArchivedAssetManager = tp.addTab("tpi3", "Deployment",
-		false);
-	TabPanelItem tpBackupManager = tp.addTab("tpi4", "Admin", false);
+		TabPanelItem tpCategory = tp.addTab("tpi1", "Rules", false);
+		TabPanelItem tpStateManager = tp.addTab("tpi2", "Packages", false);
+		TabPanelItem tpArchivedAssetManager = tp.addTab("tpi3", "Deployment",
+				false);
+		TabPanelItem tpBackupManager = tp.addTab("tpi4", "Admin", false);
 
-	VerticalPanel vp1 = new VerticalPanel();
-	VerticalPanel vp2 = new VerticalPanel();
-	VerticalPanel vp3 = new VerticalPanel();
-	VerticalPanel vp4 = new VerticalPanel();
+		VerticalPanel vp1 = new VerticalPanel();
+		VerticalPanel vp2 = new VerticalPanel();
+		VerticalPanel vp3 = new VerticalPanel();
+		VerticalPanel vp4 = new VerticalPanel();
 
-	vp1.add(categoriesExplorer(layout, "drools-rules"));
-	vp2.add(packageExplorer(layout, "drools-packages"));
-	vp3.add(createExamplesExplorer(layout, "drools-deployment"));
+		//vp1.add(categoriesExplorer(layout, "drools-rules"));
+		
+		/*******************************/
+		ContentPanel baseCategory = new ContentPanel("eg-explorer", "BRMS Explorer");
+		baseCategory.setWidth(" 100%");		
+		
+		TreePanel categoryTree = basicTreeStructure(layout,
+				ExplorerNodeConfig.getRulesStructure(),
+				new TreePanelListenerAdapter() {
+					public void onClick(TreeNode self, EventObject e) {
 
-	/** ****************** */
-	TreeNode adminNode = ExplorerStaticNodeConfig.getAdminStructure();
-	ContentPanel cp = new ContentPanel("eg-explorer", "BRMS Explorer");
-	cp.setWidth(" 100%");
 
-	TreePanel adminTreePanel = genericExplorerWidget(layout, adminNode);
-	adminTreePanel.addTreePanelListener(new TreePanelListenerAdapter() {
-	    public void onClick(TreeNode self, EventObject e) {
+						String screenName = BRMSContentManager.getScreenName(self, self
+								.getText());
 
-		LayoutRegion region = layout
-			.getRegion(LayoutRegionConfig.CENTER);
-		region.removeAll(true);
+						if (screens.containsKey(screenName)) {
+							BRMSContentManager panel = (BRMSContentManager) screens
+									.get(screenName);
+							LayoutRegion region = layout
+									.getRegion(LayoutRegionConfig.CENTER);
+							region.removeAll(true);
+							ContentPanel[] panels = panel.getPanels();
+							for (int i = 0; i < panels.length; i++) {
+								ContentPanel contentPanel = panels[i];
+								layout.add(contentPanel);
+							}
+							region.showPanel(0);
+						}
+						
+						if (self.getAttribute("id").equals(ExplorerNodeConfig.CATEGORY_ID)) { 
+							self.getParentNode().replaceChild(ExplorerNodeConfig.getCategoriesStructure(), self);
+						}
+						
+						if (self.getAttribute("id").equals(ExplorerNodeConfig.STATES_ID)) { 
+							self.getParentNode().replaceChild(ExplorerNodeConfig.getStatesStructure(), self);	
+						}
 
-		System.out.println("Clicked on Node: "
-			+ self.getAttribute("id"));
+						System.out.println("Clicked on Node: " + self.getText());
+						System.out.println("Clicked on Node: " + self.getAttribute("id"));
 
-		int id = Integer.parseInt(self.getAttribute("id"));
-		switch (id) {
-		case 0:
-		    ContentPanel vpCategory = new ContentPanel();
-		    vpCategory.add(new CategoryManager());
-		    region.add(vpCategory);
-		    break;
-		case 1:
-		    ContentPanel vpArchive = new ContentPanel();
-		    vpArchive.add(new ArchivedAssetManager());
-		    region.add(vpArchive);
-		    break;
+						LayoutRegion region = layout
+								.getRegion(LayoutRegionConfig.CENTER);
+						region.removeAll(true);
 
-		case 2:
-		    ContentPanel vpState = new ContentPanel();
-		    vpState.add(new StateManager());
-		    region.add(vpState);
-		    break;
-		case 3:
-		    ContentPanel vpBackup = new ContentPanel();
-		    vpBackup.add(new BackupManager());
-		    region.add(vpBackup);
-		    break;
+						ContentPanel contentpanel = new ContentPanel();
+						contentpanel.add(new AssetBrowser());
+						region.add(contentpanel);
 
-		case 4:
-		    break;
-		}
+					}
+				});
 
-	    }
-	});
-	cp.add(adminTreePanel);
-	vp4.add(cp);
+		baseCategory.add(categoryTree);
+		vp1.add(baseCategory);
+		
+		
+		
+		
+		/*******************************/
+		
+		vp2.add(packageExplorer(layout, "drools-packages"));
+		vp3.add(createExamplesExplorer(layout, "drools-deployment"));
 
-	/** ****************** */
+		/** ****************** */
+		ContentPanel cp = new ContentPanel("eg-explorer", "BRMS Explorer");
+		cp.setWidth(" 100%");
 
-	tpCategory.setContent(vp1);
-	tpStateManager.setContent(vp2);
-	tpArchivedAssetManager.setContent(vp3);
-	tpBackupManager.setContent(vp4);
+		TreePanel adminTree = basicTreeStructure(layout,
+				ExplorerNodeConfig.getAdminStructure(),
+				new TreePanelListenerAdapter() {
+					public void onClick(TreeNode self, EventObject e) {
 
-	tp.activate(0);
+						LayoutRegion region = layout
+								.getRegion(LayoutRegionConfig.CENTER);
+						region.removeAll(true);
 
-	ContentPanel tree = new ContentPanel();
-	tree.add(tp);
+						System.out.println("Clicked on Node: "
+								+ self.getAttribute("id"));
 
-//	LoginWidgetNew login = new LoginWidgetNew();
-//	login.getViewPanel().show();
-	layout.add(LayoutRegionConfig.WEST, tree);
-    }
+						int id = Integer.parseInt(self.getAttribute("id"));
+						switch (id) {
+						case 0:
+							ContentPanel vpCategory = new ContentPanel();
+							vpCategory.add(new CategoryManager());
+							region.add(vpCategory);
+							break;
+						case 1:
+							ContentPanel vpArchive = new ContentPanel();
+							vpArchive.add(new ArchivedAssetManager());
+							region.add(vpArchive);
+							break;
 
-    private BorderLayout createBorderLayout() {
+						case 2:
+							ContentPanel vpState = new ContentPanel();
+							vpState.add(new StateManager());
+							region.add(vpState);
+							break;
+						case 3:
+							ContentPanel vpBackup = new ContentPanel();
+							vpBackup.add(new BackupManager());
+							region.add(vpBackup);
+							break;
 
-	LayoutRegionConfig north = new LayoutRegionConfig();
-	north.setSplit(false);
-	north.setInitialSize(50);
-	north.setTitlebar(false);
-	north.setAutoScroll(false);
+						case 4:
+							break;
+						}
 
-	LayoutRegionConfig south = new LayoutRegionConfig();
-	north.setSplit(false);
-	north.setInitialSize(50);
-	north.setTitlebar(false);
-	north.setAutoScroll(false);
+					}
+				});
 
-	LayoutRegionConfig west = new LayoutRegionConfig();
-	west.setSplit(true);
-	west.setInitialSize(300);
-	west.setMinSize(175);
-	west.setMaxSize(400);
-	west.setTitlebar(true);
-	west.setCollapsible(true);
-	west.setAnimate(true);
-	west.setCollapsed(false);
-	west.setAutoScroll(false);
+		cp.add(adminTree);
+		vp4.add(cp);
 
-	LayoutRegionConfig east = new LayoutRegionConfig();
-	east.setSplit(true);
-	east.setInitialSize(202);
-	east.setMinSize(175);
-	east.setMaxSize(400);
-	east.setTitlebar(true);
-	east.setCollapsible(true);
-	east.setAnimate(true);
-	east.setAutoScroll(false);
+		/** ****************** */
 
-	LayoutRegionConfig center = new LayoutRegionConfig();
-	center.setTitlebar(false);
-	center.setAutoScroll(true);
-	center.setTabPosition("top");
+		tpCategory.setContent(vp1);
+		tpStateManager.setContent(vp2);
+		tpArchivedAssetManager.setContent(vp3);
+		tpBackupManager.setContent(vp4);
 
-	return new BorderLayout("100%", "100%", north, south, west, null,
-		center);
-    }
+		tp.activate(0);
 
-    private ContentPanel createExamplesExplorer(final BorderLayout layout,
-	    final String menuconfig) {
+		ContentPanel tree = new ContentPanel();
+		tree.add(tp);
 
-	// create and configure the main tree
-	final TreePanel menuTree = new TreePanel("eg-tree",
-		new TreePanelConfig() {
-		    {
-			setAnimate(true);
-			setEnableDD(true);
-			setContainerScroll(true);
-			setRootVisible(true);
-		    }
-		});
+		// LoginWidgetNew login = new LoginWidgetNew();
+		// login.getViewPanel().show();
+		layout.add(LayoutRegionConfig.WEST, tree);
+	}
 
-	treeFilter = new TreeFilter(menuTree);
+	private TreePanel basicTreeStructure(final BorderLayout layout,
+			TreeNode basenode, TreePanelListenerAdapter listener) {
 
-	final XMLTreeLoader loader = new XMLTreeLoader(
-		new XMLTreeLoaderConfig() {
-		    {
+		TreePanel adminTreePanel = genericExplorerWidget(layout, basenode);
 
-			setDataUrl("site-nav.xml");
-			setMethod("get");
-			setRootTag(menuconfig);
-			setFolderTag("node");
-			setFolderTitleMapping("@title");
-			setLeafTitleMapping("@title");
-			setLeafTag("leaf");
-		    }
-		});
+		adminTreePanel.addTreePanelListener(listener);
+		return adminTreePanel;
+	}
 
-	AsyncTreeNode root = new AsyncTreeNode("", new AsyncTreeNodeConfig() {
-	    {
-		setLoader(loader);
-	    }
-	});
 
-	// setup a tree listener that reads the content panel associated with
-	// the
-	// node that is clicked and then displays it in the main / center panel
-	TreePanelListener treePanelListener = new TreePanelListenerAdapter() {
-	    public void onClick(TreeNode self, EventObject e) {
-		String screenName = BRMSContentManager.getScreenName(self, self
-			.getText());
-		if (screens.containsKey(screenName)) {
-		    BRMSContentManager panel = (BRMSContentManager) screens
-			    .get(screenName);
-		    LayoutRegion region = layout
-			    .getRegion(LayoutRegionConfig.CENTER);
-		    region.removeAll(true);
-		    ContentPanel[] panels = panel.getPanels();
-		    for (int i = 0; i < panels.length; i++) {
-			ContentPanel contentPanel = panels[i];
-			layout.add(contentPanel);
-		    }
-		    region.showPanel(0);
-		}
-		System.out.println("Clicked on Node: " + self.getText());
-		System.out.println("Clicked on Node: "
-			+ self.getAttribute("id"));
-	    }
-	};
+	private BorderLayout createBorderLayout() {
 
-	// register listener
-	menuTree.addTreePanelListener(treePanelListener);
+		LayoutRegionConfig north = new LayoutRegionConfig();
+		north.setSplit(false);
+		north.setInitialSize(50);
+		north.setTitlebar(false);
+		north.setAutoScroll(false);
 
-	menuTree.setRootNode(root);
-	// menuTree.getRootNode().appendChild( child )
-	menuTree.render();
+		LayoutRegionConfig south = new LayoutRegionConfig();
+		north.setSplit(false);
+		north.setInitialSize(50);
+		north.setTitlebar(false);
+		north.setAutoScroll(false);
 
-	// loads tree data asynchronously
-	root.expand();
+		LayoutRegionConfig west = new LayoutRegionConfig();
+		west.setSplit(true);
+		west.setInitialSize(300);
+		west.setMinSize(175);
+		west.setMaxSize(400);
+		west.setTitlebar(true);
+		west.setCollapsible(true);
+		west.setAnimate(true);
+		west.setCollapsed(false);
+		west.setAutoScroll(false);
 
-	menuTree.expandAll();
+		LayoutRegionConfig east = new LayoutRegionConfig();
+		east.setSplit(true);
+		east.setInitialSize(202);
+		east.setMinSize(175);
+		east.setMaxSize(400);
+		east.setTitlebar(true);
+		east.setCollapsible(true);
+		east.setAnimate(true);
+		east.setAutoScroll(false);
 
-	ContentPanel cp = new ContentPanel("eg-explorer", "BRMS Explorer");
+		LayoutRegionConfig center = new LayoutRegionConfig();
+		center.setTitlebar(false);
+		center.setAutoScroll(true);
+		center.setTabPosition("top");
 
-	cp.setWidth(" 100%");
-	cp.add(menuTree);
+		return new BorderLayout("100%", "100%", north, south, west, null,
+				center);
+	}
 
-	return cp;
-    }
+	private ContentPanel createExamplesExplorer(final BorderLayout layout,
+			final String menuconfig) {
 
-    private ContentPanel categoriesExplorer(final BorderLayout layout,
-	    final String menuconfig) {
+		// create and configure the main tree
+		final TreePanel menuTree = new TreePanel("eg-tree",
+				new TreePanelConfig() {
+					{
+						setAnimate(true);
+						setEnableDD(true);
+						setContainerScroll(true);
+						setRootVisible(true);
+					}
+				});
 
-	// create and configure the main tree
-	final TreePanel menuTree = new TreePanel("eg-tree",
-		new TreePanelConfig() {
-		    {
-			setAnimate(true);
-			setEnableDD(true);
-			setContainerScroll(true);
-			setRootVisible(true);
-		    }
-		});
+		treeFilter = new TreeFilter(menuTree);
 
-	treeFilter = new TreeFilter(menuTree);
+		final XMLTreeLoader loader = new XMLTreeLoader(
+				new XMLTreeLoaderConfig() {
+					{
 
-	final XMLTreeLoader loader = new XMLTreeLoader(
-		new XMLTreeLoaderConfig() {
-		    {
+						setDataUrl("site-nav.xml");
+						setMethod("get");
+						setRootTag(menuconfig);
+						setFolderTag("node");
+						setFolderTitleMapping("@title");
+						setLeafTitleMapping("@title");
+						setLeafTag("leaf");
+					}
+				});
 
-			setDataUrl("site-nav.xml");
-			setMethod("get");
-			setRootTag(menuconfig);
-			setFolderTag("node");
-			setFolderTitleMapping("@title");
-			setLeafTitleMapping("@title");
-			setLeafTag("leaf");
-		    }
+		AsyncTreeNode root = new AsyncTreeNode("", new AsyncTreeNodeConfig() {
+			{
+				setLoader(loader);
+			}
 		});
 
-	final AsyncTreeNode root = new AsyncTreeNode("",
-		new AsyncTreeNodeConfig() {
-		    {
-			setLoader(loader);
-		    }
-		});
+		// setup a tree listener that reads the content panel associated with
+		// the
+		// node that is clicked and then displays it in the main / center panel
+		TreePanelListener treePanelListener = new TreePanelListenerAdapter() {
+			public void onClick(TreeNode self, EventObject e) {
+				String screenName = BRMSContentManager.getScreenName(self, self
+						.getText());
+				if (screens.containsKey(screenName)) {
+					BRMSContentManager panel = (BRMSContentManager) screens
+							.get(screenName);
+					LayoutRegion region = layout
+							.getRegion(LayoutRegionConfig.CENTER);
+					region.removeAll(true);
+					ContentPanel[] panels = panel.getPanels();
+					for (int i = 0; i < panels.length; i++) {
+						ContentPanel contentPanel = panels[i];
+						layout.add(contentPanel);
+					}
+					region.showPanel(0);
+				}
+				System.out.println("Clicked on Node: " + self.getText());
+				System.out.println("Clicked on Node: "
+						+ self.getAttribute("id"));
+			}
+		};
 
-	RepositoryServiceFactory.getService().loadChildCategories("/",
-		new GenericCallback() {
-		    public void onSuccess(Object data) {
-			String value[] = (String[]) data;
+		// register listener
+		menuTree.addTreePanelListener(treePanelListener);
 
-			TreeNode treeNode = new TreeNode("Categories");
-			treeNode.setAttribute("icon",
-				"images/silk/chart_organisation.gif");
+		menuTree.setRootNode(root);
+		// menuTree.getRootNode().appendChild( child )
+		menuTree.render();
 
-			for (int i = 0; i < value.length; i++) {
-			    TreeNode childNode = new TreeNode(value[i]);
-			    childNode.setAttribute("icon",
-				    "images/category_small.gif");
-			    childNode.setAttribute("uuid", "000-000-000-000");
+		// loads tree data asynchronously
+		root.expand();
 
-			    treeNode.appendChild(childNode);
-			}
-			root.appendChild(treeNode);
-			root.expand();
-		    }
-		});
+		menuTree.expandAll();
 
-	RepositoryServiceFactory.getService().listStates(new GenericCallback() {
-	    public void onSuccess(Object data) {
-		String value[] = (String[]) data;
+		ContentPanel cp = new ContentPanel("eg-explorer", "BRMS Explorer");
 
-		TreeNode treeNode = new TreeNode("States");
-		treeNode.setAttribute("icon", "images/status_small.gif");
+		cp.setWidth(" 100%");
+		cp.add(menuTree);
 
-		for (int i = 0; i < value.length; i++) {
-		    TreeNode childNode = new TreeNode(value[i]);
-		    childNode.setAttribute("icon", "images/category_small.gif");
-		    childNode.setAttribute("uuid", "000-000-000-000");
+		return cp;
+	}
 
-		    treeNode.appendChild(childNode);
-		}
-		root.appendChild(treeNode);
-		root.expand();
-	    }
-	});
+	private ContentPanel categoriesExplorer(final BorderLayout layout,
+			final String menuconfig) {
 
-	// setup a tree listener that reads the content panel associated with
-	// the
-	// node that is clicked and then displays it in the main / center panel
-	TreePanelListener treePanelListener = new TreePanelListenerAdapter() {
-	    public void onClick(TreeNode self, EventObject e) {
+		// create and configure the main tree
+		final TreePanel menuTree = new TreePanel("eg-tree",
+				new TreePanelConfig() {
+					{
+						setAnimate(true);
+						setEnableDD(true);
+						setContainerScroll(true);
+						setRootVisible(true);
+					}
+				});
 
-		String screenName = BRMSContentManager.getScreenName(self, self
-			.getText());
+		treeFilter = new TreeFilter(menuTree);
 
-		if (screens.containsKey(screenName)) {
-		    BRMSContentManager panel = (BRMSContentManager) screens
-			    .get(screenName);
-		    LayoutRegion region = layout
-			    .getRegion(LayoutRegionConfig.CENTER);
-		    region.removeAll(true);
-		    ContentPanel[] panels = panel.getPanels();
-		    for (int i = 0; i < panels.length; i++) {
-			ContentPanel contentPanel = panels[i];
-			layout.add(contentPanel);
-		    }
-		    region.showPanel(0);
-		}
+		final XMLTreeLoader loader = new XMLTreeLoader(
+				new XMLTreeLoaderConfig() {
+					{
 
-		System.out.println("Clicked on Node: " + self.getText());
-		System.out.println("Clicked on Node: "
-			+ self.getAttribute("uuid"));
+						setDataUrl("site-nav.xml");
+						setMethod("get");
+						setRootTag(menuconfig);
+						setFolderTag("node");
+						setFolderTitleMapping("@title");
+						setLeafTitleMapping("@title");
+						setLeafTag("leaf");
+					}
+				});
 
-		LayoutRegion region = layout
-			.getRegion(LayoutRegionConfig.CENTER);
-		region.removeAll(true);
+		final AsyncTreeNode root = new AsyncTreeNode("",
+				new AsyncTreeNodeConfig() {
+					{
+						setLoader(loader);
+					}
+				});
 
-		ContentPanel contentpanel = new ContentPanel();
-		contentpanel.add(new AssetBrowser());
-		region.add(contentpanel);
-	    }
-	};
+		RepositoryServiceFactory.getService().loadChildCategories("/",
+				new GenericCallback() {
+					public void onSuccess(Object data) {
+						String value[] = (String[]) data;
 
-	// register listener
-	menuTree.addTreePanelListener(treePanelListener);
+						TreeNode treeNode = new TreeNode("Categories");
+						treeNode.setAttribute("icon",
+								"images/silk/chart_organisation.gif");
 
-	menuTree.setRootNode(root);
-	// menuTree.getRootNode().appendChild( child )
-	menuTree.render();
+						for (int i = 0; i < value.length; i++) {
+							TreeNode childNode = new TreeNode(value[i]);
+							childNode.setAttribute("icon",
+									"images/category_small.gif");
+							childNode.setAttribute("uuid", "000-000-000-000");
 
-	// loads tree data asynchronously
-	root.expand();
+							treeNode.appendChild(childNode);
+						}
+						root.appendChild(treeNode);
+						root.expand();
+					}
+				});
 
-	menuTree.expandAll();
+		RepositoryServiceFactory.getService().listStates(new GenericCallback() {
+			public void onSuccess(Object data) {
+				String value[] = (String[]) data;
 
-	ContentPanel cp = new ContentPanel("eg-explorer", "BRMS Explorer");
+				TreeNode treeNode = new TreeNode("States");
+				treeNode.setAttribute("icon", "images/status_small.gif");
 
-	cp.setWidth(" 100%");
-	cp.add(menuTree);
+				for (int i = 0; i < value.length; i++) {
+					TreeNode childNode = new TreeNode(value[i]);
+					childNode.setAttribute("icon", "images/category_small.gif");
+					childNode.setAttribute("uuid", "000-000-000-000");
 
-	return cp;
-    }
+					treeNode.appendChild(childNode);
+				}
+				root.appendChild(treeNode);
+				root.expand();
+			}
+		});
 
-    private ContentPanel packageExplorer(final BorderLayout layout,
-	    final String menuconfig) {
+		// setup a tree listener that reads the content panel associated with
+		// the
+		// node that is clicked and then displays it in the main / center panel
+		TreePanelListener treePanelListener = new TreePanelListenerAdapter() {
+			public void onClick(TreeNode self, EventObject e) {
 
-	// create and configure the main tree
-	final TreePanel menuTree = new TreePanel("eg-tree",
-		new TreePanelConfig() {
-		    {
-			setAnimate(true);
-			setEnableDD(true);
-			setContainerScroll(true);
-			setRootVisible(true);
-		    }
-		});
+				String screenName = BRMSContentManager.getScreenName(self, self
+						.getText());
 
-	treeFilter = new TreeFilter(menuTree);
+				if (screens.containsKey(screenName)) {
+					BRMSContentManager panel = (BRMSContentManager) screens
+							.get(screenName);
+					LayoutRegion region = layout
+							.getRegion(LayoutRegionConfig.CENTER);
+					region.removeAll(true);
+					ContentPanel[] panels = panel.getPanels();
+					for (int i = 0; i < panels.length; i++) {
+						ContentPanel contentPanel = panels[i];
+						layout.add(contentPanel);
+					}
+					region.showPanel(0);
+				}
 
-	final XMLTreeLoader loader = new XMLTreeLoader(
-		new XMLTreeLoaderConfig() {
-		    {
+				System.out.println("Clicked on Node: " + self.getText());
+				System.out.println("Clicked on Node: "
+						+ self.getAttribute("uuid"));
 
-			setDataUrl("site-nav.xml");
-			setMethod("get");
-			setRootTag(menuconfig);
-			setFolderTag("node");
-			setFolderTitleMapping("@title");
-			setLeafTitleMapping("@title");
-			setLeafTag("leaf");
-		    }
-		});
+				LayoutRegion region = layout
+						.getRegion(LayoutRegionConfig.CENTER);
+				region.removeAll(true);
 
-	final AsyncTreeNode root = new AsyncTreeNode("",
-		new AsyncTreeNodeConfig() {
-		    {
-			setLoader(loader);
-		    }
-		});
+				ContentPanel contentpanel = new ContentPanel();
+				contentpanel.add(new AssetBrowser());
+				region.add(contentpanel);
+			}
+		};
 
-	RepositoryServiceFactory.getService().listPackages(
-		new GenericCallback() {
-		    public void onSuccess(Object data) {
-			PackageConfigData value[] = (PackageConfigData[]) data;
+		// register listener
+		menuTree.addTreePanelListener(treePanelListener);
 
-			TreeNode treeNode = new TreeNode("Packages");
-			treeNode.setAttribute("icon",
-				"images/silk/chart_organisation.gif");
+		menuTree.setRootNode(root);
+		// menuTree.getRootNode().appendChild( child )
+		menuTree.render();
 
-			for (int i = 0; i < value.length; i++) {
+		// loads tree data asynchronously
+		root.expand();
 
-			    PackageConfigData packagedata = value[i];
+		menuTree.expandAll();
 
-			    TreeNode childNode = ExplorerStaticNodeConfig
-				    .getPackageStructure(packagedata.name,
-					    packagedata.uuid);
-			    treeNode.appendChild(childNode);
-			}
-			root.appendChild(treeNode);
-			root.expand();
+		ContentPanel cp = new ContentPanel("eg-explorer", "BRMS Explorer");
 
-		    }
-		});
+		cp.setWidth(" 100%");
+		cp.add(menuTree);
 
-	// setup a tree listener that reads the content panel associated with
-	// the
-	// node that is clicked and then displays it in the main / center panel
-	TreePanelListener treePanelListener = new TreePanelListenerAdapter() {
-	    public void onClick(TreeNode self, EventObject e) {
+		return cp;
+	}
 
-		String screenName = BRMSContentManager.getScreenName(self, self
-			.getText());
+	private ContentPanel packageExplorer(final BorderLayout layout,
+			final String menuconfig) {
 
-		if (screens.containsKey(screenName)) {
-		    BRMSContentManager panel = (BRMSContentManager) screens
-			    .get(screenName);
-		    LayoutRegion region = layout
-			    .getRegion(LayoutRegionConfig.CENTER);
-		    region.removeAll(true);
-		    ContentPanel[] panels = panel.getPanels();
-		    for (int i = 0; i < panels.length; i++) {
-			ContentPanel contentPanel = panels[i];
-			layout.add(contentPanel);
-		    }
-		    region.showPanel(0);
-		}
-		LayoutRegion region = layout
-			.getRegion(LayoutRegionConfig.CENTER);
-		region.removeAll(true);
+		// create and configure the main tree
+		final TreePanel menuTree = new TreePanel("eg-tree",
+				new TreePanelConfig() {
+					{
+						setAnimate(true);
+						setEnableDD(true);
+						setContainerScroll(true);
+						setRootVisible(true);
+					}
+				});
 
-		ContentPanel pmContentPanel = new ContentPanel();
-		PackageManagerView packagemanager = new PackageManagerView();
+		treeFilter = new TreeFilter(menuTree);
 
-		pmContentPanel.add(packagemanager);
+		final XMLTreeLoader loader = new XMLTreeLoader(
+				new XMLTreeLoaderConfig() {
+					{
 
-		region.add(pmContentPanel);
+						setDataUrl("site-nav.xml");
+						setMethod("get");
+						setRootTag(menuconfig);
+						setFolderTag("node");
+						setFolderTitleMapping("@title");
+						setLeafTitleMapping("@title");
+						setLeafTag("leaf");
+					}
+				});
 
-		System.out.println("Clicked on Node: " + self.getText());
-		System.out.println("Clicked on Node: "
-			+ self.getAttribute("uuid"));
-		System.out.println("Clicked on Node: "
-			+ self.getAttribute("id"));
-	    }
-	};
+		final AsyncTreeNode root = new AsyncTreeNode("",
+				new AsyncTreeNodeConfig() {
+					{
+						setLoader(loader);
+					}
+				});
 
-	// register listener
-	menuTree.addTreePanelListener(treePanelListener);
+		RepositoryServiceFactory.getService().listPackages(
+				new GenericCallback() {
+					public void onSuccess(Object data) {
+						PackageConfigData value[] = (PackageConfigData[]) data;
 
-	menuTree.setRootNode(root);
-	// menuTree.getRootNode().appendChild( child )
-	menuTree.render();
+						TreeNode treeNode = new TreeNode("Packages");
+						treeNode.setAttribute("icon",
+								"images/silk/chart_organisation.gif");
 
-	// loads tree data asynchronously
-	root.expand();
+						for (int i = 0; i < value.length; i++) {
 
-	// menuTree.expandAll();
+							PackageConfigData packagedata = value[i];
 
-	ContentPanel cp = new ContentPanel("eg-explorer", "BRMS Explorer");
+							TreeNode childNode = ExplorerNodeConfig.getPackageItensStructure(packagedata.name,
+											packagedata.uuid);
+							treeNode.appendChild(childNode);
+						}
+						root.appendChild(treeNode);
+						root.expand();
 
-	cp.setWidth(" 100%");
-	cp.add(menuTree);
+					}
+				});
 
-	return cp;
-    }
+		// setup a tree listener that reads the content panel associated with
+		// the
+		// node that is clicked and then displays it in the main / center panel
+		TreePanelListener treePanelListener = new TreePanelListenerAdapter() {
+			public void onClick(TreeNode self, EventObject e) {
 
-    // Need to refactory this thing!!!!
+				String screenName = BRMSContentManager.getScreenName(self, self
+						.getText());
 
-    private TreePanel genericExplorerWidget(final BorderLayout layout,
-	    final TreeNode childNode) {
-	// create and configure the main tree
-	final TreePanel menuTree = new TreePanel("eg-tree",
-		new TreePanelConfig() {
-		    {
-			setAnimate(true);
-			setEnableDD(true);
-			setContainerScroll(true);
-			setRootVisible(true);
-		    }
-		});
+				if (screens.containsKey(screenName)) {
+					BRMSContentManager panel = (BRMSContentManager) screens
+							.get(screenName);
+					LayoutRegion region = layout
+							.getRegion(LayoutRegionConfig.CENTER);
+					region.removeAll(true);
+					ContentPanel[] panels = panel.getPanels();
+					for (int i = 0; i < panels.length; i++) {
+						ContentPanel contentPanel = panels[i];
+						layout.add(contentPanel);
+					}
+					region.showPanel(0);
+				}
+				LayoutRegion region = layout
+						.getRegion(LayoutRegionConfig.CENTER);
+				region.removeAll(true);
 
-	treeFilter = new TreeFilter(menuTree);
-	menuTree.setRootNode(childNode);
-	menuTree.render();
+				ContentPanel pmContentPanel = new ContentPanel();
+				PackageManagerView packagemanager = new PackageManagerView();
 
-	menuTree.expandAll();
+				pmContentPanel.add(packagemanager);
 
-	return menuTree;
-    }
+				region.add(pmContentPanel);
+
+				System.out.println("Clicked on Node: " + self.getText());
+				System.out.println("Clicked on Node: "
+						+ self.getAttribute("uuid"));
+				System.out.println("Clicked on Node: "
+						+ self.getAttribute("id"));
+			}
+		};
+
+		// register listener
+		menuTree.addTreePanelListener(treePanelListener);
+
+		menuTree.setRootNode(root);
+		// menuTree.getRootNode().appendChild( child )
+		menuTree.render();
+
+		// loads tree data asynchronously
+		root.expand();
+
+		// menuTree.expandAll();
+
+		ContentPanel cp = new ContentPanel("eg-explorer", "BRMS Explorer");
+
+		cp.setWidth(" 100%");
+		cp.add(menuTree);
+
+		return cp;
+	}
+
+	// Need to refactory this thing!!!!
+
+	private TreePanel genericExplorerWidget(final BorderLayout layout,
+			final TreeNode childNode) {
+		// create and configure the main tree
+		final TreePanel menuTree = new TreePanel("eg-tree",
+				new TreePanelConfig() {
+					{
+						setAnimate(true);
+						setEnableDD(true);
+						setContainerScroll(true);
+						setRootVisible(true);
+					}
+				});
+
+		treeFilter = new TreeFilter(menuTree);
+		menuTree.setRootNode(childNode);
+		menuTree.render();
+
+		menuTree.expandAll();
+
+		return menuTree;
+	}
 }

Copied: labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerNodeConfig.java (from rev 16703, labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerStaticNodeConfig.java)
===================================================================
--- labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerNodeConfig.java	                        (rev 0)
+++ labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerNodeConfig.java	2007-11-20 17:53:33 UTC (rev 16706)
@@ -0,0 +1,130 @@
+package org.drools.brms.client.explorer;
+
+import org.drools.brms.client.common.GenericCallback;
+import org.drools.brms.client.rpc.RepositoryServiceFactory;
+
+import com.gwtext.client.widgets.tree.TreeNode;
+
+/*
+ * This class contains static node config for BRMS' explorer widget
+ */
+
+public class ExplorerNodeConfig {
+	
+	public static String CATEGORY_ID = "category";
+	public static String STATES_ID = "states";
+	
+	public static TreeNode getPackageItensStructure(String packageName, String uuid) {
+
+		TreeNode packageNode = new TreeNode(packageName);
+		packageNode.setAttribute("uuid", uuid);
+		packageNode.setAttribute("icon", "images/package.gif");
+
+		String[][] packageStructure = new String[][] {
+				{ "Business Rules", "images/rule_asset.gif" }, // ID 0
+				{ "Tecnical Rules", "" }, // ID 1
+				{ "Rule Flows", "images/ruleflow_small.gif" }, // ID 2
+				{ "Function", "images/function_assets.gif" }, // ID 3
+				{ "DSL", "images/dsl.gif" }, // ID 4
+				{ "Model", "images/model_asset.gif" } }; // ID 5
+
+		for (int i = 0; i < packageStructure.length; i++) {
+
+			String[] packageData = packageStructure[i];
+			TreeNode localChildNode = new TreeNode(packageData[0]);
+			localChildNode.setAttribute("icon", packageData[1]);
+			localChildNode.setAttribute("uuid", uuid);
+			localChildNode.setAttribute("id", String.valueOf(i));
+
+			packageNode.appendChild(localChildNode);
+		}
+		return packageNode;
+	}
+
+	public static TreeNode getAdminStructure() {
+
+		TreeNode adminNode = new TreeNode("Admin");
+		adminNode.setAttribute("icon", "images/managment.gif");
+
+		String[][] adminStructure = new String[][] {
+				{ "Categories", "images/category_small.gif" }, // ID 0
+				{ "Archived Assets", "images/backup_small.gif" }, // ID 1
+				{ "State", "images/tag.png" }, // ID 2
+				{ "Import/Export", "images/save_edit.gif" }, // ID 3
+				{ "Users", "images/icoUsers.gif" }, // ID 4
+				{ "Security", "images/login.gif" } }; // ID 5
+
+		for (int i = 0; i < adminStructure.length; i++) {
+
+			String[] packageData = adminStructure[i];
+			TreeNode localChildNode = new TreeNode(packageData[0]);
+			localChildNode.setAttribute("ico n", packageData[1]);
+			localChildNode.setAttribute("id", String.valueOf(i));
+
+			adminNode.appendChild(localChildNode);
+		}
+		return adminNode;
+	}
+	
+	public static TreeNode getRulesStructure () {
+		
+		final TreeNode adminNode = new TreeNode("Rules");
+		
+		adminNode.appendChild(getStatesStructure());
+		adminNode.appendChild(getCategoriesStructure());
+		
+		return adminNode;
+		
+	}
+	
+	public static TreeNode getCategoriesStructure () {
+		
+		final TreeNode treeNode = new TreeNode("Categories");
+		treeNode.setAttribute("icon",
+				"images/silk/chart_organisation.gif");
+		
+		treeNode.setAttribute("id",CATEGORY_ID);
+
+		
+		RepositoryServiceFactory.getService().loadChildCategories("/",
+				new GenericCallback() {
+					public void onSuccess(Object data) {
+						String value[] = (String[]) data;
+						for (int i = 0; i < value.length; i++) {
+							TreeNode childNode = new TreeNode(value[i]);
+							childNode.setAttribute("icon","images/category_small.gif");
+							childNode.setAttribute("uuid", "000-000-000-000");
+							treeNode.appendChild(childNode);
+						}
+					}
+				});
+
+		return treeNode;
+		
+	}
+	
+	public static TreeNode getStatesStructure () {
+		
+		final TreeNode treeNode = new TreeNode("States");
+		treeNode.setAttribute("icon", "images/status_small.gif");
+		treeNode.setAttribute("id",STATES_ID);
+
+		
+		RepositoryServiceFactory.getService().listStates(new GenericCallback() {
+			public void onSuccess(Object data) {
+				String value[] = (String[]) data;
+
+
+				for (int i = 0; i < value.length; i++) {
+					TreeNode childNode = new TreeNode(value[i]);
+					childNode.setAttribute("icon", "images/category_small.gif");
+					childNode.setAttribute("uuid", "000-000-000-000");
+					treeNode.appendChild(childNode);
+				}
+			}
+		});
+
+		return treeNode;
+	}
+
+}

Deleted: labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerStaticNodeConfig.java
===================================================================
--- labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerStaticNodeConfig.java	2007-11-20 16:21:21 UTC (rev 16705)
+++ labs/jbossrules/branches/drools-jbrmv2/src/main/java/org/drools/brms/client/explorer/ExplorerStaticNodeConfig.java	2007-11-20 17:53:33 UTC (rev 16706)
@@ -1,62 +0,0 @@
-package org.drools.brms.client.explorer;
-
-import com.gwtext.client.widgets.tree.TreeNode;
-
-/*
- * This class contains static node config for BRMS' explorer widget
- */
-
-public class ExplorerStaticNodeConfig {
-    public static TreeNode getPackageStructure(String packageName, String uuid) {
-
-	TreeNode packageNode = new TreeNode(packageName);
-	packageNode.setAttribute("uuid", uuid);
-	packageNode.setAttribute("icon", "images/package.gif");
-
-	String[][] packageStructure = new String[][] {
-		{ "Business Rules", "images/rule_asset.gif" }, // ID 0
-		{ "Tecnical Rules", "" }, // ID 1
-		{ "Rule Flows", "images/ruleflow_small.gif" }, // ID 2
-		{ "Function", "images/function_assets.gif" }, // ID 3
-		{ "DSL", "images/dsl.gif" }, // ID 4
-		{ "Model", "images/model_asset.gif" } }; // ID 5
-
-	for (int i = 0; i < packageStructure.length; i++) {
-
-	    String[] packageData = packageStructure[i];
-	    TreeNode localChildNode = new TreeNode(packageData[0]);
-	    localChildNode.setAttribute("icon", packageData[1]);
-	    localChildNode.setAttribute("uuid", uuid);
-	    localChildNode.setAttribute("id", String.valueOf(i));
-
-	    packageNode.appendChild(localChildNode);
-	}
-	return packageNode;
-    }
-
-    public static TreeNode getAdminStructure() {
-
-	TreeNode adminNode = new TreeNode("Admin");
-	adminNode.setAttribute("icon", "images/managment.gif");
-
-	String[][] adminStructure = new String[][] {
-		{ "Categories", "images/category_small.gif" }, // ID 0
-		{ "Archived Assets", "images/backup_small.gif" }, // ID 1
-		{ "State", "images/tag.png" }, // ID 2
-		{ "Import/Export", "images/save_edit.gif" }, // ID 3
-		{ "Users", "images/icoUsers.gif" }, // ID 4
-		{ "Security", "images/login.gif" } }; // ID 5
-
-	for (int i = 0; i < adminStructure.length; i++) {
-
-	    String[] packageData = adminStructure[i];
-	    TreeNode localChildNode = new TreeNode(packageData[0]);
-	    localChildNode.setAttribute("icon", packageData[1]);
-	    localChildNode.setAttribute("id", String.valueOf(i));
-
-	    adminNode.appendChild(localChildNode);
-	}
-	return adminNode;
-    }
-
-}




More information about the jboss-svn-commits mailing list