package devopsdistilled.operp.client.items.panes;

import javax.swing.JComponent;
import javax.swing.JPanel;

import devopsdistilled.operp.client.abstracts.SubTaskPane;
import devopsdistilled.operp.client.items.models.observers.ManufacturerModelObserver;
import devopsdistilled.operp.client.items.panes.models.observers.ListManufacturerPaneModelObserver;

public class ListManufacturerPane extends SubTaskPane implements
		ListManufacturerPaneModelObserver, ManufacturerModelObserver {

	private final JPanel pane;

	public ListManufacturerPane() {
		pane = new JPanel();
	}

	@Override
	public JComponent getPane() {
		return pane;
	}

}

@@ -59,113 +59,435 @@
 java
-x.swing.JComponent;%0Aimport javax.swing.JPanel;%0A%0Aimport devopsdistilled.operp.client.abstracts.SubTaskPane
+.awt.event.MouseAdapter;%0Aimport java.awt.event.MouseEvent;%0Aimport java.util.List;%0A%0Aimport javax.inject.Inject;%0Aimport javax.swing.JComponent;%0Aimport javax.swing.JPanel;%0Aimport javax.swing.JScrollPane;%0Aimport javax.swing.JTable;%0Aimport javax.swing.ListSelectionModel;%0Aimport javax.swing.SwingUtilities;%0A%0Aimport devopsdistilled.operp.client.abstracts.SubTaskPane;%0Aimport devopsdistilled.operp.client.abstracts.libs.BeanTableModel
 ;%0Aim
@@ -566,24 +566,105 @@
 elObserver;%0A
+import devopsdistilled.operp.client.items.panes.details.ManufacturerDetailsPane;%0A
 import devop
@@ -750,16 +750,84 @@
 bserver;
+%0Aimport devopsdistilled.operp.server.data.entity.items.Manufacturer;
 %0A%0Apublic
@@ -956,151 +956,1288 @@
 %7B%0A%0A%09
-private final JPanel pane;%0A%0A%09public ListManufacturerPane() %7B%0A%09%09pane = new JPanel();%0A%09%7D%0A%0A%09@Override%0A%09public JComponent getPane() %7B%0A%09%09return pane
+@Inject%0A%09private ManufacturerDetailsPane manufacturerDetailsPane;%0A%0A%09private final JPanel pane;%0A%0A%09private final JTable table;%0A%09BeanTableModel%3CManufacturer%3E tableModel;%0A%0A%09public ListManufacturerPane() %7B%0A%09%09pane = new JPanel();%0A%0A%09%09table = new JTable();%0A%09%09table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);%0A%09%09table.addMouseListener(new MouseAdapter() %7B%0A%09%09%09@Override%0A%09%09%09public void mousePressed(MouseEvent e) %7B%0A%09%09%09%09if (SwingUtilities.isLeftMouseButton(e)%0A%09%09%09%09%09%09&& e.getClickCount() == 2%0A%09%09%09%09%09%09&& table.getSelectedRow() != -1) %7B%0A%0A%09%09%09%09%09Manufacturer manufacturer = tableModel.getRow(table%0A%09%09%09%09%09%09%09.getSelectedRow());%0A%0A%09%09%09%09%09manufacturerDetailsPane.show(manufacturer);%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%7D);%0A%0A%09%09final JScrollPane scrollPane = new JScrollPane(table,%0A%09%09%09%09JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,%0A%09%09%09%09JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);%0A%0A%09%09pane.add(scrollPane, %22grow%22);%0A%09%7D%0A%0A%09@Override%0A%09public JComponent getPane() %7B%0A%09%09return pane;%0A%09%7D%0A%0A%09@Override%0A%09public void updateManufacturers(List%3CManufacturer%3E manufacturers) %7B%0A%09%09tableModel = null;%0A%09%09tableModel = new BeanTableModel%3C%3E(Manufacturer.class, manufacturers);%0A%0A%09%09for (int i = 0; i %3C tableModel.getColumnCount(); i++) %7B%0A%09%09%09tableModel.setColumnEditable(i, false);%0A%09%09%7D%0A%0A%09%09tableModel.setModelEditable(false);%0A%09%09table.setModel(tableModel)
 ;%0A%09%7D

Create ListManufacturerPane