Skip to main content

The hassle-free cursor building toolbox.

Project description

CI PyPI - Wheel Docs Code Coverage CodeFactor

Clickgen

The hassle-free cursor building toolbox.

clickgen is API for building X11 and Windows Cursors from .png files. clickgen is using anicursorgen and xcursorgen under the hood.

Install

using pip

pip3 install clickgen

ArchLinux

yay -S python-clickgen

Manjaro

pamac build python-clickgen

CLI

clickgen -h

PyPi Dependencies

  • Pillow/python-pillow

Build Dependencies

  • gcc

External Libraries

  • libxcursor-dev
  • libx11-dev
  • libpng-dev (<=1.6)

Install Dependencies

macOS
brew install --cask xquartz
brew install libpng gcc
Debain/ubuntu
sudo apt install libx11-dev libxcursor-dev libpng-dev
ArchLinux/Manjaro
sudo pacman -S libx11 libxcursor libpng
Fedora/Fedora Silverblue/CentOS/RHEL
sudo dnf install libx11-devel libxcursor-devel libpng-devel

Examples

Check examples directory for building entire theme from .png files.

create a static XCursor

from pathlib import Path
from clickgen.builders import XCursor
from clickgen.core import CursorAlias

with CursorAlias.from_bitmap(png="all-scroll.png", hotspot=(5, 2)) as alias:
    x_cfg = alias.create(sizes=[(22, 22),(24, 24)])
    XCursor.create(alias_file=x_cfg, out_dir=Path("."))

create an animated XCursor

from pathlib import Path
from clickgen.builders import XCursor
from clickgen.core import CursorAlias

with CursorAlias.from_bitmap(png=["all-scroll-01.png", "all-scroll-02.png"], hotspot=(5, 2)) as alias:
    x_cfg = alias.create(sizes=[(22, 22),(24, 24)])
    XCursor.create(alias_file=x_cfg, out_dir=Path("."))

create a static Windows Cursor (.cur)

from pathlib import Path
from clickgen.builders import WindowsCursor
from clickgen.core import CursorAlias

with CursorAlias.from_bitmap(png="all-scroll.png", hotspot=(5, 2)) as alias:
    win_cfg = alias.create(sizes=(24, 24))
    WindowsCursor.create(alias_file=win_cfg, out_dir=Path("."))

create an animated Windows Cursor (.ani)

from pathlib import Path
from clickgen.builders import WindowsCursor
from clickgen.core import CursorAlias

with CursorAlias.from_bitmap(png=["all-scroll-01.png", "all-scroll-02.png"], hotspot=(5, 2)) as alias:
    win_cfg = alias.create(sizes=(24, 24))
    WindowsCursor.create(alias_file=win_cfg, out_dir=Path("."))

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

clickgen-1.2.0.tar.gz (22.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clickgen-1.2.0-py3-none-any.whl (33.3 kB view details)

Uploaded Python 3

File details

Details for the file clickgen-1.2.0.tar.gz.

File metadata

  • Download URL: clickgen-1.2.0.tar.gz
  • Upload date:
  • Size: 22.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for clickgen-1.2.0.tar.gz
Algorithm Hash digest
SHA256 791bfaaea7d003ec0c66289da70d969ca8f382ce6627cd6ee101cf5a596f0a05
MD5 974f35d7043aa33cd38eb8552a64fff1
BLAKE2b-256 7707801da7063e1f690fe1bdeef2146902a5e44f703ba03f02a9be48344862f4

See more details on using hashes here.

File details

Details for the file clickgen-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: clickgen-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 33.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for clickgen-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 487defeb37830be2fce4ae9ee2b2504c6b8b0facba43e29c00e1f56189e5bdd5
MD5 cc2ca28704dc1a3fbfedc836d68f45a7
BLAKE2b-256 03a9d74f0f665bb357d5d21f26aef3279436e490975c7358191bb556aeab98cf

See more details on using hashes here.

Supported by

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