Copyright 2023 Yaroshenko Dmytro (https://github.com/o-murphy)
The extension for QtAwesome with the latest variable icon fonts for Material Symbols
Note
Fonts in this package automatically updated, so it will always have the latest icons from Google
Note
The package is publishing to PyPi automatically, so it can have issues in some releases
Note
The package uses QtAwesome as it's backend, so it support all the feature provided by QtAwesome, for more see the docs
Install the [latest release][releases] from PyPi using:
pip install QtMDi
Install the latest updated version from github:
pip install https://github.com/o-murphy/QtMDi
QtAwesome identifies icons by their prefix and their icon name, separated by a period (.) character.
The following prefixes are currently available to use:
mds
prefix has Google material design icons symbols stylemdf
prefix has Google material design icons variablefont style
import qtawesome
import qtmdi
# basic rounded
qtawesome.icon("mds-rounded-base.home")
# rounded with 700 width
qtawesome.icon("mds-rounded-700.home")
# rounded with 400 width
qtawesome.icon("mds-sharp-400.home")
# basic variablefont ttf based icon
qtawesome.icon("mdf-sharp.home")
from qtpy import QtWidgets
class Example(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
self.lt = QtWidgets.QVBoxLayout(self)
self.btn = QtWidgets.QToolButton(self)
self.btn.setIcon(
qtawesome.icon("mdi-rounded-700.home_filled"),
)
self.btn.setFixedSize(48, 48)
self.btn.setIconSize(32, 32)
self.lt.addWidget(self.btn)
import sys
from qtpy import QtWidgets
import qtawesome
import qtmdi
# Create an app
class Example(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
self.lt = QtWidgets.QVBoxLayout(self)
self.btn = QtWidgets.QToolButton(self)
self.btn.setIcon(
qtawesome.icon("mds-rounded-700.home"),
)
self.btn.setFixedSize(48, 48)
self.btn.setIconSize(32, 32)
self.lt.addWidget(self.btn)
def run():
app = QtWidgets.QApplication()
# Load extension on your app instance
qtmdi.load(app)
qtawesome.dark(app)
w = Example()
w.show()
sys.exit(app.exec_())
if __name__ == '__main__':
run()
To see available icons run qtmdi-browser in your terminal
qtmdi-browser
- Filled icons not shown as expected
Grade
property currently unsupportedOptical size
property currently unsupported
- MIT License. Copyright 2023 Yaroshenko Dmytro (https://github.com/o-murphy) See the LICENSE file for details.
-
The Google material design icons fonts is licensed under the Apache License Version 2.0.
-
The material-symbols package is licensed under the Apache License Version 2.0.
-
The QtAwesome licensed under the MIT License. Copyright 2015 - The Spyder development team. See the LICENSE file for details.
-
The Font Awesome and Elusive Icons fonts are licensed under the SIL Open Font License.
-
The Phosphor font is licensed under the MIT License.
-
The Material Design Icons font is licensed under the Apache License Version 2.0.
-
The Remix Icon font is licensed under the Apache License Version 2.0.
-
Microsoft's Codicons are licensed under a Creative Commons Attribution 4.0 International Public License.