{ "info": { "author": "Gregor Giesen", "author_email": "giesen@zaehlwerk.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Zope3", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License (GPL)", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP :: WSGI :: Application" ], "description": "===================\n Zaehlwerk Widgets\n===================\n\nSome widgets for the z3c.form framework.\n\n- Color widget\n- Email widget\n- Lines widget\n- TinyMCE widget \n\n\n===========\nColorWidget\n===========\n\nThe widget can render an input field with color preview::\n\n >>> from zope.interface.verify import verifyClass\n >>> from z3c.form.interfaces import IWidget\n >>> from zw.widget.color.widget import ColorWidget\n\nThe ColorWidget is a widget::\n\n >>> verifyClass(IWidget, ColorWidget)\n True\n\nThe widget can render a input field only by adapting a request::\n\n >>> from z3c.form.testing import TestRequest\n >>> request = TestRequest()\n >>> widget = ColorWidget(request)\n\nSuch a field provides IWidget::\n\n >>> IWidget.providedBy(widget)\n True\n\nWe also need to register the template for at least the widget and\nrequest::\n\n >>> import os.path\n >>> import zope.interface\n >>> from zope.publisher.interfaces.browser import IDefaultBrowserLayer\n >>> from zope.pagetemplate.interfaces import IPageTemplate\n >>> import zw.widget.color\n >>> import z3c.form.widget\n >>> template = os.path.join(os.path.dirname(zw.widget.color.__file__),\n ... 'color_input.pt')\n >>> factory = z3c.form.widget.WidgetTemplateFactory(template)\n >>> zope.component.provideAdapter(factory, \n ... (zope.interface.Interface, IDefaultBrowserLayer, None, None, None),\n ...\t IPageTemplate, name='input')\n \nIf we render the widget we get the HTML::\n\n >>> print widget.render()\n \n\nAdding some more attributes to the widget will make it display more::\n\n >>> widget.id = 'id'\n >>> widget.name = 'name'\n >>> widget.value = u'value'\n \n >>> print widget.render()\n \n \n \n\n\n\n===========\nEmailWidget\n===========\n\nThe widget can render an ordinary input field::\n\n >>> from zope.interface.verify import verifyClass\n >>> from z3c.form.interfaces import IWidget, INPUT_MODE, DISPLAY_MODE\n >>> from zw.widget.email.widget import EmailWidget\n\nThe EmailWidget is a widget::\n\n >>> verifyClass(IWidget, EmailWidget)\n True\n\nThe widget can render a input field only by adapting a request::\n\n >>> from z3c.form.testing import TestRequest\n >>> request = TestRequest()\n >>> widget = EmailWidget(request)\n\nSuch a field provides IWidget::\n\n >>> IWidget.providedBy(widget)\n True\n\nWe also need to register the template for at least the widget and\nrequest::\n\n >>> import os.path\n >>> import zope.interface\n >>> from zope.publisher.interfaces.browser import IDefaultBrowserLayer\n >>> from zope.pagetemplate.interfaces import IPageTemplate\n >>> import zw.widget.email\n >>> import z3c.form.widget\n >>> template = os.path.join(os.path.dirname(zw.widget.email.__file__),\n ... 'email_input.pt')\n >>> factory = z3c.form.widget.WidgetTemplateFactory(template)\n >>> zope.component.provideAdapter(factory, \n ... (zope.interface.Interface, IDefaultBrowserLayer, None, None, None),\n ...\t IPageTemplate, name='input')\n \nIf we render the widget we get the HTML::\n\n >>> print widget.render()\n \n\nAdding some more attributes to the widget will make it display more::\n\n >>> widget.id = 'id'\n >>> widget.name = 'name'\n >>> widget.value = u'name@domain.tld'\n \n >>> print widget.render()\n \n\nMore interesting is to the display view::\n\n >>> widget.mode = DISPLAY_MODE\n >>> template = os.path.join(os.path.dirname(zw.widget.email.__file__),\n ... 'email_display.pt')\n >>> factory = z3c.form.widget.WidgetTemplateFactory(template)\n >>> zope.component.provideAdapter(factory,\n ... (zope.interface.Interface, IDefaultBrowserLayer, None, None, None),\n ... IPageTemplate, name='display')\n >>> print widget.render()\n \n \n name@domain.tld\n \n \n \nBut if we are not authenticated it should be obscured:\n\n >>> widget.obscured = True\n >>> print widget.render()\n \n name@domain.tld\n \n\n\n\n===========\nLinesWidget\n===========\n\nThe widget can render a HTML text input field, which collects list\nitems by line.\n\n >>> from zope.interface.verify import verifyClass\n >>> from z3c.form.interfaces import IWidget\n >>> from zw.widget.lines.widget import LinesWidget\n\nThe LinesWidget is a widget:\n\n >>> verifyClass(IWidget, LinesWidget)\n True\n\nThe widget can render a textarea field only by adapteing a request:\n\n >>> from z3c.form.testing import TestRequest\n >>> request = TestRequest()\n >>> widget = LinesWidget(request)\n\nSuch a field provides IWidget:\n\n >>> IWidget.providedBy(widget)\n True\n\nWe also need to register the template for at least the widget and\nrequest:\n\n >>> import os.path\n >>> import zope.interface\n >>> from zope.publisher.interfaces.browser import IDefaultBrowserLayer\n >>> from zope.pagetemplate.interfaces import IPageTemplate\n >>> import zw.widget.lines\n >>> import z3c.form.widget\n >>> template = os.path.join(os.path.dirname(zw.widget.lines.__file__),\n ... 'lines_input.pt')\n >>> factory = z3c.form.widget.WidgetTemplateFactory(template)\n >>> zope.component.provideAdapter(factory, \n ... (zope.interface.Interface, IDefaultBrowserLayer, None, None, None),\n ...\t IPageTemplate, name='input')\n \nIf we render the widget we get the HTML:\n\n >>> print widget.render()\n \n\nAdding some more attributes to the widget will make it display more:\n\n >>> widget.id = 'id'\n >>> widget.name = 'name'\n >>> widget.value = u'value'\n \n >>> print widget.render()\n \n\n\n\n==========\nTinyWidget\n==========\n\nThe widget can render a HTML text input field based on the TinyMCE\nJavaScript Content Editor from Moxicode Systems\n\n..http://tinymce.moxiecode.com\n\n >>> from zope.interface.verify import verifyClass\n >>> from zope.app.form.interfaces import IInputWidget\n >>> from z3c.form.interfaces import IWidget\n >>> from zw.widget.tiny.widget import TinyWidget\n\nThe TinyWidget is a widget:\n\n >>> verifyClass(IWidget, TinyWidget)\n True\n\nThe widget can render a textarea field only by adapteing a request:\n\n >>> from z3c.form.testing import TestRequest\n >>> request = TestRequest()\n >>> widget = TinyWidget(request)\n\nSuch a field provides IWidget:\n\n >>> IWidget.providedBy(widget)\n True\n\nWe also need to register the template for at least the widget and\nrequest:\n\n >>> import os.path\n >>> import zope.interface\n >>> from zope.publisher.interfaces.browser import IDefaultBrowserLayer\n >>> from zope.pagetemplate.interfaces import IPageTemplate\n >>> import zw.widget.tiny\n >>> import z3c.form.widget\n >>> template = os.path.join(os.path.dirname(zw.widget.tiny.__file__),\n ... 'tiny_input.pt')\n >>> factory = z3c.form.widget.WidgetTemplateFactory(template)\n >>> zope.component.provideAdapter(factory, \n ... (zope.interface.Interface, IDefaultBrowserLayer, None, None, None),\n ...\t IPageTemplate, name='input')\n \nIf we render the widget we get the HTML:\n\n >>> print widget.render()\n \n\nAdding some more attributes to the widget will make it display more:\n\n >>> widget.id = 'id'\n >>> widget.name = 'name'\n >>> widget.value = u'value'\n \n >>> print widget.render()\n \n\nTODO: Testing for ECMAScript code...\n\n\n.. -*- mode: rst; coding: utf-8; -*-\n\n=======\nCHANGES\n=======\n\nVersion 0.1.6.2 (2009-01-09)\n----------------------------\n\n- Lines: converter should work only on LinesWidget\n\n\nVersion 0.1.6.1 (2008-12-28)\n----------------------------\n\n- packaging problem in setup.py\n\n\nVersion 0.1.6 (2008-12-28)\n--------------------------\n\n- tinyMCE update (3.2.1.1)\n- tinyMCE is not included in the sources but downloaded.\n- z3c.autoinclude dependency removed\n\n\nVersion 0.1.5 (2008-11-18)\n--------------------------\n\n- tinyMCE update (3.2.1)\n\n\nVersion 0.1.4 (2008-06-08)\n--------------------------\n\n- tinyMCE update (3.0.9)\n\n\nVersion 0.1.3 (2008-06-08)\n--------------------------\n\n- tinyMCE bug fix for gecko based browsers\n\n\nVersion 0.1.2 (2008-04-13)\n--------------------------\n\n- email widget for z3c.schema.email added.\n\n\n\nVersion 0.1 (2008-02-17)\n------------------------\n\n- Initial release", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://launchpad.net/zw.widget", "keywords": "zope3", "license": "GPLv3", "maintainer": null, "maintainer_email": null, "name": "zw.widget", "package_url": "https://pypi.org/project/zw.widget/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/zw.widget/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://launchpad.net/zw.widget" }, "release_url": "https://pypi.org/project/zw.widget/0.1.6.2/", "requires_dist": null, "requires_python": null, "summary": "Additional widgets for z3c.form", "version": "0.1.6.2" }, "last_serial": 752431, "releases": { "0.0.2": [ { "comment_text": "", "digests": { "md5": "e556c82bcbb1cd6ebb0a6b1e6a178462", "sha256": "80ac30c28444719670f1c194e1bfdd4f0aadddced16bd8ea783eae3c908e6ddc" }, "downloads": -1, "filename": "zw.widget-0.0.2-py2.4.egg", "has_sig": false, "md5_digest": "e556c82bcbb1cd6ebb0a6b1e6a178462", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 12636, "upload_time": "2008-02-16T12:01:43", "url": "https://files.pythonhosted.org/packages/2f/1f/16e8268c5ae880c996b2cc7d773a23d481f9601750123610bd32d6c9836f/zw.widget-0.0.2-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "8e6ef9d23f77748f3132802620316278", "sha256": "a9ae4fdd80a67ed425f8d3c9a6723a0ceaa624fa1ed8b5ef5af3de055ccd46b2" }, "downloads": -1, "filename": "zw.widget-0.0.2.tar.gz", "has_sig": false, "md5_digest": "8e6ef9d23f77748f3132802620316278", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3296, "upload_time": "2008-02-16T12:01:51", "url": "https://files.pythonhosted.org/packages/d8/96/9c924fb68d1dd90d65dbe9d5c7181d372d62dde4f231f524773fddd2e5e6/zw.widget-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "28b9e742570f358a49f75c67f355055c", "sha256": "9b1f1f5fb1d4cb52d520b3bf66d5046b32db4496b7d310c01cbae7d52ae9be7b" }, "downloads": -1, "filename": "zw.widget-0.0.3-py2.4.egg", "has_sig": false, "md5_digest": "28b9e742570f358a49f75c67f355055c", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 945787, "upload_time": "2008-02-16T19:42:00", "url": "https://files.pythonhosted.org/packages/83/1a/7b25f07cb7021f9d509ba9613b09d84db976d9721e0b8569828e3d52ef54/zw.widget-0.0.3-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "74a580cc1a35ca6908ec4ba6f42d6389", "sha256": "0845e8eb2dffcfb9b1b415f5c0a74309e9ebe8f3906c47902e7c59a157c9f9f6" }, "downloads": -1, "filename": "zw.widget-0.0.3.tar.gz", "has_sig": false, "md5_digest": "74a580cc1a35ca6908ec4ba6f42d6389", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 608240, "upload_time": "2008-02-16T19:41:05", "url": "https://files.pythonhosted.org/packages/a8/2c/a1f8ec944b8918fc0387d18f6dab52bb4fdf103005d0eecf134640d568f7/zw.widget-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "5bb3a30f7460bdd3ad8090c4719f858f", "sha256": "305a8cc257cdcbde6da5e8a769edfe00c46cc5e0c629c22ad6f35c11afc095f5" }, "downloads": -1, "filename": "zw.widget-0.0.4-py2.4.egg", "has_sig": false, "md5_digest": "5bb3a30f7460bdd3ad8090c4719f858f", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 946543, "upload_time": "2008-02-16T20:01:30", "url": "https://files.pythonhosted.org/packages/a4/38/13846a67c63445f78652764b33bc582157abd56ea8ee01b064387b3ed5cc/zw.widget-0.0.4-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "08bd87a6f67358e1ee00c34455cdee84", "sha256": "219b84833357257ab9118fb4bfc21e51f3372275a02314278796ea36a2eb125a" }, "downloads": -1, "filename": "zw.widget-0.0.4.tar.gz", "has_sig": false, "md5_digest": "08bd87a6f67358e1ee00c34455cdee84", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 608428, "upload_time": "2008-02-16T20:00:14", "url": "https://files.pythonhosted.org/packages/0d/c9/bb3b978d0452558a1a352f7d33272aaa3ef3c23a73c4a90e84918315316e/zw.widget-0.0.4.tar.gz" } ], "0.1": [ { "comment_text": "", "digests": { "md5": "4d6d8d8dddcb40a0061dba18a28e39d0", "sha256": "9c1a807c715d9bb24522364309ad9c29d59232b63af759aa7c708f26ab1fa637" }, "downloads": -1, "filename": "zw.widget-0.1-py2.4.egg", "has_sig": false, "md5_digest": "4d6d8d8dddcb40a0061dba18a28e39d0", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 952889, "upload_time": "2008-02-17T20:09:39", "url": "https://files.pythonhosted.org/packages/a8/3e/3778f3dae144300d259bb9c0de051dbf539c6fc45bb42ae45ed2aa785dc5/zw.widget-0.1-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "3a5e6965774f2b78629a1fadc76dd7e7", "sha256": "ce2ddc7b20e1be80acbb82319d26123acd2c9297ea87ca6e1f0109c16aef890a" }, "downloads": -1, "filename": "zw.widget-0.1.tar.gz", "has_sig": false, "md5_digest": "3a5e6965774f2b78629a1fadc76dd7e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 610321, "upload_time": "2008-02-17T20:07:39", "url": "https://files.pythonhosted.org/packages/50/8f/6c467bad8c96c382ce2e52ad9ca92129e03b4d1b2d44e947b81dc7b26a4d/zw.widget-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "dc0f82fd75acb72cf30564b818bd7e9e", "sha256": "222ca1cd960cac9d744c7e2899ef86470f46b28e283868b4b3d33ea765eb37e5" }, "downloads": -1, "filename": "zw.widget-0.1.1.tar.gz", "has_sig": false, "md5_digest": "dc0f82fd75acb72cf30564b818bd7e9e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 611016, "upload_time": "2008-04-04T21:43:25", "url": "https://files.pythonhosted.org/packages/92/43/8d7a45d228d55871fc0804e8d9fc906b229cd8df404c113ee2f9dfe20a7b/zw.widget-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "5c22d78555ebc85a8c675585b3bcfe75", "sha256": "d25474feda9229d5f407da044fc611d44b155b5904a314727f4690734bda8c51" }, "downloads": -1, "filename": "zw.widget-0.1.2.tar.gz", "has_sig": false, "md5_digest": "5c22d78555ebc85a8c675585b3bcfe75", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 608187, "upload_time": "2008-04-13T10:20:26", "url": "https://files.pythonhosted.org/packages/63/ae/91d241e4fff3d307c40962ca4611964376c7d4cc8cc5da92d01c55fd8ec9/zw.widget-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "4578917e2f8b3be4964ff7bcc6fbfd5a", "sha256": "3a11a17f1cdc1ddffaf50eaa51b47fd7c96bd13bf2116201869043f0998007db" }, "downloads": -1, "filename": "zw.widget-0.1.3-py2.4.egg", "has_sig": false, "md5_digest": "4578917e2f8b3be4964ff7bcc6fbfd5a", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 960118, "upload_time": "2008-06-07T22:22:55", "url": "https://files.pythonhosted.org/packages/18/42/5c65e821d621329030e9168f27c256fd32283928e922514f9aca847f21d9/zw.widget-0.1.3-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "5524729d5d487c2b048db46ad5f910f6", "sha256": "5955f6cf7629da4b6c90a7bebb0d3d75cabfeda6aebe5166531f7143dc414c42" }, "downloads": -1, "filename": "zw.widget-0.1.3.tar.gz", "has_sig": false, "md5_digest": "5524729d5d487c2b048db46ad5f910f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 608468, "upload_time": "2008-06-07T22:22:33", "url": "https://files.pythonhosted.org/packages/af/41/f0fc3d6d844917e518b10f70ea329084b1920b5c3429c0bd7fcad59786a0/zw.widget-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "62956dff3997669d006c3e5851eecf74", "sha256": "7b1cab890b27d5881bd56aad56052eee69f102e9537a580b9d504fdc97525c2e" }, "downloads": -1, "filename": "zw.widget-0.1.4-py2.4.egg", "has_sig": false, "md5_digest": "62956dff3997669d006c3e5851eecf74", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 984039, "upload_time": "2008-06-07T22:45:28", "url": "https://files.pythonhosted.org/packages/08/0b/7a7a8a199196f887cfa826b29f0ae1ed0a73fcf45ce69b1c66a004e422c0/zw.widget-0.1.4-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "c2635180f4a98573febfd475fd50075b", "sha256": "4c17c49c3a7706691512c95f442f2ee058f72ec9722cef51c21e5852be68a067" }, "downloads": -1, "filename": "zw.widget-0.1.4.tar.gz", "has_sig": false, "md5_digest": "c2635180f4a98573febfd475fd50075b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 630301, "upload_time": "2008-06-07T22:45:09", "url": "https://files.pythonhosted.org/packages/d2/97/22b6fe2119ebeb5c9eb2cf41f3e2a38a6a81117637f5986eaa733591a035/zw.widget-0.1.4.tar.gz" } ], "0.1.5": [], "0.1.6": [ { "comment_text": "", "digests": { "md5": "f4c7e52f025832c7a6ed51f05b742191", "sha256": "fb5ccf010716ca2092b0c8fa3aca08b5dfe35d847919a93ab3993c2835637dee" }, "downloads": -1, "filename": "zw.widget-0.1.6.tar.gz", "has_sig": false, "md5_digest": "f4c7e52f025832c7a6ed51f05b742191", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25835, "upload_time": "2008-12-28T11:24:51", "url": "https://files.pythonhosted.org/packages/de/00/49a9993d56ad268483a3de0c590e81bdee5ce20589605f6f2aa9d63c4e28/zw.widget-0.1.6.tar.gz" } ], "0.1.6.1": [ { "comment_text": "", "digests": { "md5": "773ee37bcdf03fc988920ed32a4dd4f2", "sha256": "d7796225960bb7aac9eca1474b3b11051a4d6c305cd359b825b79cbdc092a63f" }, "downloads": -1, "filename": "zw.widget-0.1.6.1-py2.4.egg", "has_sig": false, "md5_digest": "773ee37bcdf03fc988920ed32a4dd4f2", "packagetype": "bdist_egg", "python_version": "2.4", "requires_python": null, "size": 1281375, "upload_time": "2008-12-28T12:29:38", "url": "https://files.pythonhosted.org/packages/ac/59/1a517b775318ca520257a4296287bb509414f28900e0a42425f845407f83/zw.widget-0.1.6.1-py2.4.egg" }, { "comment_text": "", "digests": { "md5": "8c8c29bfa31611b76be9bffbe966183a", "sha256": "f397f3c8c31fba442e28ecbd393bf46662973f45cc89cad832e5d7b38f90f94b" }, "downloads": -1, "filename": "zw.widget-0.1.6.1.tar.gz", "has_sig": false, "md5_digest": "8c8c29bfa31611b76be9bffbe966183a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25935, "upload_time": "2008-12-28T12:28:59", "url": "https://files.pythonhosted.org/packages/52/09/6889ac00aab851bac691cc82caeb2c073acc15e980e4c074d2b084f51d23/zw.widget-0.1.6.1.tar.gz" } ], "0.1.6.2": [ { "comment_text": "", "digests": { "md5": "c031acc93ecc9c092cd98f2ed0c1089c", "sha256": "3e549f1a6307953e7a60f2c2623240de46de14099907a2298d7f7f80d45f2c30" }, "downloads": -1, "filename": "zw.widget-0.1.6.2.tar.gz", "has_sig": false, "md5_digest": "c031acc93ecc9c092cd98f2ed0c1089c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25966, "upload_time": "2009-01-09T00:09:20", "url": "https://files.pythonhosted.org/packages/ea/93/b4020b416d50e1b116f2c0f9ffa2fb97242023168c30eb8f3dac05c4be2c/zw.widget-0.1.6.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c031acc93ecc9c092cd98f2ed0c1089c", "sha256": "3e549f1a6307953e7a60f2c2623240de46de14099907a2298d7f7f80d45f2c30" }, "downloads": -1, "filename": "zw.widget-0.1.6.2.tar.gz", "has_sig": false, "md5_digest": "c031acc93ecc9c092cd98f2ed0c1089c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25966, "upload_time": "2009-01-09T00:09:20", "url": "https://files.pythonhosted.org/packages/ea/93/b4020b416d50e1b116f2c0f9ffa2fb97242023168c30eb8f3dac05c4be2c/zw.widget-0.1.6.2.tar.gz" } ] }