Skip to main content

A gameboard widget for pyqt gui's package

Project description

PyQtGameBoard

PyQt5 widget that draws a board on the screen to include in games or map drawing application.

Version

0.2

0.2.3 fixed selection deleting previous overlays split mousepress method so its easier to subclass adding line of sight line return list of tiles touched by line of sight

0.2.2 Redone building board, zooming in / out and added selection of tile with drawing adjacent tiles

Install

pip install yongshi-pyqtgameboard

Import

from pyqtgameboards.HexagonBoard import QHexagonboard

How to

to try out, copying the following to open a widget with a gameboard This is a gameboard of 20 rows and 10 columns (feels like 20, as it only counts tiles at the same height) This example creates designated tiles that receive a green fill with a thick green line

import sys

from PyQt5 import QtWidgets, QtGui, QtCore

from pyqtgameboards.HexagonBoard import QHexagonboard

if __name__ == '__main__':

    overlays = []
    overlay1brush = QtGui.QBrush(QtGui.QColor(0,255,0,150))
    overlay1pen = QtGui.QPen(QtGui.QColor(0,255,0))
    overlay1pen.setWidth(3)
    overlay1dict = {
        "Brush": overlay1brush,
        "Pen": overlay1pen,
        "Positions": [
            [1, 1], 
            [2, 1],
            [1, 2],
            [3, 3],
            ],
        }
    overlays.append(overlay1dict)

    global app
    app = QtWidgets.QApplication(sys.argv)
    global main
    main = QtWidgets.QMainWindow()

    main.setCentralWidget(QHexagonboard(
        horizontal = True, 
        rows = 20, 
        columns = 10,
        overlays = overlays,
        ))

    main.showMaximized()
    sys.exit(app.exec_())

Licence

Licensed under GPL-3.0-or-later, see LICENSE file for details.

Copyright © 2020 Michael-Yongshi.

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 for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yongshi-pyqtgameboard-0.2.3.tar.gz (7.2 kB view details)

Uploaded Source

Built Distribution

yongshi_pyqtgameboard-0.2.3-py3-none-any.whl (19.9 kB view details)

Uploaded Python 3

File details

Details for the file yongshi-pyqtgameboard-0.2.3.tar.gz.

File metadata

  • Download URL: yongshi-pyqtgameboard-0.2.3.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.8

File hashes

Hashes for yongshi-pyqtgameboard-0.2.3.tar.gz
Algorithm Hash digest
SHA256 83f885e19ad3aaf5091dd56a47ce8cd49e28ced7d38982b049c4121fb245116f
MD5 9f090dde0be77eeb7ed146f157d89f3d
BLAKE2b-256 7ab1c2f80fc691e1db9c4014a5947369337ea98b6294473dd05f47797851daa3

See more details on using hashes here.

File details

Details for the file yongshi_pyqtgameboard-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: yongshi_pyqtgameboard-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 19.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.8

File hashes

Hashes for yongshi_pyqtgameboard-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f2f3efcd19889341251cca1c079fb53455cd0330c33170f8ca854cbdb2533ee9
MD5 8730dc85305f999a24dcc7ef84ea8e62
BLAKE2b-256 762d2a884c5f969ba356267694ce08fbfda98ad46d42e859afca5ea83c47bf61

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page