Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 9 additions & 14 deletions robots/src/gui/GameWindow.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
package gui;

import localization.I18N;
import model.RobotModel;
import java.awt.BorderLayout;
import java.awt.event.MouseAdapter;
Expand All @@ -9,33 +9,28 @@

public class GameWindow extends JInternalFrame {
private final GameVisualizer visualizer;
private GameController controller; // <-- добавили поле
private GameController controller;

public GameWindow() {
super("Игровое поле", true, true, true, true);
this.visualizer = new GameVisualizer(); // <-- без параметров!
super(I18N.get("window.game.title"), true, true, true, true);
this.visualizer = new GameVisualizer();
JPanel panel = new JPanel(new BorderLayout());
panel.add(visualizer, BorderLayout.CENTER);
getContentPane().add(panel);
setSize(600, 500);

// Добавляем слушатель мыши, который будет вызывать контроллер
visualizer.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
if (controller != null) {
controller.handleMouseClick(e.getPoint());
}
if (controller != null) controller.handleMouseClick(e.getPoint());
}
});
}

// Метод для внедрения контроллера
public void setController(GameController controller) {
this.controller = controller;
}
public void setController(GameController controller) { this.controller = controller; }
public GameVisualizer getVisualizer() { return visualizer; }

public GameVisualizer getVisualizer() {
return visualizer;
public void updateLanguage() {
setTitle(I18N.get("window.game.title"));
}
}
19 changes: 9 additions & 10 deletions robots/src/gui/LogWindow.java
Original file line number Diff line number Diff line change
@@ -1,20 +1,15 @@
package gui;

import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.TextArea;
import javax.swing.JInternalFrame;
import javax.swing.JPanel;
import log.LogChangeListener;
import log.LogEntry;
import log.LogWindowSource;
import localization.I18N;
import log.*;
import javax.swing.*;
import java.awt.*;

public class LogWindow extends JInternalFrame implements LogChangeListener {
private LogWindowSource m_logSource;
private TextArea m_logContent;

public LogWindow(LogWindowSource logSource) {
super("Протокол работы", true, true, true, true);
super(I18N.get("window.log.title"), true, true, true, true);
m_logSource = logSource;
m_logSource.registerListener(this);
m_logContent = new TextArea("");
Expand All @@ -40,4 +35,8 @@ private void updateLogContent() {
public void onLogChanged() {
EventQueue.invokeLater(this::updateLogContent);
}

public void updateLanguage() {
setTitle(I18N.get("window.log.title"));
}
}
Loading