from PyQt5.QtWidgets import QWidget, QVBoxLayout, QLabel, QPushButton, QGridLayout from editortool.map.map import map class ChunkPanel(QWidget): def __init__(self, parent=None): super().__init__(parent) layout = QVBoxLayout(self) self.chunk_info_label = QLabel("Tile Information") layout.addWidget(self.chunk_info_label) self.move_label = QLabel("Move Selection") layout.addWidget(self.move_label) grid = QGridLayout() self.btn_up = QPushButton("U") self.btn_n = QPushButton("N") self.btn_down = QPushButton("D") self.btn_w = QPushButton("W") self.btn_s = QPushButton("S") self.btn_e = QPushButton("E") # Arrange buttons: U N D on top row, W S E on bottom row grid.addWidget(self.btn_up, 0, 0) grid.addWidget(self.btn_n, 0, 1) grid.addWidget(self.btn_down, 0, 2) grid.addWidget(self.btn_w, 1, 0) grid.addWidget(self.btn_s, 1, 1) grid.addWidget(self.btn_e, 1, 2) layout.addLayout(grid) layout.addStretch() self.btn_n.clicked.connect(lambda: map.moveRelative(0, 1, 0)) self.btn_s.clicked.connect(lambda: map.moveRelative(0, -1, 0)) self.btn_e.clicked.connect(lambda: map.moveRelative(1, 0, 0)) self.btn_w.clicked.connect(lambda: map.moveRelative(-1, 0, 0)) self.btn_up.clicked.connect(lambda: map.moveRelative(0, 0, 1)) self.btn_down.clicked.connect(lambda: map.moveRelative(0, 0, -1))