StarOffice Feature Specification

Drag & Drop Specification

OpenOffice.org 2.0

DRAFT

Start Date: 12/10/02 Last Modified: 09/21/03		
Engineering Contact:	Mathias Bauer	Mathias.Bauer@sun.com
Marketing Contact:	<Name of Contact>	<E-mail of Contact>
User Experience Contact:	Frank Loehmann	Frank.loehmann@sun.com
Review 14-Jan-03	Matthias Müller-Prove	mprove@sun.com

Table of Contents

1 Motivation	3

2 Goals of this specification	3

2.1 General Drag & Drop Behavior	3

2.1.1 The Drag & Drop Action	3

2.1.2 Keyboard Alternatives / Accessibility	4

2.1.3 Selection and Replacing	5

2.1.4 User Feedback	7

2.1.5 Making the Drop Target Visible	9

2.1.6 Scrolling in Documents with Active Drag & Drop	9

2.1.7 Aborting a Drag & Drop Action	9

2.1.8 Undo and Redo a Drag & Drop Action	9

2.2 Dragging Defaults	10

2.2.1 Preferred Drag & Drop action (Move, Copy or Link as Default)	10

2.3 Clipboard Default Formats	10

2.3.1 List of Preferred Formats for OO.org Writer	10

2.3.2 List of Preferred Formats for OO.org Writer/Web	10

2.3.3 List of Preferred Formats for OO.org Calc	11

2.3.4 List of Preferred Formats for OO.org Draw	11

2.3.5 List of Preferred Formats for OO.org Impress	11

2.3.6 List of Preferred Formats for OO.org Math	11

2.3.7 List of Preferred Formats for OO.org Chart	11

2.4 Keyboard Accelerators	12

2.4.1 Microsoft Windows	12

2.4.2 Mac OS X	12

2.4.3 Gnome 2.0	12

2.5 Data types	12

2.5.1 Text, Graphics and Other Objects	12

2.5.2 Multi Selection	12

2.6 Meeting the Operating System	12

2.6.1 Platform Dependent Behavior	12

2.7 Application Drag & Drop Behavior and Defaults	14

2.7.1 Drag and Drop on Application Title	14

2.7.2 Drag and Drop a Document File into a Document	14

2.7.3 Drag & Drop on Backing Window	14

2.7.4 Drag and Drop on System Desktop	15

2.7.5 Writer, Master Document & Writer/Web	15

2.7.6 Calc	17

2.7.7 Draw / Impress	19

2.7.8 Math	20

2.7.9 Database	20

2.7.10 Gallery	20

2.7.11 Stylist	21

2.7.12 Navigator	21

2.8 Glossary	21

2.9 Template for Drag & Drop Table	21

2.10 Related Links	21

2.11 Illustration Index	23

Motivation

Drag and Drop provides a visual operation to transfer information and is similar to cut, copy and paste. Currently the Drag & Drop behavior is not clearly defined for StarOffice/OpenOffice.org.

Goals of this specification

Clearly describe Drag & Drop behavior in general and in detail for the main functionality. Furthermore to define default actions and to prevent the user from accidental data loss.

This specification uses to days graphical representation of StarOffice 6.1 Beta on a Windows XP operating system to describe what should happen. Before implementing the GUI representation has to be revised to up-to-date standards and has to meet operating system standards.

This specification doesn't cover technical questions and implementation details. If an action could not be described within this specification, a separate specification (or section within this document) will be created and linked to define this special Drag & Drop behavior.

Each new specification for StarOffice / OpenOffice.org has to describe Drag & Drop behavior like it has to cover UI-Strings and accessibility issues. I propose to use a table to clearly describe Drag & Drop. A template for this table can be found in chapter 2.9 Template for Drag & Drop Table.

General Drag & Drop Behavior

There is no more differentiation between an internal object move and Drag & Drop functionality anymore, like in StarOffice 3.0-6.1.

As long as the user moves the object inside the document area , the dotted object preview (MMP:What about a translucent thumbnail?), if available, is shown like we already do it for an internal object move today. If the object is a text object, the Drag & Drop insertion cursor is show during the move.

Illustration 1 Text insertion cursor in text document

If the cursor leaves the document area, an external Drag&Drop will be started automatically. If the Drag & Drop cursor is moved back into the document area or the document area of another SO/OOo document, the previews is shown again. All this has to happen very smooth and easy to control for the user. Therefore it is very important to rework the current scrolling behavior, when the cursor reaches the window border.

Drag & Drop on/in a document of an application with an opened modal dialog is not possible. Only the modal dialog itself could be target for Drag & Drop.

The Drag & Drop Action

User moves mouse over object which supports moving or/and Drag & Drop.

User presses and holds down mouse button 1 while the pointer is still over the object.

User can move object inside and outside current document while holding down mouse button 1

Cursor and destination give feedback if drop is possible

If drop is not possible the forbidden sign is shown (see Illustration 12 Forbidden Cursor feedback if Drag&Drop is not possible on current cursor position on page 8)

User can drop object by releasing button 1

User can decide, depending on the supported Drag & Drop possibilities supported by the source object and the destination, if he wants to move, copy or link by using accelerator keys

If the drop happened on a suitable destination, the object is moved, copied or linked.

If not, the Drag & Drop action is canceled and nothing happened

Keyboard Alternatives / Accessibility

Regarding accessibility every mouse action/function needs it's keyboard equivalent. For Drag & Drop these are cut, copy and paste or special designed functions supporting keyboard access.

If Drag&Drop is possible cut, copy and paste via clipboard or a similar keyboard accessible function to get the same result has to be supported as well.

Paste Special Dialog

Currently inserting the clipboard content as a link is not supported by the paste special dialog, nor via keyboard shortcut.

Illustration 2 Current Paste Special dialog without paste link feature

This function has to be added to the StarOffice/OpenOffice.org Edit-Paste Special dialog.

Proposal for this new dialog, which has to be further discussed:

Illustration 3 Proposal of a new paste special dialog supporting "Paste link"

If paste as a link is not supported by the current clipboard content source (i.e. copy text from a normal ListBox), the “Paste link:” entry will be disabled.

Selection and Replacing

The dragged object is still selected after dropping the object into the destination document.

Dropped objects in documents will replace the object they were dropped on (i.e. a graphic). If the object is a container like a Writer frame, Draw frame or a Calc cell, dropping (i.e. text) on the object (giving feedback) will not replace the object, but replace the complete content of the object.

If this behavior is not intended, the drop target has to denial the object and give visual feedback to the user . Furthermore it is possible, but not desirable to raise a dialog and ask the user if he wants to replace or not and undo is possible as well.

If the container object also supports a Drag & Drop text cursor , this cursor is active when the user moves the Drag & Drop cursor over the content area of the object.

Illustration 4 Drag & Drop insertion cursor inside a Writer frame (container object)

Already existing objects in a container object like the desktop or a file view are being replaced/renamed if already present.

User Feedback

Cursor Feedback

Provide the user with feedback that a drag operation is in progress by changing the shape of the pointer when the drag is initiated. Use different pointers to distinguish operations (such as copying, linking, moving or forbidden).

The cursor shapes used to display a certain behavior have to be inline with the ones used on the operating system. The following screen shots show Microsoft Windows.

The final graphical representation (i.e. solid half transparent object preview) has to be further discussed and designed before the implementation phase starts.

Inside the document area

Since an internal object move turns automatically into a “real” Drag&Drop move when leaving the document area , we have to distinguish between different cursor feedback for inside and outside the document area.

Illustration 5 Mouse over object cursor; mouse button not pressed..MMP: this looks like two overlapping cursors FL:Maybe we should redesign this cursor to an arrow with a small move indicator.

Illustration 6 Mouse button 1 is pressed or/and object move has already started; dotted preview Illustration 7 Copy object with dotted preview Illustration 8 Link object with dotted preview

Outside the document area

Illustration 9 Move Cursor Illustration 10 Copy Cursor Illustration 11 Link Cursor

Every step: Drag start, drag and drop and the different drop modes will be visualized immediately by the drop target and/or mouse pointer.

The cursor also indicates if a drop is not possible on the current mouse cursor position. Furthermore this forbidden cursor is shown if the user tries to force a drop mode (i.e. link) which is not possible with current object and/or target.

Illustration 12 Forbidden Cursor feedback if Drag&Drop is not possible on current cursor position

Target / Destination Feedback

Destination feedback should also be supported to show the user where the dragged object can be dropped.

Illustration 13 Target feedback on mouse over a frame

If the dragged object is a text object, the preview is a Drag & Drop insertion cursor.

Illustration 14 Text insertion cursor in text document

Highlight drop targets (i.e. with dotted contour MMP: why not use a thick colored border?) when the mouse pointer is over them to indicate that they can accept the source object and what the target would be.

On Drop Feedback

It is O.K. to raise a dialog after mouse button 1 has been released and the object was dropped, but this should only happen if it is very important decision/message.

FL: Optical confirmation of Drag&Drop after button is released (drop success)?!?

Source Feedback

(MMP: what should happen to the source object that is being dragged? )

Status Bar Information

(FL: Do we want integrate this feature?)

The document status bar provides information what will happen if the user releases mouse button 1.

Making the Drop Target Visible

If the drop destination document or container is not visible and if the user has already started Drag & Drop, he can use system Drag & Drop behavior (i.e. on Windows to move the mouse over the taskbar) to make the document/container visible. If the document is visible, but the destination area inside the doc is currently not visible, the user can move the mouse cursor to the document limits to scroll the document.

Furthermore some controls in the Office-UI, like the page tab control, allow dragging on the control itself and offer the possibility to activate i.e. a currently hidden page .

Illustration 15 Pagetab control in Draw: Make a hidden page visible during Drag & Drop

Scrolling in Documents with Active Drag & Drop

The docs starts scrolling in a possible direction with a short delay. Scrolling has to be easily controllable by the user at any time. It starts slowly and then accelerates more and more and vice versa if the user moves his mouse pointer away a little bit from the scrolling area and stops immediately if moved completely out of the scrolling area. (how this works in detail has to be specified separately)

Aborting a Drag & Drop Action

The user could abort an already started Drag & Drop action by pressing the ESC key at any time or just drop on a forbidden area (i.e. the source object itself). Furthermore it is possible to finish the drop and initiate an undo. We should think about aborting Drag & Drop by pressing mouse button 2 (we already use this in Draw/Impress to undo the latest point set when drawing a polygon or curve.)

Undo and Redo a Drag & Drop Action

Undo and redo is very important for Drag & Drop, because moving data to another application could cause data loss . Therefore it is very important that the source application provides undoing a Drag & Move action.

Within StarOffice undoing a Drag & Drop action has to undo source and target application regardless if undo has been called in source or destinations application.

If undo of Drag & Drop action is not possible, rise a dialog when Drag & Drop is executed with an option never show again option to warn user.

Dragging Defaults

This section defines the defaults for Drag & Drop.

Preferred Drag & Drop action (Move, Copy or Link as Default)

Depending on the situation, the source application has to decide between a copy drop or a move drop. Normally Drag & Drop will be performed as a move within StarOffice/OpenOffice.org applications/documents of the same type and as a copy to foreign application, different document types or other containers (i.e. desktop). The following table gives an overview about the defaults:

Source	Target	Action
Data in document	Same document (or view)	Move drop
Data in document	Other StarOffice/OpenOffice.org document of same type	Move drop
Data in document	Other StarOffice/OpenOffice.org document of different type (e.g. from Writer to Calc)	Copy drop
Data in document	External document/application	Copy drop

Clipboard Default Formats (Bug ID: i14421)

The clipboard mechanism and Drag and Drop are very similar. This section defines the default format to be pasted if more than one format is offered by the source application. If the format on top of the following list of preferred formats is not given, the application takes the next format defined down the list. The OO.org application pasting the text imports the best format using it's own file import filter (i.e. the Microsoft Word import filter to past Microsoft Word native format).

Note: The following list is not complete. There are much more formats already defined in the pasting algorithm and they are also depending from current selection in the target document. The following list shows only the most common formats visible in the paste special dialog and do not list graphical formats.

If a new format encounters, the developer and the user experience has to define the default format to be used when pasting, if a native file format filter for the data is not available. Using the OLE mechanism instead as the default if the format is not supported natively is not useful for each format and also depends from the context (application).

List of Preferred Formats for OO.org Writer

OpenOffice.org native format

Microsoft Word native format

RTF (Formatted Text)

HTML without comments

HTML

Plain text

List of Preferred Formats for OO.org Writer/Web

OpenOffice.org native format

HTML without comments

HTML

RTF (Formatted Text)

Formatted Text

Plain text

List of Preferred Formats for OO.org Calc

OpenOffice.org native format

Microsoft Excel native format

HTML without comments

HTML

RTF (Formatted Text)

Plain text

List of Preferred Formats for OO.org Draw

OpenOffice.org native format

Microsoft PowerPoint native format

RTF (Formatted Text)

HTML without comments

HTML

Plain text

List of Preferred Formats for OO.org Impress

OpenOffice.org native format

Microsoft PowerPoint native format

RTF (Formatted Text)

HTML without comments

HTML

Plain text

List of Preferred Formats for OO.org Math

OpenOffice.org native format

Plain text

List of Preferred Formats for OO.org Chart

OpenOffice.org native format

RTF (Formatted Text)

Plain text

Keyboard Accelerators

The default action (move, copy or link) could be forced to perform a different action if possible (please find possible actions within the definition of Drag & Drop actions), since not every action could be performed with all kind of objects or drop targets. Key state will be checked after drag has been started and will be displayed with a changing cursor (see 2.1.4 Cursor Feedback).

Microsoft Windows

Ctrl: Force copy mode for Drag & Drop action

Ctrl+Shift: Forces to drop a link to the source object

Shift: Forces move action for Drag & Drop if copy was default

Mac OS X

Alt: Force copy mode for Drag & Drop action

Command (apple key) + Alt: Forces to drop a link to the source object

Command (apple key): Forces move action for Drag & Drop

Gnome 2.0

?

Data types

Text, Graphics and Other Objects

Text (better a selection of text) could be dragged. The application indicates the actual drop target by a insertion cursor. Text will be selected (marked) after dropping the text to the target document/application.

Illustration 16 Drag & Drop a text selection

Multi Selection

Target object has to decide if it could handle these multiple objects and gives feedback to user (see 2.1.4 User Feedback for more information regarding how to give feedback to the user)

Meeting the Operating System

Platform Dependent Behavior

Drag & Drop is not exactly the same on all different operating systems or under all Window-Managers. If there are general differences the specification will mention them and how StarOffice/OpenOffice.org has to deal with it. Sometimes StarOffice/OpenOffice.org has to find its own way to provide a coherent Drag & Drop behavior on all supported platforms.

Application Drag & Drop Behavior and Defaults

This section describes the main functions within the applications and is based on the description of Drag & Drop in Chapter 2.1 General Drag & Drop Behavior and is also a demonstration how to describe Drag&Drop within other new specifications. Furthermore the defaults for Drag & Drop action and/or the possible Drag & Drop action (C=Copy, M=Move and L = Link) are described.

This specification will not handle all possible Drag & Drop actions of StarOffice and OpenOffice.org. Existing feature have to be checked against this document and have to be discussed in detail. This document is intended to unify Drag & Drop handling within SO/OOo and gives support if a new functionality is being designed.

Drag and Drop on Application Title

A document from the file system or desktop could be dropped onto the StarOffice/OpenOffice.org application title. This file will be opened in StarOffice/OpenOffice.org using the document filter given by the automatic filter detection. Only a copy drop is possible and is defaulted.

FL: Isn't possible on Linux since title is not part of application (see 106715 for more information).

Dragging a Document File to the Application Window Title
to target window	on this target	performs this action	Possible A.
Any SO/OOo Application Window	Window Title	Open document	C

Drag and Drop a Document File into a Document

Dragging a Document File into a Document
to target window	on this target	performs this action	Possible A.
Writer Application Window	Document area	Copy (default) of document content will be inserted into the document. Writer application will insert a section and rises insert section dialog after dropping	CL
Any other SO/OOo Application Window	Document area	Copy (default) of document content will be inserted into the document.	CL

Drag & Drop on Backing Window

Please see chapter “Drag & Drop Target” in the following external specification for more information:

FL: Currently Drag&Drop onto the backing window on Linux is not possible (106715 ). We should think about what should happen here. Christof Pintaske would not expect that this should work on Linux, but let us think about this.

On OpenOffice.org: http://ui.openoffice.org/proposals/File_close_behavior.sxw

Internal:

http://staroffice-doc.germany.sun.com:8080/Teams/User_Experience/HCI/Star/Geordi/UISpecs/FileCloseSpec.sxw

or

http://staroffice-doc.germany.sun.com:8080/Teams/User_Experience/HCI/Star/Geordi/LastWindowClose.html

Drag and Drop on System Desktop

It is possible to Drag&Drop any possible document selection from StarOffice/OpenOffice.org also to the system's desktop. The file format of this file could vary depending on the operating system. The file format and automatic filename creation has to be further specified.

Drag & Drop to the recycle bin always performs a move to the bin. FL: It is not clear today, if a cliping has to be created in the bin or not. Apple supports this behavior and MS does not. I propose not to create this clipping in the bin, because the bin does not know if the corresponding application and document is still open or not. Furthermore Undo in the app will be supported, otherwise this Drop will be the only successful drop without a drop result. MMP: Is it possible to create clippings that make sense? Little StarOffice documents that contain the dragged content??

Dragging Document Content to the System Desktop
source window	on this target	performs this action	Possible A.
Any document selection	Desktop	Copy drop	CM(L if possible)
Any document selection	Recycle Bin	Create Clipping and move drop to recycle bin	M
The document itself (MMP: Therefore we need to offer a handle to drag the document itself. FL: like we had in <=SO5.2?)	Desktop or file system view	like DD in Explorer, but as a copy (default) or link only	CL

Writer, Master Document & Writer/Web

StarOfficeOpenOffice.org Writer (incl. Master Document and Writer/Web) documents could consists of many many different objects types.

Dragging a text selection
to target window	on this target	performs this action	Possible A.
Same document	Document area	Move drop	CM(L via DDE/OLE if possible)
Other Writer document	Document area	Move drop	CM(L via DDE/OLE if possible)
Other application / doc type	Document area	Copy drop	CM
Floating window	Stylist	Create new paragraph style (bug in srx644) or updates paragraph style with format of source paragraph.	C
Floating window	Navigator	Add a (temporarily) marker to source paragraph	C
OS desktop	Desktop area	Create document (format has to be defined) on desktop with selected text	CM(L if possible)

Dragging a Writer graphic (picture) object or frame
to target window	on this target	performs this action	Possible A.
Same document	Document area	Move drop	CM(L via DDE/OLE if possible)
Other Writer document	Document area	Move drop	CM(L via DDE/OLE if possible)
Other application / doc type		Copy drop	CM
Floating window	Stylist	Create new frame template from source object	C
(only valid for graphic object)	Gallery	Add to Gallery group or create new group if dropped on theme list	C(M?)
OS desktop	Desktop Area	Create document (format has to be defined) on desktop with selected text	CM(L if possible)

Dragging a drawing object in Writer
to target window	on this target	performs this action	Possible A.
Same document	Document area	Move drop	CM(L if possible)
Other Writer document	Document area	Move drop	CM(L if possible)
Other application / doc type		Copy drop	CM
Floating window	Stylist	forbidden	---
Gallery	Gallery	Add to Gallery group or create new group if dropped on theme list	C(M?)
OS desktop	Desktop Area	Create document (format has to be defined) on desktop with selected text	CM(L if possible)

Dragging a table cell in Writer
to target window	on this target	performs this action	Possible A.
Same document	Document area	Move drop	CM(L possible?)
Same document	Table	Move drop and replace existing content (FL:content only or complete cell like today?)	CM(L possible?)
Other Writer document	Document area	Move drop	CM(L possible?)
Other Writer document	Table	Move drop and replace existing content (FL:content only or complete cell like today?)	CM(L possible?)
Other application / doc type		Copy drop	CM
Floating window	Stylist	forbidden	---
OS desktop	Desktop Area	Create document (format has to be defined) on desktop with selected text	CM(L if possible)

Calc

Dragging text from a cell in Calc
to target window	on this target	performs this action	Possible A.
Same document	Same cell	Move text	CM
Same document	Different cell	Move text and replace content of target cell	CM(L to activate insert cursor)
Other Calc document	Cell	Move text and replace content of target cell	CM(L to activate insert cursor)
Other application / doc type		Copy drop	CM
Floating window	Stylist	Create New Cell Style and raise dialog for name	C
Floating window	Navigator	--	--
OS desktop	Desktop Area	Create document (format has to be defined) on desktop with selected text	CM(L if possible)

Dragging a cell in Calc
to target window	on this target	performs this action	Possible A.
Same document	Different cell	Move cell and replace target cell	CM(L to activate insert cursor)
Other Calc document	Cell	Move cell and replace target cell	CM(L to activate insert cursor)
Other application / doc type		Copy drop	CM
Floating window	Stylist	Create New Cell Style and raise dialog for name	C
Floating window	Navigator	--	--
OS desktop	Desktop Area	Create document (format has to be defined) on desktop with selected cell	CM(L if possible)

Dragging a drawing object or graphic (picture) in Calc
to target window	on this target	performs this action	Possible A.
Same document	Document area	Move drop	CM(L if possible)
Other Writer document	Document area	Move drop	CM(L if possible)
Other application / doc type		Copy drop	CM
Floating window	Stylist	forbidden	---
	Gallery	Add to Gallery group or create new group if dropped on theme list	C(M?)
OS desktop	Desktop Area	Create document (format has to be defined) on desktop with selected text	CM(L if possible)

Draw / Impress

Dragging a drawing object or graphic (picture) in Draw / Impress
to target window	on this target	performs this action	Possible A.
Same document	Document area	Move drop	CM(L if possible)
Other Writer document	Document area	Move drop	CM(L if possible)
Other application / doc type		Copy drop	CM
Floating window	Stylist	Create New Draw Style and raise dialog for name	C
	Gallery	Add to Gallery group or create new group if dropped on theme list	C(M?)
OS desktop	Desktop Area	Create document (format has to be defined) on desktop with selected text	CM(L if possible)

Dragging selected text content from a text object (in edit mode) in Draw / Impress
to target window	on this target	performs this action	Possible A.
Same document	Same text object	Move text	CM
Same document or Other Draw / Impress document	Object border of different text object	Move text and replace content of target text object if dropped on object board (giving feedback)	CM
Same document or Other Draw / Impress document	Content area of different text object	Move text to insertion cursor position	CM
Other application / doc type	any	Copy drop	CM
Floating window	Stylist	Create New Draw Style and raise dialog for name	C
Floating window	Navigator	Create New Draw Style and raise dialog for name	C
OS desktop	Desktop Area	Create document (format has to be defined) on desktop with selected text	CM(L if possible)

Math

The formula edit field control support Drag & Drop. (FL: I wrote an idea to add Drag & Drop for whole formula)

Database

The Database fronted supports Drag & Drop wherever possible and reasonable (too specific for this document).

Gallery

Gallery Item (any)
to target window	on this target	performs this action	Possible A.
Gallery	Item of same group	Insert (move) in front of item; (FL:Current cursor is wrong)	L (as insertion like in Calc)
Gallery	Other Gallery group	Move	CM
Gallery	Gallery Theme Button	Move and Create New Theme (raise dialog for name)	CM
OS desktop/or file viewer		Create a copy of source data file on desktop	CM

Gallery Graphic (Bitmap, WMF) Item
to target window	on this target	performs this action	Possible A.
Any document	any	Copy	CL

Gallery Drawing Object
to target window	on this target	performs this action	Possible A.
Any document	any	Copy	CM?L

Stylist

Stylist Style Entry
to target window	on this target	performs this action	Possible A.
SO/OOo Document	Text/Object (depending on style type)	Assign style to text/object	C

Navigator

The navigator supports Drag & Drop wherever it is possible and reasonable (too specific for this document).

Glossary

Drag & Drop(Drag & Drop): Provides same as cut, copy or paste or a special keyboard accessible function.

Drag source: Object to be dragged

Drop target: Target were the source object gets dropped

Possible A.: Possible Actions -> C(opy) M(ove) L(ink)

Template for Drag & Drop Table

<Enter Name Item to be Dragged>
to target window	on this target	performs this action	Possible Actions
Same document	Document area	Move drop; and maybe a short description	C(opy) M(ove) L (ink)
Other document			
Other application / doc type			
Floating window			
Floating window			
OS desktop			

Related Links

Mozilla: http://www.mozilla.org/docs/refList/user-interface/specs/dragndrop/#DrFromBrowser

Java: http://java.sun.com/products/jlf/ed2/book/HIG.Behavior2.html

Apple: http://developer.apple.com/techpubs/macosx/Essentials/AquaHIGuidelines/AquaHIGuidelines.pdf
(page 219pp)

Unix: http://www.newplanetsoftware.com/xdnd/

http://www.acm.org/sigchi/chi95/proceedings/dsgbrief/aw_bdy.htm

http://www.mprove.de/script/99/pointshoot/

and last not least: http://www.io.com/f1bus/Dragme.html

Open Issues

Not covered by spec today (from JA): http://webserver2.germany.sun.com/DevBoard/Source/Body_IdeeShow.asp?TaskID=4552&Nr=4551&Win2=1&Title=Idee%204552

Illustration Index

Illustration 1 Text insertion cursor in text document	3

Illustration 2 Current Paste Special dialog without paste link feature	5

Illustration 3 Proposal of a new paste special dialog supporting "Paste link"	5

Illustration 4 Drag & Drop insertion cursor inside a Writer frame (container object)	6

Illustration 5 Mouse over object cursor; mouse button not pressed..MMP: this looks like two overlapping cursors FL:Maybe we should redesign this cursor to an arrow with a small move indicator.	7

Illustration 6 Mouse button 1 is pressed or/and object move has already started; dotted preview	7

Illustration 7 Copy object with dotted preview	7

Illustration 8 Link object with dotted preview	7

Illustration 9 Move Cursor	7

Illustration 10 Copy Cursor	7

Illustration 11 Link Cursor	7

Illustration 12 Forbidden Cursor feedback if Drag&Drop is not possible on current cursor position	8

Illustration 13 Target feedback on mouse over a frame	8

Illustration 14 Text insertion cursor in text document	8

Illustration 15 Pagetab control in Draw: Make a hidden page visible during Drag & Drop	9

Illustration 16 Drag & Drop a text selection	11

Move, copy or link

In Draw/Impress this area consists of document and workplace area

Default on Windows and Unix systems; could be configured on some operating systems

See chapter 12 Keyboard Accelerators for more information about accelerators

Please see chapter 2.1.4 User Feedback

The insertion cursor like known from dragging a text selection in Writer

Raise a dialog to ask user what he wants

In Draw/Impress this area consists of document and workplace area

Via keyboard modifier, see chapter 2.4 for details

i.e. import settings dialog, or a warning if an equal target object is already present in a container (like the desktop) and would be overwritten

Drags object to same position on different page

Same functionylity on page basis instead of switching tasks like in the Microsoft task bar

(i.e. drop target crashes and undo is not possible

StarOffice Specification	Drag & Drop Specification

23/23

Drag & Drop Specification

Frank Loehmann

2002-11-08T17:00:22

Frank Loehmann