A collection Material Components to build faster UI using Qml.
Warning : If you intend to use Qaterial in your project, you should use a stable version (v1.3) or create your own fork. I'm using this library for my own projects, and I will introduce breaking change if needed. This library isn't meant for LTS. Use at your own risk.
Feel free to pull request.
- Checkout Qaterial Gallery for example of most components.
- Getting Start Guide.
- Try it live with Qaterial Online (and checkout examples).
Some history. I started this library as a way to learn qml and how controls work. I made some api mistake so i'm fixing them here and there as time go. There will be breaking change.
My goal is to move to more standard API relying more only on QtQuickControls default property. I think i made the mistake to introduce some property in type that doesn't need to be there. Here are some idea where i'm going:
- Move to Material 2018 text type. (Deprecate Material 2014 text type)
- Deprecate
textTypeto only usefontthat is present in every controls. (Already in master) Now you can useLabel.Headline6for example where you usedtextType: Qaterial.Style.TextType.Title. Orfont: Qaterial.Style.textTheme.headline6. - Deprecate
onPrimary,colorReverse, etc... that are everywhere - Introduce a
ColorThemefor base color of every controls. - Use
paletteintroduced in Qt 5.13 as the way to change colors to every controls. This will deprecateforegroundColor,backgroundColor, etc ... in many controls. - Use attached properties for custom properties (ie elevation) as qt recommend in documentation.
-
TextFieldwill become a simple control without decorator meant to be the base of more customizable controls. You should move toTextFieldFilledorTextFieldOutlinedorTextField2014to have decorator (icon, suffix, prefix, etc...) (TextField2014 is already available as it is TextField). Maybe introduce aTextFieldDecoratedwithout any background. Also maybe useplaceholderTextinstead oftitle. Since title is used as placeholder from my experience. - ColorPicker (i think it will be multiple variant and building block since everyone wants a different color picker).
- Deprecate some components llike
DoublePagethat are too much specialized and are not controls. - Change name of
FabButtontoFloatingActionButton. - Clean the mess of
RawMaterialButton. - Base
TextAreaonT.TextAreaand notItem. - More example in general.
- Deprecate TabBar specialization that are too much specialized that i end up never using them. They would better fit as example.
- Deprecate
RoundColorIconthat is too complicated to use (and maintain) - Refactor
RoundImageto useClipRRect.
- AppBar (today only called ToolBar)
- Avatar
- Badge
- Backdrop
- Breadcrumb
- Chips
- Navigation rail
- Bottom sheets
- SearchBar
- QOlm
Qt::Core,Qt::Gui,Qt::Qml,Qt::Quick,Qt::QuickControls2,Qt::Svg,Qt::Xml- googlefonts
- MaterialDesignIcons