package no.ugland.utransprod.gui;
import java.awt.BorderLayout;
import java.awt.Component;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JScrollPane;
import no.ugland.utransprod.gui.handlers.ProductionOverviewViewHandler;
import no.ugland.utransprod.util.InternalFrameBuilder;
import org.jdesktop.swingx.JXTable;
import com.google.inject.Inject;
import com.jgoodies.forms.builder.PanelBuilder;
import com.jgoodies.forms.factories.ButtonBarFactory;
import com.jgoodies.forms.layout.CellConstraints;
import com.jgoodies.forms.layout.FormLayout;
/**
* Viser produksjonsoversikt
* @author atle.brekka
*/
public class ProductionOverviewView implements Viewer {
/**
*
*/
private ProductionOverviewViewHandler viewHandler;
/**
*
*/
private JXTable productionTable;
/**
*
*/
private JButton buttonClose;
/**
*
*/
private JComboBox comboBoxProductAreaGroup;
/**
*
*/
private JButton buttonRefresh;
/**
*
*/
private JButton buttonSearch;
/**
*
*/
private JCheckBox checkBoxFilter;
private JButton buttonShowTakstolInfo;
/**
* @param viewHandler
*/
@Inject
public ProductionOverviewView(ProductionOverviewViewHandler viewHandler) {
this.viewHandler = viewHandler;
}
/**
* Initierer vinduskomponenter
* @param window
*/
private void initComponents(WindowInterface window) {
productionTable = viewHandler.getTable(window);
buttonClose = viewHandler.getCancelButton(window);
checkBoxFilter = viewHandler.getCheckBoxFilter();
buttonRefresh = viewHandler.getButtonRefresh(window);
buttonSearch = viewHandler.getButtonSearch(window);
comboBoxProductAreaGroup = viewHandler.getComboBoxProductAreaGroup();
buttonShowTakstolInfo= viewHandler.getButtonShowTakstolInfo(window);
}
/**
* Bygger panel
* @param window
* @return panel
*/
public Component buildPanel(WindowInterface window) {
initComponents(window);
FormLayout layout = new FormLayout("10dlu,p,3dlu,p,3dlu,p,3dlu,p,280dlu:grow,10dlu",
"10dlu,p,3dlu,300dlu:grow,3dlu,p");
PanelBuilder builder = new PanelBuilder(layout);
// PanelBuilder builder = new PanelBuilder(new FormDebugPanel(),layout);
CellConstraints cc = new CellConstraints();
JScrollPane scrollPane = new JScrollPane(productionTable);
scrollPane.setName("ScrollPaneTable");
builder.addLabel("Produktomr�de:", cc.xy(2, 2));
builder.add(comboBoxProductAreaGroup, cc.xy(4, 2));
builder.add(buttonSearch, cc.xy(6, 2));
builder.add(checkBoxFilter, cc.xy(8, 2));
builder.add(scrollPane, cc.xyw(2, 4, 8));
builder.add(ButtonBarFactory.buildCenteredBar(buttonRefresh, buttonClose), cc.xyw(2, 6, 8));
return builder.getPanel();
}
/**
* @see no.ugland.utransprod.gui.Viewer#buildWindow()
*/
public WindowInterface buildWindow() {
WindowInterface window = InternalFrameBuilder.buildInternalFrame(viewHandler.getWindowTitle(),
viewHandler.getWindowSize(), true);
window.add(buildPanel(window), BorderLayout.CENTER);
return window;
}
/**
* Gj�r ingenting
* @see no.ugland.utransprod.gui.Viewer#cleanUp()
*/
public void cleanUp() {
}
/**
* @see no.ugland.utransprod.gui.Viewer#getTitle()
*/
public String getTitle() {
return viewHandler.getWindowTitle();
}
/**
* Gj�r ingenting
* @see no.ugland.utransprod.gui.Viewer#initWindow()
*/
public void initWindow() {
}
/**
* Returnerer true
* @see no.ugland.utransprod.gui.Viewer#useDispose()
*/
public boolean useDispose() {
return true;
}
}