POSTBOARD SPECIFICATION 1 OVERVIEW 1.1 PURPOSE PostBoard is a tool for co-located collaborative brainstorming. It is designed to replace traditional tools such as whiteboards and Post-Its by providing digital equivalents with extended capabilities. 1.2 SCOPE The PostBoard system contains hardware, software, and network elements, all of which are covered by this specification. 2 PHYSICAL INTERFACE 1.1 DISPLAY PostBoard is designed to run on a large display mounted on either a wall or table. The display should be as large as possible while still allowing a user to touch any point on it without taking a step or stretching too far. The resolution of the display should also be a high as possible. 1.2 INPUT A special pen with a single button on its side (which can be pressed while the pen is held) is used to draw on the display. The input system must be able to sense when the pen touches the display and, while it remains touching, the position of the pen tip and the state of the button. 3 SOFTWARE INTERFACE 3.1 OVERVIEW The PostBoard interface consists of a number of different elements: the whiteboard area, some corkboard areas, and Post-Its. The whiteboard is used for drawing. Post-Its can be created by copying or cuting areas of the whiteboard; they can then be moved around, drawn on, grouped, or copied or merged back onto the whiteboard. The corkboard area is used to store Post-Its; a Post-It shrinks while in the corkboard area. 3.2 DRAWING If the user does not hold down the pen button, drawing on the whiteboard area or on a Post-It leaves a trail of virtual ink in the current color. Drawing on the corkboard area has no effect. If, while drawing on the whiteboard, the pen moves onto a Post-It, the Post-It will become mostly transparent while the pen is "under" it. If, while drawing on a Post-It, the pen moves outside the Post-It boundary, the Post-It will smoothly grow to fit the drawing. 3.2.1 PEN COLOR The pen draws in the current color. The current color starts black, and can be changed to one of several colors using the FlowMenu. (see below) The available colors should be saturate and distinct, and should include, at a minimum: black, red, green, and blue. Other possible colors include: purple, orange, brown, etc. White, colors that have low contrast with white (e.g. yellow or cyan), and pastel colors or gray should not be available. (Post-Its will be pastel or gray) 3.2.2 ERASING Ink can be erased by choosing one of the several erase options from the FlowMenu. (see below) These include: freehand, rect, area, and all. Freehand erasing makes the pen behave like an eraser shaped like a small circle. Rect allow the user to drag a rectangle that will be cleared. Area allows the user to define an arbitrary area to be cleared. All erases the entire contents of the whiteboard or Post-It in which the option was chosen. Once the pen is lifted from an erase operation, the pen is returned to normal drawing mode (to continue erasing, erase mush be chosen from the FlowMenu again). 3.3 FLOWMENU Holding down the pen button and touching the pen to the display produces the FlowMenu. The FlowMenu consists of a small circle with several regions (usually 6 to 8) arranged around it. Each region may have an option associated with it, indicated by a word or two of text and maybe a small icon. Moving the pen from the inner circle into an outer region opens up a submenu; all the region labels change to indicate the new options. Moving the pen back into the center through a region selects that option. If the option choosen requires further choices to be made, the region labels are updated and the user must make another choice before any action is taken. Otherwise, the command takes effect, in which case the FlowMenu disappears. Depending on the action, moving the pen may now have a further effect, such as selecting an area. Some commands, such as scale or undo, may allow the user to use the FlowMenu as a dial; once they are choosen by moving from the inner region to the outer, the user can move the pen clockwise or counterclockwise around the circle to accomplish the desired effect (i.e. scaling up or down, undoing or redoing, etc.) Releasing the pen button or lifting the pen at any point ends the FlowMenu interaction. 3.3.1 FLOWMENU OPTIONS The options available through the FlowMenu are dependent on where the pen was touched. Universal options: Board (save, restore, print, undo, redo) Pen Color (black, red, green, blue, purple, orange) Erase (freehand, rect, area, all) Whiteboard options: New Post-It (cut rect, copy rect, cut area, copy area, overlay rect) Post-It options: Post-It (move, delete, tape, free, merge, stamp) Post-It Color (yellow, magenta, light green, cyan, gray, transparent/opaque) Corkboard options: Erase not available 3.4 POST-ITS A Post-It is created by choosing the New Post-It option from the FlowMenu and selecting one of the Post-It creation options. These include: cut rect, copy rect, cut area, copy area, and overlay rect. Each of the "rect" options allow the user to drag a rectangle in which the Post-It will appear, while the "area" options allow the user to define an arbitrary area which will be bounded by the Post-It. If "cut" is chosen, any drawing on the whiteboard in the rect or area chosen is removed from the whiteboard and placed in the new Post-It. If "copy" is chosen, the new Post-It contains a copy of the drawing in the chosen rect or area, and the drawing is left on the whiteboard. If "overlay" is chosen, the user defines a rect that will contain a new, empty Post-It. The whiteboard underneath is unaffected. 3.4.1 POST-IT COLOR Post-Its are yellow when created. They may be assigned a new color by using the FlowMenu. The colors available are pastel colors and other colors that do not conflict with the pen colors: yellow, magenta, light green, cyan, and gray. Post-Its can also be made transparent (or returned to being opaque). Transparent Post-Its are not completely see-though; they appear to be a lightly tinted pane of glass. 3.4.2 MOVING AND DELETING POST-ITS Post-Its can be moved or deleted using the FlowMenu. When a Post-It is being moved, a number of "send" regions will appear on the display, usually near the edges. If a Post-It is dropped onto one of these regions, it will move to another PostBoard. Typically, the destination PostBoard will be one indicated by the relative location of the send regions. The Post-It will appear next to the corresponding send region on the other PostBoard, with it's precise location dependent on where in the first send region it was dropped. When a Post-It is moved, it is moved to the front layer (so it will be on top of any other Post-Its) 3.4.3 GROUPING POST-ITS Post-Its can be grouped using the "tape" FlowMenu option. To tape Post-Its together, the user selects "tape" on one Post-It and then drags to one or more other Post-Its in sequence to tape them together. A thin, mostly transparent strip of tape will appear between each pair of taped Post-Its. When a Post-It that is taped to others is moved, all the others attached to it move as well, maintaining their relative orientation. To remove the tape from a Post-It, the "free" option is chosen. This removes any tape attached to the Post-It and any others. This may have the effect of breaking a group into multiple pieces, if the Post-It was the only link between different parts of a group. 3.4.4 MERGING AND STAMPING POST-ITS Post-Its can be merged or stamped on the whiteboard. When merged, the Post-It disappears and its contents are place on the whiteboard on top of whatever was underneath the Post-It. Stamping a Post-It copies the contents onto the whiteboard without destroying the Post-It. Merging and stamping are always done onto the whiteboard, not another Post-It. 3.5 CORKBOARD When a Post-It is moved into the corkboard area, it shrinks to about a quarter its size. When is it moved back out, it returns to its original size. There is a thin strip of corkboard where it borders the whiteboard in which Post-Its can be somewhere between full and quarter size, depend on how far in to the corkboard they are. Thus, moving a Post-It onto a corkboard region will result in a smooth transition. Taped Post-Its will resize as a group. 3.6 SAVE/RESTORE/PRINT AND UNDO/REDO The user will be able to save the entire PostBoard state and restore old states. The entire board can be printed. At least a single level of undo/redo will be supported. 4 NETWORK INTERFACE 4.1 OVERVIEW PostBoard will be connected to a network and will be able to receive data from outside sources and send data to other devices. The network interface will be a well know one, such as the EventHeap and DataHeap. 4.2 RECIEVING IMAGES Images can be sent to the PostBoard from other PostBoards (via the send/recieve regions), sketching tablets, cameras, and scanners. A image sent to the PostBoard will appear next to a specified send/recieve area just as if it had been dragged from another PostBoard. 4.3 STORAGE AND PRINTING PostBoard will save and restore states to and from a well-known data storage server. It will print to a well-known network printer (preferably color).