summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
W. Trevor King [Sun, 18 Jul 2010 12:56:02 +0000 (08:56 -0400)]
Use more reliable multiple select instead of checkboxes.
I couldn't figure out how to use setCellValue to change and display
the checkbox values. The current implementation adds a "Set Tags"
button which reads off the selected rows and uploads any tag changes.
Problem with the current implementation:
When the tree is rebuilt following a data refresh, the rebuild seems
to unselect any repainted rows. I'm not sure why. The current
workaround is to run setup_checkboxes() some reasonable delay after
refreshing the data. Too bad I can't find a blocking refresh, or
better yet, a post-refresh hook to use instead of setTimeout().
Anyhow, any tag selection activity by the user that happens during the
timeout will, obviously, be overwritten by the setup_checkboxes()
call.
W. Trevor King [Sun, 18 Jul 2010 00:07:48 +0000 (20:07 -0400)]
Added working RDF refresh.
The previous Components.classes approach required chrome:// permissions.
Also took a stab at updating the checkboxes when we reload data or
change the currently selected file. I think I'm writing the correct
value, but the checkboxes are not being displayed...
W. Trevor King [Sat, 17 Jul 2010 23:34:16 +0000 (19:34 -0400)]
Add dirtag.xul -> web.py data transfer.
Now the Dirtag instance in web.py carries out request made from dirtag.xul.
TODO: for some reason rdf refreshing isn't working/visible quite yet...
W. Trevor King [Sat, 17 Jul 2010 15:34:50 +0000 (11:34 -0400)]
Move dirtag.xul and *.rdf generation into CherryPy.
Now the intial data displayed by dirtag.xul matches the on-disk raw/tag
structure.
I made a few changes in node handling so traversals would have all the
information required (Node.root, Node.type, Node.tags, and associated
handlers).
W. Trevor King [Sat, 17 Jul 2010 14:08:34 +0000 (10:08 -0400)]
The checkboxes were not settable in the previous implementation.
The problem seems to stem from the old
flags="dont-build-content"
setting, which selects tree vs. content templating. See
https://developer.mozilla.org/en/XUL_Tutorial/Trees_and_Templates
https://developer.mozilla.org/en/XUL/Attribute/flags
for details.
Also hooked checkbox handler (checkbox_activity()) on as a method of
the tree.view, which makes it easier to only act on checkbox activity,
and locate the active row.
Other tidbits:
* Set type="application/javascript" in dirtag.js import.
Might as well to that formally.
* selstype="primary" in checkbox-tree.
I'd rather disable selection entirely, but this at least keeps it off the
checkbox column.
W. Trevor King [Fri, 16 Jul 2010 20:48:59 +0000 (16:48 -0400)]
Use checkbox tree rather than a simple array for element tags in dirtag.xul
W. Trevor King [Fri, 16 Jul 2010 17:55:53 +0000 (13:55 -0400)]
Added XUL frontend for a future dirtag/web.py
W. Trevor King [Fri, 16 Jul 2010 05:17:14 +0000 (01:17 -0400)]
Raise a more helpful error message is a directory does not exist
W. Trevor King [Fri, 16 Jul 2010 05:05:28 +0000 (01:05 -0400)]
Added .gitignore for *.pyc
W. Trevor King [Fri, 16 Jul 2010 05:04:56 +0000 (01:04 -0400)]
Began versioning