mirror of
https://github.com/ful1e5/apple_cursor.git
synced 2025-05-25 12:34:49 -04:00
🔧 configured dynamic comment & theme name
This commit is contained in:
parent
c2946a4a42
commit
174c76f618
4 changed files with 47 additions and 34 deletions
|
@ -1,31 +1,42 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""This module provides build methods for ``macOSBigSur``."""
|
||||
|
||||
from pathlib import Path
|
||||
from typing import Any, Dict
|
||||
from typing import Any, Dict, NamedTuple
|
||||
|
||||
from clickgen.builders import WindowsCursor, XCursor
|
||||
from clickgen.core import CursorAlias
|
||||
from clickgen.packagers import WindowsPackager, XPackager
|
||||
|
||||
from .constants import AUTHOR, COMMENT, THEME_NAME, URL
|
||||
from .constants import AUTHOR, URL
|
||||
from .symlinks import add_missing_xcursor
|
||||
|
||||
|
||||
def xbuild(config: Dict[str, Dict[str, Any]], x_out_dir: Path) -> None:
|
||||
class Info(NamedTuple):
|
||||
"""Theme basic information.
|
||||
|
||||
:param name: Theme title.
|
||||
:type name: ``str``
|
||||
|
||||
:param comment: quick information about theme.
|
||||
:type comment: ``str``
|
||||
"""
|
||||
|
||||
name: str
|
||||
comment: str
|
||||
|
||||
|
||||
def xbuild(config: Dict[str, Dict[str, Any]], x_out_dir: Path, info: Info) -> None:
|
||||
"""Build `macOSBigSur` cursor theme for only `X11`(UNIX) platform.
|
||||
|
||||
:param config: `macOSBigSur` configuration.
|
||||
:type config: Dict
|
||||
:type config: ``Dict``
|
||||
|
||||
:param x_out_dir: Path to the output directory,\
|
||||
Where the `X11` cursor theme package will generate.\
|
||||
It also creates a directory if not exists.
|
||||
:type x_out_dir: Path
|
||||
:type x_out_dir: ``pathlib.Path``
|
||||
|
||||
:param info: Content theme name & comment
|
||||
:param info: Content theme name & comment.
|
||||
:type info: Info
|
||||
"""
|
||||
|
||||
|
@ -37,21 +48,21 @@ def xbuild(config: Dict[str, Dict[str, Any]], x_out_dir: Path) -> None:
|
|||
XCursor.create(x_cfg, x_out_dir)
|
||||
|
||||
add_missing_xcursor(x_out_dir / "cursors")
|
||||
XPackager(x_out_dir, THEME_NAME, COMMENT)
|
||||
XPackager(x_out_dir, info.name, info.comment)
|
||||
|
||||
|
||||
def wbuild(config: Dict[str, Dict[str, Any]], win_out_dir: Path) -> None:
|
||||
def wbuild(config: Dict[str, Dict[str, Any]], win_out_dir: Path, info: Info) -> None:
|
||||
"""Build `macOSBigSur` cursor theme for only `Windows` platforms.
|
||||
|
||||
:param config: `macOSBigSur` configuration.
|
||||
:type config: Dict
|
||||
:type config: ``Dict``
|
||||
|
||||
:param win_out_dir: Path to the output directory,\
|
||||
Where the `Windows` cursor theme package will generate.\
|
||||
It also creates a directory if not exists.
|
||||
:type win_out_dir: Path
|
||||
:type win_out_dir: ``pathlib.Path``
|
||||
|
||||
:param info: Content theme name & comment
|
||||
:param info: Content theme name & comment.
|
||||
:type info: Info
|
||||
"""
|
||||
|
||||
|
@ -70,28 +81,28 @@ def wbuild(config: Dict[str, Dict[str, Any]], win_out_dir: Path) -> None:
|
|||
print(f"Building '{win_cfg.stem}' Windows Cursor...")
|
||||
WindowsCursor.create(win_cfg, win_out_dir)
|
||||
|
||||
WindowsPackager(win_out_dir, THEME_NAME, COMMENT, AUTHOR, URL)
|
||||
WindowsPackager(win_out_dir, info.name, info.comment, AUTHOR, URL)
|
||||
|
||||
|
||||
def build(
|
||||
config: Dict[str, Dict[str, Any]], x_out_dir: Path, win_out_dir: Path
|
||||
config: Dict[str, Dict[str, Any]], x_out_dir: Path, win_out_dir: Path, info: Info
|
||||
) -> None:
|
||||
"""Build `macOSBigSur` cursor theme for `X11` & `Windows` platforms.
|
||||
|
||||
:param config: `macOSBigSur` configuration.
|
||||
:type config: Dict
|
||||
:type config: ``Dict``
|
||||
|
||||
:param x_out_dir: Path to the output directory,\
|
||||
Where the `X11` cursor theme package will generate.\
|
||||
It also creates a directory if not exists.
|
||||
:type x_out_dir: Path
|
||||
:type x_out_dir: ``pathlib.Path``
|
||||
|
||||
:param win_out_dir: Path to the output directory,\
|
||||
Where the `Windows` cursor theme package will generate.\
|
||||
It also creates a directory if not exists.
|
||||
:type win_out_dir: Path
|
||||
:type win_out_dir: ``pathlib.Path``
|
||||
|
||||
:param info: Content theme name & comment
|
||||
:param info: Content theme name & comment.
|
||||
:type info: Info
|
||||
"""
|
||||
|
||||
|
@ -115,6 +126,6 @@ def build(
|
|||
WindowsCursor.create(win_cfg, win_out_dir)
|
||||
|
||||
add_missing_xcursor(x_out_dir / "cursors")
|
||||
XPackager(x_out_dir, THEME_NAME, COMMENT)
|
||||
XPackager(x_out_dir, info.name, info.comment)
|
||||
|
||||
WindowsPackager(win_out_dir, THEME_NAME, COMMENT, AUTHOR, URL)
|
||||
WindowsPackager(win_out_dir, info.name, info.comment, AUTHOR, URL)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue