{ "id": "60730", "key": "TIMOB-98", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [ { "id": "11213", "name": "Release 0.7.0", "archived": true, "released": true, "releaseDate": "2009-10-05" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2011-04-17T01:51:58.000+0000", "created": "2011-04-15T02:23:37.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [], "versions": [], "issuelinks": [], "assignee": { "name": "blainhamon", "key": "blainhamon", "displayName": "Blain Hamon", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2011-04-17T01:51:58.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "{html}
Allow a developer to pass additional attributes into the\nTableView/GroupedView JSON data object, then ensure that these\nattributes are available in the event data of the click event.\nHere's an example
\n\n\nvar data = [\n {title:'foo', name:'George'},\n {title:'foo', name:'Fred'}\n];\n\nvar a = Titanium.UI.createTableView({data:data}, function(e)\n{\n e.rowData.name // should be name attribute for clicked row based on above JSON object\n}
\n
Things like title and name are to be expected. What about\nproperties that aren't normally stored or functions and the\nlike?
\nImplementation wise, there's three ways to implement this:
\n1) data is recreated from the used properties and passed in. This\nis what's currently done.
\n2) the native side keeps a copy of the entire parsed dictionary of\ndata, to use it as a copy when needed. This has the advantage of\nbeing portable from context to context, but functions and other\nnon-JSON properties will be lost.
\n3) the javascript side keeps a reference to the data, and passes in\nthat reference. It does allow for non-JSON properties, but is\nlimited to the context where that data was first created
Style 3 is already being done by way of needing to do callbacks,\nso that's what's done.