private void playVideoMenuItem_Click(object sender, RoutedEventArgs e) { MetadataContext videoSourceKey = new MetadataContext() { MetadataName = "Video.Source", NodeUid = NodeProxy.Id }; string source = NodeProxy.GetNodeMetadata(videoSourceKey).MetadataValue; VideoSizeHelper sizeHelper = new VideoSizeHelper(NodeProxy); RelatedContentPanelUtil.Instance.LoadRelatedVideoContent(source, sizeHelper.Size); string startPosition = null; string endPosition = null; Command playCommand = new Command(); playCommand.Name = "Play"; playCommand.Params = new List <Param>(); playCommand.Params.Add(new Param() { Name = "Source", Value = source }); MetadataContext videoStartKey = new MetadataContext() { MetadataName = "Video.StartPosition", NodeUid = NodeProxy.Id }; if (NodeProxy.HasMetadata(videoStartKey)) { startPosition = NodeProxy.GetNodeMetadata(videoStartKey).MetadataValue; playCommand.Params.Add(new Param() { Name = "StartTimeCode", Value = startPosition }); } MetadataContext videoEndKey = new MetadataContext() { MetadataName = "Video.EndPosition", NodeUid = NodeProxy.Id }; if (NodeProxy.HasMetadata(videoEndKey)) { endPosition = NodeProxy.GetNodeMetadata(videoEndKey).MetadataValue; playCommand.Params.Add(new Param() { Name = "EndTimeCode", Value = endPosition }); } playCommand.Params.Add(new Param() { Name = "NodeId", Value = NodeProxy.Id.ToString() }); //Utilities.SendMessage<Command>(MessageSender, playCommand); }
private void propertiesMenuItem_Click(object sender, RoutedEventArgs e) { NodePropertiesDialog npd = new NodePropertiesDialog(); npd.DataContext = NodeProxy; MetadataContext noteKey = new MetadataContext() { MetadataName = "Note", NodeUid = NodeProxy.Id }; if (NodeProxy.HasMetadata(noteKey)) { npd.Note = NodeProxy.GetNodeMetadata(noteKey).MetadataValue; } npd.Closed += new EventHandler(NodePropertiesDialog_Close); npd.Show(); }
private void NodePropertiesDialog_Loaded(object sender, RoutedEventArgs e) { NodeProxy = DataContext as INodeProxy; if (NodeProxy != null) { _originalName = NodeProxy.Name; _originalNote = Note; //make a copy to restore closing if (Note != null) { NodeNotesTextBlock.Text = Note; } NodeNotesTextBlock.Focus(); NodeNotesTextBlock.SelectionStart = NodeNotesTextBlock.Text.Length; if (NodeProxy.Created != DateTime.MinValue) { CreatedTimeTextBlock.Text = NodeProxy.Created.ToString("f"); } if (NodeProxy.LastModified != DateTime.MinValue) { ModifiedTimeTextBlock.Text = NodeProxy.LastModified.ToString("f"); } if (NodeProxy.NodeType.Name == "CompendiumReferenceNode") { MetadataContext context = new MetadataContext() { NodeUid = NodeProxy.Id, MetadataName = "LinkedFile.Source" }; if (NodeProxy.HasMetadata(context)) { Height = 480; ReferenceLocationRow.Height = new GridLength(30); ReferenceNodeInfoPanel.Visibility = System.Windows.Visibility.Visible; SoapMetadata linkedFileMetadata = NodeProxy.GetNodeMetadata(context); ReferenceFileLocationTextBox.Text = linkedFileMetadata.MetadataValue; } } } }
private void NodeContextMenu_Loaded(object sender, RoutedEventArgs e) { Command getPlayingStateCommand = new Command(); getPlayingStateCommand.Name = "GetPlayingState"; getPlayingStateCommand.Params = new List <Param>(); getPlayingStateCommand.Params.Add(new Param() { Name = "NodeId", Value = NodeProxy.Id.ToString() }); //Utilities.SendMessage<Command>(MessageSender, getPlayingStateCommand); playVideoMenuItem = new MenuItem(); playVideoMenuItem.Header = "Play Video Segment"; MetadataContext videoSourceKey = new MetadataContext() { MetadataName = "Video.Source", NodeUid = NodeProxy.Id }; playVideoMenuItem.Click += new RoutedEventHandler(playVideoMenuItem_Click); pauseVideoMenuItem = new MenuItem(); pauseVideoMenuItem.Header = "Pause Video Segment"; pauseVideoMenuItem.Click += delegate(object sender2, RoutedEventArgs e2) { Command pauseCommand = new Command(); pauseCommand.Name = "Pause"; //Utilities.SendMessage<Command>(MessageSender, pauseCommand); }; if (!NodeProxy.HasMetadata(videoSourceKey)) { playVideoMenuItem.IsEnabled = false; pauseVideoMenuItem.IsEnabled = false; } this.Items.Add(playVideoMenuItem); this.Items.Add(pauseVideoMenuItem); Separator videoOpSep = new Separator(); this.Items.Add(videoOpSep); MenuItem recordStartPosition = new MenuItem(); recordStartPosition.Header = "Record Start Position"; recordStartPosition.Click += delegate(object sender2, RoutedEventArgs e2) { Command getStartPositionCommand = new Command(); getStartPositionCommand.Name = "GetSourceAndPosition"; getStartPositionCommand.Params = new List <Param>(); getStartPositionCommand.Params.Add(new Param() { Name = "CallbackId", Value = "StartPosition" }); getStartPositionCommand.Params.Add(new Param() { Name = "NodeId", Value = NodeProxy.Id.ToString() }); //Utilities.SendMessage<Command>(MessageSender, getStartPositionCommand); }; this.Items.Add(recordStartPosition); MenuItem recordEndPosition = new MenuItem(); recordEndPosition.Header = "Record End Position"; recordEndPosition.Click += delegate(object sender2, RoutedEventArgs e2) { Command getEndPositionCommand = new Command(); getEndPositionCommand.Name = "GetSourceAndPosition"; getEndPositionCommand.Params = new List <Param>(); getEndPositionCommand.Params.Add(new Param() { Name = "CallbackId", Value = "EndPosition" }); getEndPositionCommand.Params.Add(new Param() { Name = "NodeId", Value = NodeProxy.Id.ToString() }); //Utilities.SendMessage<Command>(MessageSender, getEndPositionCommand); }; this.Items.Add(recordEndPosition); MenuItem clearVideoData = new MenuItem(); clearVideoData.Header = "Clear Node Video Markers"; clearVideoData.Click += delegate(object sender2, RoutedEventArgs e2) { TypeManager typeManager = IoC.IoCContainer.GetInjectionInstance().GetInstance <TypeManager>(); IMetadataTypeProxy stringMetadataTypeProxy = typeManager.GetMetadataType("string"); Navigator.UpdateNodeMetadataAsync(NodeProxy, Guid.Empty, null, "Video.Source", "", stringMetadataTypeProxy); }; clearVideoData.IsEnabled = false; if (NodeProxy.HasMetadata(videoSourceKey)) { if (!string.IsNullOrEmpty(NodeProxy.GetNodeMetadata(videoSourceKey).MetadataValue)) { clearVideoData.IsEnabled = true; } } this.Items.Add(clearVideoData); Separator videoOp2Sep = new Separator(); this.Items.Add(videoOp2Sep); MenuItem deleteNodeMenuItem = new MenuItem(); deleteNodeMenuItem.Header = "Delete Node"; deleteNodeMenuItem.Click += new RoutedEventHandler(deleteNodeMenuItem_Click); this.Items.Add(deleteNodeMenuItem); Separator copyOpSep = new Separator(); this.Items.Add(copyOpSep); MenuItem cloneMenuItem = new MenuItem(); cloneMenuItem.Header = "Clone"; cloneMenuItem.Click += new RoutedEventHandler(cloneMenuItem_Click); this.Items.Add(cloneMenuItem); MenuItem copyMenuItem = new MenuItem(); copyMenuItem.Header = "Copy"; copyMenuItem.Click += new RoutedEventHandler(copyMenuItem_Click); this.Items.Add(copyMenuItem); Separator propertiesSep = new Separator(); this.Items.Add(propertiesSep); MenuItem propertiesMenuItem = new MenuItem(); propertiesMenuItem.Header = "Properties..."; propertiesMenuItem.Click += new RoutedEventHandler(propertiesMenuItem_Click); this.Items.Add(propertiesMenuItem); Separator sendSep = new Separator(); this.Items.Add(sendSep); MenuItem sendMenuItem = new MenuItem(); sendMenuItem.Header = "Send to Web Part Connection"; sendMenuItem.Click += new RoutedEventHandler(sendMenuItem_Click); this.Items.Add(sendMenuItem); }