#28: Rename 'datagrid' widget to 'grid'
----------------------------------+-----------------------------------------
Reporter: sakhmechet | Owner: sakhmechet
Type: defect | Status: new
Priority: low | Milestone: 0.1
Component: weblocks | Version: pre-0.1
Keywords: rename datagrid grid |
----------------------------------+-----------------------------------------
There is no reason to call datagrid widget 'datagrid'. 'Grid' is a much
better name. We should rename the widget.
--
Ticket URL: <http://trac.common-lisp.net/cl-weblocks/ticket/28>
cl-weblocks <http://common-lisp.net/project/cl-weblocks>
cl-weblocks
#23: Create renderers for lists of items
--------------------------------------------+-------------------------------
Reporter: sakhmechet | Owner: sakhmechet
Type: enhancement | Status: new
Priority: medium | Milestone: 0.2
Component: weblocks | Version: pre-0.1
Keywords: renderers snippets lists items |
--------------------------------------------+-------------------------------
We should create renderers (or snippets?) to render lists of items
(ordered, unordered, etc.) as this is a fairly common operation.
We should consider rewriting current widgets that use lists to take
advantage of this functionality.
--
Ticket URL: <http://trac.common-lisp.net/cl-weblocks/ticket/23>
cl-weblocks <http://common-lisp.net/project/cl-weblocks>
cl-weblocks
#44: ajax isearch will sometimes drop a callback in Firefox.
-------------------------------+--------------------------------------------
Reporter: anonymous | Owner: sakhmechet
Type: defect | Status: new
Priority: critical | Milestone:
Component: weblocks | Version:
Keywords: prototype firefox |
-------------------------------+--------------------------------------------
Sometimes, at least when a table is populated with more data than in the
default example (try creating a table with 30 rows), an exception will be
trown by Firefox because the "status" element in an nsIXMLHttpRequest is
being accessed.
How to reproduce:
Add a longer list of employees to the grid1 in application.lisp:
{{{
(list employee1 employee2 employee3 employee1 employee2 ...<30 more>)
}}}
Reduce the latency to 0.1 seconds in isearch.lisp, line 31.
{{{
(with-javascript "~
new Form.Element.DelayedObserver('~A', 0.1, function(elem, value) {~
initiateFormAction('~A', $('~A'), '~A');
});"
}}}
Install firebug, and set a brakepoint at roughly line 1114 in prototype.js
{{{
} catch (e) {
1114 this.dispatchException(e); <--- breakpoint on this line.
1115 }
}}}
After playing around with the isearch, you will see the following
exception being thrown (really by the nearby success() function):
{{{
[Exception... "Component returned failure code: 0x80040111
(NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]" nsresult: "0x80040111
(NS_ERROR_NOT_AVAILABLE)" location: "JS frame ::
http://foo.org:8090/pub/scripts/prototype.js :: anonymous :: line 1109"
data: no]
columnNumber
0
data
null
filename
"http://foo.org:8090/pub/scripts/prototype.js"
inner
null
lineNumber
1109
location
JS frame :: http://foo.org:8090/pub/scripts/prototype.js ::
anonymous :: line 1109 language=2 languageName=JavaScript
message
"Component returned failure code: 0x80040111
(NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]"
name
"NS_ERROR_NOT_AVAILABLE"
result
2147746065
QueryInterface
QueryInterface()
initialize
initialize()
}}}
From what I understand from random readings on the web, this can be caused
by reading the nxIXMLHttpRequest.status in an onError handler (which does
not seem to happen in this case), or it can happen if the ajax request is
being aborted.
--
Ticket URL: <http://trac.common-lisp.net/cl-weblocks/ticket/44>
cl-weblocks <http://common-lisp.net/project/cl-weblocks>
cl-weblocks
#42: Sorting and regex filtering should be refactored out of datagrid
-----------------------------------------------------------------+----------
Reporter: sakhmechet | Owner: sakhmechet
Type: enhancement | Status: new
Priority: medium | Milestone: 0.2
Component: weblocks | Version: pre-0.1
Keywords: sorting filtering searching regex refactor datagrid |
-----------------------------------------------------------------+----------
Currently sorting and regex filtering/searching mechanisms are specific to
the datagrid. It seems like these mechanisms could be used in other
widgets. We should refactor these components and make them generic for use
by other widgets.
--
Ticket URL: <http://trac.common-lisp.net/cl-weblocks/ticket/42>
cl-weblocks <http://common-lisp.net/project/cl-weblocks>
cl-weblocks
#68: Object-visible-slots should look at declared type for NULL values
------------------------+---------------------------------------------------
Reporter: sakhmechet | Owner: sakhmechet
Type: defect | Status: new
Priority: medium | Milestone: 0.2
Component: weblocks | Version: pre-0.1
Keywords: renderer |
------------------------+---------------------------------------------------
When an inline slot is rendered and slot-value is nil, object-visible-
slots should try obtain inline slots from the declared typespec.
--
Ticket URL: <http://trac.common-lisp.net/cl-weblocks/ticket/68>
cl-weblocks <http://common-lisp.net/project/cl-weblocks>
cl-weblocks
#69: Implement one-of and render-as facilities
------------------------------+---------------------------------------------
Reporter: sakhmechet | Owner: sakhmechet
Type: enhancement | Status: new
Priority: critical | Milestone: 0.2
Component: weblocks | Version: pre-0.1
Keywords: one-of render-as |
------------------------------+---------------------------------------------
We should implement one-of type to complement foreign-key rendering
mechanism. Additionally, some form of render-as facility needs to be
introduced to allow rendering as dropdowns or as suggest widgets depending
on the context. Render-as should also be generic enough be used in other
cases.
We should also consider converting us-states to one-of/render-as
implementation.
--
Ticket URL: <http://trac.common-lisp.net/cl-weblocks/ticket/69>
cl-weblocks <http://common-lisp.net/project/cl-weblocks>
cl-weblocks
#67: Make slot references default and require inline (mixins) to be explicit
----------------------------+-----------------------------------------------
Reporter: sakhmechet | Owner: sakhmechet
Type: defect | Status: new
Priority: medium | Milestone: 0.2
Component: weblocks | Version: pre-0.1
Keywords: renderer mixin |
----------------------------+-----------------------------------------------
Currently in order to consider slots as a reference one must add -ref to
their name. Slots should be treated as a reference by default. Instead, to
treat them as inline, one should add -mixin.
--
Ticket URL: <http://trac.common-lisp.net/cl-weblocks/ticket/67>
cl-weblocks <http://common-lisp.net/project/cl-weblocks>
cl-weblocks
#8: Back button rules should be respected
---------------------------------+------------------------------------------
Reporter: sakhmechet | Owner: sakhmechet
Type: defect | Status: new
Priority: low | Milestone: 0.1
Component: weblocks | Version: pre-0.1
Keywords: back button history |
---------------------------------+------------------------------------------
We should consider improving the consequences of hitting the back button.
Currently only navigation control actions are recorded in the browser's
history. We can get around this by updating AJAX actions with an anchor at
the end of the URL and support proper back button this way. Is this the
right thing to do?
--
Ticket URL: <http://trac.common-lisp.net/cl-weblocks/ticket/8>
cl-weblocks <http://common-lisp.net/project/cl-weblocks>
cl-weblocks