{"id":21897079,"url":"https://github.com/githubuser0xffff/qt-advanced-stylesheets","last_synced_at":"2025-04-13T07:50:19.197Z","repository":{"id":37755769,"uuid":"437798550","full_name":"githubuser0xFFFF/Qt-Advanced-Stylesheets","owner":"githubuser0xFFFF","description":"Advanced Stylesheets with Theming Support for Qt","archived":false,"fork":false,"pushed_at":"2024-08-05T03:21:06.000Z","size":18603,"stargazers_count":622,"open_issues_count":5,"forks_count":151,"subscribers_count":21,"default_branch":"main","last_synced_at":"2025-04-04T05:41:56.615Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/githubuser0xFFFF.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-12-13T08:48:30.000Z","updated_at":"2025-04-02T07:49:53.000Z","dependencies_parsed_at":"2024-12-25T23:05:34.112Z","dependency_job_id":"05d2f4ba-12e8-41d1-b201-06ee53ae8074","html_url":"https://github.com/githubuser0xFFFF/Qt-Advanced-Stylesheets","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/githubuser0xFFFF%2FQt-Advanced-Stylesheets","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/githubuser0xFFFF%2FQt-Advanced-Stylesheets/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/githubuser0xFFFF%2FQt-Advanced-Stylesheets/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/githubuser0xFFFF%2FQt-Advanced-Stylesheets/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/githubuser0xFFFF","download_url":"https://codeload.github.com/githubuser0xFFFF/Qt-Advanced-Stylesheets/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248681494,"owners_count":21144700,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-28T14:16:07.716Z","updated_at":"2025-04-13T07:50:19.172Z","avatar_url":"https://github.com/githubuser0xFFFF.png","language":"C++","readme":"![ukraine](doc/ukraine.jpg)\n\n![logo](doc/ass_logo.svg)\n\n------------------\n\nAdvanced Stylesheets with Theming Support for Qt.\n\n- [![Build status](https://github.com/githubuser0xFFFF/Qt-Advanced-Stylesheets/workflows/linux-builds/badge.svg)](https://github.com/githubuser0xFFFF/Qt-Advanced-Stylesheets/actions?query=workflow%3Alinux-builds)\n- [![License: LGPL v2.1](https://img.shields.io/badge/License-LGPL%20v2.1-blue.svg)](gnu-lgpl-v2.1.md)\n- Original Repository: https://github.com/githubuser0xFFFF/Qt-Advanced-Stylesheets\n- [What's new](https://github.com/githubuser0xFFFF/Qt-Advanced-Stylesheets/releases/latest)\n- [Documentation](doc/user-guide.md)\n\nThe library allows runtime color switching for CSS stylesheet themes including\nSVG resources and SVG icons. The image below shows switching of accent color\nand switching between dark and light theme. Notice how the icons in the left \nsidebar change color when switching between dark and light theme.\n\n![color_switching](doc/CETONI_Elements_Styling.gif)\n\nThe main features are:\n\n- runtime switching of CSS colors\n- runtime color switching of CSS SVG icons / resources\n- runtime color switching of icons loaded via `loadThemeAwareSvgIcon()`\n- runtime switching of QPalette colors\n- definition of CSS styles that switch the complete application design\n- definition of XML color themes that allow switching of theme colors (dark / light)\n- switching of individual theme color or switching of accent color\n- QML support\n\nIf you run the `full_features` example, then you can test the functionality. \nThere are some custom dark themes:\n\n![dark](doc/qt_material_dark.gif)\n\nAnd light:\n\n![light](doc/qt_material_light.gif)\n\nThe library allows you to create stylesheets that contain variables that are\nreplaced at runtime like in this example:\n\n```css\nQComboBox:disabled {\n  color: {{primaryColor|opacity(0.2)}};\n  background-color: {{secondaryColor|opacity(0.75)}};\n  border-bottom: 2px solid {{primaryColor|opacity(0.2)}};\n}\n\nQComboBox::drop-down {\n  border: none;\n  color: {{primaryColor}};\n  width: 20px;\n}\n```\n\n## Navigation\n\n- [Navigation](#navigation)\n- [Features](#features)\n  - [Theme-aware Icons](#theme-aware-icons)\n- [Build](#build)\n- [Getting started](#getting-started)\n- [Run examples](#run-examples)\n- [Future Plans](#future-plans)\n- [License information](#license-information)\n- [Credits](#credits)\n- [Donation](#donation)\n- [Showcase](#showcase)\n  - [CETONI Elements](#cetoni-elements)\n\n## Features\n\n### Theme-aware Icons\n\nThe library supports loading of theme-aware SVG icons.\n\n```cpp\nAdvancedStylesheet.loadThemeAwareSvgIcon(\":/app/images/progress.svg\");\n```\n\nThis allows runtime color switching of application icons like in the\ntoolbar below.\n\n![Theme Aware Icon](doc/theme_aware_icons.gif)\n\n## Build\n\nOpen the `acss.pro` file with QtCreator and start the build, that's it.\nYou can run the example projects and test it yourself.\n\n## Getting started\n\nHave look into the file `CMainWindow` in the full_features example to learn\nho to use the `CStyleManager`. Here are the basic steps to add the style\nmanager to your application:\n\n```cpp\nQString AppDir = qApp-\u003eapplicationDirPath();\nQtAdvancedStylesheet AdvancedStylesheet;\n\n// first set the directory that contains all your styles\nAdvancedStylesheet.setStylesDirPath(AppDir + \"/../../styles\");\n\n// now set the output folder where the processed styles are stored. The\n// style manager will create a sub directory for each style\nAdvancedStylesheet.setOutputDirPath(AppDir + \"/output\");\n\n// set the current style and select a theme. After these two calls, the output\n// folder will contains the generated resoruces and stylesheet.\nAdvancedStylesheet.setCurrentStyle(\"qt_material\");\nAdvancedStylesheet.setCurrentTheme(\"dark_teal\");\n\n// now you can set the generated stylesheet\nqApp-\u003esetStyleSheet(StyleManager.styleSheet());\n```\n\n## Run examples\n\nThe `full_features` example shows a window with almost all widgets to test all \nthemes and create new ones.\n\n![theme](doc/theme.gif)\n\n## Future Plans\n\nThe idea is to merge my [QtFluentDesign](https://github.com/githubuser0xFFFF/QtFluentDesign) project into this project to create a nice Windows 11 style that can dynamically\nadapt to the Windows accent color and to the Window dark and light theme.\n\n![light](doc/qt_fluent.png)\n\n## License information\n\n[![License: LGPL v2.1](https://img.shields.io/badge/License-LGPL%20v2.1-blue.svg)](gnu-lgpl-v2.1.md)\nThis project uses the [LGPLv2.1 license](gnu-lgpl-v2.1.md) for the source code.\nThe stylesheets use individual licenses which are located in the directory of\nthe corresponding style.\n\n## Credits\n\n- Uwe Kindler, Project Maintainer\n- [GCPDS](https://github.com/UN-GCPDS) - Grupo de control y procesamiento digital de señales\n\nThe project is strongly inspired by the great [Qt-material](https://github.com/UN-GCPDS/qt-material) project from [GCPDS](https://github.com/UN-GCPDS) and uses the qt-material stylesheet from this project.\n\n## Donation\n\nIf this project help you reduce time to develop or if you just like it, you can give me a cup of coffee :coffee::wink:.\n\n\u003ca href=\"https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=85R64TMMSY9T6\"\u003e\n  \u003cimg src=\"doc/donate.png\" alt=\"Donate with PayPal\" width=\"160\"/\u003e\n\u003c/a\u003e\n\n## Showcase\n\n### [CETONI Elements](https://cetoni.com/cetoni-elements/)\n\nThe [CETONI Elements](https://youtu.be/xWTpCwCz8dI) software from\n[CETONI](https://www.cetoni.com) is a comprehensive,\nplugin-based and modular laboratory automation software for controlling CETONI devices using a joint graphical user interface. The software features a powerful script system to automate processes.\n\nCETONI Elements Dark Theme\n![CETONI_Elements Dark](doc/CETONI_Elements_Dark.png)\n\nCETONI Elements Light Theme\n![CETONI_Elements Light](doc/CETONI_Elements_Light.png)","funding_links":["https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=85R64TMMSY9T6"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgithubuser0xffff%2Fqt-advanced-stylesheets","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgithubuser0xffff%2Fqt-advanced-stylesheets","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgithubuser0xffff%2Fqt-advanced-stylesheets/lists"}