{ "info": { "author": "Martijn Faassen", "author_email": "faassen@startifact.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Web Environment", "Framework :: Zope3", "Intended Audience :: Developers", "License :: OSI Approved :: Zope Public License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP" ], "description": "z3c.listjs\n**********\n\nz3c.listjs contains a widget called ``ListJsWidget`` that is a drop-in\nreplacement for the ``zope.app.form.browser.ListSequenceWidget``. It\nallows users to add and remove list items without the need for server\ninteraction, using Javascript.\n\nNote: This package only works with ``zope.formlib``\n(``zope.app.form``) and is not compatible with ``z3c.form``.\n\nYou can use ``ListJsWidget`` for any ``schema.List`` field using the\nnormal ``zope.formlib`` custom widget pattern::\n \n from z3c.listjs import ListJsWidget\n\n ...\n\n form_fields['foo'].custom_widget = ListJsWidget\n\nWith the right ZCML override it should also be possible to\nautomatically use this widget in all cases ``ListSequenceWidget``\nwould normally be used. Documentation contributions are welcome!\n\nShould you wish to override the CSS for the buttons, the CSS classes\nare ``up_button`` and ``down_button``. If you are using hurry.resource\nfor your overriding CSS, your resource should depend on\n``z3c.listjs.listjs_css`` so that ordering is correct to make the\noverride happen.\n\nCHANGES\n*******\n\n1.0b1 (2009-06-04)\n==================\n\n* Javascript in ``