package com.kolakcc.loljclient.controller;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import com.kolakcc.loljclient.view.CustomGameFilterView;
import com.kolakcc.loljclient.model.swing.CustomGameTableModel;
public class CustomGameFilterController extends KolaController implements DocumentListener, ItemListener {
CustomGameFilterView view;
CustomGameTableModel model;
public CustomGameFilterController(CustomGameTableModel model) {
this.model = model;
this.view = new CustomGameFilterView();
this.view.filterField.getDocument().addDocumentListener(this);
this.view.addCheckboxListeners(this);
}
@Override
public void insertUpdate(DocumentEvent e) {
this.model.filterGameName(this.view.filterField.getText());
this.model.reapplyFilters();
}
@Override
public void removeUpdate(DocumentEvent e) {
this.model.filterGameName(this.view.filterField.getText());
this.model.reapplyFilters();
}
@Override
public void changedUpdate(DocumentEvent e) {
}
@Override
public void itemStateChanged(ItemEvent e) {
model.showGameMaps.clear();
if (view.pgBox.isSelected()) model.showGameMaps.add(7);
if (view.srBox.isSelected()) model.showGameMaps.add(1);
if (view.ttBox.isSelected()) model.showGameMaps.add(10);
if (view.doBox.isSelected()) model.showGameMaps.add(8);
if (view.privateBox.isSelected()) model.showPrivateGames = true;
else model.showPrivateGames = false;
model.reapplyFilters();
}
}