86 lines
3.1 KiB
Java
86 lines
3.1 KiB
Java
import javax.swing.*;
|
||
import java.awt.event.ActionEvent;
|
||
import java.awt.event.ActionListener;
|
||
|
||
public class MenuBar extends JMenuBar {
|
||
private DataTableModel tableModel;
|
||
|
||
public MenuBar(DataTableModel tableModel) {
|
||
this.tableModel = tableModel;
|
||
|
||
|
||
// Create add submenu
|
||
JMenu addMenu = new JMenu("Добавить");
|
||
|
||
// Row add items
|
||
JMenuItem addRowItem = new JMenuItem("Новый ряд (крайний)");
|
||
addRowItem.addActionListener(new MenuActionAddRow(tableModel, false));
|
||
addMenu.add(addRowItem);
|
||
|
||
JMenuItem addPositionedRowItem = new JMenuItem("Новый ряд (позиция)");
|
||
addPositionedRowItem.addActionListener(new MenuActionAddRow(tableModel, true));
|
||
addMenu.add(addPositionedRowItem);
|
||
|
||
// Column add items
|
||
JMenuItem addColumnItem = new JMenuItem("Новый столбец (крайний)");
|
||
addColumnItem.addActionListener(new MenuActionAddColumn(tableModel, false));
|
||
addMenu.add(addColumnItem);
|
||
|
||
JMenuItem addPositionedColumnItem = new JMenuItem("Новый столбец (позиция)");
|
||
addPositionedColumnItem.addActionListener(new MenuActionAddColumn(tableModel, true));
|
||
addMenu.add(addPositionedColumnItem);
|
||
|
||
// Create delete submenu
|
||
JMenu deleteMenu = new JMenu("Удалить");
|
||
|
||
// Row delete
|
||
JMenuItem deleteRowItem = new JMenuItem("Удалить строку");
|
||
deleteRowItem.addActionListener(new MenuActionDeleteRow(tableModel));
|
||
deleteMenu.add(deleteRowItem);
|
||
|
||
// Column delete
|
||
JMenuItem deleteColumnItem = new JMenuItem("Удалить столбец");
|
||
deleteColumnItem.addActionListener(new MenuActionDeleteColumn(tableModel));
|
||
deleteMenu.add(deleteColumnItem);
|
||
|
||
// Create main menu
|
||
JMenu menu = new JMenu("Меню");
|
||
|
||
menu.add(addMenu);
|
||
|
||
menu.add(deleteMenu);
|
||
|
||
JMenuItem highestHarvestItem = new JMenuItem("Макс урожай");
|
||
highestHarvestItem.addActionListener(new MenuActionFindHighestHarvest(tableModel));
|
||
menu.add(highestHarvestItem);
|
||
|
||
JMenuItem plumHarvestAvgItem = new JMenuItem("Средн Урожай");
|
||
plumHarvestAvgItem.addActionListener(new MenuActionGetPlumHarvestAvg(tableModel));
|
||
menu.add(plumHarvestAvgItem);
|
||
|
||
JMenuItem harvestPerTypeItem = new JMenuItem("Общий урожай");
|
||
harvestPerTypeItem.addActionListener(new MenuActionGetHarvestPerType(tableModel));
|
||
menu.add(harvestPerTypeItem);
|
||
|
||
JMenuItem linSpecItem = new JMenuItem("Lin Spec");
|
||
linSpecItem.addActionListener(new MenuActionLinSpec());
|
||
menu.add(linSpecItem);
|
||
|
||
menu.add(createMockMenuItem("Сектор К деревьев"));
|
||
this.add(menu);
|
||
}
|
||
|
||
private JMenuItem createMockMenuItem(String text) {
|
||
JMenuItem item = new JMenuItem(text);
|
||
item.addActionListener(new ActionListener() {
|
||
@Override
|
||
public void actionPerformed(ActionEvent e) {
|
||
JOptionPane.showMessageDialog(null, text);
|
||
}
|
||
});
|
||
return item;
|
||
}
|
||
|
||
|
||
}
|