Metadata-Version: 2.1
Name: pygrille
Version: 0.2.1
Summary: A quick way to write and visualise any code involving grids of squares in python.
Home-page: UNKNOWN
License: UNKNOWN
Description: # Pygrille
        
        Pygrille is a Python library that uses Pygame to make it easier to do many things involving a square grid.
        
        ## Installation
        
        Use the package manager [pip](https://pip.pypa.io/en/stable/) to install Pygrille.
        
        ```bash
        pip install pygrille
        ```
        
        ## Usage
        
        ```python
        import pygrille
        
        PIXEL_SIZE = 40 # The size of each square in the grid.
        GRID_DIMENSIONS = (6, 5) # The number of squares in the x and y directions in the grid.
        
        # Initiate the grid. PIXEL_SIZE and GRID_DIMENSIONS are required and everything else is optional. 
        # The extras variable is a list of values that you want contained in each pixel - for example a temporary distance in Dijkstra's algorithm.
        grid = pygrille.Grid(PIXEL_SIZE, GRID_DIMENSIONS, extras = ["Hello", "World"], framerate = 60, default_colour = pygrille.random_colour(), border_width = 10)
        
        # Ensures the grid has not been closed each frame. 
        # Also updates the newclick and newkey variables (booleans - True if there is a new click or key press) 
        # And the lastclick (tuple - grid location of most recent click) and lastkey (string - name of most recent key pressed) variables.
        while grid.check_open():
        
            # If the user clicks on a square, set it to a random colour and set the border to a random colour.
            if grid.newclick:
                grid[grid.lastclick[0]][grid.lastclick[1]].colour = pygrille.random_colour()
                grid[grid.lastclick[0]][grid.lastclick[1]].extras["Hello"] = "Clicked"
                grid.border_colour = pygrille.random_colour()
        
            # If the spacebar is pressed, print the status of the extra value "Hello" in the top left pixel.
            if grid.newkey:
                if grid.lastkey == "space":
                    print(grid[0][0].extras["Hello"])
        
            # Draw the grid to the screen
            grid.draw()
        
            # Keep the grid running.
            grid.tick()
        
        # Once pygrille is closed, finish quitting it.
        grid.quit()
        
        ```
        
        ## Updates
        
        ### 0.2.1
        * Added a check for clicking UI elements via the grid.newclick_ui and grid.clicked_ui attributes.
        * Fixed an error in the example code in this README.
        * Other minor changes.
        
        ### 0.2.0.1
        * Reupload due to issue with first upload of 0.2.0.
        
        ### 0.2.0  
        * Updated grid initialisation.
        * Added text as a UI option.
        * Added image caching to speed up programs.
        * Other code refactoring and minor changes.
        
        ### 0.1.0 (Mistakenly uploaded to PyPI as 0.1.1)
        * Added the ability to force a window size and set the position of the grid in relation to this as desired.
        * Added the possibility for UI elements.
        * Added methods to Grid to get global coordinates from grid coordinates or vice-versa
        * Other minor changes
Platform: UNKNOWN
Description-Content-Type: text/markdown
