pax_global_header 0000666 0000000 0000000 00000000064 14156141701 0014512 g ustar 00root root 0000000 0000000 52 comment=dba204d9027a89f6882abc0066d50c7a8da2e901
python-qtawesome-1.1.1/ 0000775 0000000 0000000 00000000000 14156141701 0015036 5 ustar 00root root 0000000 0000000 python-qtawesome-1.1.1/.codecov.yml 0000664 0000000 0000000 00000000543 14156141701 0017263 0 ustar 00root root 0000000 0000000 codecov:
branch: master
coverage:
precision: 2
round: down
range: "70...100"
status:
project:
default:
threshold: 1%
patch: no
changes: no
parsers:
gcov:
branch_detection:
conditional: yes
loop: yes
method: no
macro: no
comment: false
ignore:
- "qtawesome/icon_browser.py"
python-qtawesome-1.1.1/.github/ 0000775 0000000 0000000 00000000000 14156141701 0016376 5 ustar 00root root 0000000 0000000 python-qtawesome-1.1.1/.github/FUNDING.yml 0000664 0000000 0000000 00000000030 14156141701 0020204 0 ustar 00root root 0000000 0000000 open_collective: spyder
python-qtawesome-1.1.1/.github/workflows/ 0000775 0000000 0000000 00000000000 14156141701 0020433 5 ustar 00root root 0000000 0000000 python-qtawesome-1.1.1/.github/workflows/linux-tests.yml 0000664 0000000 0000000 00000003157 14156141701 0023463 0 ustar 00root root 0000000 0000000 name: Linux tests
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
linux:
name: Linux Py${{ matrix.PYTHON_VERSION }}
runs-on: ubuntu-latest
env:
CI: True
PYTHON_VERSION: ${{ matrix.PYTHON_VERSION }}
RUNNER_OS: 'ubuntu'
COVERALLS_REPO_TOKEN: XWVhJf2AsO7iouBLuCsh0pPhwHy81Uz1v
strategy:
fail-fast: false
matrix:
PYTHON_VERSION: ['3.6', '3.7', '3.8']
steps:
- name: Checkout branch
uses: actions/checkout@v1
- name: Install System Packages
run: |
sudo apt-get update
sudo apt-get install libegl1-mesa
- name: Install Conda
uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: test
auto-update-conda: false
auto-activate-base: false
python-version: ${{ matrix.PYTHON_VERSION }}
- name: Install dependencies
shell: bash -l {0}
run: conda env update --file requirements/environment.yml
- name: Install Package
shell: bash -l {0}
run: pip install -e .
- name: Show environment information
shell: bash -l {0}
run: |
conda info
conda list
- name: Run tests
shell: bash -l {0}
run: |
xvfb-run --auto-servernum python example.py
xvfb-run --auto-servernum pytest -x -vv --cov=qtawesome --cov-report=term-missing qtawesome
- name: Upload coverage to Codecov
if: matrix.PYTHON_VERSION == '3.8'
shell: bash -l {0}
run: codecov -t ed8563f8-ec80-484d-83eb-4233d7a083d2
python-qtawesome-1.1.1/.github/workflows/macos-tests.yml 0000664 0000000 0000000 00000002326 14156141701 0023423 0 ustar 00root root 0000000 0000000 name: Macos tests
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
macos:
name: Mac Py${{ matrix.PYTHON_VERSION }}
runs-on: macos-latest
env:
CI: True
PYTHON_VERSION: ${{ matrix.PYTHON_VERSION }}
RUNNER_OS: 'macos'
strategy:
fail-fast: false
matrix:
PYTHON_VERSION: ['3.6', '3.7', '3.8']
steps:
- name: Checkout branch
uses: actions/checkout@v1
- name: Install Conda
uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: test
auto-update-conda: false
auto-activate-base: false
python-version: ${{ matrix.PYTHON_VERSION }}
- name: Install package dependencies
shell: bash -l {0}
run: conda env update --file requirements/environment.yml
- name: Install Package
shell: bash -l {0}
run: pip install -e .
- name: Show environment information
shell: bash -l {0}
run: |
conda info
conda list
- name: Run tests
shell: bash -l {0}
run: |
python example.py
pytest -x -vv --cov=qtawesome --cov-report=term-missing qtawesome
python-qtawesome-1.1.1/.github/workflows/windows-tests.yml 0000664 0000000 0000000 00000002342 14156141701 0024011 0 ustar 00root root 0000000 0000000 name: Windows tests
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
windows:
name: Windows Py${{ matrix.PYTHON_VERSION }}
runs-on: windows-latest
env:
CI: True
PYTHON_VERSION: ${{ matrix.PYTHON_VERSION }}
RUNNER_OS: 'windows'
strategy:
fail-fast: false
matrix:
PYTHON_VERSION: ['3.6', '3.7', '3.8']
steps:
- name: Checkout branch
uses: actions/checkout@v1
- name: Install Conda
uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: test
auto-update-conda: false
auto-activate-base: false
python-version: ${{ matrix.PYTHON_VERSION }}
- name: Install package dependencies
shell: bash -l {0}
run: conda env update --file requirements/environment.yml
- name: Install Package
shell: bash -l {0}
run: pip install -e .
- name: Show environment information
shell: bash -l {0}
run: |
conda info
conda list
- name: Run tests
shell: bash -l {0}
run: |
python example.py
pytest -x -vv --cov=qtawesome --cov-report=term-missing qtawesome
python-qtawesome-1.1.1/.gitignore 0000664 0000000 0000000 00000000277 14156141701 0017034 0 ustar 00root root 0000000 0000000 # Python compiled files
*.py[ocd]
# Packages
*.egg
*.egg-info
dist
build
# Projects
.pydevproject
.project
# Sphinx
_build/
_generate/
_static/
_templates/
# OS X
.DS_Store
/venv/
/.idea/ python-qtawesome-1.1.1/CHANGELOG.md 0000664 0000000 0000000 00000047444 14156141701 0016664 0 ustar 00root root 0000000 0000000 # History of changes
## Version 1.1.1 (2021-11-29)
### Issues Closed
* [Issue 178](https://github.com/spyder-ide/qtawesome/issues/178) - Add deprecation warning for Font Awesome 4.x - 4.7 ([PR 185](https://github.com/spyder-ide/qtawesome/pull/185) by [@dalthviz](https://github.com/dalthviz))
In this release 1 issue was closed.
### Pull Requests Merged
* [PR 186](https://github.com/spyder-ide/qtawesome/pull/186) - PR: Try calling newer Qt methods first before falling back to deprecated/removed ones, by [@kumattau](https://github.com/kumattau)
* [PR 185](https://github.com/spyder-ide/qtawesome/pull/185) - PR: Add DeprecationWarning for FontAwesome 4.7 icon set, by [@dalthviz](https://github.com/dalthviz) ([178](https://github.com/spyder-ide/qtawesome/issues/178))
* [PR 184](https://github.com/spyder-ide/qtawesome/pull/184) - PR: Update README docs badge, Copyright year and sponsors logo, by [@dalthviz](https://github.com/dalthviz)
* [PR 183](https://github.com/spyder-ide/qtawesome/pull/183) - PR: Change to "Ctrl+F" because PyQt6 doesn't support Modifier + Key, by [@kumattau](https://github.com/kumattau)
In this release 4 pull requests were closed.
----
## Version 1.1.0 (2021-11-02)
### New features
* Update FontAwesome 5 to 5.14.0
* Update Material design icons 5 to 5.9.55 (`mdi` prefix)
* Add support for Material design icons 6 starting with 6.3.95 (`mdi6` prefix)
* Add support for Phosphor icons starting with 1.3.0 (`ph` prefix)
* Add support for Remix icons staring with 2.5.0 (`ri` prefix)
* Add support for Microsoft's Codicons starting with 0.0.25 (`msc` prefix)
* Add support for alpha setting in colors
* Improvements to the icon browser: Preview icons with an example dark/light theme, add shortcut to focus search field (`Ctrl + F`), and display current selected icon name without any ellipsis
### Issues Closed
* [Issue 172](https://github.com/spyder-ide/qtawesome/issues/172) - Update missing references for new/updated icon sets and example image
* [Issue 170](https://github.com/spyder-ide/qtawesome/issues/170) - qta-browser with PySide6 ([PR 171](https://github.com/spyder-ide/qtawesome/pull/171) by [@kumattau](https://github.com/kumattau))
* [Issue 156](https://github.com/spyder-ide/qtawesome/issues/156) - Refresh defaults for toggling light dark themes ([PR 176](https://github.com/spyder-ide/qtawesome/pull/176) by [@dalthviz](https://github.com/dalthviz))
In this release 3 issues were closed.
### Pull Requests Merged
* [PR 182](https://github.com/spyder-ide/qtawesome/pull/182) - PR: [qta-browser] display selected icon name, Ctrl+F to search icons and tab stops in order of widget appearance, by [@kumattau](https://github.com/kumattau)
* [PR 181](https://github.com/spyder-ide/qtawesome/pull/181) - PR: Update images and example code layout, by [@dalthviz](https://github.com/dalthviz)
* [PR 177](https://github.com/spyder-ide/qtawesome/pull/177) - PR: Update author information and add maintainer one, by [@ccordoba12](https://github.com/ccordoba12)
* [PR 176](https://github.com/spyder-ide/qtawesome/pull/176) - PR: Default icon color to application palette, by [@dalthviz](https://github.com/dalthviz) ([156](https://github.com/spyder-ide/qtawesome/issues/156))
* [PR 174](https://github.com/spyder-ide/qtawesome/pull/174) - PR: Update Material Design Icons to 5.9.55 and add support for new mayor version 6.x - 6.3.95, by [@kumattau](https://github.com/kumattau)
* [PR 171](https://github.com/spyder-ide/qtawesome/pull/171) - PR: Add PySide6 support for qta-browser , by [@kumattau](https://github.com/kumattau) ([170](https://github.com/spyder-ide/qtawesome/issues/170))
* [PR 169](https://github.com/spyder-ide/qtawesome/pull/169) - PR: Add Phosphor and Remix Icon support, by [@kumattau](https://github.com/kumattau)
* [PR 166](https://github.com/spyder-ide/qtawesome/pull/166) - PR: Support alpha in colors, by [@ccordoba12](https://github.com/ccordoba12)
* [PR 152](https://github.com/spyder-ide/qtawesome/pull/152) - PR: Add Microsoft's Codicons 0.0.25 font, by [@darkvertex](https://github.com/darkvertex)
* [PR 151](https://github.com/spyder-ide/qtawesome/pull/151) - PR: Update FA to 5.14.0 + fix setupbase.py for Py3, by [@darkvertex](https://github.com/darkvertex)
In this release 10 pull requests were closed.
----
## Version 1.0.3 (2021-06-22)
### Issues Closed
* [Issue 162](https://github.com/spyder-ide/qtawesome/issues/162) - Implicit integer conversion is deprecated
In this release 1 issue was closed.
### Pull Requests Merged
* [PR 163](https://github.com/spyder-ide/qtawesome/pull/163) - PR: Cast tileWidth to an integer (closes #162), by [@juliangilbey](https://github.com/juliangilbey)
* [PR 146](https://github.com/spyder-ide/qtawesome/pull/146) - PR: Timer should belong to parent widget, by [@listyque](https://github.com/listyque)
In this release 2 pull requests were closed.
----
## Version 1.0.2 (2020-12-08)
### Issues Closed
* [Issue 159](https://github.com/spyder-ide/qtawesome/issues/159) - Release 1.0.2
In this release 1 issue was closed.
### Pull Requests Merged
* [PR 160](https://github.com/spyder-ide/qtawesome/pull/160) - PR: Perform a font id validation, by [@iLLiCiTiT](https://github.com/iLLiCiTiT)
* [PR 158](https://github.com/spyder-ide/qtawesome/pull/158) - PR: Add python_requires to setup.py, by [@ccordoba12](https://github.com/ccordoba12)
In this release 2 pull requests were closed.
----
## Version 1.0.1 (2020-09-29)
### Pull Requests Merged
* [PR 155](https://github.com/spyder-ide/qtawesome/pull/155) - PR: Add entries to the mdi charmap to be supported by Spyder <=4.1.5, by [@dalthviz](https://github.com/dalthviz)
In this release 1 pull request was closed.
----
## Version 1.0.0 (2020-09-25)
### New features
* Update Material design icons to 5.4.55
* Drop Python 2 support
### Issues Closed
* [Issue 136](https://github.com/spyder-ide/qtawesome/issues/136) - Deprecate Python 2 in our CI ([PR 139](https://github.com/spyder-ide/qtawesome/pull/139) by [@goanpeca](https://github.com/goanpeca))
In this release 1 issue was closed.
### Pull Requests Merged
* [PR 150](https://github.com/spyder-ide/qtawesome/pull/150) - PR: Update mdi to 5.4.55, by [@doudz](https://github.com/doudz)
* [PR 139](https://github.com/spyder-ide/qtawesome/pull/139) - PR: Support only Python 3, by [@goanpeca](https://github.com/goanpeca) ([136](https://github.com/spyder-ide/qtawesome/issues/136))
In this release 2 pull requests were closed.
----
## Version 0.7.3 (2020-09-21)
### Issues Closed
* [Issue 147](https://github.com/spyder-ide/qtawesome/issues/147) - Deprecation warning due to invalid escape sequences ([PR 148](https://github.com/spyder-ide/qtawesome/pull/148) by [@tirkarthi](https://github.com/tirkarthi))
In this release 1 issue was closed.
### Pull Requests Merged
* [PR 154](https://github.com/spyder-ide/qtawesome/pull/154) - PR: Update RELEASE.md, by [@dalthviz](https://github.com/dalthviz)
* [PR 148](https://github.com/spyder-ide/qtawesome/pull/148) - PR: Fix deprecation warnings due to invalid escape sequences., by [@tirkarthi](https://github.com/tirkarthi) ([147](https://github.com/spyder-ide/qtawesome/issues/147))
In this release 2 pull requests were closed.
----
## Version 0.7.2 (2020-05-05)
### Pull Requests Merged
* [PR 145](https://github.com/spyder-ide/qtawesome/pull/145) - PR: Update release instructions for the 0.x branch, by [@ccordoba12](https://github.com/ccordoba12)
* [PR 143](https://github.com/spyder-ide/qtawesome/pull/143) - PR: Do not call python directly in tests, by [@scarabeusiv](https://github.com/scarabeusiv)
In this release 2 pull requests were closed.
----
## Version 0.7.1 (2020-04-15)
### Issues Closed
* [Issue 140](https://github.com/spyder-ide/qtawesome/issues/140) - QtAwesome is issuing "UserWarning: Your Python version doesn't support character ... " in Python 2 ([PR 141](https://github.com/spyder-ide/qtawesome/pull/141) by [@dalthviz](https://github.com/dalthviz))
In this release 1 issue was closed.
### Pull Requests Merged
* [PR 141](https://github.com/spyder-ide/qtawesome/pull/141) - PR: Remove warning for Python 2.7, by [@dalthviz](https://github.com/dalthviz) ([140](https://github.com/spyder-ide/qtawesome/issues/140))
In this release 1 pull request was closed.
----
## Version 0.7.0 (2020-02-12)
### New features
* Update Material design icons to 4.9.95
* Add IconWidget class to display icons as widgets
* Add an icon browser
### Issues Closed
* [Issue 125](https://github.com/spyder-ide/qtawesome/issues/125) - addApplicationFont Locks fonts from reading ([PR 138](https://github.com/spyder-ide/qtawesome/pull/138))
* [Issue 45](https://github.com/spyder-ide/qtawesome/issues/45) - Documentation does not reflect the new "State (On, Off)" ([PR 137](https://github.com/spyder-ide/qtawesome/pull/137))
In this release 2 issues were closed.
### Pull Requests Merged
* [PR 138](https://github.com/spyder-ide/qtawesome/pull/138) - PR: Fix file lock ([125](https://github.com/spyder-ide/qtawesome/issues/125))
* [PR 137](https://github.com/spyder-ide/qtawesome/pull/137) - PR: Update documentation and images ([45](https://github.com/spyder-ide/qtawesome/issues/45))
* [PR 135](https://github.com/spyder-ide/qtawesome/pull/135) - PR: Use Github as the only CI provider
* [PR 131](https://github.com/spyder-ide/qtawesome/pull/131) - PR: Update MDI to 4.9.95
* [PR 127](https://github.com/spyder-ide/qtawesome/pull/127) - PR: Add IconWidget to display icon as widget
* [PR 123](https://github.com/spyder-ide/qtawesome/pull/123) - PR: Add an icon browser
In this release 6 pull requests were closed.
----
## Version 0.6.1 (2020-01-08)
### Pull Requests Merged
* [PR 130](https://github.com/spyder-ide/qtawesome/pull/130) - PR: Improve sponsors section in readme
* [PR 128](https://github.com/spyder-ide/qtawesome/pull/128) - PR: Replace QtGui by QtWidgets in docs
* [PR 126](https://github.com/spyder-ide/qtawesome/pull/126) - PR: Update MDI to 4.5.95
* [PR 122](https://github.com/spyder-ide/qtawesome/pull/122) - PR: Update MDI to 4.4.95
* [PR 121](https://github.com/spyder-ide/qtawesome/pull/121) - PR: Update number of icons in Readme and docs
In this release 5 pull requests were closed.
----
## Version 0.6.0 (2019-07-25)
### New features
* Add rotated, hflip, and vflip options
### Issues Closed
* [Issue 119](https://github.com/spyder-ide/qtawesome/issues/119) - Update FontAwesome and Material design icons ([PR 120](https://github.com/spyder-ide/qtawesome/pull/120))
* [Issue 112](https://github.com/spyder-ide/qtawesome/issues/112) - Rotate icons by static angle i.e. 90, 180 etc ([PR 117](https://github.com/spyder-ide/qtawesome/pull/117))
In this release 2 issues were closed.
### Pull Requests Merged
* [PR 120](https://github.com/spyder-ide/qtawesome/pull/120) - PR: Update FontAwesome and Material design icons ([119](https://github.com/spyder-ide/qtawesome/issues/119))
* [PR 117](https://github.com/spyder-ide/qtawesome/pull/117) - PR: Add rotated, hflip, and vflip options ([112](https://github.com/spyder-ide/qtawesome/issues/112))
In this release 2 pull requests were closed.
----
## Version 0.5.8 (2019-07-23)
### Pull Requests Merged
* [PR 118](https://github.com/spyder-ide/qtawesome/pull/118) - PR: Remove Python 3.8 deprecation warnings
In this release 1 pull request was closed.
----
## Version 0.5.7 (2019-03-07)
### Issues Closed
* [Issue 113](https://github.com/spyder-ide/qtawesome/issues/113) - Corrupted icons with PyQt 5.12 ([PR 115](https://github.com/spyder-ide/qtawesome/pull/115))
In this release 1 issue was closed.
### Pull Requests Merged
* [PR 115](https://github.com/spyder-ide/qtawesome/pull/115) - PR: Keep icons alive in cache ([113](https://github.com/spyder-ide/qtawesome/issues/113))
In this release 1 pull request was closed.
----
## Version 0.5.6 (2019-01-26)
### Issues Closed
* [Issue 107](https://github.com/spyder-ide/qtawesome/issues/107) - Some FontAwesome icons do not match ([PR 109](https://github.com/spyder-ide/qtawesome/pull/109))
In this release 1 issue was closed.
### Pull Requests Merged
* [PR 110](https://github.com/spyder-ide/qtawesome/pull/110) - PR: Update update_fa5 command to rename internal font names during update
* [PR 109](https://github.com/spyder-ide/qtawesome/pull/109) - PR: Rename FA5 fonts to be unique ([107](https://github.com/spyder-ide/qtawesome/issues/107))
* [PR 108](https://github.com/spyder-ide/qtawesome/pull/108) - PR: Add a test to ensure all fonts used by QtAwesome have a unique family name
In this release 3 pull requests were closed.
----
## Version 0.5.5 (2019-01-03)
### Pull Requests Merged
* [PR 106](https://github.com/spyder-ide/qtawesome/pull/106) - PR: Add setupbase.py to our tarball
In this release 1 pull request was closed.
----
## Version 0.5.4 (2019-01-03)
### Pull Requests Merged
* [PR 105](https://github.com/spyder-ide/qtawesome/pull/105) - PR: Fix bad package dependency in docs/environment.yml
* [PR 104](https://github.com/spyder-ide/qtawesome/pull/104) - PR: Update to FA 5.6.3 and new "update_fa5" setup.py subcommand
In this release 2 pull requests were closed.
----
## Version 0.5.3 (2018-11-12)
### Issues Closed
* [Issue 103](https://github.com/spyder-ide/qtawesome/issues/103) - Pypi description is ugly
In this release 1 issue was closed.
### Pull Requests Merged
* [PR 102](https://github.com/spyder-ide/qtawesome/pull/102) - PR: Update FontAwesome to 5.4.2
In this release 1 pull request was closed.
----
## Version 0.5.2 (2018-10-28)
### Pull Requests Merged
* [PR 101](https://github.com/spyder-ide/qtawesome/pull/101) - PR: Generate PyPI long description from README.md
* [PR 100](https://github.com/spyder-ide/qtawesome/pull/100) - PR: Add instruction to update MDI
* [PR 99](https://github.com/spyder-ide/qtawesome/pull/99) - PR: Update MDI to 3.0.39
In this release 3 pull requests were closed.
----
## Version 0.5.1 (2018-09-30)
### Issues Closed
* [Issue 97](https://github.com/spyder-ide/qtawesome/issues/97) - minus-circle not working ([PR 98](https://github.com/spyder-ide/qtawesome/pull/98))
In this release 1 issue was closed.
### Pull Requests Merged
* [PR 98](https://github.com/spyder-ide/qtawesome/pull/98) - PR: Rename FontAwesome5 fonts ([97](https://github.com/spyder-ide/qtawesome/issues/97))
In this release 1 pull request was closed.
----
## Version 0.5 (2018-09-18)
### New features
* Update FontAwesome 4 to 4.7. Its namespace will be `fa` forever.
* Add Material Design icons under the `mdi` namespace
* Add FontAwesome 5 icons under the `fa5` (regular), `fa5s` (solid) and
`fa5b` (brands) namespaces.
### Issues Closed
* [Issue 93](https://github.com/spyder-ide/qtawesome/issues/93) - Update MDI to 2.7.94 ([PR 95](https://github.com/spyder-ide/qtawesome/pull/95))
* [Issue 88](https://github.com/spyder-ide/qtawesome/issues/88) - Add support for Material Design Icons ([PR 92](https://github.com/spyder-ide/qtawesome/pull/92))
* [Issue 87](https://github.com/spyder-ide/qtawesome/issues/87) - Update FontAwesome to its 5 version ([PR 86](https://github.com/spyder-ide/qtawesome/pull/86))
* [Issue 76](https://github.com/spyder-ide/qtawesome/issues/76) - Error in animation.py when quickly set spinner ([PR 77](https://github.com/spyder-ide/qtawesome/pull/77))
* [Issue 41](https://github.com/spyder-ide/qtawesome/issues/41) - Add .project and .pydevproject to .gitignore ([PR 96](https://github.com/spyder-ide/qtawesome/pull/96))
In this release 5 issues were closed.
### Pull Requests Merged
* [PR 96](https://github.com/spyder-ide/qtawesome/pull/96) - PR: Ignore PyDev project files ([41](https://github.com/spyder-ide/qtawesome/issues/41))
* [PR 95](https://github.com/spyder-ide/qtawesome/pull/95) - PR: Update MDI to 2.7.94 ([93](https://github.com/spyder-ide/qtawesome/issues/93))
* [PR 92](https://github.com/spyder-ide/qtawesome/pull/92) - PR: Add Material Design Icons support ([88](https://github.com/spyder-ide/qtawesome/issues/88))
* [PR 91](https://github.com/spyder-ide/qtawesome/pull/91) - PR: Fix testing facilities
* [PR 86](https://github.com/spyder-ide/qtawesome/pull/86) - PR: Update FontAwesome to 5.3.1 ([87](https://github.com/spyder-ide/qtawesome/issues/87))
* [PR 85](https://github.com/spyder-ide/qtawesome/pull/85) - PR: Update readme to remove funding appeal, harmonize with other readmes and minor fixes
* [PR 81](https://github.com/spyder-ide/qtawesome/pull/81) - PR: Replace qRound (missing in PySide2) with round
* [PR 77](https://github.com/spyder-ide/qtawesome/pull/77) - PR: Fix error when updating animations ([76](https://github.com/spyder-ide/qtawesome/issues/76))
* [PR 72](https://github.com/spyder-ide/qtawesome/pull/72) - PR: Updating FontAwesome to 4.7
In this release 9 pull requests were closed.
----
## Version 0.4.4 (2017-01-28)
### Bugs fixed
**Pull requests**
* [PR 70](https://github.com/spyder-ide/qtawesome/pull/70) - PR: Prevent segfaults when importing QtAwesome out of a of QApplication
In this release 1 pull request was merged
----
## Version 0.4.3 (2017-01-22)
### Bugs fixed
**Pull requests**
* [PR 68](https://github.com/spyder-ide/qtawesome/pull/68) - PR: Include example script into tarball to run tests when the package is installed
In this release 1 pull request was merged
----
## Version 0.4.2 (2017-01-21)
### Bugs fixed
**Issues**
* [Issue 65](https://github.com/spyder-ide/qtawesome/issues/65) - Update Appveyor Badge for new username spyder-ide
* [Issue 64](https://github.com/spyder-ide/qtawesome/issues/64) - Integration with system fonts
* [Issue 51](https://github.com/spyder-ide/qtawesome/issues/51) - Include doc files in PyPi releases
In this release 3 issues were closed
**Pull requests**
* [PR 67](https://github.com/spyder-ide/qtawesome/pull/67) - PR: Add a way to not verify hash of vendorized fonts
* [PR 66](https://github.com/spyder-ide/qtawesome/pull/66) - PR: Update AppVeyor badge because of move to org account
* [PR 63](https://github.com/spyder-ide/qtawesome/pull/63) - Update manifest template
In this release 3 pull requests were merged
----
## Version 0.4.1 (2017-01-02)
### Bugs fixed
**Pull requests**
* [PR 62](https://github.com/spyder-ide/qtawesome/pull/62) - Improve verification that our fonts are not empty and/or missing
In this release 1 pull request was merged
----
## Version 0.4 (2017/01/01)
### New features
* Add a FontError exception to be able to catch an error on Windows 10, which
prevents reading fonts not installed in the system.
### Bugs fixed
**Issues**
* [Issue 55](https://github.com/spyder-ide/qtawesome/issues/55) - Add appveyor integration
* [Issue 54](https://github.com/spyder-ide/qtawesome/issues/54) - Add travis ci integration for mac
* [Issue 53](https://github.com/spyder-ide/qtawesome/issues/53) - Add circle ci integration for linux
In this release 3 issues were closed
**Pull requests**
* [PR 61](https://github.com/spyder-ide/qtawesome/pull/61) - PR: Fix errors in CI services
* [PR 60](https://github.com/spyder-ide/qtawesome/pull/60) - PR: Add validation to raise exception when fonts are empty or corrupt
* [PR 57](https://github.com/spyder-ide/qtawesome/pull/57) - PR: Simplify appveyor and circle ci config
* [PR 56](https://github.com/spyder-ide/qtawesome/pull/56) - PR: Add ciocheck and circle ci linux integration
* [PR 50](https://github.com/spyder-ide/qtawesome/pull/50) - PR: Conda installation instructions
* [PR 49](https://github.com/spyder-ide/qtawesome/pull/49) - PR: Remove conda recipe
* [PR 48](https://github.com/spyder-ide/qtawesome/pull/48) - PR: Improve documentation
In this release 7 pull requests were merged
python-qtawesome-1.1.1/LICENSE.txt 0000664 0000000 0000000 00000002101 14156141701 0016653 0 ustar 00root root 0000000 0000000 The MIT License
Copyright (c) 2015 The Spyder development team
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
python-qtawesome-1.1.1/MANIFEST.in 0000664 0000000 0000000 00000000265 14156141701 0016577 0 ustar 00root root 0000000 0000000 include qtawesome/fonts/*
recursive-include docs *
exclude docs/*.yml
include CHANGELOG.md LICENSE.txt README.md
include example.py setupbase.py
recursive-include qtawesome/tests *
python-qtawesome-1.1.1/README.md 0000664 0000000 0000000 00000020155 14156141701 0016320 0 ustar 00root root 0000000 0000000 # QtAwesome
[](./LICENSE)
[](https://pypi.org/project/qtawesome/)
[](https://www.anaconda.com/download/)
[](https://www.anaconda.com/download/)
[](#backers)
[](https://gitter.im/spyder-ide/public)
[](https://github.com/spyder-ide/qtawesome)
[](https://github.com/spyder-ide/qtawesome/actions)
[](https://qtawesomedocs.readthedocs.io/en/latest/?badge=latest)
*Copyright © 2015–2021 Spyder Project Contributors*
## Description
QtAwesome enables iconic fonts such as Font Awesome and Elusive Icons
in PyQt and PySide applications.
It started as a Python port of the [QtAwesome](
https://github.com/Gamecreature/qtawesome)
C++ library by Rick Blommers.
## Installation
Using `conda`:
```
conda install qtawesome
```
or using `pip` (only if you don't have conda installed):
```
pip install qtawesome
```
## Usage
### Supported Fonts
QtAwesome identifies icons by their **prefix** and their **icon name**, separated by a *period* (`.`) character.
The following prefixes are currently available to use:
- [**FontAwesome**](https://fontawesome.com):
- FA 5.9.0 features 1,534 free icons in different styles:
- `fa5` prefix has [152 icons in the "**regular**" style.](https://fontawesome.com/icons?d=gallery&s=regular&m=free)
- `fa5s` prefix has [1000 icons in the "**solid**" style.](https://fontawesome.com/icons?d=gallery&s=solid&m=free)
- `fa5b` prefix has [449 icons of various **brands**.](https://fontawesome.com/icons?d=gallery&s=brands&m=free)
- `fa` is the legacy [FA 4.7 version with its 675 icons](https://fontawesome.com/v4.7.0/icons/) but **all** of them (*and more!*) are part of FA 5.x so you should probably use the newer version above.
- `ei` prefix holds [**Elusive Icons** 2.0 with its 304 icons](http://elusiveicons.com/icons/).
- [**Material Design Icons**](https://cdn.materialdesignicons.com)
- `mdi6` prefix holds [**Material Design Icons** 6.3.95 with its 6395 icons.](https://cdn.materialdesignicons.com/6.3.95/)
- `mdi` prefix holds [**Material Design Icons** 5.9.55 with its 5955 icons.](https://cdn.materialdesignicons.com/5.9.55/)
- `ph` prefix holds [**Phosphor** 1.3.0 with its 4470 icons (894 icons * 5 weights: Thin, Light, Regular, Bold and Fill).](https://github.com/phosphor-icons/phosphor-icons)
- `ri` prefix holds [**Remix Icon** 2.5.0 with its 2271 icons.](https://github.com/Remix-Design/RemixIcon)
- `msc` prefix holds Microsoft's [**Codicons** 0.0.25 with its 385 icons.](https://github.com/microsoft/vscode-codicons)
### Examples
```python
import qtawesome as qta
```
- Use Font Awesome, Elusive Icons, Material Design Icons, Phosphor, Remix Icon or Microsoft's Codicons.
```python
# Get FontAwesome 5.x icons by name in various styles:
fa5_icon = qta.icon('fa5.flag')
fa5_button = QtWidgets.QPushButton(fa5_icon, 'Font Awesome! (regular)')
fa5s_icon = qta.icon('fa5s.flag')
fa5s_button = QtWidgets.QPushButton(fa5s_icon, 'Font Awesome! (solid)')
fa5b_icon = qta.icon('fa5b.github')
fa5b_button = QtWidgets.QPushButton(fa5b_icon, 'Font Awesome! (brands)')
# or Elusive Icons:
asl_icon = qta.icon('ei.asl')
elusive_button = QtWidgets.QPushButton(asl_icon, 'Elusive Icons!')
# or Material Design Icons:
apn_icon = qta.icon('mdi6.access-point-network')
mdi6_button = QtWidgets.QPushButton(apn_icon, 'Material Design Icons!')
# or Phosphor:
mic_icon = qta.icon('ph.microphone-fill')
ph_button = QtWidgets.QPushButton(mic_icon, 'Phosphor!')
# or Remix Icon:
truck_icon = qta.icon('ri.truck-fill')
ri_button = QtWidgets.QPushButton(truck_icon, 'Remix Icon!')
# or Microsoft's Codicons:
squirrel_icon = qta.icon('msc.squirrel')
msc_button = QtWidgets.QPushButton(squirrel_icon, 'Codicons!')
```
- Apply some styling
```python
# Styling icons
styling_icon = qta.icon('fa5s.music',
active='fa5s.balance-scale',
color='blue',
color_active='orange')
music_button = QtWidgets.QPushButton(styling_icon, 'Styling')
```
- Set alpha in colors
```python
# Setting an alpha of 120 to the color of this icon. Alpha must be a number
# between 0 and 255.
icon_with_alpha = qta.icon('mdi.heart',
color=('red', 120))
heart_button = QtWidgets.QPushButton(icon_with_alpha, 'Setting alpha')
```
- Stack multiple icons
```python
# Stacking icons
camera_ban = qta.icon('fa5s.camera', 'fa5s.ban',
options=[{'scale_factor': 0.5,
'active': 'fa5s.balance-scale'},
{'color': 'red'}])
stack_button = QtWidgets.QPushButton(camera_ban, 'Stack')
stack_button.setIconSize(QtCore.QSize(32, 32))
```
- Animations
```python
# Spining icons
spin_button = QtWidgets.QPushButton(' Spinning icon')
spin_icon = qta.icon('fa5s.spinner', color='red',
animation=qta.Spin(spin_button))
spin_button.setIcon(spin_icon)
```
- Display Icon as a widget
```python
# Spining icon widget
spin_widget = qta.IconWidget()
spin_icon = qta.icon('mdi.loading', color='red',
animation=qta.Spin(spin_widget))
spin_widget.setIcon(spin_icon)
# Simple icon widget
simple_widget = qta.IconWidget('mdi.web', color='blue')
```
- Screenshot

## Other features
- QtAwesome comes bundled with _Font Awesome_, _Elusive Icons_, _Material Design_
_Icons_, _Phosphor_, _Remix Icon_ and Microsoft's _Codicons_
but it can also be used with other iconic fonts. The `load_font`
function allows to load other fonts dynamically.
- QtAwesome relies on the [QtPy](https://github.com/spyder-ide/qtpy.git)
project as a compatibility layer on the top ot PyQt or PySide.
### Icon Browser
QtAwesome ships with a browser that displays all the available icons. You can
use this to search for an icon that suits your requirements and then copy the
name that should be used to create that icon!
Once installed, run `qta-browser` from a shell to start the browser.

## License
MIT License. Copyright 2015 - The Spyder development team.
See the [LICENSE](LICENSE) file for details.
The [Font Awesome](https://github.com/FortAwesome/Font-Awesome/blob/master/LICENSE.txt) and [Elusive Icons](http://elusiveicons.com/license/) fonts are licensed under the [SIL Open Font License](http://scripts.sil.org/OFL).
The Phosphor font is licensed under the [MIT License](https://github.com/phosphor-icons/phosphor-icons/blob/master/LICENSE).
The [Material Design Icons](https://github.com/Templarian/MaterialDesign/blob/master/LICENSE) font is licensed under the [Apache License Version 2.0](http://www.apache.org/licenses/LICENSE-2.0).
The Remix Icon font is licensed under the [Apache License Version 2.0](https://github.com/Remix-Design/remixicon/blob/master/License).
Microsoft's Codicons are licensed under a [Creative Commons Attribution 4.0 International Public License](https://github.com/microsoft/vscode-codicons/blob/master/LICENSE).
## Sponsors
Spyder and its subprojects are funded thanks to the generous support of
[](https://www.quansight.com/)[](https://numfocus.org/)
and the donations we have received from our users around the world through [Open Collective](https://opencollective.com/spyder/):
[](https://opencollective.com/spyder#support)
python-qtawesome-1.1.1/RELEASE.md 0000664 0000000 0000000 00000001370 14156141701 0016441 0 ustar 00root root 0000000 0000000 To release a new version of qtawesome on PyPI:
* git fetch upstream && git checkout master && git merge upstream/master
* Close the current milestone on Github
* git clean -xfdi
* Update CHANGELOG.md with
loghub spyder-ide/qtawesome -m vX.X.X
* Update `_version.py` (set release version, remove 'dev0')
* git add and git commit -m "Release x.x.x"
* Update the most important release packages with
pip install -U pip setuptools twine wheel
* python setup.py sdist
* python setup.py bdist_wheel
* twine check dist/*
* twine upload dist/*
* git tag -a vX.X.X -m 'Release x.x.x'
* Update `_version.py` (add 'dev0' and increment minor)
* git add and git commit with "Back to work"
* git push upstream master
* git push upstream --tags
python-qtawesome-1.1.1/UPDATE.md 0000664 0000000 0000000 00000013604 14156141701 0016346 0 ustar 00root root 0000000 0000000 # How to update font packs
## FontAwesome
To update _FontAwesome_ icons, one must:
- check what is the latest released version here: https://github.com/FortAwesome/Font-Awesome/releases/
- run: python setup.py update_fa5 --fa-version X.X.X
- update FA version number, icon counts and URLs inside:
- README.md
- qtawesome/docs/source/usage.rst
## Elusive Icons
To update _Elusive Icons_, one must:
- replace the ttf font file with the new version
- regenerate the json charmap with the `icons.yml` file from the upstream repository:
```Python
import yaml, json
with open('icons.yml', 'r') as file:
icons = yaml.load(file)['icons']
charmap = {icon['id']: icon['unicode'] for icon in icons}
for icon in icons:
if 'aliases' in icon:
for name in icon['aliases']:
charmap[name] = icon['unicode']
with open('charmap.json', 'w') as file:
json.dump(charmap, file, indent=4, sort_keys=True)
```
## Material Design Icons
To update _Material Design Icons 6.x_, you must:
- download ttf from
- regenerate the json charmap with the `materialdesignicons.css` file from
The following script automatically download the last TTF font, generate the json charmap and display md5 hash of the TTF (to update iconic_font.py)
```Python
import re
import json
import urllib.request
import hashlib
TTF_URL = 'https://raw.githubusercontent.com/Templarian/MaterialDesign-Webfont/master/fonts/materialdesignicons-webfont.ttf'
CSS_URL = 'https://raw.githubusercontent.com/Templarian/MaterialDesign-Webfont/master/css/materialdesignicons.css'
with open('materialdesignicons6-webfont.ttf', 'wb') as fp:
req = urllib.request.urlopen(TTF_URL)
if req.status != 200:
raise Exception('Failed to download TTF')
fp.write(req.read())
req.close()
hasher = hashlib.md5()
with open('materialdesignicons6-webfont.ttf', 'rb') as f:
content = f.read()
hasher.update(content)
ttf_calculated_hash_code = hasher.hexdigest()
print('MD5 :', ttf_calculated_hash_code)
req = urllib.request.urlopen(CSS_URL)
if req.status != 200:
raise Exception('Failed to download CSS Charmap')
rawcss = req.read().decode()
req.close()
charmap = {}
pattern = '^\.mdi-(.+)::before {\s*content: "(.+)";\s*}$'
data = re.findall(pattern, rawcss, re.MULTILINE)
for name, key in data:
key = key.replace('\\F', '0xf').lower()
key = key.replace('\\', '0x')
name = name.lower()
charmap[name] = key
with open('materialdesignicons6-webfont-charmap.json', 'w') as fp:
json.dump(charmap, fp, indent=4, sort_keys=True)
```
## Phosphor
To update _Phosphor_, you must:
- download ttf from
- regenerate the json charmap with the `phosphor.css` file from
The following script automatically download the last TTF font, generate the json charmap and display md5 hash of the TTF (to update iconic_font.py)
```Python
import re
import json
import urllib.request
import hashlib
TTF_URL = 'https://raw.githubusercontent.com/phosphor-icons/phosphor-icons/master/src/font/phosphor.ttf'
CSS_URL = 'https://raw.githubusercontent.com/phosphor-icons/phosphor-icons/master/src/css/phosphor.css'
with open('phosphor.ttf', 'wb') as fp:
req = urllib.request.urlopen(TTF_URL)
if req.status != 200:
raise Exception('Failed to download TTF')
fp.write(req.read())
req.close()
hasher = hashlib.md5()
with open('phosphor.ttf', 'rb') as f:
content = f.read()
hasher.update(content)
ttf_calculated_hash_code = hasher.hexdigest()
print('MD5 :', ttf_calculated_hash_code)
req = urllib.request.urlopen(CSS_URL)
if req.status != 200:
raise Exception('Failed to download CSS Charmap')
rawcss = req.read().decode()
req.close()
charmap = {}
pattern = '^\.ph-(.+):before {\s*content: "(.+)";\s*}$'
data = re.findall(pattern, rawcss, re.MULTILINE)
for name, key in data:
key = key.replace('\\', '0x')
name = name.lower()
charmap[name] = key
with open('phosphor-charmap.json', 'w') as fp:
json.dump(charmap, fp, indent=4, sort_keys=True)
```
## Remix Icon
To update _Remix Icon_, you must:
- download ttf from
- regenerate the json charmap with the `remixicon.css` file from
The following script automatically download the last TTF font, generate the json charmap and display md5 hash of the TTF (to update iconic_font.py)
```Python
import re
import json
import urllib.request
import hashlib
TTF_URL = 'https://raw.githubusercontent.com/Remix-Design/RemixIcon/master/fonts/remixicon.ttf'
CSS_URL = 'https://raw.githubusercontent.com/Remix-Design/RemixIcon/master/fonts/remixicon.css'
with open('remixicon.ttf', 'wb') as fp:
req = urllib.request.urlopen(TTF_URL)
if req.status != 200:
raise Exception('Failed to download TTF')
fp.write(req.read())
req.close()
hasher = hashlib.md5()
with open('remixicon.ttf', 'rb') as f:
content = f.read()
hasher.update(content)
ttf_calculated_hash_code = hasher.hexdigest()
print('MD5 :', ttf_calculated_hash_code)
req = urllib.request.urlopen(CSS_URL)
if req.status != 200:
raise Exception('Failed to download CSS Charmap')
rawcss = req.read().decode()
req.close()
charmap = {}
pattern = '^\.ri-(.+):before {\s*content: "(.+)";\s*}$'
data = re.findall(pattern, rawcss, re.MULTILINE)
for name, key in data:
key = key.replace('\\', '0x')
name = name.lower()
charmap[name] = key
with open('remixicon-charmap.json', 'w') as fp:
json.dump(charmap, fp, indent=4, sort_keys=True)
```
python-qtawesome-1.1.1/docs/ 0000775 0000000 0000000 00000000000 14156141701 0015766 5 ustar 00root root 0000000 0000000 python-qtawesome-1.1.1/docs/Makefile 0000664 0000000 0000000 00000016406 14156141701 0017435 0 ustar 00root root 0000000 0000000 # Makefile for Sphinx documentation
#
# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
PAPER =
BUILDDIR = build
# User-friendly check for sphinx-build
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
endif
# Internal variables.
PAPEROPT_a4 = -D latex_paper_size=a4
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
# the i18n builder cannot share the environment and doctrees with the others
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest coverage gettext
help:
@echo "Please use \`make ' where is one of"
@echo " html to make standalone HTML files"
@echo " dirhtml to make HTML files named index.html in directories"
@echo " singlehtml to make a single large HTML file"
@echo " pickle to make pickle files"
@echo " json to make JSON files"
@echo " htmlhelp to make HTML files and a HTML help project"
@echo " qthelp to make HTML files and a qthelp project"
@echo " applehelp to make an Apple Help Book"
@echo " devhelp to make HTML files and a Devhelp project"
@echo " epub to make an epub"
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
@echo " latexpdf to make LaTeX files and run them through pdflatex"
@echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
@echo " text to make text files"
@echo " man to make manual pages"
@echo " texinfo to make Texinfo files"
@echo " info to make Texinfo files and run them through makeinfo"
@echo " gettext to make PO message catalogs"
@echo " changes to make an overview of all changed/added/deprecated items"
@echo " xml to make Docutils-native XML files"
@echo " pseudoxml to make pseudoxml-XML files for display purposes"
@echo " linkcheck to check all external links for integrity"
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
@echo " coverage to run coverage check of the documentation (if enabled)"
clean:
rm -rf $(BUILDDIR)/*
html:
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
dirhtml:
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
singlehtml:
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
@echo
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
pickle:
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
@echo
@echo "Build finished; now you can process the pickle files."
json:
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
@echo
@echo "Build finished; now you can process the JSON files."
htmlhelp:
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
@echo
@echo "Build finished; now you can run HTML Help Workshop with the" \
".hhp project file in $(BUILDDIR)/htmlhelp."
qthelp:
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
@echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/qtawesome.qhcp"
@echo "To view the help file:"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/qtawesome.qhc"
applehelp:
$(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp
@echo
@echo "Build finished. The help book is in $(BUILDDIR)/applehelp."
@echo "N.B. You won't be able to view it unless you put it in" \
"~/Library/Documentation/Help or install it in your application" \
"bundle."
devhelp:
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
@echo
@echo "Build finished."
@echo "To view the help file:"
@echo "# mkdir -p $$HOME/.local/share/devhelp/qtawesome"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/qtawesome"
@echo "# devhelp"
epub:
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
@echo
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
latex:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
@echo "Run \`make' in that directory to run these through (pdf)latex" \
"(use \`make latexpdf' here to do that automatically)."
latexpdf:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through pdflatex..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
latexpdfja:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through platex and dvipdfmx..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
text:
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
@echo
@echo "Build finished. The text files are in $(BUILDDIR)/text."
man:
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
@echo
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
texinfo:
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
@echo "Run \`make' in that directory to run these through makeinfo" \
"(use \`make info' here to do that automatically)."
info:
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo "Running Texinfo files through makeinfo..."
make -C $(BUILDDIR)/texinfo info
@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
gettext:
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
@echo
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
changes:
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
@echo
@echo "The overview file is in $(BUILDDIR)/changes."
linkcheck:
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
@echo
@echo "Link check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/linkcheck/output.txt."
doctest:
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
@echo "Testing of doctests in the sources finished, look at the " \
"results in $(BUILDDIR)/doctest/output.txt."
coverage:
$(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage
@echo "Testing of coverage in the sources finished, look at the " \
"results in $(BUILDDIR)/coverage/python.txt."
xml:
$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
@echo
@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
pseudoxml:
$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
@echo
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
python-qtawesome-1.1.1/docs/environment.yml 0000664 0000000 0000000 00000000146 14156141701 0021056 0 ustar 00root root 0000000 0000000 name: qtawesome_docs
channels:
- https://conda.anaconda.org/spyder-ide
dependencies:
- pyqt
- qtpy
python-qtawesome-1.1.1/docs/make.bat 0000664 0000000 0000000 00000016133 14156141701 0017377 0 ustar 00root root 0000000 0000000 @ECHO OFF
REM Command file for Sphinx documentation
if "%SPHINXBUILD%" == "" (
set SPHINXBUILD=sphinx-build
)
set BUILDDIR=build
set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% source
set I18NSPHINXOPTS=%SPHINXOPTS% source
if NOT "%PAPER%" == "" (
set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS%
)
if "%1" == "" goto help
if "%1" == "help" (
:help
echo.Please use `make ^` where ^ is one of
echo. html to make standalone HTML files
echo. dirhtml to make HTML files named index.html in directories
echo. singlehtml to make a single large HTML file
echo. pickle to make pickle files
echo. json to make JSON files
echo. htmlhelp to make HTML files and a HTML help project
echo. qthelp to make HTML files and a qthelp project
echo. devhelp to make HTML files and a Devhelp project
echo. epub to make an epub
echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter
echo. text to make text files
echo. man to make manual pages
echo. texinfo to make Texinfo files
echo. gettext to make PO message catalogs
echo. changes to make an overview over all changed/added/deprecated items
echo. xml to make Docutils-native XML files
echo. pseudoxml to make pseudoxml-XML files for display purposes
echo. linkcheck to check all external links for integrity
echo. doctest to run all doctests embedded in the documentation if enabled
echo. coverage to run coverage check of the documentation if enabled
goto end
)
if "%1" == "clean" (
for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
del /q /s %BUILDDIR%\*
goto end
)
REM Check if sphinx-build is available and fallback to Python version if any
%SPHINXBUILD% 2> nul
if errorlevel 9009 goto sphinx_python
goto sphinx_ok
:sphinx_python
set SPHINXBUILD=python -m sphinx.__init__
%SPHINXBUILD% 2> nul
if errorlevel 9009 (
echo.
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
echo.installed, then set the SPHINXBUILD environment variable to point
echo.to the full path of the 'sphinx-build' executable. Alternatively you
echo.may add the Sphinx directory to PATH.
echo.
echo.If you don't have Sphinx installed, grab it from
echo.http://sphinx-doc.org/
exit /b 1
)
:sphinx_ok
if "%1" == "html" (
%SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The HTML pages are in %BUILDDIR%/html.
goto end
)
if "%1" == "dirhtml" (
%SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
goto end
)
if "%1" == "singlehtml" (
%SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
goto end
)
if "%1" == "pickle" (
%SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can process the pickle files.
goto end
)
if "%1" == "json" (
%SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can process the JSON files.
goto end
)
if "%1" == "htmlhelp" (
%SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can run HTML Help Workshop with the ^
.hhp project file in %BUILDDIR%/htmlhelp.
goto end
)
if "%1" == "qthelp" (
%SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can run "qcollectiongenerator" with the ^
.qhcp project file in %BUILDDIR%/qthelp, like this:
echo.^> qcollectiongenerator %BUILDDIR%\qthelp\qtawesome.qhcp
echo.To view the help file:
echo.^> assistant -collectionFile %BUILDDIR%\qthelp\qtawesome.ghc
goto end
)
if "%1" == "devhelp" (
%SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
if errorlevel 1 exit /b 1
echo.
echo.Build finished.
goto end
)
if "%1" == "epub" (
%SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The epub file is in %BUILDDIR%/epub.
goto end
)
if "%1" == "latex" (
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
if errorlevel 1 exit /b 1
echo.
echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
goto end
)
if "%1" == "latexpdf" (
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
cd %BUILDDIR%/latex
make all-pdf
cd %~dp0
echo.
echo.Build finished; the PDF files are in %BUILDDIR%/latex.
goto end
)
if "%1" == "latexpdfja" (
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
cd %BUILDDIR%/latex
make all-pdf-ja
cd %~dp0
echo.
echo.Build finished; the PDF files are in %BUILDDIR%/latex.
goto end
)
if "%1" == "text" (
%SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The text files are in %BUILDDIR%/text.
goto end
)
if "%1" == "man" (
%SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The manual pages are in %BUILDDIR%/man.
goto end
)
if "%1" == "texinfo" (
%SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
goto end
)
if "%1" == "gettext" (
%SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
goto end
)
if "%1" == "changes" (
%SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
if errorlevel 1 exit /b 1
echo.
echo.The overview file is in %BUILDDIR%/changes.
goto end
)
if "%1" == "linkcheck" (
%SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
if errorlevel 1 exit /b 1
echo.
echo.Link check complete; look for any errors in the above output ^
or in %BUILDDIR%/linkcheck/output.txt.
goto end
)
if "%1" == "doctest" (
%SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
if errorlevel 1 exit /b 1
echo.
echo.Testing of doctests in the sources finished, look at the ^
results in %BUILDDIR%/doctest/output.txt.
goto end
)
if "%1" == "coverage" (
%SPHINXBUILD% -b coverage %ALLSPHINXOPTS% %BUILDDIR%/coverage
if errorlevel 1 exit /b 1
echo.
echo.Testing of coverage in the sources finished, look at the ^
results in %BUILDDIR%/coverage/python.txt.
goto end
)
if "%1" == "xml" (
%SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The XML files are in %BUILDDIR%/xml.
goto end
)
if "%1" == "pseudoxml" (
%SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml.
goto end
)
:end
python-qtawesome-1.1.1/docs/source/ 0000775 0000000 0000000 00000000000 14156141701 0017266 5 ustar 00root root 0000000 0000000 python-qtawesome-1.1.1/docs/source/api_documentation.rst 0000664 0000000 0000000 00000000123 14156141701 0023516 0 ustar 00root root 0000000 0000000 API Reference Documentation
---------------------------
.. automodule:: qtawesome
python-qtawesome-1.1.1/docs/source/conf.py 0000664 0000000 0000000 00000024031 14156141701 0020565 0 ustar 00root root 0000000 0000000 # -*- coding: utf-8 -*-
#
# qtawesome documentation build configuration file, created by
# sphinx-quickstart on Thu Dec 3 22:33:49 2015.
#
# NOTE: This file has been edited manually from the auto-generated one from
# sphinx. Do NOT delete and re-generate. If any changes from sphinx are
# needed, generate a scratch one and merge by hand any new fields needed.
#
# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.
import sys
import os
import shlex
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#sys.path.insert(0, os.path.abspath('.'))
# We load the ipython release info into a dict by explicit execution
_release = {}
exec(compile(open('../../qtawesome/_version.py').read(), '../../qtawesome/_version.py', 'exec'), _release)
# -- General configuration ------------------------------------------------
# If your documentation needs a minimal Sphinx version, state it here.
#needs_sphinx = '1.0'
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
'sphinx.ext.autodoc',
'sphinx.ext.intersphinx',
'sphinx.ext.autosummary',
'sphinx.ext.viewcode',
'sphinx.ext.napoleon',
]
autosummary_generate = True
# Add any paths that contain templates here, relative to this directory.
#templates_path = ['_templates']
# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
# source_suffix = ['.rst', '.md']
source_suffix = '.rst'
# Add dev disclaimer.
if _release['version_info'][-1] == 'dev':
rst_prolog = """
.. note::
This documentation is for a development version of qtawesome. There may be
significant differences from the latest stable release.
"""
# The encoding of source files.
#source_encoding = 'utf-8-sig'
# The master toctree document.
master_doc = 'index'
# General information about the project.
project = u'qtawesome'
copyright = u'2015, The Spyder Development Team'
author = u'The Spyder Development Team'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = '.'.join(map(str, _release['version_info'][:2]))
# The full version, including alpha/beta/rc tags.
release = _release['__version__']
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = None
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
#today = ''
# Else, today_fmt is used as the format for a strftime call.
#today_fmt = '%B %d, %Y'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = []
# The reST default role (used for this markup: `text`) to use for all
# documents.
#default_role = None
# If true, '()' will be appended to :func: etc. cross-reference text.
#add_function_parentheses = True
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
#add_module_names = True
# If true, sectionauthor and moduleauthor directives will be shown in the
# output. They are ignored by default.
#show_authors = False
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
# A list of ignored prefixes for module index sorting.
#modindex_common_prefix = []
# If true, keep warnings as "system message" paragraphs in the built documents.
#keep_warnings = False
# If true, `todo` and `todoList` produce output, else they produce nothing.
todo_include_todos = False
# -- Options for HTML output ----------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
# html_theme = 'alabaster'
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
#html_theme_options = {}
# Add any paths that contain custom themes here, relative to this directory.
#html_theme_path = []
# The name for this set of Sphinx documents. If None, it defaults to
# " v documentation".
#html_title = None
# A shorter title for the navigation bar. Default is the same as html_title.
#html_short_title = None
# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
#html_logo = None
# The name of an image file (within the static path) to use as favicon of the
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
# pixels large.
#html_favicon = None
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
# html_static_path = ['_static']
# Add any extra paths that contain custom files (such as robots.txt or
# .htaccess) here, relative to this directory. These files are copied
# directly to the root of the documentation.
#html_extra_path = []
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
#html_last_updated_fmt = '%b %d, %Y'
# If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities.
#html_use_smartypants = True
# Custom sidebar templates, maps document names to template names.
#html_sidebars = {}
# Additional templates that should be rendered to pages, maps page names to
# template names.
#html_additional_pages = {}
# If false, no module index is generated.
#html_domain_indices = True
# If false, no index is generated.
#html_use_index = True
# If true, the index is split into individual pages for each letter.
#html_split_index = False
# If true, links to the reST sources are added to the pages.
#html_show_sourcelink = True
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
#html_show_sphinx = True
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
#html_show_copyright = True
# If true, an OpenSearch description file will be output, and all pages will
# contain a tag referring to it. The value of this option must be the
# base URL from which the finished HTML is served.
#html_use_opensearch = ''
# This is the file name suffix for HTML files (e.g. ".xhtml").
#html_file_suffix = None
# Language to be used for generating the HTML full-text search index.
# Sphinx supports the following languages:
# 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja'
# 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr'
#html_search_language = 'en'
# A dictionary with options for the search language support, empty by default.
# Now only 'ja' uses this config value
#html_search_options = {'type': 'default'}
# The name of a javascript file (relative to the configuration directory) that
# implements a search results scorer. If empty, the default will be used.
#html_search_scorer = 'scorer.js'
# Output file base name for HTML help builder.
htmlhelp_basename = 'qtawesomedoc'
# -- Options for LaTeX output ---------------------------------------------
latex_elements = {
# The paper size ('letterpaper' or 'a4paper').
#'papersize': 'letterpaper',
# The font size ('10pt', '11pt' or '12pt').
#'pointsize': '10pt',
# Additional stuff for the LaTeX preamble.
#'preamble': '',
# Latex figure (float) alignment
#'figure_align': 'htbp',
}
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
(master_doc, 'qtawesome.tex', u'qtawesome Documentation',
u'The Spyder Development Team', 'manual'),
]
# The name of an image file (relative to this directory) to place at the top of
# the title page.
#latex_logo = None
# For "manual" documents, if this is true, then toplevel headings are parts,
# not chapters.
#latex_use_parts = False
# If true, show page references after internal links.
#latex_show_pagerefs = False
# If true, show URL addresses after external links.
#latex_show_urls = False
# Documents to append as an appendix to all manuals.
#latex_appendices = []
# If false, no module index is generated.
#latex_domain_indices = True
# -- Options for manual page output ---------------------------------------
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
(master_doc, 'qtawesome', u'qtawesome Documentation',
[author], 1)
]
# If true, show URL addresses after external links.
#man_show_urls = False
# -- Options for Texinfo output -------------------------------------------
# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
(master_doc, 'qtawesome', u'qtawesome Documentation',
author, 'qtawesome', 'One line description of project.',
'Miscellaneous'),
]
# Documents to append as an appendix to all manuals.
#texinfo_appendices = []
# If false, no module index is generated.
#texinfo_domain_indices = True
# How to display URL addresses: 'footnote', 'no', or 'inline'.
#texinfo_show_urls = 'footnote'
# If true, do not generate a @detailmenu in the "Top" node's menu.
#texinfo_no_detailmenu = False
# Example configuration for intersphinx: refer to the Python standard library.
intersphinx_mapping = {'https://docs.python.org/': None}
python-qtawesome-1.1.1/docs/source/icon_browser.rst 0000664 0000000 0000000 00000000524 14156141701 0022514 0 ustar 00root root 0000000 0000000 Icon Browser
------------
QtAwesome ships with a browser that displays all the available icons. You can
use this to search for an icon that suits your requirements and then copy the
name that should be used to create that icon!
Once installed, run `qta-browser` from a shell to start the browser.
.. image:: ../../qtawesome-browser.png
python-qtawesome-1.1.1/docs/source/index.rst 0000664 0000000 0000000 00000000260 14156141701 0021125 0 ustar 00root root 0000000 0000000 ================================
qtawesome: Iconic Fonts for PyQt
================================
.. toctree::
introduction
usage
icon_browser
api_documentation
python-qtawesome-1.1.1/docs/source/introduction.rst 0000664 0000000 0000000 00000000411 14156141701 0022535 0 ustar 00root root 0000000 0000000 Introduction
------------
QtAwesome enables iconic fonts such as Font Awesome and Elusive Icons in PyQt
and PySide applications.
It started as a Python port of the QtAwesome_ C++ library by Rick Blommers.
.. _QtAwesome: https://github.com/gamecreature/QtAwesome
python-qtawesome-1.1.1/docs/source/usage.rst 0000664 0000000 0000000 00000016321 14156141701 0021127 0 ustar 00root root 0000000 0000000 Usage
-----
Supported Fonts
~~~~~~~~~~~~~~~
QtAwesome identifies icons by their **prefix** and their **icon name**, separated by a *period* (``.``) character.
The following prefixes are currently available to use:
- `FontAwesome`_:
- FA 5.9.0 features 1,534 free icons in different styles:
- ``fa5`` prefix has `152 icons in the "regular" style.`_
- ``fa5s`` prefix has `1000 icons in the "solid" style.`_
- ``fa5b`` prefix has `449 icons of various brands.`_
- ``fa`` is the legacy `FA 4.7 version with its 675 icons`_ but
**all** of them (*and more!*) are part of FA 5.x so you should
probably use the newer version above.
- ``ei`` prefix holds `Elusive Icons 2.0 with its 304 icons`_.
- `Material Design Icons`_:
- ``mdi6`` prefix holds `Material Design Icons 6.3.95 with its 6395 icons.`_
- ``mdi`` prefix holds `Material Design Icons 5.9.55 with its 5955 icons.`_
- ``ph`` prefix holds `Phosphor 1.3.0 with its 4470 icons (894 icons * 5 weights: Thin, Light, Regular, Bold and Fill).`_
- ``ri`` prefix holds `Remix Icon 2.5.0 with its 2271 icons.`_
- ``msc`` prefix holds Microsoft's `Codicons 0.0.25 with its 385 icons.`_
.. _FontAwesome: https://fontawesome.com
.. _152 icons in the "regular" style.: https://fontawesome.com/icons?d=gallery&s=regular&m=free
.. _1000 icons in the "solid" style.: https://fontawesome.com/icons?d=gallery&s=solid&m=free
.. _449 icons of various brands.: https://fontawesome.com/icons?d=gallery&s=brands&m=free
.. _FA 4.7 version with its 675 icons: https://fontawesome.com/v4.7.0/icons/
.. _Elusive Icons 2.0 with its 304 icons: http://elusiveicons.com/icons/
.. _Material Design Icons: https://cdn.materialdesignicons.com/
.. _Material Design Icons 6.3.95 with its 6395 icons.: https://cdn.materialdesignicons.com/6.3.95/
.. _Material Design Icons 5.9.55 with its 5955 icons.: https://cdn.materialdesignicons.com/5.9.55/
.. _Phosphor 1.3.0 with its 4470 icons (894 icons * 5 weights\: Thin, Light, Regular, Bold and Fill).: https://github.com/phosphor-icons/phosphor-icons
.. _Remix Icon 2.5.0 with its 2271 icons.: https://github.com/Remix-Design/RemixIcon
.. _Codicons 0.0.25 with its 385 icons.: https://github.com/microsoft/vscode-codicons
Examples
~~~~~~~~
.. code:: python
import qtawesome as qta
- Use Font Awesome, Elusive Icons, Material Design Icons, Phosphor, Remix Icon or Microsoft's Codicons:
.. code:: python
# Get FontAwesome 5.x icons by name in various styles by name
fa5_icon = qta.icon('fa5.flag')
fa5_button = QtWidgets.QPushButton(fa5_icon, 'Font Awesome! (regular)')
fa5s_icon = qta.icon('fa5s.flag')
fa5s_button = QtWidgets.QPushButton(fa5s_icon, 'Font Awesome! (solid)')
fa5b_icon = qta.icon('fa5b.github')
fa5b_button = QtWidgets.QPushButton(fa5b_icon, 'Font Awesome! (brands)')
# Get Elusive icons by name
asl_icon = qta.icon('ei.asl')
elusive_button = QtWidgets.QPushButton(asl_icon, 'Elusive Icons!')
# Get Material Design icons 6.x by name
apn_icon = qta.icon('mdi6.access-point-network')
mdi6_button = QtWidgets.QPushButton(apn_icon, 'Material Design Icons!')
# Get Phosphor by name
mic_icon = qta.icon('ph.microphone-fill')
ph_button = QtWidgets.QPushButton(mic_icon, 'Phosphor!')
# Get Remix Icon by name
truck_icon = qta.icon('ri.truck-fill')
ri_button = QtWidgets.QPushButton(truck_icon, 'Remix Icon!')
# Get Microsoft's Codicons by name
squirrel_icon = qta.icon('msc.squirrel')
msc_button = QtWidgets.QPushButton(squirrel_icon, 'Codicons!')
- Apply some transformations:
.. code:: python
# Rotated
rot_icon = qta.icon('mdi.access-point-network', rotated=45)
rot_button = QtWidgets.QPushButton(rot_icon, 'Rotated Icons!')
# Horizontal flip
hflip_icon = qta.icon('mdi.account-alert', hflip=True)
hflip_button = QtWidgets.QPushButton(hflip_icon, 'Horizontally Flipped Icons!')
# Vertical flip
vflip_icon = qta.icon('mdi.account-alert', vflip=True)
vflip_button = QtWidgets.QPushButton(vflip_icon, 'Vertically Flipped Icons!')
- Apply some styling:
.. code:: python
# Styling
styling_icon = qta.icon('fa5s.music',
active='fa5s.balance-scale',
color='blue',
color_active='orange')
music_button = QtWidgets.QPushButton(styling_icon, 'Styling')
- Set alpha in colors
.. code:: python
# Setting an alpha of 120 to the color of this icon. Alpha must be a number
# between 0 and 255.
icon_with_alpha = qta.icon('mdi.heart',
color=('red', 120))
heart_button = QtWidgets.QPushButton(icon_with_alpha, 'Setting alpha')
- Apply toggling state styling:
.. code:: python
# Toggle
toggle_icon = qta.icon('fa5s.home', selected='fa5s.balance-scale',
color_off='black',
color_off_active='blue',
color_on='orange',
color_on_active='yellow')
toggle_button = QtWidgets.QPushButton(toggle_icon, 'Toggle')
toggle_button.setCheckable(True)
- Stack multiple icons:
.. code:: python
# Stack icons
camera_ban = qta.icon('fa5s.camera', 'fa5s.ban',
options=[{'scale_factor': 0.5,
'active': 'fa5s.balance-scale'},
{'color': 'red', 'opacity': 0.7}])
stack_button = QtWidgets.QPushButton(camera_ban, 'Stack')
stack_button.setIconSize(QtCore.QSize(32, 32))
# Stack and offset icons
saveall = qta.icon('fa5.save', 'fa5.save',
options=[{'scale_factor': 0.8,
'offset': (0.2, 0.2),
'color': 'gray'},
{'scale_factor': 0.8}])
saveall_button = QtWidgets.QPushButton(saveall, 'Stack, offset')
- Animations:
.. code:: python
# Spin icons
spin_button = QtWidgets.QPushButton(' Spinning icon')
spin_icon = qta.icon('fa5s.spinner', color='red',
animation=qta.Spin(spin_button))
spin_button.setIcon(spin_icon)
# Pulse icons
pulse_button = QtWidgets.QPushButton(' Pulsing icon')
pulse_icon = qta.icon('fa5s.spinner', color='green',
animation=qta.Pulse(pulse_button))
pulse_button.setIcon(pulse_icon)
# Stacked spin icons
stack_spin_button = QtWidgets.QPushButton('Stack spin')
options = [{'scale_factor': 0.4,
'animation': qta.Spin(stack_spin_button)},
{'color': 'blue'}]
stack_spin_icon = qta.icon('ei.asl', 'fa5.square',
options=options)
stack_spin_button.setIcon(stack_spin_icon)
stack_spin_button.setIconSize(QtCore.QSize(32, 32))
- Apply font label rendering:
.. code:: python
# Render a label with this font
label = QtWidgets.QLabel(unichr(0xf19c) + ' ' + 'Label')
label.setFont(qta.font('fa', 16))
- Display Icon as a widget:
.. code:: python
# Spining icon widget
spin_widget = qta.IconWidget()
spin_icon = qta.icon('mdi.loading', color='red',
animation=qta.Spin(spin_widget))
spin_widget.setIcon(spin_icon)
# simple widget
simple_widget = qta.IconWidget('mdi.web', color='blue')
Screenshot
~~~~~~~~~~
.. image:: ../../qtawesome-screenshot.gif
python-qtawesome-1.1.1/example.py 0000664 0000000 0000000 00000016516 14156141701 0017054 0 ustar 00root root 0000000 0000000 # -*- coding: utf-8 -*-
# Standard library imports
import sys
# Third party imports
from qtpy import QtCore, QtWidgets
# Local imports
import qtawesome as qta
class AwesomeExample(QtWidgets.QDialog):
def __init__(self):
super().__init__()
# Label for supported fonts
supported_fonts_label = QtWidgets.QLabel('Supported fonts (prefix)')
supported_fonts_label.setAlignment(QtCore.Qt.AlignCenter)
# Get FontAwesome 5.x icons by name in various styles by name
fa5_icon = qta.icon('fa5.flag')
fa5_button = QtWidgets.QPushButton(fa5_icon, 'Font Awesome regular (fa5)')
fa5s_icon = qta.icon('fa5s.flag')
fa5s_button = QtWidgets.QPushButton(fa5s_icon, 'Font Awesome solid (fa5s)')
fa5b_icon = qta.icon('fa5b.github')
fa5b_button = QtWidgets.QPushButton(fa5b_icon, 'Font Awesome brands (fa5b)')
# Get Elusive icons by name
asl_icon = qta.icon('ei.asl')
elusive_button = QtWidgets.QPushButton(asl_icon, 'Elusive Icons (ei)')
# Get Material Design icons by name
apn_icon = qta.icon('mdi6.access-point-network')
mdi6_button = QtWidgets.QPushButton(apn_icon, 'Material Design (mdi, mdi6)')
# Get Phosphor by name
mic_icon = qta.icon('ph.microphone-fill')
ph_button = QtWidgets.QPushButton(mic_icon, 'Phosphor Icons (ph)')
# Get Remix Icon by name
truck_icon = qta.icon('ri.truck-fill')
ri_button = QtWidgets.QPushButton(truck_icon, 'Remix Icons (ri)')
# Get Microsoft's Codicons by name
squirrel_icon = qta.icon('msc.squirrel')
msc_button = QtWidgets.QPushButton(squirrel_icon, 'Codicons (msc)')
# Label for style options and animations
styles_label = QtWidgets.QLabel('Styles')
styles_label.setAlignment(QtCore.Qt.AlignCenter)
# Rotated
rot_icon = qta.icon('mdi.access-point-network', rotated=45)
rot_button = QtWidgets.QPushButton(rot_icon, 'Rotated Icons')
# Horizontal flip
hflip_icon = qta.icon('mdi.account-alert', hflip=True)
hflip_button = QtWidgets.QPushButton(hflip_icon, 'Horizontally Flipped Icons')
# Vertical flip
vflip_icon = qta.icon('mdi.account-alert', vflip=True)
vflip_button = QtWidgets.QPushButton(vflip_icon, 'Vertically Flipped Icons')
# Styling
styling_icon = qta.icon('fa5s.music',
active='fa5s.balance-scale',
color='blue',
color_active='orange')
music_button = QtWidgets.QPushButton(styling_icon, 'Changing colors')
# Setting an alpha of 165 to the color of this icon. Alpha must be a number
# between 0 and 255.
icon_with_alpha = qta.icon('mdi.heart', color=('red', 120))
heart_button = QtWidgets.QPushButton(icon_with_alpha, 'Setting alpha')
# Toggle
toggle_icon = qta.icon('fa5s.home', selected='fa5s.balance-scale',
color_off='black',
color_off_active='blue',
color_on='orange',
color_on_active='yellow')
toggle_button = QtWidgets.QPushButton(toggle_icon, 'Toggle')
toggle_button.setCheckable(True)
iconwidget = qta.IconWidget()
spin_icon = qta.icon('mdi.loading', color='red',
animation=qta.Spin(iconwidget))
iconwidget.setIcon(spin_icon)
iconwidget.setIconSize(QtCore.QSize(32, 32))
iconwidgetholder = QtWidgets.QWidget()
lo = QtWidgets.QHBoxLayout()
lo.addWidget(iconwidget)
lo.addWidget(QtWidgets.QLabel('IconWidget'))
iconwidgetholder.setLayout(lo)
iconwidget2 = qta.IconWidget('mdi.web', color='blue')
# Stack icons
camera_ban = qta.icon('fa5s.camera', 'fa5s.ban',
options=[{'scale_factor': 0.5,
'active': 'fa5s.balance-scale'},
{'color': 'red', 'opacity': 0.7}])
stack_button = QtWidgets.QPushButton(camera_ban, 'Stack')
stack_button.setIconSize(QtCore.QSize(32, 32))
# Stack and offset icons
saveall = qta.icon('fa5.save', 'fa5.save',
options=[{'scale_factor': 0.8,
'offset': (0.2, 0.2),
'color': 'gray'},
{'scale_factor': 0.8}])
saveall_button = QtWidgets.QPushButton(saveall, 'Stack, offset')
# Spin icons
spin_button = QtWidgets.QPushButton(' Spinning icon')
spin_icon = qta.icon('fa5s.spinner', color='red',
animation=qta.Spin(spin_button))
spin_button.setIcon(spin_icon)
# Pulse icons
pulse_button = QtWidgets.QPushButton(' Pulsing icon')
pulse_icon = qta.icon('fa5s.spinner', color='green',
animation=qta.Pulse(pulse_button))
pulse_button.setIcon(pulse_icon)
# Stacked spin icons
stack_spin_button = QtWidgets.QPushButton('Stack spin')
options = [{'scale_factor': 0.4,
'animation': qta.Spin(stack_spin_button)},
{'color': 'blue'}]
stack_spin_icon = qta.icon('ei.asl', 'fa5.square',
options=options)
stack_spin_button.setIcon(stack_spin_icon)
stack_spin_button.setIconSize(QtCore.QSize(32, 32))
# Render a label with this font
label = QtWidgets.QLabel(chr(0xf19c) + ' ' + 'Label')
label.setFont(qta.font('fa', 16))
# Layout
grid = QtWidgets.QGridLayout()
fonts_widgets = [
supported_fonts_label,
fa5_button,
fa5s_button,
fa5b_button,
elusive_button,
mdi6_button,
ph_button,
ri_button,
msc_button,
]
styled_widgets = [
styles_label,
music_button,
heart_button,
rot_button,
hflip_button,
vflip_button,
toggle_button
]
animated_widgets = [
spin_button,
pulse_button,
stack_button,
saveall_button,
stack_spin_button,
]
other_widgets = [
label,
iconwidgetholder,
iconwidget2
]
for idx, w in enumerate(fonts_widgets):
grid.addWidget(w, idx, 0)
for idx, w in enumerate(styled_widgets):
grid.addWidget(w, idx, 1)
for idx, w in enumerate(animated_widgets):
grid.addWidget(w, idx + len(styled_widgets), 1)
for idx, w in enumerate(other_widgets):
grid.addWidget(w, idx + len(styled_widgets) + len(animated_widgets), 1)
self.setLayout(grid)
self.setWindowTitle('Awesome')
self.setMinimumWidth(520)
self.show()
def main():
app = QtWidgets.QApplication(sys.argv)
# Enable High DPI display with PyQt5
if hasattr(QtCore.Qt, 'AA_UseHighDpiPixmaps'):
app.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps)
QtCore.QTimer.singleShot(10000, app.exit)
_ = AwesomeExample()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
python-qtawesome-1.1.1/qtawesome-browser.png 0000664 0000000 0000000 00000200454 14156141701 0021237 0 ustar 00root root 0000000 0000000 PNG
IHDR /W+ sRGB gAMA a pHYs od IDATx^YԞy? ]`dLk7c0mZƀi9@=yqqSq12GEU=oISҔ^KS\OY]'2,
ffffffL333333AE ̢qiffffff8433333hdY4?O'Q?4̬}ϩ{PXg$8$/<{[.|.:(/r<dd8oڴ)Yv!_ȟIucPHdt˖-ɚ5kl
|R>Sf.?x(rL3333UTw@$7|MALUlCb,943333_Euy
7tM l~u4ܜ8{fA*6ܕ}!~:K|ּƂ?YzTN,҉O~~>)*0wg0({m۶,`lffPjl:43뫢v,;~Rlt>V4;ƾc)\Q9pcAR&d3vt21LL3~X&3o1AY_K[nFQyBb:YM6%VZn륓ɨdZ~8`lff l*:d}d3qRYR,
m>&VU;\̴.Kߝ 3L3~pif6LEuAR̳(v(d_wTcAƍ믿>c@qòc_ly'`lffhZ 8yd[Q]~2>پ n;6:ٿa'߾;߷/u^3bzAŮ_߰K3k2Lf33 r16=\N'߀|(ˇKx$Q Z:\0vZ<ScA
?ݻo1w-sLwߛK}ɽ?ȟ
uh_rtsL,[M3yRTX1-~lm_JX=RnO-}?~\ENV Ӗsifoi 9TY5d{u]gS?ESf33ec2iffQTrdmA??}fz:uUPX'+8Ԗ#_B2K!ViY#CBcRAYffffffL333333AE ̢qiffffffـXq\ 3XM66nxކ
R{ysOAMVJ]N]wu]{2Lsiffffff8433333h?xc9433333p*$Sۘu+H˰l(7pC$۷oO}dW}̬d*TfhO?trСĉ_|O]a[ -t%O>|'/Krd͚5r;6\X~#kꫯ&W^y̬dvʕ+/'~ioL>d̚
`R,I.Y.wߕes{n13!i:У2ˠe|ݻӀOUX1p,Z~R
)eZfMLJ~(4_oYgff7 sӦM7aÆԽ{f sΝ2C`o.8FUYv[7M(4k=TY,r̙.i E]43>RUHc]zEvGyDkۍ7(`g}Vkff'MLL[W_}%+!s\8'uf!X?IP}ˠ7ސe0/Yg̬FA'iozᅲ*~䣏>J^{^H2>ovo|w.۰J
ΉsMԩS\qwȴbJUʠVoff2[9!5LutB3ےi}}9WOdT!ZӸWW/(733
[bEoʊFsΥ&ki%pc}oA[%U0˪;m_HUrYLGI>t( ] ORyhC"t}%oV:3~ia=log|
ےi%p~rǢny]cXNΝ!XfU姬Ǐba*{e2}/̂cE?4yGĐk&vJg~g`u MfôAfxGKqL={oU]qer~ipQ妬Çb;e+a*}4Rqp!yŵc
`;
ɾ9nqSY
`fX9Iިl(O̔3b*{e1JߺS~jՑn/
sv0שJ,6&*6sݺu2].*D0C^fwbq{Af
dRHWQfY+Z9G5dV]&U:6<[l<ă,y~iuE}h?o#΅s9[\2+bمgB`!C&G K
̺4?*l&nR˞jpO$?@]k3~Q8Gu
֯_.
%ZR3VSOyI4lXPܹSqy:ۧJǬ
<O8!裏>rk5o/{9l̒h(&:~~_&yV%Z |Zg]*Q4mod[*[o%?p|Sۅ
([Uƻu0gkcy~7Af OvSt1d~ȓ^yKmAqa|! (2cQi5vUCx(Bu,ϥǵPȐ'r(>8FZU#o9y7*!֬Y#4k?.az4ةSdZN<){EC