public SelectedController(SelectedDatesPanel view) { this.view = view; // sorter and model this.tableModel = new SelectedDatesTableModel(); TableRowSorter<TableModel> sorter = new TableRowSorter<TableModel>(tableModel); this.view.selectedDatesTablePanel.table.setModel(tableModel); this.view.selectedDatesTablePanel.table.setRowSorter(sorter); // end of sorter and table model selectedActor = this.getContext() .actorOf( new Props( new UntypedActorFactory() { private static final long serialVersionUID = 1L; @Override public Actor create() { return new SelectedDatesContainerActor(); } }), "selecteddatescontaineractor"); // add the date action listiners for (SelectorComponent comp : this.view.selector_components.values()) { comp.addSelectedDatesBtnListiner(new SelectedDatesBtnListiner(comp.getComponentName())); comp.addRemoveSelectedDateListiner( new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if (e instanceof RemoveDateActionEvent) { RemoveDateActionEvent rdae = (RemoveDateActionEvent) e; self().tell(rdae); } } }); } // add the controller as a listiner AddSelectedDatesListinerActorMessage asdlam = new AddSelectedDatesListinerActorMessage(getSelf()); selectedActor.tell(asdlam); // schedule view updates /** * this.getContext() .system() .scheduler() .schedule(Duration.Zero(), Duration.create(2, * TimeUnit.SECONDS), new Runnable() { @Override public void run() { self().tell(new * UPDATEUI()); } }); */ // add the button listiner this.view.selectedDatesTablePanel.btnSendToMaster.addActionListener( new CreateTasksActionListiner()); }