From 069cf79411e05042879fb5e6f7b29a6d6e1f12ce Mon Sep 17 00:00:00 2001
From: Ivo Petrov <48355182+ivaylo-matov@users.noreply.github.com>
Date: Wed, 10 Apr 2024 14:41:36 +0100
Subject: [PATCH 01/13] works - dirty draft
---
.../AssemblySharedInfo.cs | 6 +--
.../Commands/WorkspaceCommands.cs | 24 ++++++++-
.../Properties/Resources.Designer.cs | 9 ++++
.../Properties/Resources.en-US.resx | 10 ++++
src/DynamoCoreWpf/Properties/Resources.resx | 11 ++++
src/DynamoCoreWpf/PublicAPI.Unshipped.txt | 5 ++
.../ViewModels/Core/DynamoViewModel.cs | 16 ++++++
.../Core/DynamoViewModelDelegateCommands.cs | 16 ++++++
.../ViewModels/Core/NodeViewModel.cs | 8 +++
.../ViewModels/Core/WorkspaceViewModel.cs | 24 +++++++++
src/DynamoCoreWpf/Views/Core/DynamoView.xaml | 9 ++++
.../Views/Core/DynamoView.xaml.cs | 7 +++
src/DynamoCoreWpf/Views/Core/NodeView.xaml.cs | 21 +++++++-
.../Views/Core/WorkspaceView.xaml.cs | 54 +++++++++++++++++--
.../Views/Preview/PreviewControl.xaml.cs | 8 +++
15 files changed, 219 insertions(+), 9 deletions(-)
diff --git a/src/AssemblySharedInfoGenerator/AssemblySharedInfo.cs b/src/AssemblySharedInfoGenerator/AssemblySharedInfo.cs
index d27acfce5d3..449558e064a 100644
--- a/src/AssemblySharedInfoGenerator/AssemblySharedInfo.cs
+++ b/src/AssemblySharedInfoGenerator/AssemblySharedInfo.cs
@@ -8,7 +8,7 @@
// associated with an assembly.
[assembly: AssemblyCompany("Autodesk, Inc")]
[assembly: AssemblyProduct("Dynamo")]
-[assembly: AssemblyCopyright("Copyright � Autodesk, Inc 2024")]
+[assembly: AssemblyCopyright("Copyright © Autodesk, Inc 2024")]
[assembly: AssemblyTrademark("")]
//In order to begin building localizable applications, set
@@ -45,7 +45,7 @@
// to distinguish one build from another. AssemblyFileVersion is specified
// in AssemblyVersionInfo.cs so that it can be easily incremented by the
// automated build process.
-[assembly: AssemblyVersion("3.1.0.3411")]
+[assembly: AssemblyVersion("3.1.0.4654")]
// By default, the "Product version" shown in the file properties window is
@@ -64,4 +64,4 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyFileVersion("3.1.0.3411")]
+[assembly: AssemblyFileVersion("3.1.0.4654")]
diff --git a/src/DynamoCoreWpf/Commands/WorkspaceCommands.cs b/src/DynamoCoreWpf/Commands/WorkspaceCommands.cs
index 3780bbc167f..7889c1cea6f 100644
--- a/src/DynamoCoreWpf/Commands/WorkspaceCommands.cs
+++ b/src/DynamoCoreWpf/Commands/WorkspaceCommands.cs
@@ -1,4 +1,4 @@
-using System.Linq;
+using System.Linq;
using Dynamo.Graph.Nodes;
using Dynamo.Graph.Workspaces;
using Dynamo.Selection;
@@ -23,6 +23,13 @@ public partial class WorkspaceViewModel
private DelegateCommand setArgumentLacingCommand;
private DelegateCommand findNodesFromSelectionCommand;
private DelegateCommand selectAllCommand;
+
+ private DelegateCommand unpinPBCommand;
+
+
+
+
+
private DelegateCommand graphAutoLayoutCommand;
private DelegateCommand showHideAllGeometryPreviewCommand;
private DelegateCommand showInCanvasSearchCommand;
@@ -58,6 +65,21 @@ public DelegateCommand SelectAllCommand
}
}
+
+ [JsonIgnore]
+ public DelegateCommand UnpinPBCommand
+ {
+ get
+ {
+ if (unpinPBCommand == null)
+ unpinPBCommand = new DelegateCommand(UnpinPB, CanUnpinPB);
+ return unpinPBCommand;
+ }
+ }
+
+
+
+
[JsonIgnore]
public DelegateCommand GraphAutoLayoutCommand
{
diff --git a/src/DynamoCoreWpf/Properties/Resources.Designer.cs b/src/DynamoCoreWpf/Properties/Resources.Designer.cs
index 6e04b4bb8a8..51a72269495 100644
--- a/src/DynamoCoreWpf/Properties/Resources.Designer.cs
+++ b/src/DynamoCoreWpf/Properties/Resources.Designer.cs
@@ -1693,6 +1693,15 @@ public static string DynamoViewEditMenuUndo {
}
}
+ ///
+ /// Looks up a localized string similar to _Unpin PB.
+ ///
+ public static string DynamoViewEditMenuUnpinPB {
+ get {
+ return ResourceManager.GetString("DynamoViewEditMenuUnpinPB", resourceCulture);
+ }
+ }
+
///
/// Looks up a localized string similar to E_xtensions.
///
diff --git a/src/DynamoCoreWpf/Properties/Resources.en-US.resx b/src/DynamoCoreWpf/Properties/Resources.en-US.resx
index ea3d8cbeb24..99c1fecfa2c 100644
--- a/src/DynamoCoreWpf/Properties/Resources.en-US.resx
+++ b/src/DynamoCoreWpf/Properties/Resources.en-US.resx
@@ -582,6 +582,16 @@ Don't worry, you'll have the option to save your work.
_Select All
Edit menu | Select all nodes
+
+ _Unpin PB
+ Edit menu | Unpin preview bubbles
+
+
+
+
+
+
+
_Select Neighbors
diff --git a/src/DynamoCoreWpf/Properties/Resources.resx b/src/DynamoCoreWpf/Properties/Resources.resx
index d6e033680f6..2d420b4b30a 100644
--- a/src/DynamoCoreWpf/Properties/Resources.resx
+++ b/src/DynamoCoreWpf/Properties/Resources.resx
@@ -330,6 +330,17 @@
_Select All
Edit menu | Select all nodes
+
+ _Unpin PB
+ Edit menu | Unpin preview bubbles
+
+
+
+
+
+
+
+
_Undo
Edit menu | Undo
diff --git a/src/DynamoCoreWpf/PublicAPI.Unshipped.txt b/src/DynamoCoreWpf/PublicAPI.Unshipped.txt
index ea80c64aafd..31fdd289e92 100644
--- a/src/DynamoCoreWpf/PublicAPI.Unshipped.txt
+++ b/src/DynamoCoreWpf/PublicAPI.Unshipped.txt
@@ -2024,6 +2024,8 @@ Dynamo.ViewModels.DynamoViewModel.ScaleFactorLog.set -> void
Dynamo.ViewModels.DynamoViewModel.SelectAll(object parameter) -> void
Dynamo.ViewModels.DynamoViewModel.SelectAllCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.DynamoViewModel.SelectAllCommand.set -> void
+Dynamo.ViewModels.DynamoViewModel.UnpinPBCommand.get -> Dynamo.UI.Commands.DelegateCommand
+Dynamo.ViewModels.DynamoViewModel.UnpinPBCommand.set -> void
Dynamo.ViewModels.DynamoViewModel.SelectNeighbors(object parameters) -> void
Dynamo.ViewModels.DynamoViewModel.SelectNeighborsCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.DynamoViewModel.SelectNeighborsCommand.set -> void
@@ -3027,6 +3029,7 @@ Dynamo.ViewModels.WorkspaceViewModel.ResetFitViewToggleCommand.get -> Dynamo.UI.
Dynamo.ViewModels.WorkspaceViewModel.RunSettingsViewModel.get -> Dynamo.Wpf.ViewModels.RunSettingsViewModel
Dynamo.ViewModels.WorkspaceViewModel.RunSettingsViewModel.set -> void
Dynamo.ViewModels.WorkspaceViewModel.SelectAllCommand.get -> Dynamo.UI.Commands.DelegateCommand
+Dynamo.ViewModels.WorkspaceViewModel.UnpinPBCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.WorkspaceViewModel.SelectionArgumentLacing.get -> Dynamo.Graph.Nodes.LacingStrategy
Dynamo.ViewModels.WorkspaceViewModel.SetArgumentLacingCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.WorkspaceViewModel.SetCurrentOffsetCommand.get -> Dynamo.UI.Commands.DelegateCommand
@@ -3034,6 +3037,7 @@ Dynamo.ViewModels.WorkspaceViewModel.SetZoomCommand.get -> Dynamo.UI.Commands.De
Dynamo.ViewModels.WorkspaceViewModel.ShowAllWiresCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.WorkspaceViewModel.ShowHideAllGeometryPreviewCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.WorkspaceViewModel.ShowInCanvasSearchCommand.get -> Dynamo.UI.Commands.DelegateCommand
+Dynamo.ViewModels.WorkspaceViewModel.UnpinPBsTriggered -> System.EventHandler
Dynamo.ViewModels.WorkspaceViewModel.Watch3DViewModels.get -> System.Collections.ObjectModel.ObservableCollection
Dynamo.ViewModels.WorkspaceViewModel.Watch3DViewModels.set -> void
Dynamo.ViewModels.WorkspaceViewModel.WorkspaceElements.get -> System.Windows.Data.CompositeCollection
@@ -4495,6 +4499,7 @@ static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuPresetsMenu.get -> stri
static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuRedo.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuRestorePreset.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuSelectAll.get -> string
+static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuUnpinPB.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuSelectNeighbours.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuUndo.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewExtensionsMenu.get -> string
diff --git a/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModel.cs b/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModel.cs
index 0becc9ac897..be4cb56c6ce 100644
--- a/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModel.cs
+++ b/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModel.cs
@@ -2803,6 +2803,22 @@ internal bool CanSelectAll(object parameter)
return this.CurrentSpaceViewModel.CanSelectAll(null);
}
+ public void UnpinPB(object parameter)
+ {
+ this.CurrentSpaceViewModel.UnpinPB(null);
+ }
+
+ internal bool CanUnpinPB(object parameter)
+ {
+ return this.CurrentSpaceViewModel.CanUnpinPB(null);
+ }
+
+
+
+
+
+
+
public void MakeNewHomeWorkspace(object parameter)
{
if (ClearHomeWorkspaceInternal())
diff --git a/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModelDelegateCommands.cs b/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModelDelegateCommands.cs
index 56faceb04df..a6d5ed9fbfb 100644
--- a/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModelDelegateCommands.cs
+++ b/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModelDelegateCommands.cs
@@ -40,6 +40,15 @@ private void InitializeDelegateCommands()
GraphAutoLayoutCommand = new DelegateCommand(DoGraphAutoLayout, CanDoGraphAutoLayout);
GoHomeCommand = new DelegateCommand(GoHomeView, CanGoHomeView);
SelectAllCommand = new DelegateCommand(SelectAll, CanSelectAll);
+
+ UnpinPBCommand = new DelegateCommand(UnpinPB, CanUnpinPB);
+
+
+
+
+
+
+
HomeCommand = new DelegateCommand(GoHome, CanGoHome);
NewHomeWorkspaceCommand = new DelegateCommand(MakeNewHomeWorkspace, CanMakeNewHomeWorkspace);
CloseHomeWorkspaceCommand = new DelegateCommand(CloseHomeWorkspace, CanCloseHomeWorkspace);
@@ -136,6 +145,13 @@ private void InitializeDelegateCommands()
public DelegateCommand ToggleBackgroundGridVisibilityCommand { get; set; }
public DelegateCommand UpdateGraphicHelpersScaleCommand { get; set; }
public DelegateCommand SelectAllCommand { get; set; }
+
+ public DelegateCommand UnpinPBCommand { get; set; }
+
+
+
+
+
public DelegateCommand SaveImageCommand { get; set; }
public DelegateCommand Save3DImageCommand { get; set; }
public DelegateCommand ValidateWorkSpaceBeforeToExportAsImageCommand { get; set; }
diff --git a/src/DynamoCoreWpf/ViewModels/Core/NodeViewModel.cs b/src/DynamoCoreWpf/ViewModels/Core/NodeViewModel.cs
index ef89e10d916..39857be819d 100644
--- a/src/DynamoCoreWpf/ViewModels/Core/NodeViewModel.cs
+++ b/src/DynamoCoreWpf/ViewModels/Core/NodeViewModel.cs
@@ -94,12 +94,20 @@ public bool PreviewPinned
if (previewPinned == value) return;
previewPinned = value;
+ // ip code:
+ RaisePropertyChanged(nameof(PreviewPinned));
+
DynamoViewModel.ExecuteCommand(
new DynamoModel.UpdateModelValueCommand(
System.Guid.Empty, NodeModel.GUID, "PreviewPinned", previewPinned.ToString()));
}
}
+ //protected virtual void OnPreviewPinnedChanged()
+ //{
+ // PreviewPinnedChanged?.Invoke(this, EventArgs.Empty);
+ //}
+
[JsonIgnore]
public NodeModel NodeModel { get { return nodeLogic; } private set { nodeLogic = value; } }
diff --git a/src/DynamoCoreWpf/ViewModels/Core/WorkspaceViewModel.cs b/src/DynamoCoreWpf/ViewModels/Core/WorkspaceViewModel.cs
index 4f1dcc9fa1c..06adb39da0b 100644
--- a/src/DynamoCoreWpf/ViewModels/Core/WorkspaceViewModel.cs
+++ b/src/DynamoCoreWpf/ViewModels/Core/WorkspaceViewModel.cs
@@ -1027,6 +1027,30 @@ internal bool CanSelectAll(object parameter)
return true;
}
+ // ip code :
+ public event EventHandler UnpinPBsTriggered;
+ ///
+ /// ip code :
+ ///
+ ///
+ internal void UnpinPB(object parameter)
+ {
+ RaisePropertyChanged("UnpinAllPBs");
+
+ foreach (var nodeVM in Nodes)
+ {
+ nodeVM.PreviewPinned = false;
+ }
+ UnpinPBsTriggered?.Invoke(this, EventArgs.Empty);
+ }
+
+ internal bool CanUnpinPB(object parameter)
+ {
+ return true;
+ }
+
+
+
///
/// After command framework is implemented, this method should now be only
/// called from a menu item (i.e. Ctrl + W). It should not be used as a
diff --git a/src/DynamoCoreWpf/Views/Core/DynamoView.xaml b/src/DynamoCoreWpf/Views/Core/DynamoView.xaml
index 44be7126d45..88c1a5528aa 100644
--- a/src/DynamoCoreWpf/Views/Core/DynamoView.xaml
+++ b/src/DynamoCoreWpf/Views/Core/DynamoView.xaml
@@ -450,6 +450,15 @@
Command="{Binding SelectAllCommand}"
Name="selectAll"
InputGestureText="Ctrl + A" />
+
+
+
+
+
+
+
@@ -501,7 +510,7 @@ private void EditableNameBox_KeyDown(object sender, KeyEventArgs e)
#region Preview Control Related Event Handlers
- private void OnNodeViewMouseEnter(object sender, MouseEventArgs e)
+ private void OnNodeViewMouseEnter(object sender, MouseEventArgs e)
{
// if the node is located under "Hide preview bubbles" menu item and the item is clicked,
// ViewModel.DynamoViewModel.ShowPreviewBubbles will be updated AFTER node mouse enter event occurs
@@ -570,6 +579,16 @@ private void OnNodeViewMouseLeave(object sender, MouseEventArgs e)
}
}
+ // ip code :
+ private void OnForceUnpinPB(object sender, RoutedEventArgs e)
+ {
+ if (PreviewControl.StaysOpen)
+ {
+ //PreviewControl.StaysOpen = false;
+
+ }
+ }
+
///
/// This event fires right after preview's state has been changed.
/// This event is necessary, it handles some preview's manipulations,
diff --git a/src/DynamoCoreWpf/Views/Core/WorkspaceView.xaml.cs b/src/DynamoCoreWpf/Views/Core/WorkspaceView.xaml.cs
index 2af85880d8f..07e16cc73f5 100644
--- a/src/DynamoCoreWpf/Views/Core/WorkspaceView.xaml.cs
+++ b/src/DynamoCoreWpf/Views/Core/WorkspaceView.xaml.cs
@@ -11,6 +11,7 @@
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
+using DSCore;
using Dynamo.Controls;
using Dynamo.Graph;
using Dynamo.Graph.Annotations;
@@ -143,6 +144,9 @@ private void RemoveViewModelsubscriptions(WorkspaceViewModel ViewModel)
ViewModel.WorkspacePropertyEditRequested -= VmOnWorkspacePropertyEditRequested;
ViewModel.RequestSelectionBoxUpdate -= VmOnRequestSelectionBoxUpdate;
+ // ip code :
+ ViewModel.UnpinPBsTriggered -= OnUnpinPBsTriggered;
+
ViewModel.Model.RequestNodeCentered -= vm_RequestNodeCentered;
ViewModel.Model.CurrentOffsetChanged -= vm_CurrentOffsetChanged;
DynamoSelection.Instance.Selection.CollectionChanged -= OnSelectionCollectionChanged;
@@ -171,12 +175,29 @@ private void AttachViewModelsubscriptions(WorkspaceViewModel ViewModel)
ViewModel.WorkspacePropertyEditRequested += VmOnWorkspacePropertyEditRequested;
ViewModel.RequestSelectionBoxUpdate += VmOnRequestSelectionBoxUpdate;
+ // ip code :
+ ViewModel.UnpinPBsTriggered += OnUnpinPBsTriggered;
+
ViewModel.Model.RequestNodeCentered += vm_RequestNodeCentered;
ViewModel.Model.CurrentOffsetChanged += vm_CurrentOffsetChanged;
DynamoSelection.Instance.Selection.CollectionChanged += OnSelectionCollectionChanged;
infiniteGridView.AttachToZoomBorder(zoomBorder);
}
+
+
+
+ // ip code :
+ public void OnUnpinPBsTriggered(object sender, EventArgs e)
+ {
+ var allNodes = this.ChildrenOfType().Where(view => view.HasPreviewControl);
+
+ foreach (var node in allNodes)
+ {
+ node.PreviewControl.ForceHidePreviewBubble(); // look for HidePreviewBubble()
+ }
+ }
+
private void ShowHideNodeAutoCompleteControl(ShowHideFlags flag)
{
ShowHidePopup(flag, NodeAutoCompleteSearchBar);
@@ -390,8 +411,8 @@ private RenderTargetBitmap GetRender()
if (!initialized) return null;
// Add padding to the edge and make them multiples of two (pad 10px on each side).
- bounds.Width = 20 + ((((int)Math.Ceiling(bounds.Width)) + 1) & ~0x01);
- bounds.Height = 20 + ((((int)Math.Ceiling(bounds.Height)) + 1) & ~0x01);
+ bounds.Width = 20 + ((((int)System.Math.Ceiling(bounds.Width)) + 1) & ~0x01);
+ bounds.Height = 20 + ((((int)System.Math.Ceiling(bounds.Height)) + 1) & ~0x01);
var currentTransformGroup = WorkspaceElements.RenderTransform as TransformGroup;
WorkspaceElements.RenderTransform = new TranslateTransform(10.0 - bounds.X - minX, 10.0 - bounds.Y - minY);
@@ -783,6 +804,31 @@ private void OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
}
}
+
+ // ip code :
+ private void OnForceHidePreview(object sender, MouseButtonEventArgs e)
+ {
+ //if (snappedPort != null)
+ //{
+ // ViewModel.HandlePortClicked(snappedPort);
+ //}
+ //else if (Keyboard.Modifiers != ModifierKeys.Control)
+ //{
+ // ViewModel.HandleLeftButtonDown(workBench, e);
+ //}
+
+ //if (!ViewModel.IsDragging) return;
+
+ var nodesToHidePreview = this.ChildrenOfType().Where(view =>
+ view.HasPreviewControl && !view.PreviewControl.IsHidden && view.PreviewControl.StaysOpen);
+
+ foreach (var node in nodesToHidePreview)
+ {
+ node.PreviewControl.ForceHidePreviewBubble();
+ }
+ }
+
+
private void OnCanvasMouseDown(object sender, MouseButtonEventArgs e)
{
ContextMenuPopup.IsOpen = false;
@@ -877,9 +923,9 @@ private void OnMouseMove(object sender, MouseEventArgs e)
// Check that current mouse position is far enough from start position.
var canDrag =
- (Math.Abs(currentMousePosition.X - startMousePosition.X) >
+ (System.Math.Abs(currentMousePosition.X - startMousePosition.X) >
SystemParameters.MinimumHorizontalDragDistance) &&
- (Math.Abs(currentMousePosition.Y - startMousePosition.Y) >
+ (System.Math.Abs(currentMousePosition.Y - startMousePosition.Y) >
SystemParameters.MinimumVerticalDragDistance) &&
e.OriginalSource is DragCanvas;
diff --git a/src/DynamoCoreWpf/Views/Preview/PreviewControl.xaml.cs b/src/DynamoCoreWpf/Views/Preview/PreviewControl.xaml.cs
index 983001f69cb..119b4691dac 100644
--- a/src/DynamoCoreWpf/Views/Preview/PreviewControl.xaml.cs
+++ b/src/DynamoCoreWpf/Views/Preview/PreviewControl.xaml.cs
@@ -180,6 +180,14 @@ internal void HidePreviewBubble()
}
}
+ // ip code :
+ internal void ForceHidePreviewBubble()
+ {
+ StaysOpen = false;
+ if (IsExpanded) TransitionToState(State.Condensed);
+ if (IsCondensed) TransitionToState(State.Hidden);
+ }
+
///
/// It is possible for a run to complete while the preview display is
/// in transition. In these situations, we can store the MirrorData and
From e082ccc33c049049438eb14e6f23a641c79bb3cc Mon Sep 17 00:00:00 2001
From: Ivo Petrov <48355182+ivaylo-matov@users.noreply.github.com>
Date: Wed, 10 Apr 2024 15:54:21 +0100
Subject: [PATCH 02/13] working - cleaner code
without hotkey
some code might be redundant
---
.../Commands/WorkspaceCommands.cs | 39 +++++-----
.../Properties/Resources.Designer.cs | 6 +-
.../Properties/Resources.en-US.resx | 10 +--
src/DynamoCoreWpf/Properties/Resources.resx | 11 +--
src/DynamoCoreWpf/PublicAPI.Unshipped.txt | 11 +--
.../ViewModels/Core/DynamoViewModel.cs | 14 ++--
.../Core/DynamoViewModelDelegateCommands.cs | 20 +-----
.../ViewModels/Core/WorkspaceViewModel.cs | 46 ++++++------
src/DynamoCoreWpf/Views/Core/DynamoView.xaml | 12 +---
.../Views/Core/DynamoView.xaml.cs | 7 --
src/DynamoCoreWpf/Views/Core/NodeView.xaml.cs | 31 +++-----
.../Views/Core/WorkspaceView.xaml.cs | 71 +++++++++----------
.../Views/Preview/PreviewControl.xaml.cs | 6 +-
13 files changed, 111 insertions(+), 173 deletions(-)
diff --git a/src/DynamoCoreWpf/Commands/WorkspaceCommands.cs b/src/DynamoCoreWpf/Commands/WorkspaceCommands.cs
index 7889c1cea6f..03515941ed4 100644
--- a/src/DynamoCoreWpf/Commands/WorkspaceCommands.cs
+++ b/src/DynamoCoreWpf/Commands/WorkspaceCommands.cs
@@ -23,13 +23,6 @@ public partial class WorkspaceViewModel
private DelegateCommand setArgumentLacingCommand;
private DelegateCommand findNodesFromSelectionCommand;
private DelegateCommand selectAllCommand;
-
- private DelegateCommand unpinPBCommand;
-
-
-
-
-
private DelegateCommand graphAutoLayoutCommand;
private DelegateCommand showHideAllGeometryPreviewCommand;
private DelegateCommand showInCanvasSearchCommand;
@@ -37,6 +30,7 @@ public partial class WorkspaceViewModel
private DelegateCommand hideAllPopupCommand;
private DelegateCommand showAllWiresCommand;
private DelegateCommand hideAllWiresCommand;
+ private DelegateCommand unpinAllPreviewBubblesCommand;
#endregion
@@ -64,22 +58,7 @@ public DelegateCommand SelectAllCommand
return selectAllCommand;
}
}
-
-
- [JsonIgnore]
- public DelegateCommand UnpinPBCommand
- {
- get
- {
- if (unpinPBCommand == null)
- unpinPBCommand = new DelegateCommand(UnpinPB, CanUnpinPB);
- return unpinPBCommand;
- }
- }
-
-
-
-
+
[JsonIgnore]
public DelegateCommand GraphAutoLayoutCommand
{
@@ -297,6 +276,20 @@ public DelegateCommand HideAllWiresCommand
return hideAllWiresCommand;
}
}
+
+ ///
+ /// View Command to hide all pinned preview bubbles, if any are pinned
+ ///
+ [JsonIgnore]
+ public DelegateCommand UnpinAllPreviewBubblesCommand
+ {
+ get
+ {
+ if (unpinAllPreviewBubblesCommand == null)
+ unpinAllPreviewBubblesCommand = new DelegateCommand(UnpinAllPreviewBubbles, CanUnpinAllPreviewBubbles);
+ return unpinAllPreviewBubblesCommand;
+ }
+ }
#endregion
#region Properties for Command Data Binding
diff --git a/src/DynamoCoreWpf/Properties/Resources.Designer.cs b/src/DynamoCoreWpf/Properties/Resources.Designer.cs
index 51a72269495..aad81334e2b 100644
--- a/src/DynamoCoreWpf/Properties/Resources.Designer.cs
+++ b/src/DynamoCoreWpf/Properties/Resources.Designer.cs
@@ -1694,11 +1694,11 @@ public static string DynamoViewEditMenuUndo {
}
///
- /// Looks up a localized string similar to _Unpin PB.
+ /// Looks up a localized string similar to _Unpin All Preview Bubbles.
///
- public static string DynamoViewEditMenuUnpinPB {
+ public static string DynamoViewEditMenuUnpinAllPreviewBubbles {
get {
- return ResourceManager.GetString("DynamoViewEditMenuUnpinPB", resourceCulture);
+ return ResourceManager.GetString("DynamoViewEditMenuUnpinAllPreviewBubbles", resourceCulture);
}
}
diff --git a/src/DynamoCoreWpf/Properties/Resources.en-US.resx b/src/DynamoCoreWpf/Properties/Resources.en-US.resx
index 99c1fecfa2c..6b06f307e02 100644
--- a/src/DynamoCoreWpf/Properties/Resources.en-US.resx
+++ b/src/DynamoCoreWpf/Properties/Resources.en-US.resx
@@ -582,16 +582,10 @@ Don't worry, you'll have the option to save your work.
_Select All
Edit menu | Select all nodes
-
- _Unpin PB
+
+ _Unpin All Preview Bubbles
Edit menu | Unpin preview bubbles
-
-
-
-
-
-
_Select Neighbors
diff --git a/src/DynamoCoreWpf/Properties/Resources.resx b/src/DynamoCoreWpf/Properties/Resources.resx
index 2d420b4b30a..f0f403d8cd3 100644
--- a/src/DynamoCoreWpf/Properties/Resources.resx
+++ b/src/DynamoCoreWpf/Properties/Resources.resx
@@ -330,17 +330,10 @@
_Select All
Edit menu | Select all nodes
-
- _Unpin PB
+
+ _Unpin All Preview Bubbles
Edit menu | Unpin preview bubbles
-
-
-
-
-
-
-
_Undo
Edit menu | Undo
diff --git a/src/DynamoCoreWpf/PublicAPI.Unshipped.txt b/src/DynamoCoreWpf/PublicAPI.Unshipped.txt
index 31fdd289e92..68fd2d84222 100644
--- a/src/DynamoCoreWpf/PublicAPI.Unshipped.txt
+++ b/src/DynamoCoreWpf/PublicAPI.Unshipped.txt
@@ -2024,8 +2024,8 @@ Dynamo.ViewModels.DynamoViewModel.ScaleFactorLog.set -> void
Dynamo.ViewModels.DynamoViewModel.SelectAll(object parameter) -> void
Dynamo.ViewModels.DynamoViewModel.SelectAllCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.DynamoViewModel.SelectAllCommand.set -> void
-Dynamo.ViewModels.DynamoViewModel.UnpinPBCommand.get -> Dynamo.UI.Commands.DelegateCommand
-Dynamo.ViewModels.DynamoViewModel.UnpinPBCommand.set -> void
+Dynamo.ViewModels.DynamoViewModel.UnpinAllPreviewBubblesCommand.get -> Dynamo.UI.Commands.DelegateCommand
+Dynamo.ViewModels.DynamoViewModel.UnpinAllPreviewBubblesCommand.set -> void
Dynamo.ViewModels.DynamoViewModel.SelectNeighbors(object parameters) -> void
Dynamo.ViewModels.DynamoViewModel.SelectNeighborsCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.DynamoViewModel.SelectNeighborsCommand.set -> void
@@ -3029,7 +3029,6 @@ Dynamo.ViewModels.WorkspaceViewModel.ResetFitViewToggleCommand.get -> Dynamo.UI.
Dynamo.ViewModels.WorkspaceViewModel.RunSettingsViewModel.get -> Dynamo.Wpf.ViewModels.RunSettingsViewModel
Dynamo.ViewModels.WorkspaceViewModel.RunSettingsViewModel.set -> void
Dynamo.ViewModels.WorkspaceViewModel.SelectAllCommand.get -> Dynamo.UI.Commands.DelegateCommand
-Dynamo.ViewModels.WorkspaceViewModel.UnpinPBCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.WorkspaceViewModel.SelectionArgumentLacing.get -> Dynamo.Graph.Nodes.LacingStrategy
Dynamo.ViewModels.WorkspaceViewModel.SetArgumentLacingCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.WorkspaceViewModel.SetCurrentOffsetCommand.get -> Dynamo.UI.Commands.DelegateCommand
@@ -3037,7 +3036,7 @@ Dynamo.ViewModels.WorkspaceViewModel.SetZoomCommand.get -> Dynamo.UI.Commands.De
Dynamo.ViewModels.WorkspaceViewModel.ShowAllWiresCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.WorkspaceViewModel.ShowHideAllGeometryPreviewCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.ViewModels.WorkspaceViewModel.ShowInCanvasSearchCommand.get -> Dynamo.UI.Commands.DelegateCommand
-Dynamo.ViewModels.WorkspaceViewModel.UnpinPBsTriggered -> System.EventHandler
+Dynamo.ViewModels.WorkspaceViewModel.UnpinAllPreviewBubblesTriggered -> System.EventHandler
Dynamo.ViewModels.WorkspaceViewModel.Watch3DViewModels.get -> System.Collections.ObjectModel.ObservableCollection
Dynamo.ViewModels.WorkspaceViewModel.Watch3DViewModels.set -> void
Dynamo.ViewModels.WorkspaceViewModel.WorkspaceElements.get -> System.Windows.Data.CompositeCollection
@@ -3051,6 +3050,7 @@ Dynamo.ViewModels.WorkspaceViewModel.Zoom.get -> double
Dynamo.ViewModels.WorkspaceViewModel.Zoom.set -> void
Dynamo.ViewModels.WorkspaceViewModel.ZoomChanged -> Dynamo.ViewModels.WorkspaceViewModel.ZoomEventHandler
Dynamo.ViewModels.WorkspaceViewModel.ZoomEventHandler
+Dynamo.ViewModels.WorkspaceViewModel.UnpinAllPreviewBubblesCommand.get -> Dynamo.UI.Commands.DelegateCommand
Dynamo.Views.GeometryScalingPopup
Dynamo.Views.GeometryScalingPopup.GeometryScalingPopup(Dynamo.ViewModels.DynamoViewModel dynViewModel) -> void
Dynamo.Views.GeometryScalingPopup.InitializeComponent() -> void
@@ -3075,6 +3075,7 @@ Dynamo.Views.WorkspaceView.Dispose() -> void
Dynamo.Views.WorkspaceView.HideAllPopUp(object sender) -> void
Dynamo.Views.WorkspaceView.InitializeComponent() -> void
Dynamo.Views.WorkspaceView.ViewModel.get -> Dynamo.ViewModels.WorkspaceViewModel
+Dynamo.Views.WorkspaceView.vm_UnpinAllPreviewBubblesTriggered(object sender, System.EventArgs e) -> void
Dynamo.Views.WorkspaceView.WorkspacePropertyEditClick(object sender, System.Windows.RoutedEventArgs routedEventArgs) -> void
Dynamo.Views.WorkspaceView.WorkspaceView() -> void
Dynamo.Wpf.AssemblyNodeViewCustomizations
@@ -4499,7 +4500,6 @@ static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuPresetsMenu.get -> stri
static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuRedo.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuRestorePreset.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuSelectAll.get -> string
-static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuUnpinPB.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuSelectNeighbours.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuUndo.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewExtensionsMenu.get -> string
@@ -4519,6 +4519,7 @@ static Dynamo.Wpf.Properties.Resources.DynamoViewFileMenuOpenTemplate.get -> str
static Dynamo.Wpf.Properties.Resources.DynamoViewFileMenuRecentFiles.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewFileMenuSave.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewFileMenuSaveAs.get -> string
+static Dynamo.Wpf.Properties.Resources.DynamoViewEditMenuUnpinAllPreviewBubbles.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewHelpDictionary.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewHelpMenu.get -> string
static Dynamo.Wpf.Properties.Resources.DynamoViewHelpMenuDisplayStartPage.get -> string
diff --git a/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModel.cs b/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModel.cs
index be4cb56c6ce..8f17786e9ea 100644
--- a/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModel.cs
+++ b/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModel.cs
@@ -2803,22 +2803,16 @@ internal bool CanSelectAll(object parameter)
return this.CurrentSpaceViewModel.CanSelectAll(null);
}
- public void UnpinPB(object parameter)
+ public void UnpinAllPreviewBubbles(object parameter)
{
- this.CurrentSpaceViewModel.UnpinPB(null);
+ this.CurrentSpaceViewModel.UnpinAllPreviewBubbles(null);
}
- internal bool CanUnpinPB(object parameter)
+ internal bool CanUnpinAllPreviewBubbles(object parameter)
{
- return this.CurrentSpaceViewModel.CanUnpinPB(null);
+ return this.CurrentSpaceViewModel.CanUnpinAllPreviewBubbles(null);
}
-
-
-
-
-
-
public void MakeNewHomeWorkspace(object parameter)
{
if (ClearHomeWorkspaceInternal())
diff --git a/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModelDelegateCommands.cs b/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModelDelegateCommands.cs
index a6d5ed9fbfb..a4674a05d64 100644
--- a/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModelDelegateCommands.cs
+++ b/src/DynamoCoreWpf/ViewModels/Core/DynamoViewModelDelegateCommands.cs
@@ -40,15 +40,6 @@ private void InitializeDelegateCommands()
GraphAutoLayoutCommand = new DelegateCommand(DoGraphAutoLayout, CanDoGraphAutoLayout);
GoHomeCommand = new DelegateCommand(GoHomeView, CanGoHomeView);
SelectAllCommand = new DelegateCommand(SelectAll, CanSelectAll);
-
- UnpinPBCommand = new DelegateCommand(UnpinPB, CanUnpinPB);
-
-
-
-
-
-
-
HomeCommand = new DelegateCommand(GoHome, CanGoHome);
NewHomeWorkspaceCommand = new DelegateCommand(MakeNewHomeWorkspace, CanMakeNewHomeWorkspace);
CloseHomeWorkspaceCommand = new DelegateCommand(CloseHomeWorkspace, CanCloseHomeWorkspace);
@@ -102,6 +93,7 @@ private void InitializeDelegateCommands()
NodeFromSelectionCommand = new DelegateCommand(CreateNodeFromSelection, CanCreateNodeFromSelection);
OpenDocumentationLinkCommand = new DelegateCommand(OpenDocumentationLink);
ShowNodeDocumentationCommand = new DelegateCommand(ShowNodeDocumentation, CanShowNodeDocumentation);
+ UnpinAllPreviewBubblesCommand = new DelegateCommand(UnpinAllPreviewBubbles, CanUnpinAllPreviewBubbles);
}
public DelegateCommand OpenFromJsonIfSavedCommand { get; set; }
public DelegateCommand OpenFromJsonCommand { get; set; }
@@ -145,13 +137,6 @@ private void InitializeDelegateCommands()
public DelegateCommand ToggleBackgroundGridVisibilityCommand { get; set; }
public DelegateCommand UpdateGraphicHelpersScaleCommand { get; set; }
public DelegateCommand SelectAllCommand { get; set; }
-
- public DelegateCommand UnpinPBCommand { get; set; }
-
-
-
-
-
public DelegateCommand SaveImageCommand { get; set; }
public DelegateCommand Save3DImageCommand { get; set; }
public DelegateCommand ValidateWorkSpaceBeforeToExportAsImageCommand { get; set; }
@@ -191,6 +176,7 @@ private void InitializeDelegateCommands()
public DelegateCommand NodeFromSelectionCommand { get; set; }
public DelegateCommand OpenDocumentationLinkCommand { get; set; }
public DelegateCommand ShowNodeDocumentationCommand { get; set; }
-
+ public DelegateCommand UnpinAllPreviewBubblesCommand { get; set; }
+
}
}
diff --git a/src/DynamoCoreWpf/ViewModels/Core/WorkspaceViewModel.cs b/src/DynamoCoreWpf/ViewModels/Core/WorkspaceViewModel.cs
index 06adb39da0b..b8bedbc27e8 100644
--- a/src/DynamoCoreWpf/ViewModels/Core/WorkspaceViewModel.cs
+++ b/src/DynamoCoreWpf/ViewModels/Core/WorkspaceViewModel.cs
@@ -1027,30 +1027,6 @@ internal bool CanSelectAll(object parameter)
return true;
}
- // ip code :
- public event EventHandler UnpinPBsTriggered;
- ///
- /// ip code :
- ///
- ///
- internal void UnpinPB(object parameter)
- {
- RaisePropertyChanged("UnpinAllPBs");
-
- foreach (var nodeVM in Nodes)
- {
- nodeVM.PreviewPinned = false;
- }
- UnpinPBsTriggered?.Invoke(this, EventArgs.Empty);
- }
-
- internal bool CanUnpinPB(object parameter)
- {
- return true;
- }
-
-
-
///
/// After command framework is implemented, this method should now be only
/// called from a menu item (i.e. Ctrl + W). It should not be used as a
@@ -1761,6 +1737,28 @@ private void ShowHideAllWires(List nodeModels, bool isHidden)
}
}
+ // ip code :
+ public event EventHandler UnpinAllPreviewBubblesTriggered;
+ ///
+ /// ip code :
+ ///
+ ///
+ internal void UnpinAllPreviewBubbles(object parameter)
+ {
+ RaisePropertyChanged("UnpinAllPBs");
+
+ foreach (var nodeVM in Nodes)
+ {
+ nodeVM.PreviewPinned = false;
+ }
+ UnpinAllPreviewBubblesTriggered?.Invoke(this, EventArgs.Empty);
+ }
+
+ internal bool CanUnpinAllPreviewBubbles(object parameter)
+ {
+ return true;
+ }
+
///
/// Collapse a set of nodes and notes currently selected in workspace
///
diff --git a/src/DynamoCoreWpf/Views/Core/DynamoView.xaml b/src/DynamoCoreWpf/Views/Core/DynamoView.xaml
index 88c1a5528aa..bcd66aaded3 100644
--- a/src/DynamoCoreWpf/Views/Core/DynamoView.xaml
+++ b/src/DynamoCoreWpf/Views/Core/DynamoView.xaml
@@ -450,15 +450,9 @@
Command="{Binding SelectAllCommand}"
Name="selectAll"
InputGestureText="Ctrl + A" />
-
-
-
-
-
-
-
+
@@ -579,21 +570,21 @@ private void OnNodeViewMouseLeave(object sender, MouseEventArgs e)
}
}
- // ip code :
- private void OnForceUnpinPB(object sender, RoutedEventArgs e)
- {
- if (PreviewControl.StaysOpen)
- {
- //PreviewControl.StaysOpen = false;
+ ////// ip code :
+ ////private void OnForceUnpinPB(object sender, RoutedEventArgs e)
+ ////{
+ //// if (PreviewControl.StaysOpen)
+ //// {
+ //// //PreviewControl.StaysOpen = false;
- }
- }
+ //// }
+ ////}
///
/// This event fires right after preview's state has been changed.
/// This event is necessary, it handles some preview's manipulations,
/// that we can't handle in mouse enter/leave events.
- /// E.g. When mouse leaves preview control, it should be first condesed, after that hidden.
+ /// E.g. When mouse leaves preview control, it should be first condensed, after that hidden.
///
/// PreviewControl
/// Event arguments
diff --git a/src/DynamoCoreWpf/Views/Core/WorkspaceView.xaml.cs b/src/DynamoCoreWpf/Views/Core/WorkspaceView.xaml.cs
index 07e16cc73f5..7d620764aff 100644
--- a/src/DynamoCoreWpf/Views/Core/WorkspaceView.xaml.cs
+++ b/src/DynamoCoreWpf/Views/Core/WorkspaceView.xaml.cs
@@ -143,9 +143,7 @@ private void RemoveViewModelsubscriptions(WorkspaceViewModel ViewModel)
ViewModel.RequestAddViewToOuterCanvas -= vm_RequestAddViewToOuterCanvas;
ViewModel.WorkspacePropertyEditRequested -= VmOnWorkspacePropertyEditRequested;
ViewModel.RequestSelectionBoxUpdate -= VmOnRequestSelectionBoxUpdate;
-
- // ip code :
- ViewModel.UnpinPBsTriggered -= OnUnpinPBsTriggered;
+ ViewModel.UnpinAllPreviewBubblesTriggered -= vm_UnpinAllPreviewBubblesTriggered;
ViewModel.Model.RequestNodeCentered -= vm_RequestNodeCentered;
ViewModel.Model.CurrentOffsetChanged -= vm_CurrentOffsetChanged;
@@ -174,9 +172,7 @@ private void AttachViewModelsubscriptions(WorkspaceViewModel ViewModel)
ViewModel.RequestAddViewToOuterCanvas += vm_RequestAddViewToOuterCanvas;
ViewModel.WorkspacePropertyEditRequested += VmOnWorkspacePropertyEditRequested;
ViewModel.RequestSelectionBoxUpdate += VmOnRequestSelectionBoxUpdate;
-
- // ip code :
- ViewModel.UnpinPBsTriggered += OnUnpinPBsTriggered;
+ ViewModel.UnpinAllPreviewBubblesTriggered += vm_UnpinAllPreviewBubblesTriggered;
ViewModel.Model.RequestNodeCentered += vm_RequestNodeCentered;
ViewModel.Model.CurrentOffsetChanged += vm_CurrentOffsetChanged;
@@ -184,20 +180,6 @@ private void AttachViewModelsubscriptions(WorkspaceViewModel ViewModel)
infiniteGridView.AttachToZoomBorder(zoomBorder);
}
-
-
-
- // ip code :
- public void OnUnpinPBsTriggered(object sender, EventArgs e)
- {
- var allNodes = this.ChildrenOfType().Where(view => view.HasPreviewControl);
-
- foreach (var node in allNodes)
- {
- node.PreviewControl.ForceHidePreviewBubble(); // look for HidePreviewBubble()
- }
- }
-
private void ShowHideNodeAutoCompleteControl(ShowHideFlags flag)
{
ShowHidePopup(flag, NodeAutoCompleteSearchBar);
@@ -805,30 +787,47 @@ private void OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
}
- // ip code :
- private void OnForceHidePreview(object sender, MouseButtonEventArgs e)
- {
- //if (snappedPort != null)
- //{
- // ViewModel.HandlePortClicked(snappedPort);
- //}
- //else if (Keyboard.Modifiers != ModifierKeys.Control)
- //{
- // ViewModel.HandleLeftButtonDown(workBench, e);
- //}
- //if (!ViewModel.IsDragging) return;
- var nodesToHidePreview = this.ChildrenOfType().Where(view =>
- view.HasPreviewControl && !view.PreviewControl.IsHidden && view.PreviewControl.StaysOpen);
- foreach (var node in nodesToHidePreview)
+
+ // ip code :
+ public void vm_UnpinAllPreviewBubblesTriggered(object sender, EventArgs e)
+ {
+ var allNodes = this.ChildrenOfType().Where(view => view.HasPreviewControl);
+
+ foreach (var node in allNodes)
{
- node.PreviewControl.ForceHidePreviewBubble();
+ node.PreviewControl.UnpinAllPreviewBubbles();
}
}
+
+ //// ip code :
+ //private void OnForceHidePreview(object sender, MouseButtonEventArgs e)
+ //{
+ // //if (snappedPort != null)
+ // //{
+ // // ViewModel.HandlePortClicked(snappedPort);
+ // //}
+ // //else if (Keyboard.Modifiers != ModifierKeys.Control)
+ // //{
+ // // ViewModel.HandleLeftButtonDown(workBench, e);
+ // //}
+
+ // //if (!ViewModel.IsDragging) return;
+
+ // var nodesToHidePreview = this.ChildrenOfType().Where(view =>
+ // view.HasPreviewControl && !view.PreviewControl.IsHidden && view.PreviewControl.StaysOpen);
+
+ // foreach (var node in nodesToHidePreview)
+ // {
+ // node.PreviewControl.UnpinAllPreviewBubbles();
+ // }
+ //}
+
+
private void OnCanvasMouseDown(object sender, MouseButtonEventArgs e)
{
ContextMenuPopup.IsOpen = false;
diff --git a/src/DynamoCoreWpf/Views/Preview/PreviewControl.xaml.cs b/src/DynamoCoreWpf/Views/Preview/PreviewControl.xaml.cs
index 119b4691dac..1da3f80a1f3 100644
--- a/src/DynamoCoreWpf/Views/Preview/PreviewControl.xaml.cs
+++ b/src/DynamoCoreWpf/Views/Preview/PreviewControl.xaml.cs
@@ -180,8 +180,10 @@ internal void HidePreviewBubble()
}
}
- // ip code :
- internal void ForceHidePreviewBubble()
+ ///
+ /// Unpins and hides all preview bubbles
+ ///
+ internal void UnpinAllPreviewBubbles()
{
StaysOpen = false;
if (IsExpanded) TransitionToState(State.Condensed);
From 7b1e134f43663e23739359a5ca672ee1e1baf80e Mon Sep 17 00:00:00 2001
From: Ivo Petrov <48355182+ivaylo-matov@users.noreply.github.com>
Date: Wed, 10 Apr 2024 16:07:24 +0100
Subject: [PATCH 03/13] working with hotkey
---
src/DynamoCoreWpf/Views/Core/DynamoView.xaml | 7 +++++--
.../Views/Preview/PreviewControl.xaml.cs | 11 +++++++++--
2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/src/DynamoCoreWpf/Views/Core/DynamoView.xaml b/src/DynamoCoreWpf/Views/Core/DynamoView.xaml
index bcd66aaded3..dba46ca52b1 100644
--- a/src/DynamoCoreWpf/Views/Core/DynamoView.xaml
+++ b/src/DynamoCoreWpf/Views/Core/DynamoView.xaml
@@ -86,7 +86,9 @@
-
+
@@ -452,7 +454,8 @@
InputGestureText="Ctrl + A" />
+ Name="unpinPB"
+ InputGestureText="Ctrl + E"/>