All pastes #717347 Raw Edit

mrcheeks

public java v1 · immutable
#717347 ·published 2007-09-27 15:50 UTC
rendered paste body
/* * HelloWorld.java * * Created on 2007-09-20, 15:07:39 * * To change this template, choose Tools | Templates * and open the template in the editor. */package wicket.examples.helloworld;import net.sf.archimede.model.CredentialsWrapper;import net.sf.archimede.model.DatabaseUtil;import net.sf.archimede.model.collection.Collection;import net.sf.archimede.model.collection.CollectionDao;import org.apache.wicket.ajax.AjaxRequestTarget;import org.apache.wicket.markup.html.WebPage;import org.apache.wicket.markup.html.basic.Label;import org.apache.wicket.markup.html.tree.AbstractTree;import org.apache.wicket.markup.html.tree.BaseTree;import org.apache.wicket.markup.html.tree.DefaultTreeState;import org.apache.wicket.markup.html.tree.LinkTree;import java.util.Collections;import java.util.Iterator;import java.util.List;import java.util.logging.Level;import java.util.logging.Logger;import javax.swing.event.TreeModelEvent;import javax.swing.tree.DefaultMutableTreeNode;import javax.swing.tree.DefaultTreeModel;import javax.swing.tree.TreeModel;import javax.swing.tree.TreeNode;import javax.swing.tree.TreePath;/** * Everybody's favorite example! * * @author Jonathan Locke */public class HelloWorld extends WebPage {    static CredentialsWrapper cr;    static {        try {            if (cr == null) {                CredentialsWrapper cr = new CredentialsWrapper("dd", "dd");                DatabaseUtil.getSingleton().beginTransaction(cr);            }        } catch (Exception e) {            System.out.println("erreur statique");        }    }    private static BaseTree tree;    DefaultMutableTreeNode rootNode;    Label label;    static TreeModel t;    /**     * Constructor     */    public HelloWorld() {        t = createTreeModel();        label = new Label("message", "Hello World!");        add(label);        tree = new LinkTree("tree", t) {                    protected void onNodeLinkClicked(TreeNode node,                        BaseTree tree, AjaxRequestTarget target) {                        final TreeNode m_node = node;                         CustomTreeNode n = (CustomTreeNode) m_node;                        if (!n.childrenLoaded) {                            n.loadChildren();                            int kids = n.getChildCount();                            if (kids < 1) {                                return;                            }                              tree.modelChanged();                            getTreeState().expandNode(m_node);                                                                                    System.out.println(m_node.getParent().toString());                                                         AjaxRequestTarget aj = new AjaxRequestTarget();                            updateTree(aj);                         }                     }                };        add(tree);     }    protected AbstractTree getTree() {        return tree;    }    protected TreeModel createTreeModel() {        TreeModel model = null;        try {            CollectionDao colDao = CollectionDao.createInstance();            Collection rootCollection = colDao.getRootCollection();            final List li = rootCollection.getCollections();            rootNode = new CustomTreeNode(new ModelBean(rootCollection));            for (Iterator i = li.iterator(); i.hasNext();) {                Object o = i.next();                ModelBean m = new ModelBean(o);                DefaultMutableTreeNode child = new CustomTreeNode(m);                rootNode.add(child);            }            model = new CustomTreeModel(rootNode);        } catch (Exception ex) {            Logger.getLogger(HelloWorld.class.getName())                  .log(Level.SEVERE, null, ex);        }        return model;    }    private class CustomTreeModel extends DefaultTreeModel	{		public CustomTreeModel(TreeNode root)		{			super(root);			// TODO Auto-generated constructor stub		}				public DefaultMutableTreeNode insertSingleNode(DefaultMutableTreeNode parent, Object o)		{			DefaultMutableTreeNode child = new CustomTreeNode(new ModelBean(o));			parent.add(child);			fireTreeNodesInserted(this, parent.getPath(), new int[]{parent.getIndex(child)}, new Object[]{child});			return child;		}	}    public static void add(DefaultMutableTreeNode parent, List sub) {        Object parentObj = parent.getUserObject();        for (Iterator i = sub.iterator(); i.hasNext();) {            Object o = i.next();            CustomTreeModel ctm = (CustomTreeModel)t;            ctm.insertSingleNode(parent, o);         }    }}