{ "info": { "author": "Brett Lambright", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: X11 Applications :: Qt", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5" ], "description": "*********\nqstylizer\n*********\n\n.. image:: https://www.travis-ci.org/blambright/qstylizer.svg?branch=master\n :target: https://www.travis-ci.org/blambright/qstylizer\n\n.. image:: https://readthedocs.org/projects/qstylizer/badge/?version=latest\n :target: http://qstylizer.readthedocs.io/en/latest/?badge=latest\n\n------------\nInstallation\n------------\n\n.. code-block:: bash\n\n pip install qstylizer\n\n-------------\nDocumentation\n-------------\n\n`Read the Docs `_.\n\n------------\nIntroduction\n------------\n\n*qstylizer* is a python package designed to help with the construction of\nPyQt/PySide stylesheets.\n\n.. code-block:: python\n\n import PyQt5.QtWidgets\n\n import qstylizer.style\n\n css = qstylizer.style.StyleSheet()\n css.setValues(\n backgroundColor=\"green\",\n color=\"#F0F0F0\",\n marginLeft=\"2px\"\n )\n css.QToolButton.setValues(\n border=\"1px transparent lightblue\",\n borderRadius=\"3px\",\n margin=\"1px\",\n padding=\"3px\"\n )\n css.QToolButton.menuButton.pressed.setValues(\n border=\"1px solid #333333\",\n padding=\"5px\",\n backgroundColor=\"#333333\"\n )\n # The following is also valid and is equivalent to the statement above.\n css[\"QToolButton::menu-button:pressed\"].setValues(**{\n \"border\": \"1px solid #333333\",\n \"padding\": \"5px\",\n \"background-color\": \"#333333\",\n })\n\n css.QCheckBox.disabled.backgroundColor.setValue(\"#797979\")\n\n widget = PyQt5.QtWidgets.QWidget()\n widget.setStyleSheet(css.toString())\n\nThe stylesheet generated above looks like this when passed to setStyleSheet()::\n\n * {\n color: #F0F0F0;\n margin-left: 2px;\n background-color: green;\n }\n QToolButton {\n border-radius: 3px;\n padding: 3px;\n border: 1px transparent lightblue;\n margin: 1px;\n }\n QToolButton::menu-button:pressed {\n padding: 5px;\n border: 1px solid #333333;\n background-color: #333333;\n }\n QCheckBox:disabled {\n background-color: #797979;\n }\n\nThe true power comes from parsing an existing stylesheet and tweaking individual\nproperty values.\n\n.. code-block:: python\n\n import qstylizer.parser\n\n css = qstylizer.parser.parse(\n \"\"\"\n QToolButton::menu-button:pressed {\n padding: 5px;\n border: 1px solid #333333;\n background-color: #333333;\n }\n QCheckBox:disabled {\n background-color: #797979;\n }\n \"\"\"\n )\n css.QToolButton.menuButton.pressed.padding.setValue(\"10px\")\n css.QCheckBox.disabled.backgroundColor.setValue(\"#222222\")\n\n print(css.toString())\n\nOutput::\n\n QToolButton::menu-button:pressed {\n padding: 10px;\n border: 1px solid #333333;\n background-color: #333333;\n }\n QCheckBox:disabled {\n background-color: #222222;\n }\n\n-------\nLicense\n-------\n\nMIT License\n\nCopyright (c) 2018 Brett Lambright\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/blambright/qstylizer", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "qstylizer", "package_url": "https://pypi.org/project/qstylizer/", "platform": "", "project_url": "https://pypi.org/project/qstylizer/", "project_urls": { "Homepage": "https://github.com/blambright/qstylizer" }, "release_url": "https://pypi.org/project/qstylizer/0.1.5/", "requires_dist": [ "tinycss (<1,>=0.4)", "inflection (<1,>0.3.0)", "sphinx (<2,>=1.2.2) ; extra == 'doc'", "sphinx-rtd-theme (<1,>=0.1.6) ; extra == 'doc'", "sphinxcontrib-autoprogram (!=0.1.3,<1,>=0.1.2) ; extra == 'doc'", "pytest-runner (<3,>=2.7) ; extra == 'test'", "pytest (<4,>=3.2) ; extra == 'test'", "pytest-mock (<2,>=1.6) ; extra == 'test'", "pytest-catchlog (<2,>=1) ; extra == 'test'", "pytest-xdist (<2,>=1.1) ; extra == 'test'", "pytest-cov (<3,>=2) ; extra == 'test'", "tox (<3,>=2.9.0) ; extra == 'test'" ], "requires_python": "", "summary": "Stylesheet Generator for PyQt{4-5}/PySide{1-2}", "version": "0.1.5" }, "last_serial": 5828700, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "12303f2ee7739e20c52844cadd450928", "sha256": "d20dc85b08ac72bed1aaf2afb0c876b524f5079c14eefc4330d3236259a4d97f" }, "downloads": -1, "filename": "qstylizer-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "12303f2ee7739e20c52844cadd450928", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16417, "upload_time": "2018-01-07T23:29:35", "url": "https://files.pythonhosted.org/packages/31/88/8be70af229f9cfe265e8f016da61b80eff7949e49f8a90903c4f9057a7af/qstylizer-0.1.0-py2.py3-none-any.whl" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "11b7db6bcf37b0539767fdded7ef155a", "sha256": "fcf918bfe33e7386c59b97c33ffeb7244c90cffcbb849f35c74e9a1fc26dfb6d" }, "downloads": -1, "filename": "qstylizer-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "11b7db6bcf37b0539767fdded7ef155a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16490, "upload_time": "2018-01-08T02:06:49", "url": "https://files.pythonhosted.org/packages/ce/f5/331ad330e0258660bfdb6be305c96b5b23a835296994aa4d3373f46da16a/qstylizer-0.1.1-py2.py3-none-any.whl" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "b1da3620842d8600ff39aa71586bddd4", "sha256": "f1d9c04983e5596e5b300dc8f3d3d4bb35b43579aea16ed2e7474d9e71e98e92" }, "downloads": -1, "filename": "qstylizer-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b1da3620842d8600ff39aa71586bddd4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16622, "upload_time": "2018-01-10T06:18:51", "url": "https://files.pythonhosted.org/packages/b7/9e/dab97df99e8443dbfcfa27f1b1382b09e436738c3eda77a653154de92330/qstylizer-0.1.2-py2.py3-none-any.whl" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "b88d51feb35a196d86954eecc6603363", "sha256": "34cad40875c6eda0da6783b2411a8e1e0ceb5a2563dd912aaef4a56c3ad418a9" }, "downloads": -1, "filename": "qstylizer-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b88d51feb35a196d86954eecc6603363", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16933, "upload_time": "2018-01-30T06:33:21", "url": "https://files.pythonhosted.org/packages/65/e1/bb05f108fc4300444c26096feed123bfd08d9f4710a56e814abc4d6750b5/qstylizer-0.1.3-py2.py3-none-any.whl" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "7fb3cea66ef6f9c6abbd31cff5853dbd", "sha256": "a87c244007700b24fee73db21a786eaa9c6dee12b0baa6bf1cb07d1511a60264" }, "downloads": -1, "filename": "qstylizer-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7fb3cea66ef6f9c6abbd31cff5853dbd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 16938, "upload_time": "2018-05-11T04:10:55", "url": "https://files.pythonhosted.org/packages/4b/92/2a2495c164ecc52830249bd4f0a702eff8aa0759ae4ed6bc6f4aa19dd6ab/qstylizer-0.1.4-py2.py3-none-any.whl" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "556e92c60e3fad6fccf148ad264469bc", "sha256": "a7f428239f468b5ba6d0b1b28b690027863c719bdcb7bd350709b859211eb1fb" }, "downloads": -1, "filename": "qstylizer-0.1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "556e92c60e3fad6fccf148ad264469bc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15321, "upload_time": "2019-09-14T06:52:31", "url": "https://files.pythonhosted.org/packages/de/bc/ca16d8b0975e6772bd681c493f4aacb0c932e760dcc5a7126874ce1ec53c/qstylizer-0.1.5-py2.py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "556e92c60e3fad6fccf148ad264469bc", "sha256": "a7f428239f468b5ba6d0b1b28b690027863c719bdcb7bd350709b859211eb1fb" }, "downloads": -1, "filename": "qstylizer-0.1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "556e92c60e3fad6fccf148ad264469bc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15321, "upload_time": "2019-09-14T06:52:31", "url": "https://files.pythonhosted.org/packages/de/bc/ca16d8b0975e6772bd681c493f4aacb0c932e760dcc5a7126874ce1ec53c/qstylizer-0.1.5-py2.py3-none-any.whl" } ] }