r8 - 16 Aug 2005 - 11:59:31 - MimiYinYou are here: OSAF >  Projects Web  >  UIDesignArchive? > DnD

DnD? issues

3 main questions regarding DnD?:
  1. What can be DnD?ed?
  2. What are the different kinds of DnD? feedback?
  3. What are the semantics of the drop? What's the default?
    • Add: DnD entity is added to destination entity
    • Move: DnD entity is removed from source entity and added to destination entity
    • Remove: DnD entity is removed from source entity
    • Duplicate: a new item which is a duplicate of the DnD entity is created and added to the destination entity

To answer these questions, we first introduce the distinction between ModelSpace? entities and ViewSpace? entities. We borrow this distinction from the Model/View/Controller paradigm. ModelSpace? entities have a specific formalization in the content model. However, they can be represented to the end-user in many visible forms or instantiations. We call such instantiations ViewSpace? entities.

In order to ensure DnD consistency across Chandler, our approach is describe DnD principles in ModelSpace? and to ensure that ViewSpace? entities conform to such principles with a possible few well thought out exceptions. The table below describes the key ModelSpace? entities and their ViewSpace? instantiations.

1. DnD entities

# DnD entities Semantics View space instantiations
1 Content item Content item Summary table row
Calendar summary item
Contact card
Attribute value in Detail view
URL
2 Collection Collection of content items Sidebar entity
Tray
Tab
Summary table section
Mini-calendar browser selection
Attribute
Attribute value
URL
Search string
3 Attribute [OI?] What does this mean as a DnD entity? An attribute? A collection of "All items that have this attribute"? A collection of "All items that have the attribute values listed in this particular instance of the attribute"? Detail view
Universal text box
Search bar
Column header
4 Attribute value [OI?] Collection of all items with that attribute value Detail view
Universal text box
Summary table view cell
Calendar item
Contact card
Mini-calendar browser

Common examples:
Time
Names
Text
Location

5 Container Widget container Column
Status bar
Tab
Detail view
6 Container Container of Content Items & Collections. Only a destination, not a draggable entity URL / Search bar
Sidebar
Tab Bar
Detail view
Summary views
Universal text box

  • There are, of course, other objects (e.g. URLs, attachments) than can be DnD which are less key to Chandler design and out of scope in this document.

When Source DnD entity Destination DnD Action DnH Action ctrl-DnD Feedback on MO Feedback on Drop
.4 Any Content item(s) Collection Add

If the collection is governed by a rule, labels DnD entity content item with any label attribute values specified in the rule

None Move Hilight destination collection container Flash animation
no.png Any Content item(s) Collection Duplicate None
  Any Content item(s) Complex-rule collection Add

Labels DnD entity content item with any label attribute values specified in the rule

Flags attributes that have more than one possible attribute value

None Move Hilight destination collection container Flash animation
.4 Collection Content item(s) Another content item Adds DnD entity content item to the bottom of the destination content item's default ad-hoc collecton

Adds destination's default ad-hoc collection to DnD entity content item's list of ad-hoc collections

Pops open destination content item's default ad-hoc collection
  Collection Content item(s) Another content item Nothing Pops open destination content item's list of ad-hoc collections

DnD onto an ad-hoc collection in the list

DnH over an ad-hoc collection in the list to load new collection in-place

Adds selected ad-hoc collection to DnD entity content items list of ad-hoc collections

  Collection Content item(s) Void (outside Chandler chrome) Remove from source collection None Delete content item None Poof animation
  Any Collection Tab bar Loads collection in new tab None None Add icon Loading animation
.4 Sidebar
Tab bar
Detail view
Named collection Another sidebar named collection

Detail view collection attribute value

Adds the contents of the DnD entity to the destination collection.

[OI?] How is that reflected in the destination collection's base rule?

.4 Sidebar
Detail view
Named collection Tab Adds the contents of the DnD entity to whatever collection is being displayed in the tab.
  Sidebar
Tab bar
Detail view
Named collection Search bar Adds the collection as a parameter for search.

[OI?] Is that reflected simply by CollectionName=Foo or does it add any parameters set in the base rule of the collection?

.4 Sidebar
Tab bar
Detail view
Named collection Detail view collection attribute

In between collection attribute values

Adds the collection as an attribute value. Allows user to assign a single item to multiple collections at a time.
  Search bar Collection Sidebar Adds a named collection to the sidebar
  Search bar Collection Sidebar named collection

Detail view collection attribute value

Adds rule specified in the Search bar to the destination collection
.4 Tab bar Collection Tab Adds the contents of the DnD entity to whatever collection is being displayed in the tab

[OI?] temporarily? Similar to cmd-click in Apple Mail

  Search bar Collection Detail view collection attribute

In between collection attribute values

Adds named collection as an attribute value
  Search bar Collection Collection / attribute manager Adds named collection to the collections / attribute manager (Need to go over collections / attributes manager)

* Multiple select applies only to 1 kind of DnD entity
* Multiple select applies only to content items in the same view

[OI?]

  • When DnDing a content item directly into another visible collection (ie. by DnH the content item over the destination tab or where the destination collection is in a new window, another instance of Chandler), how do we differentiate between
    1. adding the item to the destination collection
    2. adding the item to the defulat ad-hoc collection of a particular content item in the destination collection
    • Proposal
    • DnD over white space to add to collection: Hilight appears around view
    • DnD over text to add to destination item's default ad-hoc collection of a particular content item: Item is hilighted
    • DnH over text to open in-place destination item's default ad-hoc collection
    • If it turns out that it's "too hard" to avoid accidentally DnDing an item onto another item, we can institute a 2-3 second hover threshhold to make it hard to do "item on item" DnD.
    • Works like Apple Finder
  • How do we distinguish between selecting text that represents a content item as a content item OR as text
    • Proposal
    • Click and drag to DnD as content item
    • Click and release to edit
    • For calendar items: D-click to edit
  • When moving collections around in the sidebar, does that change the view in the main content area? No. Only a simply click and release changes the view. DnD manipulations in the sidebar to combine and reorder view does not change the main content area.

-- MimiYin - 15 May 2004

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r8 < r7 < r6 < r5 < r4 | More topic actions
 
Open Source Applications Foundation
Except where otherwise noted, this site and its content are licensed by OSAF under an Creative Commons License, Attribution Only 3.0.
See list of page contributors for attributions.