Line deletion task ready
This commit is contained in:
126
src/MenuBar.java
126
src/MenuBar.java
@@ -7,57 +7,54 @@ public class MenuBar extends JMenuBar {
|
||||
|
||||
public MenuBar(DataTableModel tableModel) {
|
||||
this.tableModel = tableModel;
|
||||
JMenu menu = new JMenu("Меню");
|
||||
this.add(menu);
|
||||
|
||||
menu.add(createAddRowColItem());
|
||||
menu.add(createRemoveRowColItem());
|
||||
|
||||
// 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);
|
||||
// menu.add(createAddRowColItem());
|
||||
// menu.add(createRemoveRowColItem());
|
||||
menu.add(createMockMenuItem("Макс Урожай"));
|
||||
menu.add(createMockMenuItem("Средн Урожай"));
|
||||
menu.add(createMockMenuItem("Общий урожай"));
|
||||
menu.add(createMockMenuItem("Lin Spec"));
|
||||
menu.add(createMockMenuItem("Сектор К деревьев"));
|
||||
}
|
||||
private JMenuItem createRemoveRowColItem() {
|
||||
JMenuItem item = new JMenuItem();
|
||||
item.setText("Удалить");
|
||||
item.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
System.out.println("Remove Row/Col");
|
||||
Object[] options = {"Удалить строку", "Удалить колонку", "Отмена"};
|
||||
|
||||
|
||||
JPanel panel = new JPanel();
|
||||
panel.add(new JLabel("Введите номер строки или стоблца который должен быть удален"));
|
||||
JTextField textField = new JTextField(10);
|
||||
panel.add(textField);
|
||||
|
||||
int result = JOptionPane.showOptionDialog(null,
|
||||
panel, "Введите номер строки / столбца",
|
||||
JOptionPane.YES_NO_CANCEL_OPTION,
|
||||
JOptionPane.PLAIN_MESSAGE,
|
||||
null,
|
||||
options,
|
||||
null);
|
||||
if (textField.getText().trim().isEmpty()) {
|
||||
return;
|
||||
|
||||
}
|
||||
if (result == JOptionPane.YES_OPTION) {
|
||||
int row = Integer.parseInt(textField.getText());
|
||||
System.out.println("Remove row # " + row);
|
||||
tableModel.removeRow(row - 1);
|
||||
} else if (result == JOptionPane.NO_OPTION) {
|
||||
int column = Integer.parseInt(textField.getText());
|
||||
System.out.println("Remove column # " + column);
|
||||
// tableModel.removeColumn(column - 1);
|
||||
} else {
|
||||
System.out.println("Cancel add row/col");
|
||||
}
|
||||
}
|
||||
}); return item;
|
||||
|
||||
this.add(menu);
|
||||
}
|
||||
|
||||
private JMenuItem createMockMenuItem(String text) {
|
||||
@@ -71,44 +68,5 @@ public class MenuBar extends JMenuBar {
|
||||
return item;
|
||||
}
|
||||
|
||||
private JMenuItem createAddRowColItem() {
|
||||
JMenuItem item = new JMenuItem();
|
||||
item.setText("Добавить");
|
||||
item.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
System.out.println("Create Row/Col");
|
||||
|
||||
Object[] options = {"Добавить строку", "Добавить колонку", "Отмена"};
|
||||
|
||||
JPanel panel = new JPanel();
|
||||
panel.add(new JLabel("Введите номер строки или стоблца который должен быть добавлен"));
|
||||
JTextField textField = new JTextField(10);
|
||||
panel.add(textField);
|
||||
|
||||
int result = JOptionPane.showOptionDialog(null,
|
||||
panel, "Введите номер строки / столбца",
|
||||
JOptionPane.YES_NO_CANCEL_OPTION,
|
||||
JOptionPane.PLAIN_MESSAGE,
|
||||
null,
|
||||
options,
|
||||
null);
|
||||
if (textField.getText().trim().isEmpty()) {
|
||||
return;
|
||||
}
|
||||
if (result == JOptionPane.YES_OPTION) {
|
||||
int row = Integer.parseInt(textField.getText());
|
||||
System.out.println("Add row # " + row);
|
||||
tableModel.addRow(row);
|
||||
} else if (result == JOptionPane.NO_OPTION) {
|
||||
int column = Integer.parseInt(textField.getText());
|
||||
System.out.println("Add column # " + column);
|
||||
tableModel.addColumn(column - 1);
|
||||
} else {
|
||||
System.out.println("Cancel add row/col");
|
||||
}
|
||||
}
|
||||
});
|
||||
return item;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user