The SDG Toolkit Edward Tse and Saul Greenberg University of Calgary, Alberta Canada
Single Display Groupware (SDG)
Problems
Message With the SDG Toolkit, programmers can achieve rapid prototyping of SDG applications by easily implementing core SDG functionalities
First Experiences with SDG Zanella and Greenberg, 2001 Greenberg, Boyle, LaBerge, 1999 Greenberg and Fitchett, 2001
Related Work Bederson, et al., 1999 Myers, et al., 1998 Greenberg and Fitchett, 2001 MID Pebbles Phidgets
SDG Toolkit
Core SDG Functionalities Obtaining Input Supporting Tables and Vertical Displays Multiple cursors Widget Layer
Obtaining Input
Supporting Tables and Vertical Displays What is going on?
Obtaining Input Rotation Matrix
Multiple Cursors Cursor[] sdgCursors = {Cursors.Arrow, Cursors.Hand}; String[] sdgText = {"Edward", "Saul"}; int[] sdgDegreeRotations = {-90, 0}; for (int i=0; i < sdgManager1.Mice.Count && i < 2; ++i) { sdgManager1.Mice[i].Cursor = sdgCursors[i]; sdgManager1.Mice[i].Text = sdgText[i]; sdgManager1.Mice[i].DegreeRotation = sdgDegreeRotations[i]; }
Why Existing Widgets are Problematic
SDG Widget Layer public class UserControl1 : SdgUserControl { //Designer generated code private void SdgMouseDown(object sender, SdgMouseEventArgs e) { if (e.ID > 0) this.BackColor = Color.Red; else this.BackColor = Color.Blue; }
SDG Widget Layer Example SDG Widgets Diaz-Marino, Tse and Greenberg, (2003)
SDG Flow Menu
SDG Magic Lenses
Diamond Touch Toolkit Extending the SDG Toolkit Diaz-Marino, Tse and Greenberg, (2003)
Digital Vision Technology Extending the SDG Toolkit
Message Thanks to NSERC, SMART Technologies, Alberta Ingenuity and iCore for their financial support Software available at With the SDG Toolkit, programmers can achieve rapid prototyping of SDG applications by easily implementing core SDG functionalities