Advertisement
Guest User

Untitled

a guest
Nov 19th, 2013
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package hu.xxx.ddc.main;
  2.  
  3. import hu.xxx.ddc.components.DdcPDepsDataProvider;
  4. import hu.xxx.ddc.model.DdcPDeps;
  5. import hu.xxx.ddc.services.DdcCustomBo;
  6. import java.util.ArrayList;
  7. import java.util.List;
  8. import org.apache.log4j.Logger;
  9. import org.apache.wicket.ajax.AjaxRequestTarget;
  10. import org.apache.wicket.ajax.markup.html.AjaxLink;
  11. import org.apache.wicket.extensions.markup.html.repeater.data.sort.SortOrder;
  12. import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
  13. import org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable;
  14. import org.apache.wicket.extensions.markup.html.repeater.data.table.HeadersToolbar;
  15. import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
  16. import org.apache.wicket.extensions.markup.html.repeater.data.table.NavigationToolbar;
  17. import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
  18. import org.apache.wicket.markup.html.WebMarkupContainer;
  19. import org.apache.wicket.markup.html.basic.Label;
  20. import org.apache.wicket.markup.html.panel.Panel;
  21. import org.apache.wicket.markup.repeater.Item;
  22. import org.apache.wicket.markup.repeater.OddEvenItem;
  23. import org.apache.wicket.model.IModel;
  24. import org.apache.wicket.model.LoadableDetachableModel;
  25. import org.apache.wicket.model.ResourceModel;
  26. import org.apache.wicket.spring.injection.annot.SpringBean;
  27.  
  28. /**
  29.  *
  30.  * @author sfeher
  31.  */
  32. public final class DependenciesPanel extends Panel {
  33.  
  34.     @SpringBean(name = "DdcCustomBo")
  35.     private DdcCustomBo customBo;
  36.     static final Logger logger = Logger.getLogger(DependenciesPanel.class);
  37.     LoadableDetachableModel model;
  38.     WebMarkupContainer cont;
  39.  
  40.     public DependenciesPanel(String id,final IModel m,WebMarkupContainer c) {
  41.         super(id);
  42.         this.model=new LoadableDetachableModel() {
  43.  
  44.             @Override
  45.             protected Object load() {
  46.                 return m.getObject();
  47.             }
  48.         };
  49.         this.cont=c;
  50.         Populate();
  51.     }
  52.  
  53.     class ActionPanel extends Panel {
  54.          
  55.         public ActionPanel(String id, IModel<?> model) {
  56.             super(id, model);            
  57.             addControls(model);
  58.         }
  59.         private void addControls(final IModel model) {
  60.             add(new AjaxLink("deletelink") {
  61.  
  62.                 @Override
  63.                 public void onClick(AjaxRequestTarget art) {
  64.                     customBo.getDaoSession().beginTransaction();
  65.                     customBo.delete(model.getObject());
  66.                     customBo.getDaoSession().getTransaction().commit();
  67.                     art.add(cont);        
  68.                 }
  69.             });
  70.         }
  71.        
  72.     }
  73.    
  74.     private void Populate() {
  75.         //cont = new WebMarkupContainer("container");
  76.         setOutputMarkupId(true);
  77.         List<IColumn<DdcPDeps, ?>> columns = new ArrayList<IColumn<DdcPDeps, ?>>();
  78.         DdcPDepsDataProvider dataprovider = new DdcPDepsDataProvider(customBo, new DdcPDeps());
  79.         Label title=new Label("ptitle",new ResourceModel("deptable.reltype"));
  80.         add(title);
  81.         columns.add(new PropertyColumn<DdcPDeps,String>(new ResourceModel("deptable.reltype"),"pRelType","pRelType"));        
  82.         columns.add(new PropertyColumn<DdcPDeps,String>(new ResourceModel("deptable.id"),"ddcPDepsPK.pId2","ddcPDepsPK.pId2"));        
  83.         columns.add(new PropertyColumn<DdcPDeps,String>(new ResourceModel("deptable.name"),"ddcPObjects.pName","ddcPObjects.pName"));        
  84.         columns.add(new PropertyColumn<DdcPDeps,String>(new ResourceModel("deptable.pdesc"),"ddcPObjects.pDesc","ddcPObjects.pDesc"));        
  85.         columns.add(new AbstractColumn(new ResourceModel("deptable.action")) {
  86.             @Override
  87.             public void populateItem(Item item, String string, IModel imodel) {
  88.                 item.add(new ActionPanel(string, imodel));                
  89.             }
  90.         });        
  91.         final DataTable table = new DataTable("datatable", columns, dataprovider, 24) {
  92.             @Override
  93.             protected Item newRowItem(String id, int index, IModel model) {
  94.                 return new OddEvenItem(id, index, model);
  95.             }
  96.         };
  97.         table.setOutputMarkupId(true);
  98.         dataprovider.setSort("ddcPDepsPK.pId2", SortOrder.ASCENDING);
  99.         table.addTopToolbar(new HeadersToolbar(table, dataprovider));
  100.         table.addBottomToolbar(new NavigationToolbar(table));
  101.         add(table);        
  102.  
  103.     }
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement