/* * Copyright (C) 2014 Alfons Wirtz * website www.freerouting.net * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License at <http://www.gnu.org/licenses/> * for more details. * * PopupMenuMove.java * * Created on 15. Mai 2005, 11:21 * * To change this template, choose Tools | Options and locate the template under * the Source Creation and Management node. Right-click the template and choose * Open. You can then make changes to the template in the Source Editor. */ package gui; /** * * @author Alfons Wirtz */ public class PopupMenuMove extends PopupMenuDisplay { /** Creates a new instance of PopupMenuMove */ public PopupMenuMove(BoardFrame p_board_frame) { super(p_board_frame); java.util.ResourceBundle resources = java.util.ResourceBundle.getBundle("gui.resources.PopupMenuMove", p_board_frame.get_locale()); // Add menu for turning the items by a multiple of 90 degree javax.swing.JMenuItem rotate_menu = new javax.swing.JMenu(); rotate_menu.setText(resources.getString("turn")); this.add(rotate_menu, 0); javax.swing.JMenuItem turn_90_item = new javax.swing.JMenuItem(); turn_90_item.setText(resources.getString("90_degree")); turn_90_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { turn_45_degree(2); } }); rotate_menu.add(turn_90_item); javax.swing.JMenuItem turn_180_item = new javax.swing.JMenuItem(); turn_180_item.setText(resources.getString("180_degree")); turn_180_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { turn_45_degree(4); } }); rotate_menu.add(turn_180_item); javax.swing.JMenuItem turn_270_item = new javax.swing.JMenuItem(); turn_270_item.setText(resources.getString("-90_degree")); turn_270_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { turn_45_degree(6); } }); rotate_menu.add(turn_270_item); javax.swing.JMenuItem turn_45_item = new javax.swing.JMenuItem(); turn_45_item.setText(resources.getString("45_degree")); turn_45_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { turn_45_degree(1); } }); rotate_menu.add(turn_45_item); javax.swing.JMenuItem turn_135_item = new javax.swing.JMenuItem(); turn_135_item.setText(resources.getString("135_degree")); turn_135_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { turn_45_degree(3); } }); rotate_menu.add(turn_135_item); javax.swing.JMenuItem turn_225_item = new javax.swing.JMenuItem(); turn_225_item.setText(resources.getString("-135_degree")); turn_225_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { turn_45_degree(5); } }); rotate_menu.add(turn_225_item); javax.swing.JMenuItem turn_315_item = new javax.swing.JMenuItem(); turn_315_item.setText(resources.getString("-45_degree")); turn_315_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { turn_45_degree(7); } }); rotate_menu.add(turn_315_item); javax.swing.JMenuItem change_side_item = new javax.swing.JMenuItem(); change_side_item.setText(resources.getString("change_side")); change_side_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { board_panel.board_handling.change_placement_side(); } }); this.add(change_side_item, 1); javax.swing.JMenuItem reset_rotation_item = new javax.swing.JMenuItem(); reset_rotation_item.setText(resources.getString("reset_rotation")); reset_rotation_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { interactive.InteractiveState interactive_state = board_panel.board_handling.get_interactive_state(); if (interactive_state instanceof interactive.MoveItemState) { ((interactive.MoveItemState)interactive_state).reset_rotation(); } } }); this.add(reset_rotation_item, 2); javax.swing.JMenuItem insert_item = new javax.swing.JMenuItem(); insert_item.setText(resources.getString("insert")); insert_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { board_panel.board_handling.return_from_state(); } }); this.add(insert_item, 3); javax.swing.JMenuItem cancel_item = new javax.swing.JMenuItem(); cancel_item.setText(resources.getString("cancel")); cancel_item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { board_panel.board_handling.cancel_state(); } }); this.add(cancel_item, 4); } private void turn_45_degree(int p_factor) { board_panel.board_handling.turn_45_degree(p_factor); board_panel.move_mouse(board_panel.right_button_click_location); } }