[Checkins] SVN: Sandbox/pcardune/zobby/src/z3c/formjs/ trying a few
things with creating new widgets
Paul Carduner
paulcarduner at gmail.com
Tue May 15 14:34:34 EDT 2007
Log message for revision 75774:
trying a few things with creating new widgets
Changed:
A Sandbox/pcardune/zobby/src/z3c/formjs/browser/
A Sandbox/pcardune/zobby/src/z3c/formjs/browser/__init__.py
A Sandbox/pcardune/zobby/src/z3c/formjs/browser/configure.zcml
A Sandbox/pcardune/zobby/src/z3c/formjs/browser/form.py
A Sandbox/pcardune/zobby/src/z3c/formjs/browser/scripts.pt
A Sandbox/pcardune/zobby/src/z3c/formjs/browser/text_input_display.pt
U Sandbox/pcardune/zobby/src/z3c/formjs/configure.zcml
U Sandbox/pcardune/zobby/src/z3c/formjs/container.py
A Sandbox/pcardune/zobby/src/z3c/formjs/formjs.py
A Sandbox/pcardune/zobby/src/z3c/formjs/i18n.py
A Sandbox/pcardune/zobby/src/z3c/formjs/interfaces.py
A Sandbox/pcardune/zobby/src/z3c/formjs/javascript/formjs.js
-=-
Added: Sandbox/pcardune/zobby/src/z3c/formjs/browser/__init__.py
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/browser/__init__.py (rev 0)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/browser/__init__.py 2007-05-15 18:34:33 UTC (rev 75774)
@@ -0,0 +1,26 @@
+##############################################################################
+#
+# Copyright (c) 2007 Zope Foundation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""
+$Id: __init__.py 217 2007-04-15 20:25:48Z rineichen $
+"""
+__docformat__ = "reStructuredText"
+
+from zope.viewlet.interfaces import IViewletManager
+from zope.viewlet.viewlet import JavaScriptViewlet
+
+class IFormJSJavaScript(IViewletManager):
+ """JavaScript viewlet manager."""
+
+
+FormJSJavaScriptViewlet = JavaScriptViewlet('z3c.formjs/formjs.js')
Property changes on: Sandbox/pcardune/zobby/src/z3c/formjs/browser/__init__.py
___________________________________________________________________
Name: svn:eol-style
+ native
Added: Sandbox/pcardune/zobby/src/z3c/formjs/browser/configure.zcml
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/browser/configure.zcml (rev 0)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/browser/configure.zcml 2007-05-15 18:34:33 UTC (rev 75774)
@@ -0,0 +1,27 @@
+<configure
+ xmlns="http://namespaces.zope.org/browser"
+ xmlns:z3c="http://namespaces.zope.org/z3c"
+ i18n_domain="z3c.formjs">
+
+ <z3c:widgetTemplate
+ mode="input"
+ widget="z3c.form.interfaces.ITextWidget"
+ layer="z3c.formjs.interfaces.IFormJSLayer"
+ template="text_input_display.pt"
+ />
+
+ <z3c:pagelet
+ name="z3c.formjs.formscripts"
+ for="*"
+ class=".form.FormScripts"
+ layer="z3c.formjs.interfaces.IFormJSLayer"
+ permission="zope.Public"
+ />
+
+ <z3c:template
+ template="scripts.pt"
+ for=".form.FormScripts"
+ layer="z3c.formjs.interfaces.IFormJSLayer"
+ />
+
+</configure>
\ No newline at end of file
Property changes on: Sandbox/pcardune/zobby/src/z3c/formjs/browser/configure.zcml
___________________________________________________________________
Name: svn:eol-style
+ native
Added: Sandbox/pcardune/zobby/src/z3c/formjs/browser/form.py
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/browser/form.py (rev 0)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/browser/form.py 2007-05-15 18:34:33 UTC (rev 75774)
@@ -0,0 +1,11 @@
+class FormScripts(object):
+ def __init__(self, context, request):
+ self.request = request
+ self.context = context
+
+ def __call__(self):
+ return """
+ <script type=\"text/javascript\" src=\"/@@/jsolait/jsolait.js\"></script>
+ <script type=\"text/javascript\" src=\"/@@/z3c.javascript.jquery/jquery.js\"></script>
+ <script type=\"text/javascript\" src=\"++resource++z3c.formjs/formjs.js\"></script>
+ """
Property changes on: Sandbox/pcardune/zobby/src/z3c/formjs/browser/form.py
___________________________________________________________________
Name: svn:eol-style
+ native
Added: Sandbox/pcardune/zobby/src/z3c/formjs/browser/scripts.pt
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/browser/scripts.pt (rev 0)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/browser/scripts.pt 2007-05-15 18:34:33 UTC (rev 75774)
@@ -0,0 +1 @@
+blah
\ No newline at end of file
Property changes on: Sandbox/pcardune/zobby/src/z3c/formjs/browser/scripts.pt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: Sandbox/pcardune/zobby/src/z3c/formjs/browser/text_input_display.pt
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/browser/text_input_display.pt (rev 0)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/browser/text_input_display.pt 2007-05-15 18:34:33 UTC (rev 75774)
@@ -0,0 +1,17 @@
+<span tal:content="view/value">Value</span>
+<input type="text" id="" name="" size="" alt="" title=""
+ tabindex="" disabled="" readonly="" accesskey="" maxlength="" value=""
+ onClick=""
+ style="display: none"
+ tal:attributes="id view/id;
+ name view/name;
+ title view/title;
+ alt view/alt;
+ tabindex view/tabindex;
+ disabled view/disabled;
+ readonly view/readonly;
+ accesskey view/accesskey;
+ maxlength view/maxlength;
+ value view/value;
+ size view/size;"/>
+<input type="button" value="Change" tal:attributes="onClick string:fjs_displayToEdit('${view/id}')" />
\ No newline at end of file
Property changes on: Sandbox/pcardune/zobby/src/z3c/formjs/browser/text_input_display.pt
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: Sandbox/pcardune/zobby/src/z3c/formjs/configure.zcml
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/configure.zcml 2007-05-15 18:28:09 UTC (rev 75773)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/configure.zcml 2007-05-15 18:34:33 UTC (rev 75774)
@@ -23,5 +23,7 @@
class=".container.ContainerHandler"
/>
+ <include package=".browser" />
+
</configure>
\ No newline at end of file
Modified: Sandbox/pcardune/zobby/src/z3c/formjs/container.py
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/container.py 2007-05-15 18:28:09 UTC (rev 75773)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/container.py 2007-05-15 18:34:33 UTC (rev 75774)
@@ -8,6 +8,7 @@
"""simple json-rpc view class for doing things with containers."""
def getAttributes(self, attributes):
+ """Gets attributes for objects in a container."""
result = []
for key, value in self.context.items():
data = [key,{}]
Added: Sandbox/pcardune/zobby/src/z3c/formjs/formjs.py
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/formjs.py (rev 0)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/formjs.py 2007-05-15 18:34:33 UTC (rev 75774)
@@ -0,0 +1,40 @@
+import zope.interface
+import zope.component
+import zope.event
+import zope.lifecycleevent
+from zope.app.pagetemplate import ViewPageTemplateFile
+from zope.publisher import browser
+from zope.pagetemplate.interfaces import IPageTemplate
+from zope.schema.fieldproperty import FieldProperty
+
+from z3c.form import form
+from z3c.form import button, util
+
+from z3c.formjs import interfaces
+from z3c.formjs.i18n import MessageFactory as _
+
+class DisplayAndEditForm(form.Form):
+
+ zope.interface.implements(interfaces.IJSForm)
+
+ buttons = button.Buttons(
+ apply=button.Button(_('Apply'))
+ )
+
+ formErrorsMessage = _('There were some errors.')
+ successMessage = _('Data successfully updated.')
+ noChangesMessage = _('No changes were applied.')
+
+ @button.handler(buttons['apply'])
+ def handleApply(self, action):
+ data, errors = self.widgets.extract()
+ if errors:
+ self.status = self.formErrorsMessage
+ return
+ changed = applyChanges(self, data)
+ if changed:
+ zope.event.notify(
+ zope.lifecycleevent.ObjectModifiedEvent(self.context))
+ self.status = self.successMessage
+ else:
+ self.status = self.noChangesMessage
Property changes on: Sandbox/pcardune/zobby/src/z3c/formjs/formjs.py
___________________________________________________________________
Name: svn:eol-style
+ native
Added: Sandbox/pcardune/zobby/src/z3c/formjs/i18n.py
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/i18n.py (rev 0)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/i18n.py 2007-05-15 18:34:33 UTC (rev 75774)
@@ -0,0 +1,22 @@
+##############################################################################
+#
+# Copyright (c) 2007 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""I18n message factory z3c.form
+
+$Id: i18n.py 183 2007-05-02 01:09:53Z srichter $
+"""
+__docformat__ = "reStructuredText"
+
+import zope.i18nmessageid
+
+MessageFactory = zope.i18nmessageid.MessageFactory('z3c.formjs')
Property changes on: Sandbox/pcardune/zobby/src/z3c/formjs/i18n.py
___________________________________________________________________
Name: svn:eol-style
+ native
Added: Sandbox/pcardune/zobby/src/z3c/formjs/interfaces.py
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/interfaces.py (rev 0)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/interfaces.py 2007-05-15 18:34:33 UTC (rev 75774)
@@ -0,0 +1,43 @@
+##############################################################################
+#
+# Copyright (c) 2007 Zope Foundation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""Form and Widget Framework Interfaces
+
+$Id: interfaces.py 215 2007-05-03 19:34:42Z srichter $
+"""
+__docformat__ = "reStructuredText"
+
+import zope.interface
+import zope.schema
+import zope.configuration.fields
+from zope.interface.common import mapping
+from zope.location.interfaces import ILocation
+from zope.pagetemplate.interfaces import IPageTemplate
+from zope.publisher.interfaces.browser import IBrowserRequest
+
+from z3c.form.interfaces import IFormLayer
+from z3c.formjs.i18n import MessageFactory as _
+
+
+# ----[ Layer Declaration ]--------------------------------------------------
+
+class IFormJSLayer(IFormLayer):
+ """A layer that contains all registrations of this package.
+
+ It is intended that someone can just use this layer as a base layer when
+ using this package.
+ """
+
+
+class IJSForm(zope.interface.Interface):
+ """Marker interface to make forms use javascript widgets."""
Property changes on: Sandbox/pcardune/zobby/src/z3c/formjs/interfaces.py
___________________________________________________________________
Name: svn:eol-style
+ native
Added: Sandbox/pcardune/zobby/src/z3c/formjs/javascript/formjs.js
===================================================================
--- Sandbox/pcardune/zobby/src/z3c/formjs/javascript/formjs.js (rev 0)
+++ Sandbox/pcardune/zobby/src/z3c/formjs/javascript/formjs.js 2007-05-15 18:34:33 UTC (rev 75774)
@@ -0,0 +1,14 @@
+function fjs_displayToEdit(element_id){
+ element = $(document.getElementById(element_id));
+ element.show();
+ element.prev().hide();
+ element.next().val('Save').unbind("click").click(function (){fjs_editToDisplay(element_id)});
+ element.focus();
+}
+
+function fjs_editToDisplay(element_id){
+ element = $(document.getElementById(element_id));
+ element.hide();
+ element.prev().text(element.val()).show();
+ element.next().val('Change').unbind("click").click(function (){fjs_displayToEdit(element_id)});
+}
Property changes on: Sandbox/pcardune/zobby/src/z3c/formjs/javascript/formjs.js
___________________________________________________________________
Name: svn:eol-style
+ native
More information about the Checkins
mailing list