--- a/src/FingersDance.Control.UserPanel/UserControlUserPanel.xaml.cs Wed Oct 28 17:07:27 2009 +0100
+++ b/src/FingersDance.Control.UserPanel/UserControlUserPanel.xaml.cs Wed Nov 04 13:23:51 2009 +0100
@@ -8,6 +8,10 @@
using System.Windows.Media.Animation;
using System.Windows.Navigation;
using FingersDance.Data;
+using Microsoft.Surface.Presentation;
+using System.Globalization;
+using Microsoft.Surface.Presentation.Controls;
+using System.Reflection;
using FingersDance.ViewModels;
namespace FingersDance.Control.UserPanel
@@ -16,6 +20,7 @@
{
#region Variables
+ //public ContactEventHandler ContactDown;
public event EventHandler OnSuccessAnnotation; //Event to display ColorAnnotation from different Users
public int id = 0;
public uint idcolor = 0; //The color of the Pivot Button
@@ -55,6 +60,54 @@
//_Project = p;
this.UserControlSyncSource.Load(path, col, cut);
UserControlSyncSource.OnSuccessAnnotation+=new EventHandler(UserControlSyncSource_OnSuccessAnnotation);
+ //SAR -Contact Down event for TAG Control
+ InitializeDefinitions();
+ }
+
+ private void InitializeDefinitions()
+ {
+ for (byte k = 1; k <= 5; k++)
+ {
+ ByteTagVisualizationDefinition tagDef = new ByteTagVisualizationDefinition();
+ // The tag value that this definition will respond to.
+ tagDef.Value = k;
+ // The .xaml file for the UI.
+ tagDef.Source = new Uri("FingersDance.Control.UserPanel;Component/TagVisuSoundControl.xaml", UriKind.Relative);
+
+ // The maximum number for this tag value. tagDef.MaxCount = 2;
+ // The visualization stays for 2 seconds after the tag is lifted.
+ tagDef.LostTagTimeout = 2000.0;
+ // The orientation offset (default).
+ tagDef.OrientationOffsetFromTag = 0.0;
+ // The physical offset (horizontal inches, vertical inches).
+ tagDef.PhysicalCenterOffsetFromTag = new Vector(0.5, 0.25);
+ // The tag removal behavior (default).
+ tagDef.TagRemovedBehavior = TagRemovedBehavior.Fade;
+ // Orient UI to tag? (default).
+ tagDef.UsesTagOrientation = true;
+ // Add the definition to the collection.
+ this.tagVisualizer.Definitions.Add(tagDef);
+ }
+ }
+
+ private void OnVisualizationAdded(object sender, TagVisualizerEventArgs e)
+ {
+ TagVisuSoundControl camera = (TagVisuSoundControl)e.TagVisualization;
+ switch (camera.VisualizedTag.Byte.Value)
+ {
+ case 1: camera.cameraModel.Content = "Fabrikam, Inc. ABC-12";
+ break;
+ case 2: camera.cameraModel.Content = "Fabrikam, Inc. DEF-34";
+ break;
+ case 3: camera.cameraModel.Content = "Fabrikam, Inc. GHI-56";
+ break;
+ case 4: camera.cameraModel.Content = "Fabrikam, Inc. JKL-78";
+ break;
+ case 5: camera.cameraModel.Content = "Fabrikam, Inc. MNO-90";
+ break;
+ default: camera.cameraModel.Content = "UNKNOWN MODEL";
+ break;
+ }
}
#endregion
@@ -73,5 +126,34 @@
{
UserControlSyncSource.UserControlPlayer_DisplayAnnotation(id, b);
}
- }
+
+ //SAR
+ public void UserControlUserPanel_ContactDown(object sender, ContactEventArgs e)
+ {
+ Contact c = e.Contact;
+ string type = "";
+ if (c.Tag.Type == TagType.Byte)
+ {
+ type = "Byte Tag";
+ type += (" Value: " + c.Tag.Byte.Value.ToString("X", CultureInfo.InvariantCulture));
+ }
+ else if (c.Tag.Type == TagType.Identity)
+ {
+ type = "Identity Tag";
+ type += (" Value: " + c.Tag.Byte.Value.ToString("X", CultureInfo.InvariantCulture));
+ }
+ }
+
+ private void tagVisualizer_VisualizationAdded(object sender, Microsoft.Surface.Presentation.Controls.TagVisualizerEventArgs e)
+ {
+
+ }
+
+ private void v(object sender, Microsoft.Surface.Presentation.Controls.TagVisualizerEventArgs e)
+ {
+
+ }
+
+
+ }
}
\ No newline at end of file