Seen Any Good UI Lately?

joshk's picture
public
joshk - Fri, 2007-05-18 02:14

In the quest to bring book.module to the next level as outline.module in Drupal 6.0, we're confronting some UI questions. Currently the form for adding a post to a book hierarchy becomes unworkable for sites with lots of book nodes (e.g. drupal.org). We need something more innovative than a simple dropdown for this new release. But what?

I'm a big believer in taking advantage of the state of the art, and I know there's a lot of interesting stuff out there online already.

Does anyone have a favorite way of organizing nested lists, placing new items within structured trees? If so, send us some links in the comments! We need inspiration.


Send a link, win a prize!

joshk's picture
joshk - Fri, 2007-05-18 02:15

If there are good suggestions, I can try and address them in an impromptu lesson this Sunday....

http://www.chapterthreellc.com | http://www.outlandishjosh.com


BookGUI module

dwees's picture
dwees - Sat, 2007-05-26 05:56

There is a module I wrote which lets the user move book pages around with ease. With some modifications, one could also rename book pages here as well. There is a plan in the works to convert this script to jQuery eventually, but I don't have the time. For a simple demonstration see:

http://unitorganizer.com/drupal5/admin/book/gui

Something like the Yui tree sorting would be ideal, but would involve making the YUI JavaScript library compatible with Drupal (I think the Ext.js jQuery extension does this) and forcing users to download a separate copy of it to drop in their installation.


Module available here

billfitzgerald's picture
billfitzgerald - Sat, 2007-05-26 19:04

http://drupal.org/project/bookgui

Cheers,

Bill


FunnyMonkey
Tools for Teachers


Go for the gold...

veggieryan's picture
veggieryan - Thu, 2007-07-12 07:33

I'd love to build drupal sites with this UI

http://www.mindmeister.com

built on rails with prototype.....

... how would it look in drupal jquery?

$$$$ !? ;)


Great stuff

dirkca - Thu, 2007-07-12 15:47

I checked this out and its awesome. Would be great to have a mind map tool in drupal.

OmniOutliner

christefano's picture
christefano - Fri, 2007-05-18 10:48

My favorite UI for nested lists is the one in OmniOutliner. If you have a reasonably new Mac, you probably have an OEM copy (it's included in the default OS X installation) with a free bundled license.

  http://www.omnigroup.com/applications/omnioutliner/


Me too

dmitrig01's picture
dmitrig01 - Sun, 2007-05-20 13:19

yummy stuff.


LinktoContent Module

ghankstef - Fri, 2007-05-18 14:48

Link to Content module (a tinymce plugin) does an nice job of providing you with an ajaxian way of linking to conent in taxonomy categories and subcategories

Demo?

joshk's picture
joshk - Fri, 2007-05-18 17:29

I tried to get this working but am having javascript errors. Do you know of any sites where I could demo it?

http://www.chapterthreellc.com | http://www.outlandishjosh.com


If you contact me via the I can setup temporary access

ghankstef - Tue, 2007-05-22 14:00

thanks

errors?

stBorchert - Tue, 2007-05-29 10:14

Hi.
Do you still have problems using it? You could contact me if you'd like to view a demo (I'll set one up).

greetings,

Stefan

(PS: I'm the maintainer of linktocontent ;-))

Link to Content exposes the word "node"

christefano's picture
christefano - Mon, 2008-01-14 15:50

Link to Content exposes the word "node" to users. I don't think users should or need to know what a node is, so I suggest changing the "node" strings to something else like "content" or "post".


starting point

pwolanin's picture
pwolanin - Sat, 2007-05-19 03:45

This jQuery demo seems like a starting point: http://interface.eyecon.ro/demos/drag_drop_tree.html

If we wanted to use exactly this sort of thing, the changes would have to be saved each time you moved an item.

This demo looks even better: http://jquery.bassistance.de/treeview/

What I was thinking was similar to this (with the +/- to expand the tree) but you'd click to choose the new parent (which should get highlighted or some such).


You also might want to check out

billfitzgerald's picture
billfitzgerald - Sat, 2007-05-19 13:36

You also might want to check out WebFM -- I haven't looked at it in a couple months, but it has a nice ui for managing files.

Cheers,

Bill


FunnyMonkey
Tools for Teachers


The code in that example is

starbow's picture
starbow - Sun, 2007-05-27 15:37

The code in that example is pretty primative. It is possible to create the same effects without having to resort to transparent spacer.gif files and the like. One of the things I am most happy with in the QAM module is that the HTML is posh (Plain Old Semantic HTML).

Also, you don't need to save the changes every time you move an item. That is one way to do it, but there was a big discussion about this on the dev list a couple month ago, and the consensus seemed to be that "arrange and then save" was the Drupal Way, vs "save on each action". It does get tricky if the goal is to combine "arrange then save" with the ajax lazy loading of branches, but it is doable.


Yes! Tao Starbow's Drag & Drop Nested Lists w/ Quick Admin Menu

kentbye's picture
kentbye - Thu, 2007-05-24 18:06

Tao Starbow demoed his Quick Admin Menu at the Berkeley Drupal Users Group, and it is perfect for this.
He rolled his own Sortable jQuery to be able to create Nested Lists with a drag-and-drop interface, and it's looks amazing.

Here's a demo:
http://demo.starbowconsulting.com/admin/build/qam/2

And here's his initial write up about it: Quick Admin Menu - A New Wave Menu UI


nice, but

pwolanin's picture
pwolanin - Sat, 2007-05-26 13:31

The demo, at least, only has a single level of items, not a tree. The demo seems to be basically get setting the weight? This would be useful, but not sufficient.

Also, the hard part with something like this for the menu tree is that we don't really want to load or display the full tree, since it might be thousands of items.


No

starbow's picture
starbow - Sun, 2007-05-27 15:14

I think you should take another look at the quick admin menu demo. I started with the interface tree demo, and put a lot of work into extending it.


A drag & drop interface for

dvessel's picture
dvessel - Sat, 2007-05-26 23:35

A drag & drop interface for something that can potentially grow to enormous proportions doesn't look like the best approach. Some of the demos are definitely neat but they're still annoying especially when it's not a flat list.

I'm not sure of an alternative but another approach could be an unordered list with checkboxes in them to select source pages and radio buttons for the destination.

Select all the pages you want to move with the checkbox then hit the radio button to move it where you want. Doesn't seem intuitive but it could be made clear by styling it. How, I'm not exactly sure atm.

For larger lists, something similar to this jQuery search filter could be added to narrow down the outline hierarchy.


The best tree manipulation

starbow's picture
starbow - Sun, 2007-05-27 15:21

The best tree manipulation UI I have seen lately is the tree example over at ext: http://extjs.com/deploy/ext/examples/tree/reorder.html
Whenever I needed to make a choice about the UI for Quick Admin Menu, I pretty much just copied how ext does it (unfortunately ext is big, and not GPL).

A demo of my version is at: http://demo.starbowconsulting.com/admin/build/qam/2
It currently loads the entire menu at once, but it would be a small extention to do lazy/ajax loading of the branches.


ext is LGPL, and can thus be

Frando's picture
Frando - Tue, 2007-05-29 22:58

ext is LGPL, and can thus be published by whomever wants to under the GPL. So, it remains big, but licensing is a non-issue.

And yes, this is a great tree manipulation UI. Ext has many more really great features - I thought about integrating it with Drupal a week back or so (contrib of course, not core) ;)


How about making it look

mikeypotter@drupal.org's picture
mikeypotter@dru... - Tue, 2007-05-29 14:40

How about making it look like a real book?

http://demo.quietlyscheming.com/book/Anatomy.html

Mike


Hello thre Mike.

CorpX's picture
CorpX - Wed, 2007-05-30 18:19

dup post ... ooops


Hello thre Mike.

CorpX's picture
CorpX - Wed, 2007-05-30 18:19

The flash in your post looked familiar. there ate several Flash Template and components that achieve this. I could find the one I was looking for -- but here is and other example.

http://www.dynamicfactory.us/xmlswfdemo/pageflip2b/index.html

--
Jimmy Rosano.Keesee


Option to Print to PDF or printer friendly file

pbassel - Tue, 2007-05-29 23:08

It would be really great if there was a feature to print a book to pdf or to a printer friendly file.

As good as this module is, if they are long and involved I find reading things a lot easier if I can print them and sit back in a comfortable chair away from my computer. Current approach may be fine for Drupal Developers but users of our sites would likely like this option too.

If this module created these files in "real time" / cashed them from time to time as needed, then we could retain benefit of live up to date books and also make reading these books easier.

As providing a facility to create, host and deliver the books making them easy to read would seem the next logical step.

Thanks.

Update to BookGUI interface

dwees's picture
dwees - Wed, 2007-07-25 07:09

I've made some major improvements to the bookGUI module that I will publish soon (I need to fix one or two errors and add 1 more feature).

Right now you can:

  1. Re-arrange the order of your book pages.
  2. Change the parent-child relationships of book pages.
  3. Change the title of any book page.
  4. Add new book pages and move them where you want them easily.
  5. Undo all changes since you started manipulating the book.
  6. Save your changes to the database.

New:
7. Edit your page (including a new WYSIWYG editor - OpenWYSIWYG editor - which is not yet available as a project.
8. Delete pages.
9. Make a page top-level.
10. Only updates the pages that have been changed, which greatly reduces the load on the server.

Check it out at:

http://unitorganizer.com/drupal5/bookgui

As Starbow says, the JS is 'pretty primitive' but it seems to be working (mostly) fine.

Dave


I'm looking forward to

christefano's picture
christefano - Thu, 2007-10-04 11:25

I'm looking forward to trying the new release.


Mmm, my ideal UI for

birdmanx35@drupal.org's picture
birdmanx35@drup... - Fri, 2008-01-04 01:22

Mmm, my ideal UI for submitting book pages would be something like Leopard's Finder browser, the columns one. That is sooo nice to use.