From 3d21695289bce2f5842862ecf371aa551b96b783 Mon Sep 17 00:00:00 2001 From: Sergey Sokolov Date: Thu, 13 Dec 2018 19:22:34 +0400 Subject: [PATCH] =?UTF-8?q?remove:=20=D1=83=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=20=D0=B2=D1=81=D0=BF=D0=BB=D1=8B=D0=B2=D0=B0=D1=8E?= =?UTF-8?q?=D1=89=D0=B5=D0=B9=20=D0=BF=D0=BE=D0=B4=D1=81=D0=BA=D0=B0=D0=B7?= =?UTF-8?q?=D0=BA=D0=B8=20=D0=BF=D0=BE=20=D0=B1=D0=BE=D1=82=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Вместо подсказок теперь окна с информацией о ботах. fix: при закрытии окна бота оно удаляется из списка окон ботов. --- src/main/java/ru/cyberbiology/MainWindow.java | 70 +++---------------- 1 file changed, 8 insertions(+), 62 deletions(-) diff --git a/src/main/java/ru/cyberbiology/MainWindow.java b/src/main/java/ru/cyberbiology/MainWindow.java index a60df4a..da419e4 100644 --- a/src/main/java/ru/cyberbiology/MainWindow.java +++ b/src/main/java/ru/cyberbiology/MainWindow.java @@ -11,6 +11,8 @@ import java.awt.event.ActionEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; import java.io.File; import java.io.IOException; import java.io.InputStream; @@ -37,10 +39,8 @@ import javax.swing.JTextField; import javax.swing.JToolBar; import javax.swing.SwingUtilities; -import javax.swing.ToolTipManager; import javax.swing.WindowConstants; import javax.swing.filechooser.FileFilter; -import ru.cyberbiology.gene.BotGeneController; import ru.cyberbiology.util.PerfMeter; import ru.cyberbiology.util.ProjectProperties; import ru.cyberbiology.util.SnapshotManager; @@ -211,71 +211,17 @@ public void mouseClicked(MouseEvent e) { } BotFrame botFrame = new BotFrame(bot); botFrame.showFrame(); + botFrame.addWindowListener(new WindowAdapter() { + @Override + public void windowClosed(WindowEvent e) { + botFrames.remove(botFrame); + } + }); botFrames.add(botFrame); Graphics g = buffer.getGraphics(); g.setColor(Color.MAGENTA); g.fillRect(botX * properties.botSize(), botY * properties.botSize(), properties.botSize(), properties.botSize()); paintPanel.repaint(); - - StringBuilder buf = new StringBuilder(); - buf.append(""); - buf.append("

Многоклеточный: "); - switch (bot.isMulti()) { - case 0:// - нет, - buf.append("нет

"); - break; - case 1:// - есть MPREV, - buf.append("есть MPREV

"); - break; - case 2:// - есть MNEXT, - buf.append("есть MNEXT

"); - break; - case 3:// есть MPREV и MNEXT - buf.append("есть MPREV и MNEXT

"); - break; - default: - break; - } - buf.append("

Выполенные гены: ").append(bot.genesHistory.toString()); - buf.append("

c_blue=").append(bot.colorBlue); - buf.append("

c_green=").append(bot.colorGreen); - buf.append("

c_red=").append(bot.colorRed); - buf.append("

direction=").append(bot.direction); - buf.append("

health=").append(bot.health); - buf.append("

mineral=").append(bot.mineral); - - //buf.append(""); - BotGeneController cont; - for (int i = 0; i < BasicBot.MIND_SIZE; i++) { //15 - // Получаем обработчика команды - cont = bot.getGeneControllerForCommand(bot.mind[i]); - // если обработчик такой команды назначен - if (cont != null) { - buf.append("

"); - buf.append(String.valueOf(i)); - buf.append(" "); - buf.append(cont.getDescription()); - buf.append(" "); - buf.append(bot.mind[i]); - buf.append("

"); - } - } - - buf.append(""); - JComponent component = (JComponent) e.getSource(); - //System.out.println(bot); - paintPanel.setToolTipText(buf.toString()); - MouseEvent phantom = new MouseEvent( - component, - MouseEvent.MOUSE_MOVED, - System.currentTimeMillis() - 2000, - 0, - x, - y, - 0, - false); - - ToolTipManager.sharedInstance().mouseMoved(phantom); } } );