From 124b6b2ea2e65f231c0bde22d534c458c4df894c Mon Sep 17 00:00:00 2001 From: ArcGIS Pro SDK Team Date: Mon, 3 Aug 2020 16:14:00 -0700 Subject: [PATCH] ArcGIS Pro 2.6 SDK for .NET --- .../OpenItemDialogBrowseFilter/ItemFilter.cs | 6 - .../OpenItemDialogBrowseFilter.csproj | 1 + .../CreatePointsAlongLine3D.csproj | 1 + .../DemoUseSelection/DemoUseSelection.csproj | 1 + .../GeometryControl/GeometryControl.csproj | 1 + .../GridScaleCADLayer.csproj | 1 + Editing/LayerSnapModes/LayerSnapModes.csproj | 1 + .../MultipatchBuilder.csproj | 1 + .../TransferAttributes.csproj | 1 + .../ChromiumWebBrowserSample.csproj | 1 + .../Custom/CustomSchemes.cs | 23 +- .../DockpaneWithHelp/DockpaneWithHelp.csproj | 1 + Framework/MapControl/ShowOverview.cs | 4 +- Framework/ProIcons/AllProImagesPane.xaml | 83 ++ Framework/ProIcons/AllProImagesPane.xaml.cs | 95 ++ .../ProIcons/AllProImagesPaneViewModel.cs | 190 +++ Framework/ProIcons/Config.daml | 64 + .../ProIcons/DarkImages/AddInDesktop16.png | Bin 0 -> 1314 bytes .../ProIcons/DarkImages/AddInDesktop32.png | Bin 0 -> 1744 bytes .../DarkImages/GenericButtonGreen16.png | Bin 0 -> 1057 bytes .../DarkImages/GenericButtonGreen32.png | Bin 0 -> 1262 bytes Framework/ProIcons/Images/AddInDesktop16.png | Bin 0 -> 524 bytes Framework/ProIcons/Images/AddInDesktop32.png | Bin 0 -> 948 bytes .../ProIcons/Images/GenericButtonGreen16.png | Bin 0 -> 1056 bytes .../ProIcons/Images/GenericButtonGreen32.png | Bin 0 -> 1243 bytes Framework/ProIcons/ImagesPane.xaml | 134 +++ Framework/ProIcons/ImagesPane.xaml.cs | 56 + Framework/ProIcons/ImagesPaneViewModel.cs | 265 ++++ Framework/ProIcons/ProIcons (C#).md | 56 + Framework/ProIcons/ProIcons.csproj | 187 +++ Framework/ProIcons/ProIcons.sln | 25 + Framework/ProIcons/ProIconsModule.cs | 83 ++ Framework/ProIcons/Properties/AssemblyInfo.cs | 54 + Framework/ProIcons/ReadMe.md | 56 + Framework/ProIcons/Screenshots/Screen1.png | Bin 0 -> 192635 bytes Framework/ProIcons/Screenshots/Screen2.png | Bin 0 -> 43834 bytes Framework/ProWindowMVVM/ProWindowMVVM.csproj | 1 + Framework/README.md | 1 + .../CalculateStatistics.csproj | 1 + .../MultipatchBuilderEx.csproj | 1 + Layouts/CreateReport/CreateReportViewModel.cs | 1064 +++++++++-------- .../WorkingWithQueryDefinitionFilters.csproj | 1 + .../SimplePointPlugin.csproj | 6 - README.md | 3 +- Samples.sln | 10 + 45 files changed, 1932 insertions(+), 547 deletions(-) create mode 100644 Framework/ProIcons/AllProImagesPane.xaml create mode 100644 Framework/ProIcons/AllProImagesPane.xaml.cs create mode 100644 Framework/ProIcons/AllProImagesPaneViewModel.cs create mode 100644 Framework/ProIcons/Config.daml create mode 100644 Framework/ProIcons/DarkImages/AddInDesktop16.png create mode 100644 Framework/ProIcons/DarkImages/AddInDesktop32.png create mode 100644 Framework/ProIcons/DarkImages/GenericButtonGreen16.png create mode 100644 Framework/ProIcons/DarkImages/GenericButtonGreen32.png create mode 100644 Framework/ProIcons/Images/AddInDesktop16.png create mode 100644 Framework/ProIcons/Images/AddInDesktop32.png create mode 100644 Framework/ProIcons/Images/GenericButtonGreen16.png create mode 100644 Framework/ProIcons/Images/GenericButtonGreen32.png create mode 100644 Framework/ProIcons/ImagesPane.xaml create mode 100644 Framework/ProIcons/ImagesPane.xaml.cs create mode 100644 Framework/ProIcons/ImagesPaneViewModel.cs create mode 100644 Framework/ProIcons/ProIcons (C#).md create mode 100644 Framework/ProIcons/ProIcons.csproj create mode 100644 Framework/ProIcons/ProIcons.sln create mode 100644 Framework/ProIcons/ProIconsModule.cs create mode 100644 Framework/ProIcons/Properties/AssemblyInfo.cs create mode 100644 Framework/ProIcons/ReadMe.md create mode 100644 Framework/ProIcons/Screenshots/Screen1.png create mode 100644 Framework/ProIcons/Screenshots/Screen2.png diff --git a/Content/OpenItemDialogBrowseFilter/ItemFilter.cs b/Content/OpenItemDialogBrowseFilter/ItemFilter.cs index 38d23a16..049dc5ca 100644 --- a/Content/OpenItemDialogBrowseFilter/ItemFilter.cs +++ b/Content/OpenItemDialogBrowseFilter/ItemFilter.cs @@ -36,10 +36,6 @@ class ItemFilter : IComparable private string _parent; private string _id; private string _caption; - private string _condition; - private bool _hasImage = true; - private string _image; - private string _packURI = ""; private string _content; private List _filterFlags = new List(); private static string _currentControl; @@ -58,8 +54,6 @@ public ItemFilter(string damlFile, string elementName, XElement xElement, string _damlFileName = damlFile; _elementName = elementName; - _hasImage = false; - _parent = xElement.Parent.Name.LocalName; _container = container; _id = xElement.Attribute("id").Value; diff --git a/Content/OpenItemDialogBrowseFilter/OpenItemDialogBrowseFilter.csproj b/Content/OpenItemDialogBrowseFilter/OpenItemDialogBrowseFilter.csproj index 138f8eb5..69e8e700 100644 --- a/Content/OpenItemDialogBrowseFilter/OpenItemDialogBrowseFilter.csproj +++ b/Content/OpenItemDialogBrowseFilter/OpenItemDialogBrowseFilter.csproj @@ -262,6 +262,7 @@ BuildDefault bin\Debug\OpenItemDialogBrowseFilter.xml + 1591 BuildDefault diff --git a/Editing/CreatePointsAlongLine3D/CreatePointsAlongLine3D.csproj b/Editing/CreatePointsAlongLine3D/CreatePointsAlongLine3D.csproj index 19b0bdc7..8cc03de0 100644 --- a/Editing/CreatePointsAlongLine3D/CreatePointsAlongLine3D.csproj +++ b/Editing/CreatePointsAlongLine3D/CreatePointsAlongLine3D.csproj @@ -171,6 +171,7 @@ BuildDefault bin\Debug\CreatePointsAlongLine3D.xml + 1591 BuildDefault diff --git a/Editing/DemoUseSelection/DemoUseSelection.csproj b/Editing/DemoUseSelection/DemoUseSelection.csproj index a9225046..6a34a491 100644 --- a/Editing/DemoUseSelection/DemoUseSelection.csproj +++ b/Editing/DemoUseSelection/DemoUseSelection.csproj @@ -174,6 +174,7 @@ BuildDefault bin\Debug\DemoUseSelection.xml + 1591 BuildDefault diff --git a/Editing/GeometryControl/GeometryControl.csproj b/Editing/GeometryControl/GeometryControl.csproj index d0692a5a..d04a7b68 100644 --- a/Editing/GeometryControl/GeometryControl.csproj +++ b/Editing/GeometryControl/GeometryControl.csproj @@ -187,6 +187,7 @@ BuildDefault bin\Debug\GeometryControl.xml + 1591 BuildDefault diff --git a/Editing/GridScaleCADLayer/GridScaleCADLayer.csproj b/Editing/GridScaleCADLayer/GridScaleCADLayer.csproj index faa3cf40..83f953c0 100644 --- a/Editing/GridScaleCADLayer/GridScaleCADLayer.csproj +++ b/Editing/GridScaleCADLayer/GridScaleCADLayer.csproj @@ -192,6 +192,7 @@ BuildDefault bin\Debug\GridScaleCADLayer.xml + 1591 BuildDefault diff --git a/Editing/LayerSnapModes/LayerSnapModes.csproj b/Editing/LayerSnapModes/LayerSnapModes.csproj index 0e3a1337..7ab0a133 100644 --- a/Editing/LayerSnapModes/LayerSnapModes.csproj +++ b/Editing/LayerSnapModes/LayerSnapModes.csproj @@ -162,6 +162,7 @@ BuildDefault bin\Debug\LayerSnapModes.xml + 1591 BuildDefault diff --git a/Editing/MultipatchBuilder/MultipatchBuilder.csproj b/Editing/MultipatchBuilder/MultipatchBuilder.csproj index 737c5f2c..9fba5906 100644 --- a/Editing/MultipatchBuilder/MultipatchBuilder.csproj +++ b/Editing/MultipatchBuilder/MultipatchBuilder.csproj @@ -178,6 +178,7 @@ BuildDefault bin\Debug\MultipatchBuilder.xml + 1591 BuildDefault diff --git a/Editing/TransferAttributes/TransferAttributes.csproj b/Editing/TransferAttributes/TransferAttributes.csproj index fc152449..159c8722 100644 --- a/Editing/TransferAttributes/TransferAttributes.csproj +++ b/Editing/TransferAttributes/TransferAttributes.csproj @@ -186,6 +186,7 @@ BuildDefault bin\Debug\TransferAttributes.xml + 1591 BuildDefault diff --git a/Framework/ChromiumWebBrowserSample/ChromiumWebBrowserSample.csproj b/Framework/ChromiumWebBrowserSample/ChromiumWebBrowserSample.csproj index 31d1c5e3..213293fb 100644 --- a/Framework/ChromiumWebBrowserSample/ChromiumWebBrowserSample.csproj +++ b/Framework/ChromiumWebBrowserSample/ChromiumWebBrowserSample.csproj @@ -215,6 +215,7 @@ BuildDefault bin\x64\Debug\ChromiumWebBrowserSample.xml + 1591 BuildDefault diff --git a/Framework/ChromiumWebBrowserSample/Custom/CustomSchemes.cs b/Framework/ChromiumWebBrowserSample/Custom/CustomSchemes.cs index 08415dfd..77c40b12 100644 --- a/Framework/ChromiumWebBrowserSample/Custom/CustomSchemes.cs +++ b/Framework/ChromiumWebBrowserSample/Custom/CustomSchemes.cs @@ -30,8 +30,8 @@ limitations under the License. /// /// Note: Custom scheme names must conform to RFC 3986. -/// . Namely: -/// "Section 3.1 Scheme:
+/// <a href="https://tools.ietf.org/pdf/rfc3986.pdf"/>. Namely: +/// "Section 3.1 Scheme:<br/> /// .....Scheme names consist of a sequence of characters beginning with a ///letter and followed by any combination of letters, digits, plus /// ("+"), period ("."), or hyphen("-"). Although schemes are case- @@ -69,10 +69,19 @@ namespace ChromiumWebBrowserSample.Custom /// The custom scheme name is "resource" public class ImageResourceSchemeHandler : ResourceHandler { + /// + /// + /// public ImageResourceSchemeHandler() { } + /// + /// + /// + /// + /// + /// public override CefReturnValue ProcessRequestAsync(IRequest request, ICallback callback) { using (callback) @@ -119,11 +128,19 @@ public override CefReturnValue ProcessRequestAsync(IRequest request, ICallback c /// public class EmbeddedResourceSchemeHandler : ResourceHandler { + /// + /// + /// public EmbeddedResourceSchemeHandler() { } - + /// + /// + /// + /// + /// + /// public override CefReturnValue ProcessRequestAsync(IRequest request, ICallback callback) { using (callback) diff --git a/Framework/DockpaneWithHelp/DockpaneWithHelp.csproj b/Framework/DockpaneWithHelp/DockpaneWithHelp.csproj index 11e82d93..bfb96b43 100644 --- a/Framework/DockpaneWithHelp/DockpaneWithHelp.csproj +++ b/Framework/DockpaneWithHelp/DockpaneWithHelp.csproj @@ -165,6 +165,7 @@ BuildDefault bin\Debug\DockpaneWithHelp.xml + 1591 BuildDefault diff --git a/Framework/MapControl/ShowOverview.cs b/Framework/MapControl/ShowOverview.cs index 2c443177..0e865cfe 100644 --- a/Framework/MapControl/ShowOverview.cs +++ b/Framework/MapControl/ShowOverview.cs @@ -40,8 +40,10 @@ protected override void OnClick() { if (_isOpen) return; _overview = new OverviewWindow(); + var cam = MapView.Active.Camera; + cam.Heading = 90; _overview.ViewContent = MapControlContentFactory.Create( - MapView.Active.Map, MapView.Active.Extent, MapView.Active.ViewingMode); + MapView.Active.Map, cam, MapView.Active.ViewingMode); _overview.Closed += (s, e) => { _isOpen = false; lock (_lock) { diff --git a/Framework/ProIcons/AllProImagesPane.xaml b/Framework/ProIcons/AllProImagesPane.xaml new file mode 100644 index 00000000..468336a2 --- /dev/null +++ b/Framework/ProIcons/AllProImagesPane.xaml @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + Show Pack URI + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Framework/ProIcons/AllProImagesPane.xaml.cs b/Framework/ProIcons/AllProImagesPane.xaml.cs new file mode 100644 index 00000000..bc29798a --- /dev/null +++ b/Framework/ProIcons/AllProImagesPane.xaml.cs @@ -0,0 +1,95 @@ +/* + + Copyright 2020 Esri + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + See the License for the specific language governing permissions and + limitations under the License. + +*/ +using System.Windows.Controls; +using System.Windows.Input; + + +namespace ProIcons +{ + /// + /// Interaction logic for AllProImagesPaneView.xaml + /// + internal partial class AllProImagesPaneView : UserControl + { + private string _currentIconName; + + public AllProImagesPaneView() + { + InitializeComponent(); + } + + private void TextBox_KeyDown(object sender, KeyEventArgs e) + { + if (e.Key == Key.Return) + { + AllProImagesPaneViewModel vm = this.DataContext as AllProImagesPaneViewModel; + vm.InvokeSearchCommand(); + } + } + + private void Image_ToolTipOpening(object sender, ToolTipEventArgs e) + { + GetImageName(sender as Image); + } + + private void Image_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) + { + _currentIconName = GetImageName(sender as Image); + System.Windows.Clipboard.SetText(_currentIconName); + if (showPack.IsChecked.HasValue && showPack.IsChecked.Value == true) + { + string pack = @"pack://application:,,,/ArcGIS.Desktop.Resources;component/Images/"; + IconText.Text = pack + _currentIconName + ".png"; + } + else + { + IconText.Text = _currentIconName; + } + + } + + private string GetImageName(Image img) + { + if (img == null || img.DataContext == null) + return string.Empty; + ProImage proImage = img.DataContext as ProImage; + img.ToolTip = proImage.Name; + return proImage.Name; + } + + private void showPack_Click(object sender, System.Windows.RoutedEventArgs e) + { + if (showPack.IsChecked.HasValue && showPack.IsChecked.Value == true) + { + if (!string.IsNullOrEmpty(IconText.Text)) + { + string pack = @"pack://application:,,,/ArcGIS.Desktop.Resources;component/Images/"; + IconText.Text = pack + _currentIconName + ".png"; + } + IconText.Width = 550; + } + else + { + if (!string.IsNullOrEmpty(IconText.Text)) + IconText.Text = _currentIconName; + IconText.Width = 275; + } + } + } +} diff --git a/Framework/ProIcons/AllProImagesPaneViewModel.cs b/Framework/ProIcons/AllProImagesPaneViewModel.cs new file mode 100644 index 00000000..13f8a6f5 --- /dev/null +++ b/Framework/ProIcons/AllProImagesPaneViewModel.cs @@ -0,0 +1,190 @@ +/* + + Copyright 2020 Esri + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + See the License for the specific language governing permissions and + limitations under the License. + +*/ +using ArcGIS.Desktop.Framework; +using ArcGIS.Desktop.Framework.Contracts; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text.RegularExpressions; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Input; +using System.Windows.Media; + +namespace ProIcons +{ + internal class ProImage + { + public ImageSource Source {get; set;} + public string Name { get; set; } + } + + internal class AllProImagesPaneViewModel : Pane + { + private const string _viewPaneID = "ProIcons_AllProImagesPane"; + private ResourceDictionary _resournceXaml; + private List _images = new List(); + private ICommand _searchCmd; + private ICommand _clearCmd; + private string _searchText; + private bool _showingSearch; + + public AllProImagesPaneViewModel() : base() + { + if (FrameworkApplication.ApplicationTheme == ApplicationTheme.Dark) + _resournceXaml = new ResourceDictionary() { Source = new Uri("pack://application:,,,/ArcGIS.Desktop.Resources;component/DarkXamlImages.xaml") }; + else + _resournceXaml = new ResourceDictionary() { Source = new Uri("pack://application:,,,/ArcGIS.Desktop.Resources;component/XamlImages.xaml") }; + + foreach (string key in _resournceXaml.Keys) + { + ImageSource imgSource = _resournceXaml[key] as ImageSource; + if (imgSource != null) + { + ProImage proImage = new ProImage(); + proImage.Name = key; + proImage.Source = imgSource; + _images.Add(proImage); + } + } + _images = _images.OrderBy(o => o.Name).ToList(); + + } + + public List ProImages + { + get + { + return _images; + } + } + + /// + /// Create a new instance of the pane. + /// + internal static void Create() + { + FrameworkApplication.Panes.Create(_viewPaneID); + } + + #region Pane Overrides + + /// + /// Called when the pane is initialized. + /// + protected async override Task InitializeAsync() + { + await base.InitializeAsync(); + } + + /// + /// Called when the pane is uninitialized. + /// + protected async override Task UninitializeAsync() + { + await base.UninitializeAsync(); + } + + #endregion Pane Overrides + + public string SearchText + { + get { return _searchText; } + set + { + SetProperty(ref _searchText, value, () => SearchText); + } + } + + public ICommand SearchCmd + { + get + { + if (_searchCmd == null) + _searchCmd = new RelayCommand(new Action((p) => InvokeSearchCommand()), () => { return true; }, false, false); + + return _searchCmd; + } + } + + public ICommand ClearCmd + { + get + { + if (_clearCmd == null) + _clearCmd = new RelayCommand(new Action((p) => InvokeClearCommand()), () => { return true; }, false, false); + + return _clearCmd; + } + } + + internal void InvokeClearCommand() + { + // Clear the text + SearchText = string.Empty; + + // If we're actually showing results - reset + if (_showingSearch) + InvokeSearchCommand(); + + _showingSearch = false; + } + + internal void InvokeSearchCommand() + { + _showingSearch = true; + _images.Clear(); + + string iconName = _searchText; + + if (iconName.StartsWith("pack")) + iconName = System.IO.Path.GetFileNameWithoutExtension(iconName); + + foreach (string key in _resournceXaml.Keys) + { + if (string.IsNullOrEmpty(iconName) || Regex.IsMatch(key, Regex.Escape(iconName), RegexOptions.IgnoreCase)) + { + ImageSource imgSource = _resournceXaml[key] as ImageSource; + if (imgSource != null) + { + ProImage proImage = new ProImage(); + proImage.Name = key; + proImage.Source = imgSource; + _images.Add(proImage); + } + } + } + + // Sort by name + _images = _images.OrderBy(o => o.Name).ToList(); + NotifyPropertyChanged("ProImages"); + } + } + + /// + /// Button implementation to create a new instance of the pane and activate it. + /// + internal class AllProImagesPane_OpenButton : Button + { + protected override void OnClick() + { + AllProImagesPaneViewModel.Create(); + } + } +} diff --git a/Framework/ProIcons/Config.daml b/Framework/ProIcons/Config.daml new file mode 100644 index 00000000..69a9406c --- /dev/null +++ b/Framework/ProIcons/Config.daml @@ -0,0 +1,64 @@ + + + + + + ProIcons + ProIcons description + Images\AddinDesktop32.png + ArcGIS Pro SDK Team, arcgisprosdk@esri.com + esri, http://www.esri.com + 2/7/2020 11:08:19 AM, 2020 + Framework + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Framework/ProIcons/DarkImages/AddInDesktop16.png b/Framework/ProIcons/DarkImages/AddInDesktop16.png new file mode 100644 index 0000000000000000000000000000000000000000..0118942a923d37745dced41536d71172f7517deb GIT binary patch literal 1314 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+m^Cs(B1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxOgGuU%v{0TQqR!T z+}y-mN5ROz&{W^RSl`${*T~q)#K6kLNC66zfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUm0>2hq!uR^WfqiV=I1GZOiWD5 zFD$Tv3bSNU;+l1ennz|zM-B0$V)JVzP|XC=H|jx7ncO3BHWAB;NpiyW)Z+ZoqGVvir744~DzI`cN=+=uFAB-e&w+(vKt_H^esM;Afr7I$IMft0d=ry1 z^FV@{U|qhxR-SpqC5d^-sh%#jNbn4Gmq*EQ}4@91Trf z9F2`FOx&CdV0vBhlS^|`^GaZPQ-FG%U0huajGRnx>IEf;+ybD@E~!PCWvMA{Mftf3 zV2@j6;&zJxPV=C8Q?R%N>JLMldi8;h(Fa8@Qgp+FfN2QCgeP7g2cG;>^MGl-2$;A{ z^UHoRFfdN=ba4!+xHV_eSudtQk>mf3ADc`I;N%lh@rhWMHCaSu#|rTc+b*73D_z|f zchKzJnb0k|)r|_C3qu72JFMDTIvVAZpRQPZcJC7h=Cdqs6d>g;Fd(<~UJ81^dm+<(73@IuqYmV0m9+Os7i{i0=el#xWp=L=ll zcWrlNR9(*{VE_OC literal 0 HcmV?d00001 diff --git a/Framework/ProIcons/DarkImages/AddInDesktop32.png b/Framework/ProIcons/DarkImages/AddInDesktop32.png new file mode 100644 index 0000000000000000000000000000000000000000..9713e3b1548cc2ee78c60ad4ffb3a46566609b2b GIT binary patch literal 1744 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%o>>?5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|8hm3bwJ6}oxF$}kgLQj3#|G7CyF^YauyCMG83 zmzLNn0bL65LT&-v*t}wBFaZNhzap_f-%!s0*lEl2^R8JRMC7?NanVBh8&MvO521ZWi7A`KPhK8g6oCT>m!FugAM$)&lec_lEtDG0q5IQ4=OL~a4lW|!2W%(B!Jx1#)91+d4hGI6`b z6sLJmy(zfeVun+%KF~4xpy)-4ZkP}-4S|^O#0%uWlYeR+FwGYM6ZcJlSNy;{W9RAO z7*cU-Pq?qYaH7Dxw|Vt6-sL_XG#dCA=nEb^pfQtK4{2?@f5-Yn6Pn-PZZfE9Y0HrEx1H z9!!{UoHf^M-t)%bq7T3S{`vE#W^-XsO7HozXLCLFraX~2kgXt)p=H#>-|A#wX*ttK zsyEz0fq7Ti0YpasWR z+$R{k6EQaQOgubCjeVsOtlnOk{w`C6b(O-k z!?%v*K6AM`eR77=`V*;bYYY>29(i2Y;i6QsaMQ#fQ$;238P%!+a}++v7ICVt;*4J- z(t7o6^o7?q*{10_e_A1~bF=-!5qqwE6AORrn%yeg8+zd1YNnkg1x*k3n|IH?7GcRX zm5aSBol`57Z&RkUjQpL}K6dR7mnSsJ-QzxQ+bj^ZpL1#Y`=~J1hg`^%fgqBz3;E zypY`VWYg}1goK7Hr>$HfCJm_;pKI;?o2*r3d5-OQQhbGzDPtR#z=0d{_h&}7^PSf8 zb>5gD)M&Ftrs?+EygIQdKZL&Ay+5huW~Qg(^y=;BTJBYZU1$4y=WKYiF?T?MgwEt` zT`TsR|L}eiBb-#bV0KB@XNO?X7m|OEe!um$R*<1vcj3z0E6+0PZcey)bXUf@iL7he zsyA4hS#t{wI^H6T7(3Ke0lyCJVujWX{t((u~qp@l3TlWoH zzfI9w__aZNhOnDxgV^fc$14>N2duI-*SXET!S?cG;RSYO0%GFg(Vy;~h>>%(s=VC@S26m4%0k2Q>`~uZ6p00i_ I>zopr0LdSn0ssI2 literal 0 HcmV?d00001 diff --git a/Framework/ProIcons/DarkImages/GenericButtonGreen16.png b/Framework/ProIcons/DarkImages/GenericButtonGreen16.png new file mode 100644 index 0000000000000000000000000000000000000000..c04d7f561b5d237d56d9f391c0b5cad1b4a6efdd GIT binary patch literal 1057 zcmaJ=O=#0l9M6yq-8vW|iXXU;x-nsG^18Ka;%e76>sByhbd}{KOOv-XZ22&GvuOpH zJ1Go?DEM{Q)q#3e6t;N~lpRD6L}Z{KdKfC`4uV==y0-IR4ZOVf{``Kw|L40rIx^JS ze5jcqh}P6FpT>KeyLLC>fBUzRgtvoeP()+KB+5$`Bw~t@g=9*TreGRMO5yA?*iR6< zy3~w_MBx-C8=7BoF@8rgF`FRzqmC)b(-4taIHl?l>dT`Qid2;dH69cg!A!uMI$X5i zSaBpH7pG-bp`s_reuu*X8blK5XfwLaIT5O?%i*(YrYW)vLDLaxJ19{YB@>1P$)G>v zlK}u^AL|Ffa8DrEO$Hbcq#2e5jE?~vV7LH7Rz3=Qvy@3L%_l3q@GU~+5HdNM&gb*~ ze2?F-rf9&jEX@SyK){C)KD(eJ$?@s7x2nKHTeegasfJFvic;2?MG*=|x}Ab%)?{_N zQYKt5+L25e_!&2)Do_yq57o39+D2)(6YoET?M%UhbQ;>mtR>^dO?q8dCYP|FgbXWV z7&Fx>j^+$x*g3-_6Nz%w$Sy&WRoyinFS7)JOX)U}bQz}j2!(b0s;Y2+XL&vxON5hs zApizLF(v_$d@mnPvLV36`6`z;kfowV$VFZ)N@ctT82iJ6X(?W zvBc`?Rk%w1SmJfLG!BM#+xu6$t0p`{?y)w!_);5xsND`CB<2R%^&%mwrBgIRvh{h8I59n-aUc1vEW*hdMejPvD zIrM_~?sRUntRMT7eTrhkUv7HZCJ68CF7HOi!}IQ=O%0Cl_u~`ue*lnP BR>=SW literal 0 HcmV?d00001 diff --git a/Framework/ProIcons/DarkImages/GenericButtonGreen32.png b/Framework/ProIcons/DarkImages/GenericButtonGreen32.png new file mode 100644 index 0000000000000000000000000000000000000000..547ce961eaa0ae10108dc681527184d520211ec9 GIT binary patch literal 1262 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%o>>?5hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|8hm3bwJ6}oxF$}kgLQj3#|G7CyF^YauyCMG83 zmzLNn0bL65LT&-v*t}wBFaZNhzap_f-%!s0*lEl2^R8JRMC7?NanVBh8hAx&aE*4G(7H;NdhK8sTW7bdpd z;uX2DAVJ6DkGk_-{;+KFgGiy90^!P>p+Pp9`cLvQWX(KfI3JnnrAF-YteWW}64$<(^N-4- zh=9e9FW-GKPi%d6k$Uv^jNO}Eonl>8xSTJ%GJE;(+eQ-$7OM-byl#!PzWjg8PF0g$GqSOAHvVEjPb(^2Do* gZ|k)m?q*#SV*!XQdtWo`zW)u3-ITZ)bVS)1Hr@Kl zz{$$UaP`DN21cm=1AtUN5Gz1JiI2g=(Ssq}!4R(tz+M1pW@cqxuV5w1AS5Nuz{e%d z@ciLDhV#4Ef^E~*)jrVX(1?VK7tH?T6 zV6mVetE9oe&dLMU{OQ|Eumra#H^Zy{AHiV&j|FE@unXFbz5|BS4@5LRd2^9LP1=Fs z?(<^|fByc0Yxw-(Jy;XE3zP*}8B8QO7*;|Jc<}h%4F!2wFfb;P zxhYzAxw&0+>vq3KuWs}H(rta=aCh(dp7Z^j&-d3E1qyPfy+g$3^PX-BvM8b`0+z$sEF<`iyY2Ae<*Q&c8r=f|8OVVw3&**j?e;Ck zVzCTK2dhb)&pH4-5R^=}QQ41M&;^P5et#gz9sk7zdQ8wtsg|iA)B@4{v}Z_qW$A36 zS|g1a!az2SYcVJTJ5US^%!I)ois|a14(e*jz5%?O4nZ^~0%zAJ4|Px%*Qkl&E^=T> z6egvpHz0tI--L%3oLe-0T-F58R?EQ6YCCj}{U&QYu6$zv)bbcNKmd3m+_>vfks-#) zS+kcvH2!lU0R_CwMvf`X*4FLOL@5)Jax6; z@zjyXMoRSp5m`dtYk{B>43|ldep^vNO<~0$sBgFmzQ8Al#W%p^tOAj@!pP@Q82B&( z?xq{SRhAgbf_ZT#W>f)e8~?(cDQ3_(ZOVn^KRz(!*X6hUv&46xLfHSK4s) z{cGSW+o5wJma#18FFSjjaa9}vYo3#w*qX9np;VV%hI1#I$w)f=d;}b3hh_~hDsnr%?w?u=t}mEXYC)KkXZhqyUjxwE z(wvcdBbC~Wuqt9QVU)R{>Ve)NlcXA#E zLyu*g8kl9d90covLl22X6hULtT!<%vr{iIyw@V}f^e^Xs=SUWHUw&UHA*h!ZyK&60VPS^@+T&~k~WpRQHWN6xH(;Tl? zaX4>6)5)6_E{w2vpCl`q;U1i>A|#1R8V-~V1tdkDKpdo|sa!M=@<&6lGb|&97$)W) ztiB9Q2jYSd6T@|^XetvrFkl_4Zezo{VqG!l7V<0tTbl%G+%|Q*nlz{F7z-U|;sUcP zUk$777)urF+Z9WpU?{h>|FpV(g!JPs8^T4KhV+4f^ll?z&+PNBqf0TL6bI9#&)Gkf z%0N^1^=5G;99i6xSiAFJk@>*Bnr{C1@YnkHu~CrgKL2%dX{m#~vf+99Wcol)Vj%~g z_kWwe|LA7No67Io7dv}T^a{m1l{Gywnzr5n!*<@@;d>kFU@fX;5 BR2~2T literal 0 HcmV?d00001 diff --git a/Framework/ProIcons/Images/GenericButtonGreen32.png b/Framework/ProIcons/Images/GenericButtonGreen32.png new file mode 100644 index 0000000000000000000000000000000000000000..75ec735da6760a0daf43a70ed5fc84b6e7353353 GIT binary patch literal 1243 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%qp275hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y-fM)1rW~Nv<8kredIJp{{8M-(c8oC-gf}x>-fr*>5v#X0G zOs`9Ra%paAUI|QZ3PLZ?1RQ!ni6OTDXtPUdQD#|cid#{Bt^(N8R+(7b;$&v%#DphYAP1iGQ}cl7y$G1FJ4|nGV_;zP z^>lFzskoK&=l_5E!wyWx93L{cxw#pne_LqD=&(w@Lo_4hKC^=C+g44oN;9pZ;#yBE#a4*8HZS&4~F9 zqr?5pO-*yBO;fgJvh12E!6vbxfg@qj4_+SDHC*5B-#EVE?WeG|_xtxvPBBoIR&QS1 zCfq!Iop~br115!T{=0T37OYP>ap2%F$4Sg}e||Au<7WCH(`e4+u&iEa1Q=d2 zzGR)*$p4^}LF2~BjWRa{?d$$4+-JPP(BgHA@jUBdK8ex;E12D64SvXec>Z2~6R*0P zejIzltIyou&o!Od} K&t;ucLK6TM{;kFU literal 0 HcmV?d00001 diff --git a/Framework/ProIcons/ImagesPane.xaml b/Framework/ProIcons/ImagesPane.xaml new file mode 100644 index 00000000..91483af6 --- /dev/null +++ b/Framework/ProIcons/ImagesPane.xaml @@ -0,0 +1,134 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Png + + + + + + + + + + + Png Dark + + + + + + + + + + + Xaml + + + + + + + + + + + Xaml Dark + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Framework/ProIcons/ImagesPane.xaml.cs b/Framework/ProIcons/ImagesPane.xaml.cs new file mode 100644 index 00000000..44986a16 --- /dev/null +++ b/Framework/ProIcons/ImagesPane.xaml.cs @@ -0,0 +1,56 @@ +/* + + Copyright 2020 Esri + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + See the License for the specific language governing permissions and + limitations under the License. + +*/ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + + +namespace ProIcons +{ + /// + /// Interaction logic for ImagesPaneView.xaml + /// + internal partial class ImagesPaneView : UserControl + { + public ImagesPaneView() + { + InitializeComponent(); + } + + private void TextBox_KeyDown(object sender, KeyEventArgs e) + { + if (e.Key == Key.Return) + { + ImagesPaneViewModel vm = this.DataContext as ImagesPaneViewModel; + vm.InvokeSearchCommand(); + } + } + } +} diff --git a/Framework/ProIcons/ImagesPaneViewModel.cs b/Framework/ProIcons/ImagesPaneViewModel.cs new file mode 100644 index 00000000..76d58d91 --- /dev/null +++ b/Framework/ProIcons/ImagesPaneViewModel.cs @@ -0,0 +1,265 @@ +/* + + Copyright 2020 Esri + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + See the License for the specific language governing permissions and + limitations under the License. + +*/ +using ArcGIS.Desktop.Framework; +using ArcGIS.Desktop.Framework.Contracts; +using System; +using System.Collections.ObjectModel; +using System.Text.RegularExpressions; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Input; +using System.Windows.Media; + +namespace ProIcons +{ + internal class ImagesPaneViewModel : Pane + { + private const string _viewPaneID = "ProIcons_ImagesPane"; + private ICommand _searchCmd; + private string _searchText; + ResourceDictionary _resourncePng; + ResourceDictionary _resourncePngDark; + ResourceDictionary _resournceXaml; + ResourceDictionary _resournceXamlDark; + + /// + /// Consume the passed in CIMView. Call the base constructor to wire up the CIMView. + /// + public ImagesPaneViewModel() : base() + { + _resourncePng = new ResourceDictionary() { Source = new Uri("pack://application:,,,/ArcGIS.Desktop.Resources;component/Images.xaml") }; + _resourncePngDark = new ResourceDictionary() { Source = new Uri("pack://application:,,,/ArcGIS.Desktop.Resources;component/ImagesDark.xaml") }; + _resournceXaml = new ResourceDictionary() { Source = new Uri("pack://application:,,,/ArcGIS.Desktop.Resources;component/XamlImages.xaml") }; + _resournceXamlDark = new ResourceDictionary() { Source = new Uri("pack://application:,,,/ArcGIS.Desktop.Resources;component/DarkXamlImages.xaml") }; + } + + /// + /// Create a new instance of the pane. + /// + internal static void Create() + { + FrameworkApplication.Panes.Create(_viewPaneID); + } + + #region Pane Overrides + + public ICommand SearchCmd + { + get + { + if (_searchCmd == null) + _searchCmd = new RelayCommand(new Action((p) => InvokeSearchCommand()), () => { return true; }, false, false); + + return _searchCmd; + } + } + + internal void InvokeSearchCommand() + { + if (string.IsNullOrEmpty(_searchText)) + return; + + ImageSource png = _resourncePng[_searchText] as ImageSource; + SearchText = Search(_searchText); + + Update(); + } + + private double _scale = 1.0; + public double Scale + { + get { return _scale; } + set + { + _scale = value; + NotifyPropertyChanged(() => Scale); + } + } + + private void Update() + { + if (string.IsNullOrEmpty(_searchText)) + return; + + ImageSource png = _resourncePng[_searchText] as ImageSource; + ImageSource pngDark = _resourncePngDark[_searchText] as ImageSource; + ImageSource xaml = _resournceXaml[_searchText] as ImageSource; + ImageSource xamlDark = _resournceXamlDark[_searchText] as ImageSource; + + if (png != null) + this.Size = png.Height; + Png = png; + PngDark = pngDark; + Xaml = xaml; + XamlDark = xamlDark; + } + + private string Search(string iconName) + { + _targets.Clear(); + foreach (string key in _resournceXaml.Keys) + { + if (string.IsNullOrEmpty(iconName) || Regex.IsMatch(key, Regex.Escape(iconName), RegexOptions.IgnoreCase)) + { + _targets.Add(key); + } + } + + foreach (string key in _resournceXaml.Keys) + { + if (string.IsNullOrEmpty(iconName) || Regex.IsMatch(key, Regex.Escape(iconName), RegexOptions.IgnoreCase)) + { + return key; + } + } + + return string.Empty; + } + + public string SelectedItem + { + get { return _searchText; } + set + { + SearchText = value; + Update(); + } + } + + private ImageSource _png; + private ImageSource _pngDark; + private ImageSource _xaml; + private ImageSource _xamlDark; + + private double _size; + public double Size + { + get + { + return _size; + } + set + { + _size = value; + NotifyPropertyChanged(() => Size); + } + } + + public ImageSource Png + { + get + { + return _png; + } + set + { + _png = value; + NotifyPropertyChanged(() => Png); + } + } + + public ImageSource PngDark + { + get + { + return _pngDark; + } + set + { + _pngDark = value; + NotifyPropertyChanged(() => PngDark); + } + } + + public ImageSource Xaml + { + get + { + return _xaml; + } + set + { + _xaml = value; + NotifyPropertyChanged(() => Xaml); + } + } + + public ImageSource XamlDark + { + get + { + return _xamlDark; + } + set + { + _xamlDark = value; + NotifyPropertyChanged(() => XamlDark); + } + } + + public string SearchText + { + get { return _searchText; } + set + { + _searchText = value; + NotifyPropertyChanged(() => SearchText); + } + } + + private ObservableCollection _targets = new ObservableCollection(); + + public ObservableCollection Targets + { + get + { + return _targets; + } + } + + /// + /// Called when the pane is initialized. + /// + protected async override Task InitializeAsync() + { + await base.InitializeAsync(); + } + + /// + /// Called when the pane is uninitialized. + /// + protected async override Task UninitializeAsync() + { + await base.UninitializeAsync(); + } + + #endregion Pane Overrides + } + + /// + /// Button implementation to create a new instance of the pane and activate it. + /// + internal class ImagesPane_OpenButton : ArcGIS.Desktop.Framework.Contracts.Button + { + protected override void OnClick() + { + ImagesPaneViewModel.Create(); + } + } +} diff --git a/Framework/ProIcons/ProIcons (C#).md b/Framework/ProIcons/ProIcons (C#).md new file mode 100644 index 00000000..5ec43b86 --- /dev/null +++ b/Framework/ProIcons/ProIcons (C#).md @@ -0,0 +1,56 @@ +## ProIcons + + +This sample shows a list of all icons defined in ArcGIS Pro. It allows to get the pack URI for those icons and has a utility to inspect the icons using the light and dark themes. + + + +View it live + + +``` +Language: C# +Subject: Framework +Contributor: ArcGIS Pro SDK Team +Organization: Esri, http://www.esri.com +Date: 7/01/2020 +ArcGIS Pro: 2.6 +Visual Studio: 2017, 2019 +.NET Target Framework: 4.8 +``` + +## Resources + +* [API Reference online](https://pro.arcgis.com/en/pro-app/sdk/api-reference) +* ArcGIS Pro SDK for .NET (pro.arcgis.com) +* [arcgis-pro-sdk-community-samples](https://github.com/Esri/arcgis-pro-sdk-community-samples) +* [ArcGIS Pro DAML ID Reference](https://github.com/Esri/arcgis-pro-sdk/wiki/ArcGIS-Pro-DAML-ID-Reference) +* [FAQ](https://github.com/Esri/arcgis-pro-sdk/wiki/FAQ) +* [ArcGIS Pro SDK icons](https://github.com/Esri/arcgis-pro-sdk/releases/tag/2.4.0.19948) + +![ArcGIS Pro SDK for .NET Icons](https://Esri.github.io/arcgis-pro-sdk/images/Home/Image-of-icons.png "ArcGIS Pro SDK Icons") + +### Samples Data + +* Sample data for ArcGIS Pro SDK Community Samples can be downloaded from the [repo releases](https://github.com/Esri/arcgis-pro-sdk-community-samples/releases) page. + +## How to use the sample + +1. In Visual studio rebuild the solution. +1. Debug the add-in by clicking the "Start" button. +1. ArcGIS Pro opens, select any Map project +1. Under the "Pro Icons" tab there are two buttons that show the "Show All Icons" and "Verify Icon" Panes. +![UI](Screenshots/Screen1.png) + +1. The "Show All Icons" pane displays all icons defined in ArcGIS Pro. Click on any icon to get the icons name (or URI if you click the checkbox).. +![UI](Screenshots/Screen2.png) + +1. The "Verify Icon" pane allows you to enter an icon name (use the "Show All Icons" pane to get any icon name and verify the icon image using light and dark themes. + + + + + +      ArcGIS Pro SDK for Microsoft .NET Framework +             +[Home](https://github.com/Esri/arcgis-pro-sdk/wiki) | API Reference | [Requirements](https://github.com/Esri/arcgis-pro-sdk/wiki#requirements) | [Download](https://github.com/Esri/arcgis-pro-sdk/wiki#installing-arcgis-pro-sdk-for-net) | Samples diff --git a/Framework/ProIcons/ProIcons.csproj b/Framework/ProIcons/ProIcons.csproj new file mode 100644 index 00000000..112c2fbe --- /dev/null +++ b/Framework/ProIcons/ProIcons.csproj @@ -0,0 +1,187 @@ + + + + Debug + AnyCPU + 8.0.30703 + 2.0 + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665} + Library + Properties + ProIcons + ProIcons + v4.8 + 512 + {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + Program + C:\Program Files\ArcGIS\Pro\bin\ArcGISPro.exe + AnyCPU + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + Program + C:\Program Files\ArcGIS\Pro\bin\ArcGISPro.exe + AnyCPU + + + $([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\ESRI\ArcGISPro', 'InstallDir', null, RegistryView.Registry64)) + $(registry:HKEY_CURRENT_USER\SOFTWARE\ESRI\ArcGISPro@InstallDir) + + + + + + + + + + + + + + + + C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.Framework.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Core.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\Extensions\Core\ArcGIS.Desktop.Core.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\Extensions\Mapping\ArcGIS.Desktop.Mapping.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\Extensions\Catalog\ArcGIS.Desktop.Catalog.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\Extensions\Editing\ArcGIS.Desktop.Editing.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\Extensions\DesktopExtensions\ArcGIS.Desktop.Extensions.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\Extensions\GeoProcessing\ArcGIS.Desktop.GeoProcessing.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\Extensions\Layout\ArcGIS.Desktop.Layouts.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.Shared.Wpf.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.Ribbon.Wpf.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.DataGrid.Contrib.Wpf.dll + False + + + C:\Program Files\ArcGIS\Pro\bin\ArcGIS.Desktop.Resources.dll + False + + + + + Designer + + + + + + + + + AllProImagesPane.xaml + + + + ImagesPane.xaml + + + + + + + + Designer + MSBuild:Compile + + + Designer + MSBuild:Compile + + + + + + + + + + + + + + + + + + + + + + BuildDefault + bin\Debug\ProIcons.xml + + + BuildDefault + + + + + + + + + \ No newline at end of file diff --git a/Framework/ProIcons/ProIcons.sln b/Framework/ProIcons/ProIcons.sln new file mode 100644 index 00000000..b3bb0f9e --- /dev/null +++ b/Framework/ProIcons/ProIcons.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.27130.2027 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProIcons", "ProIcons.csproj", "{6DA0B756-6B7D-451F-8AFF-1ABD718C9665}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {E5098C80-8C75-4AD5-A3EC-64C30034DB2A} + EndGlobalSection +EndGlobal diff --git a/Framework/ProIcons/ProIconsModule.cs b/Framework/ProIcons/ProIconsModule.cs new file mode 100644 index 00000000..3dead6f7 --- /dev/null +++ b/Framework/ProIcons/ProIconsModule.cs @@ -0,0 +1,83 @@ +/* + + Copyright 2020 Esri + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + See the License for the specific language governing permissions and + limitations under the License. + +*/ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows.Input; +using System.Threading.Tasks; +using ArcGIS.Core.CIM; +using ArcGIS.Core.Data; +using ArcGIS.Core.Geometry; +using ArcGIS.Desktop.Catalog; +using ArcGIS.Desktop.Core; +using ArcGIS.Desktop.Editing; +using ArcGIS.Desktop.Extensions; +using ArcGIS.Desktop.Framework; +using ArcGIS.Desktop.Framework.Contracts; +using ArcGIS.Desktop.Framework.Dialogs; +using ArcGIS.Desktop.Framework.Threading.Tasks; +using ArcGIS.Desktop.Mapping; + +namespace ProIcons +{ + /// + /// This sample shows a list of all icons defined in ArcGIS Pro. It allows to get the pack URI for those icons and has a utility to inspect the icons using the light and dark themes. + /// + /// + /// 1. In Visual studio rebuild the solution. + /// 1. Debug the add-in by clicking the "Start" button. + /// 1. ArcGIS Pro opens, select any Map project + /// 1. Under the "Pro Icons" tab there are two buttons that show the "Show All Icons" and "Verify Icon" Panes. + /// ![UI](Screenshots/Screen1.png) + /// 1. The "Show All Icons" pane displays all icons defined in ArcGIS Pro. Click on any icon to get the icons name (or URI if you click the checkbox).. + /// ![UI](Screenshots/Screen2.png) + /// 1. The "Verify Icon" pane allows you to enter an icon name (use the "Show All Icons" pane to get any icon name and verify the icon image using light and dark themes. + /// + internal class ProIconsModule : Module + { + private static ProIconsModule _this = null; + + /// + /// Retrieve the singleton instance to this module here + /// + public static ProIconsModule Current + { + get + { + return _this ?? (_this = (ProIconsModule)FrameworkApplication.FindModule("ProIcons_Module")); + } + } + + #region Overrides + /// + /// Called by Framework when ArcGIS Pro is closing + /// + /// False to prevent Pro from closing, otherwise True + protected override bool CanUnload() + { + //TODO - add your business logic + //return false to ~cancel~ Application close + return true; + } + + #endregion Overrides + + } +} diff --git a/Framework/ProIcons/Properties/AssemblyInfo.cs b/Framework/ProIcons/Properties/AssemblyInfo.cs new file mode 100644 index 00000000..8706fb7a --- /dev/null +++ b/Framework/ProIcons/Properties/AssemblyInfo.cs @@ -0,0 +1,54 @@ +/* + + Copyright 2020 Esri + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + + See the License for the specific language governing permissions and + limitations under the License. + +*/ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("ProIcons")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Acme")] +[assembly: AssemblyProduct("ProIcons")] +[assembly: AssemblyCopyright("Copyright © Acme 2019")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("6da0b756-6b7d-451f-8aff-1abd718c9665")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// 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: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Framework/ProIcons/ReadMe.md b/Framework/ProIcons/ReadMe.md new file mode 100644 index 00000000..5ec43b86 --- /dev/null +++ b/Framework/ProIcons/ReadMe.md @@ -0,0 +1,56 @@ +## ProIcons + + +This sample shows a list of all icons defined in ArcGIS Pro. It allows to get the pack URI for those icons and has a utility to inspect the icons using the light and dark themes. + + + +View it live + + +``` +Language: C# +Subject: Framework +Contributor: ArcGIS Pro SDK Team +Organization: Esri, http://www.esri.com +Date: 7/01/2020 +ArcGIS Pro: 2.6 +Visual Studio: 2017, 2019 +.NET Target Framework: 4.8 +``` + +## Resources + +* [API Reference online](https://pro.arcgis.com/en/pro-app/sdk/api-reference) +* ArcGIS Pro SDK for .NET (pro.arcgis.com) +* [arcgis-pro-sdk-community-samples](https://github.com/Esri/arcgis-pro-sdk-community-samples) +* [ArcGIS Pro DAML ID Reference](https://github.com/Esri/arcgis-pro-sdk/wiki/ArcGIS-Pro-DAML-ID-Reference) +* [FAQ](https://github.com/Esri/arcgis-pro-sdk/wiki/FAQ) +* [ArcGIS Pro SDK icons](https://github.com/Esri/arcgis-pro-sdk/releases/tag/2.4.0.19948) + +![ArcGIS Pro SDK for .NET Icons](https://Esri.github.io/arcgis-pro-sdk/images/Home/Image-of-icons.png "ArcGIS Pro SDK Icons") + +### Samples Data + +* Sample data for ArcGIS Pro SDK Community Samples can be downloaded from the [repo releases](https://github.com/Esri/arcgis-pro-sdk-community-samples/releases) page. + +## How to use the sample + +1. In Visual studio rebuild the solution. +1. Debug the add-in by clicking the "Start" button. +1. ArcGIS Pro opens, select any Map project +1. Under the "Pro Icons" tab there are two buttons that show the "Show All Icons" and "Verify Icon" Panes. +![UI](Screenshots/Screen1.png) + +1. The "Show All Icons" pane displays all icons defined in ArcGIS Pro. Click on any icon to get the icons name (or URI if you click the checkbox).. +![UI](Screenshots/Screen2.png) + +1. The "Verify Icon" pane allows you to enter an icon name (use the "Show All Icons" pane to get any icon name and verify the icon image using light and dark themes. + + + + + +      ArcGIS Pro SDK for Microsoft .NET Framework +             +[Home](https://github.com/Esri/arcgis-pro-sdk/wiki) | API Reference | [Requirements](https://github.com/Esri/arcgis-pro-sdk/wiki#requirements) | [Download](https://github.com/Esri/arcgis-pro-sdk/wiki#installing-arcgis-pro-sdk-for-net) | Samples diff --git a/Framework/ProIcons/Screenshots/Screen1.png b/Framework/ProIcons/Screenshots/Screen1.png new file mode 100644 index 0000000000000000000000000000000000000000..db26905fce8e53e97a393a79b5f9b1c2841d6758 GIT binary patch literal 192635 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

-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 z%0D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 G&Ho4MwNm#0 literal 0 HcmV?d00001 diff --git a/Framework/ProIcons/Screenshots/Screen2.png b/Framework/ProIcons/Screenshots/Screen2.png new file mode 100644 index 0000000000000000000000000000000000000000..271aacf4a7c7b9eea3c6ebf6a77ad2c83e207cb7 GIT binary patch literal 43834 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 DYV&lq literal 0 HcmV?d00001 diff --git a/Framework/ProWindowMVVM/ProWindowMVVM.csproj b/Framework/ProWindowMVVM/ProWindowMVVM.csproj index e02bbbe1..fef86b5c 100644 --- a/Framework/ProWindowMVVM/ProWindowMVVM.csproj +++ b/Framework/ProWindowMVVM/ProWindowMVVM.csproj @@ -166,6 +166,7 @@ BuildDefault bin\Debug\ProWindowMVVM.xml + 1591 BuildDefault diff --git a/Framework/README.md b/Framework/README.md index 5116f2f6..87c33fbc 100644 --- a/Framework/README.md +++ b/Framework/README.md @@ -41,6 +41,7 @@ This folder contains ArcGIS Pro Add-In Samples that fall under the 'Framework' t * [Notifications (c#)](../../../tree/master/Framework/Notifications) * [OpenMapViews (c#)](../../../tree/master/Framework/OpenMapViews) * [ProgressDialog (c#)](../../../tree/master/Framework/ProgressDialog) +* [ProIcons (c#)](../../../tree/master/Framework/ProIcons) * [ProWindowMVVM (c#)](../../../tree/master/Framework/ProWindowMVVM) * [QAReviewTool (c#)](../../../tree/master/Framework/QAReviewTool) * [RemoveAddins (c#)](../../../tree/master/Framework/RemoveAddins) diff --git a/Geodatabase/CalculateStatistics/CalculateStatistics.csproj b/Geodatabase/CalculateStatistics/CalculateStatistics.csproj index 7432e18f..4718aae5 100644 --- a/Geodatabase/CalculateStatistics/CalculateStatistics.csproj +++ b/Geodatabase/CalculateStatistics/CalculateStatistics.csproj @@ -158,6 +158,7 @@ BuildDefault bin\Debug\CalculateStatistics.xml + 1591 BuildDefault diff --git a/Geometry/MultipatchBuilderEx/MultipatchBuilderEx.csproj b/Geometry/MultipatchBuilderEx/MultipatchBuilderEx.csproj index 70cb8a2e..6840bee3 100644 --- a/Geometry/MultipatchBuilderEx/MultipatchBuilderEx.csproj +++ b/Geometry/MultipatchBuilderEx/MultipatchBuilderEx.csproj @@ -166,6 +166,7 @@ BuildDefault bin\Debug\MultipatchBuilderEx.xml + 1591 BuildDefault diff --git a/Layouts/CreateReport/CreateReportViewModel.cs b/Layouts/CreateReport/CreateReportViewModel.cs index 1fa8ddfa..31c17d4c 100644 --- a/Layouts/CreateReport/CreateReportViewModel.cs +++ b/Layouts/CreateReport/CreateReportViewModel.cs @@ -41,534 +41,538 @@ limitations under the License. namespace CreateReport { - internal class CreateReportViewModel : DockPane - { - private const string _dockPaneID = "CreateReport_CreateReport"; - private object _lock = new object(); - Map _activeMap; - - protected CreateReportViewModel() { - System.Windows.Data.BindingOperations.EnableCollectionSynchronization(_layers, _lock); - } - ///

- /// Called when the dock pane is first initialized. - /// - protected override async Task InitializeAsync() - { - if (MapView.Active == null) - return; - - await UpdateCollectionsAsync(); - await base.InitializeAsync(); - } - - - #region Binding properties - /// - /// Show the DockPane. - /// - internal static void Show() - { - DockPane pane = FrameworkApplication.DockPaneManager.Find(_dockPaneID); - if (pane == null) - return; - - pane.Activate(); - } - - /// - /// Text shown near the top of the DockPane. - /// - private string _heading = "Create Report"; - public string Heading - { - get { return _heading; } - set - { - SetProperty(ref _heading, value, () => Heading); - } - } - private ObservableCollection _layers = new ObservableCollection(); - /// - /// Collection of layers in the active map - /// - public ObservableCollection Layers - { - get { return _layers; } - } - private FeatureLayer _selectedLayer; - /// - /// Selected feature layer - /// - public FeatureLayer SelectedLayer - { - get { return _selectedLayer; } - set - { - SetProperty(ref _selectedLayer, value, () => SelectedLayer); - GetFieldsAsync(); - } - } - private ObservableCollection _reportFields = new ObservableCollection(); - /// - /// Collection of fields in the layer used to generate the report - /// - public ObservableCollection ReportFields - { - get { return _reportFields; } - } - - - private string _reportName; - - /// - /// The name of the report project item created - /// - public string ReportName - { - get { return _reportName; } - set { SetProperty(ref _reportName, value, () => ReportName); } - } - private ObservableCollection _reportTemplates = new ObservableCollection(); - /// - /// Available report templates - /// - public ObservableCollection ReportTemplates - { - get { return _reportTemplates; } - set { SetProperty(ref _reportTemplates, value, () => ReportTemplates); } - } - private string _selectedReportTemplate; - /// - /// Selected report template - /// - public string SelectedReportTemplate - { - get { return _selectedReportTemplate; } - set { SetProperty(ref _selectedReportTemplate, value, () => SelectedReportTemplate); } - } - private ObservableCollection _reportStyles = new ObservableCollection(); - /// - /// Available Report styles - /// - public ObservableCollection ReportStyles - { - get { return _reportStyles; } - set { SetProperty(ref _reportStyles, value, () => ReportStyles); } - } - private string _selectedStyle; - /// - /// Selected Report Style - /// - public string SelectedReportStyle - { - get { return _selectedStyle; } - set { SetProperty(ref _selectedStyle, value, () => SelectedReportStyle); } - } - - private ObservableCollection _statsOptions = new ObservableCollection(); - /// - /// Stats options - /// - public ObservableCollection StatsOptions - { - get { return _statsOptions; } - set { SetProperty(ref _statsOptions, value, () => StatsOptions); } - } - - private string _selectedStatsOption; - /// - /// Selected statistics - /// - public string SelectedStatsOption - { - get { return _selectedStatsOption; } - set { SetProperty(ref _selectedStatsOption, value, () => SelectedStatsOption); } - - } - private ObservableCollection _selectedFields = new ObservableCollection(); - /// - /// Represents the selected fields which is a subset of the ReportFields. This is being used by the Group Fields and Stats Fields drop downs. - /// - public ObservableCollection SelectedFields - { - get { return _selectedFields; } - set { SetProperty(ref _selectedFields, value, () => SelectedFields); } - } - - private ReportField _selectedGroupField; - /// - /// Selected Group field - /// - public ReportField SelectedGroupField - { - get { return _selectedGroupField; } - set - { - SetProperty(ref _selectedGroupField, value, () => SelectedGroupField); - //Now make the set of templates to display only grouping types or non grouping types - ReportTemplates.Clear(); - if (SelectedGroupField == null) - ReportTemplates = new ObservableCollection(_nonGroupingTemplates); - else - ReportTemplates = new ObservableCollection(_groupingTemplates); - - SelectedReportTemplate = ReportTemplates[0]; - } - } - - private ReportField _selectedStatsField; - /// - /// Selected Statistic field - /// - public ReportField SelectedStatsField - { - get { return _selectedStatsField; } - set { - SetProperty(ref _selectedStatsField, value, () => SelectedStatsField); - //Gets stats collection - //Clear it first - StatsOptions.Clear(); - var statInfo = Enum.GetValues(typeof(FieldStatisticsFlag)); - foreach (FieldStatisticsFlag stat in statInfo) - { - //if (stat == FieldStatisticsFlag.NoStatistics) - // continue; - StatsOptions.Add(stat.ToString()); - } - SelectedStatsOption = StatsOptions[0]; - } - } - - - private bool _isUseSelection; - /// - /// Check box binding to use the selected features in map - /// - public bool IsUseSelection - { - get { return _isUseSelection; } - set { SetProperty(ref _isUseSelection, value, () => IsUseSelection); } - } - private bool _isSelectAll; - /// - /// Check box binding to select all the fields - /// - public bool IsSelectAll - { - get { return _isSelectAll; } - set { - SetProperty(ref _isSelectAll, value, () => IsSelectAll); - if (!IsSelectAll) - { - foreach (var rptFld in ReportFields) - { - rptFld.IsSelected = false; - } - } - else - { - foreach (var rptFld in ReportFields) - { - rptFld.IsSelected = true; - } - } - - - } - } - - private bool _isCreateReport; - - #endregion - #region Commands - - private ICommand _clearGroupingCommand; - public ICommand ClearGroupingCommand - { - get - { - _clearGroupingCommand = new RelayCommand(() => ClearGrouping(), () => { return SelectedGroupField != null; }); - return _clearGroupingCommand; - } - } - - private void ClearGrouping() - { - if (SelectedGroupField != null) - SelectedGroupField = null; - } - - private ICommand _clearStatsFieldsCommand; - public ICommand ClearStatsFieldsCommand - { - get - { - _clearStatsFieldsCommand = new RelayCommand(() => ClearStatsFields(), () => { return SelectedStatsField != null; }); - return _clearStatsFieldsCommand; - } - } - - private void ClearStatsFields() - { - if (SelectedStatsField != null) - SelectedStatsField = null; - StatsOptions.Clear(); - } - - private ICommand _createReportCmd; - /// - /// The button command to create the report - /// - public ICommand CreateReportCommand - { - get - { - _createReportCmd = new RelayCommand(() => CreateReport(), () => { return MapView.Active != null && SelectedLayer != null; }); - return _createReportCmd; - } - } - private ICommand _exportReportCmd; - - /// - /// The button command to export the report - /// - public ICommand ExportReportCommand - { - get - { - _exportReportCmd = new RelayCommand(() => ExportReport(), () => { return _isCreateReport; } ); - return _exportReportCmd; - } - } - #endregion - - - /// - /// Creates the report - /// - /// - private async Task CreateReport() - { - ReportDataSource reportDataSource = null; - Report report = null; - _isCreateReport = false; - var reportTemplate = await GetReportTemplate(SelectedReportTemplate); - await QueuedTask.Run(() => - { - //Adding all fields to the report - List reportFields = new List(); - var selectedReportFields = ReportFields.Where((fld) => fld.IsSelected); - foreach (var rfld in selectedReportFields) - { - var cimReportField = new CIMReportField() { Name = rfld.Name }; - reportFields.Add(cimReportField); - //Defining grouping field - if (rfld.Name == SelectedGroupField?.Name) - cimReportField.Group = true; - //To DO: Do sort info here. - } - - //Report field statistics - List reportFieldStats = new List(); - - if (SelectedStatsField != null) - { - ReportFieldStatistic reportStat = new ReportFieldStatistic(); - reportStat.Field = SelectedStatsField.Name; - reportStat.Statistic = (FieldStatisticsFlag)Enum.Parse(typeof(FieldStatisticsFlag), SelectedStatsOption); - reportFieldStats.Add(reportStat); - } - - //Set Datasource - reportDataSource = new ReportDataSource(SelectedLayer, "", IsUseSelection, reportFields); - - try - { - report = ReportFactory.Instance.CreateReport(ReportName, reportDataSource, null, reportFieldStats, reportTemplate, SelectedReportStyle); - _isCreateReport = true; - } - catch (System.InvalidOperationException e) - { - if (e.Message.Contains("Group field defined for a non-grouping template")) - { - MessageBox.Show("A group field cannot be defined for a non-grouping template."); - } - else if (e.Message.Contains("Grouping template specified but no group field defined")) - { - MessageBox.Show("A group field should be defined for a grouping template."); - } - } - }); - } - /// - /// Exports report - /// - /// - private async Task ExportReport() - { - ReportProjectItem reportProjItem = Project.Current.GetItems().FirstOrDefault(item => item.Name.Equals(ReportName)); - Report report = null; - await QueuedTask.Run(() => report = reportProjItem?.GetReport()); - if (report == null) - { - MessageBox.Show($"{ReportName} report not found."); - return; - } - - //Define Export Options - var exportOptions = new ReportExportOptions - { - ExportPageOption = ExportPageOptions.ExportAllPages, - TotalPageNumberOverride = 12, - StartingPageNumberLabelOffset = 0 - - }; - //Create PDF format with appropriate settings - PDFFormat pdfFormat = new PDFFormat(); - pdfFormat.Resolution = 300; - pdfFormat.OutputFileName = Path.Combine(Project.Current.HomeFolderPath, report.Name); - await ExportAReportToPdf(report, pdfFormat, exportOptions, IsUseSelection); - MessageBox.Show($"{ReportName} report exported to {pdfFormat.OutputFileName}"); - - - } - - #region Private methods and props - - private List _groupingTemplates = new List(); - private List _nonGroupingTemplates = new List(); - - private async Task ExportAReportToPdf(Report report, PDFFormat pdfFormat, ReportExportOptions reportExportOptions, bool isUseSelectionSet = true) - { - await QueuedTask.Run( () => { - - report?.ExportToPDF(ReportName, pdfFormat, reportExportOptions, isUseSelectionSet); - }); - } - private async Task GetReportTemplate(string reportName) - { - var reportTemplates = await ReportTemplateManager.GetTemplatesAsync(); - return reportTemplates.Where(r => r.Name == reportName).First(); - } - - private async Task GetFieldsAsync() - { - ReportFields.Clear(); - SelectedFields.Clear(); - if (SelectedLayer == null) - return; - - await QueuedTask.Run((Action)(() => - { - foreach (FieldDescription fd in SelectedLayer?.GetFieldDescriptions()) - { - string shapeField = SelectedLayer.GetFeatureClass().GetDefinition().GetShapeField(); - if (fd.Name == shapeField) continue; //filter out the shape field. - var defFieldAction = (Action)(() => - { - var field = new ReportField { IsSelected = false, DisplayName = fd.Alias, Name = fd.Name }; - ReportFields.Add(field); - field.FieldSelectionChanged += this.Field_FieldSelectionChanged; - //field.IsSelected = true; - }); - ActionOnGuiThread(defFieldAction); - } - })); - } - - private void Field_FieldSelectionChanged(object sender, FieldSelectionChangedEventArgs e) - { - var reportField = e.ChangedReportField; - if (reportField.IsSelected) - SelectedFields.Add(new ReportField { DisplayName = reportField.DisplayName, Name = reportField.Name }); - else - SelectedFields.Remove(SelectedFields.Where((fld) => fld.Name == reportField.Name).FirstOrDefault()); - } - - public async Task UpdateCollectionsAsync() - { - _activeMap = MapView.Active.Map; - //Get the layers in active map - GetLayers(); - - //Get the report Templates - await QueuedTask.Run(() => - { - //Creating a collection of grouping and non grouping report templates - foreach (ReportTemplate reportTemplate in ReportTemplateManager.GetTemplates()) - { - if (reportTemplate.Name.Contains("Grouping")) - _groupingTemplates.Add(reportTemplate.Name); - else - _nonGroupingTemplates.Add(reportTemplate.Name); - } - }); - //Initialize the report template collection with non grouping styles - since non grouping field is selected. - ReportTemplates = new ObservableCollection(_nonGroupingTemplates); - SelectedReportTemplate = ReportTemplates[0]; - //Get the report Styles - await QueuedTask.Run(() => - { - foreach (string reportStyle in ReportStylingManager.GetStylings()) - { - var defReportStyleAction = (Action)(() => - { - ReportStyles.Add(reportStyle); - }); - ActionOnGuiThread(defReportStyleAction); - } - }); - SelectedReportStyle = ReportStyles[0]; - - } - private void GetLayers() - { - Layers.Clear(); - if (_activeMap == null) - return; - ReportName = $"Report_{_activeMap.Name}"; - var layers = _activeMap.GetLayersAsFlattenedList().OfType(); - //if (layers.Count == 0) - // return; - lock (_lock) - { - foreach (var layer in layers) - { - lock (_lock) - Layers.Add(layer); - } - } - SelectedLayer = Layers.Count > 0 ? Layers[0] : null; - } - - /// - /// We have to ensure that GUI updates are only done from the GUI thread. - /// - private void ActionOnGuiThread(Action theAction) - { - if (System.Windows.Application.Current.Dispatcher.CheckAccess()) - { - //We are on the GUI thread - theAction(); - } - else - { - //Using the dispatcher to perform this action on the GUI thread. - ProApp.Current.Dispatcher.BeginInvoke(DispatcherPriority.Normal, theAction); - } - } - #endregion - } - - /// - /// Button implementation to show the DockPane. - /// - internal class CreateReport_ShowButton : Button - { - protected override void OnClick() - { - CreateReportViewModel.Show(); - } - } + internal class CreateReportViewModel : DockPane + { + private const string _dockPaneID = "CreateReport_CreateReport"; + private object _lock = new object(); + Map _activeMap; + + protected CreateReportViewModel() + { + System.Windows.Data.BindingOperations.EnableCollectionSynchronization(_layers, _lock); + } + /// + /// Called when the dock pane is first initialized. + /// + protected override async Task InitializeAsync() + { + if (MapView.Active == null) + return; + + await UpdateCollectionsAsync(); + await base.InitializeAsync(); + } + + + #region Binding properties + /// + /// Show the DockPane. + /// + internal static void Show() + { + DockPane pane = FrameworkApplication.DockPaneManager.Find(_dockPaneID); + if (pane == null) + return; + + pane.Activate(); + } + + /// + /// Text shown near the top of the DockPane. + /// + private string _heading = "Create Report"; + public string Heading + { + get { return _heading; } + set + { + SetProperty(ref _heading, value, () => Heading); + } + } + private ObservableCollection _layers = new ObservableCollection(); + /// + /// Collection of layers in the active map + /// + public ObservableCollection Layers + { + get { return _layers; } + } + private FeatureLayer _selectedLayer; + /// + /// Selected feature layer + /// + public FeatureLayer SelectedLayer + { + get { return _selectedLayer; } + set + { + SetProperty(ref _selectedLayer, value, () => SelectedLayer); + _ = GetFieldsAsync(); + } + } + private ObservableCollection _reportFields = new ObservableCollection(); + /// + /// Collection of fields in the layer used to generate the report + /// + public ObservableCollection ReportFields + { + get { return _reportFields; } + } + + + private string _reportName; + + /// + /// The name of the report project item created + /// + public string ReportName + { + get { return _reportName; } + set { SetProperty(ref _reportName, value, () => ReportName); } + } + private ObservableCollection _reportTemplates = new ObservableCollection(); + /// + /// Available report templates + /// + public ObservableCollection ReportTemplates + { + get { return _reportTemplates; } + set { SetProperty(ref _reportTemplates, value, () => ReportTemplates); } + } + private string _selectedReportTemplate; + /// + /// Selected report template + /// + public string SelectedReportTemplate + { + get { return _selectedReportTemplate; } + set { SetProperty(ref _selectedReportTemplate, value, () => SelectedReportTemplate); } + } + private ObservableCollection _reportStyles = new ObservableCollection(); + /// + /// Available Report styles + /// + public ObservableCollection ReportStyles + { + get { return _reportStyles; } + set { SetProperty(ref _reportStyles, value, () => ReportStyles); } + } + private string _selectedStyle; + /// + /// Selected Report Style + /// + public string SelectedReportStyle + { + get { return _selectedStyle; } + set { SetProperty(ref _selectedStyle, value, () => SelectedReportStyle); } + } + + private ObservableCollection _statsOptions = new ObservableCollection(); + /// + /// Stats options + /// + public ObservableCollection StatsOptions + { + get { return _statsOptions; } + set { SetProperty(ref _statsOptions, value, () => StatsOptions); } + } + + private string _selectedStatsOption; + /// + /// Selected statistics + /// + public string SelectedStatsOption + { + get { return _selectedStatsOption; } + set { SetProperty(ref _selectedStatsOption, value, () => SelectedStatsOption); } + + } + private ObservableCollection _selectedFields = new ObservableCollection(); + /// + /// Represents the selected fields which is a subset of the ReportFields. This is being used by the Group Fields and Stats Fields drop downs. + /// + public ObservableCollection SelectedFields + { + get { return _selectedFields; } + set { SetProperty(ref _selectedFields, value, () => SelectedFields); } + } + + private ReportField _selectedGroupField; + /// + /// Selected Group field + /// + public ReportField SelectedGroupField + { + get { return _selectedGroupField; } + set + { + SetProperty(ref _selectedGroupField, value, () => SelectedGroupField); + //Now make the set of templates to display only grouping types or non grouping types + ReportTemplates.Clear(); + if (SelectedGroupField == null) + ReportTemplates = new ObservableCollection(_nonGroupingTemplates); + else + ReportTemplates = new ObservableCollection(_groupingTemplates); + + SelectedReportTemplate = ReportTemplates[0]; + } + } + + private ReportField _selectedStatsField; + /// + /// Selected Statistic field + /// + public ReportField SelectedStatsField + { + get { return _selectedStatsField; } + set + { + SetProperty(ref _selectedStatsField, value, () => SelectedStatsField); + //Gets stats collection + //Clear it first + StatsOptions.Clear(); + var statInfo = Enum.GetValues(typeof(FieldStatisticsFlag)); + foreach (FieldStatisticsFlag stat in statInfo) + { + //if (stat == FieldStatisticsFlag.NoStatistics) + // continue; + StatsOptions.Add(stat.ToString()); + } + SelectedStatsOption = StatsOptions[0]; + } + } + + + private bool _isUseSelection; + /// + /// Check box binding to use the selected features in map + /// + public bool IsUseSelection + { + get { return _isUseSelection; } + set { SetProperty(ref _isUseSelection, value, () => IsUseSelection); } + } + private bool _isSelectAll; + /// + /// Check box binding to select all the fields + /// + public bool IsSelectAll + { + get { return _isSelectAll; } + set + { + SetProperty(ref _isSelectAll, value, () => IsSelectAll); + if (!IsSelectAll) + { + foreach (var rptFld in ReportFields) + { + rptFld.IsSelected = false; + } + } + else + { + foreach (var rptFld in ReportFields) + { + rptFld.IsSelected = true; + } + } + + + } + } + + private bool _isCreateReport; + + #endregion + #region Commands + + private ICommand _clearGroupingCommand; + public ICommand ClearGroupingCommand + { + get + { + _clearGroupingCommand = new RelayCommand(() => ClearGrouping(), () => { return SelectedGroupField != null; }); + return _clearGroupingCommand; + } + } + + private void ClearGrouping() + { + if (SelectedGroupField != null) + SelectedGroupField = null; + } + + private ICommand _clearStatsFieldsCommand; + public ICommand ClearStatsFieldsCommand + { + get + { + _clearStatsFieldsCommand = new RelayCommand(() => ClearStatsFields(), () => { return SelectedStatsField != null; }); + return _clearStatsFieldsCommand; + } + } + + private void ClearStatsFields() + { + if (SelectedStatsField != null) + SelectedStatsField = null; + StatsOptions.Clear(); + } + + private ICommand _createReportCmd; + /// + /// The button command to create the report + /// + public ICommand CreateReportCommand + { + get + { + _createReportCmd = new RelayCommand(() => CreateReport(), () => { return MapView.Active != null && SelectedLayer != null; }); + return _createReportCmd; + } + } + private ICommand _exportReportCmd; + + /// + /// The button command to export the report + /// + public ICommand ExportReportCommand + { + get + { + _exportReportCmd = new RelayCommand(() => ExportReport(), () => { return _isCreateReport; }); + return _exportReportCmd; + } + } + #endregion + + + /// + /// Creates the report + /// + /// + private async Task CreateReport() + { + ReportDataSource reportDataSource = null; + Report report = null; + _isCreateReport = false; + var reportTemplate = await GetReportTemplate(SelectedReportTemplate); + await QueuedTask.Run(() => + { + //Adding all fields to the report + List reportFields = new List(); + var selectedReportFields = ReportFields.Where((fld) => fld.IsSelected); + foreach (var rfld in selectedReportFields) + { + var cimReportField = new CIMReportField() { Name = rfld.Name }; + reportFields.Add(cimReportField); + //Defining grouping field + if (rfld.Name == SelectedGroupField?.Name) + cimReportField.Group = true; + //To DO: Do sort info here. + } + + //Report field statistics + List reportFieldStats = new List(); + + if (SelectedStatsField != null) + { + ReportFieldStatistic reportStat = new ReportFieldStatistic(); + reportStat.Field = SelectedStatsField.Name; + reportStat.Statistic = (FieldStatisticsFlag)Enum.Parse(typeof(FieldStatisticsFlag), SelectedStatsOption); + reportFieldStats.Add(reportStat); + } + + //Set Datasource + reportDataSource = new ReportDataSource(SelectedLayer, "", IsUseSelection, reportFields); + + try + { + report = ReportFactory.Instance.CreateReport(ReportName, reportDataSource, null, reportFieldStats, reportTemplate, SelectedReportStyle); + _isCreateReport = true; + } + catch (System.InvalidOperationException e) + { + if (e.Message.Contains("Group field defined for a non-grouping template")) + { + MessageBox.Show("A group field cannot be defined for a non-grouping template."); + } + else if (e.Message.Contains("Grouping template specified but no group field defined")) + { + MessageBox.Show("A group field should be defined for a grouping template."); + } + } + }); + } + /// + /// Exports report + /// + /// + private async Task ExportReport() + { + ReportProjectItem reportProjItem = Project.Current.GetItems().FirstOrDefault(item => item.Name.Equals(ReportName)); + Report report = null; + await QueuedTask.Run(() => report = reportProjItem?.GetReport()); + if (report == null) + { + MessageBox.Show($"{ReportName} report not found."); + return; + } + + //Define Export Options + var exportOptions = new ReportExportOptions + { + ExportPageOption = ExportPageOptions.ExportAllPages, + TotalPageNumberOverride = 12, + StartingPageNumberLabelOffset = 0 + + }; + //Create PDF format with appropriate settings + PDFFormat pdfFormat = new PDFFormat(); + pdfFormat.Resolution = 300; + pdfFormat.OutputFileName = Path.Combine(Project.Current.HomeFolderPath, report.Name); + await ExportAReportToPdf(report, pdfFormat, exportOptions, IsUseSelection); + MessageBox.Show($"{ReportName} report exported to {pdfFormat.OutputFileName}"); + + + } + + #region Private methods and props + + private List _groupingTemplates = new List(); + private List _nonGroupingTemplates = new List(); + + private async Task ExportAReportToPdf(Report report, PDFFormat pdfFormat, ReportExportOptions reportExportOptions, bool isUseSelectionSet = true) + { + await QueuedTask.Run(() => + { + + report?.ExportToPDF(ReportName, pdfFormat, reportExportOptions, isUseSelectionSet); + }); + } + private async Task GetReportTemplate(string reportName) + { + var reportTemplates = await ReportTemplateManager.GetTemplatesAsync(); + return reportTemplates.Where(r => r.Name == reportName).First(); + } + + private async Task GetFieldsAsync() + { + ReportFields.Clear(); + SelectedFields.Clear(); + if (SelectedLayer == null) + return; + + await QueuedTask.Run((Action)(() => + { + foreach (FieldDescription fd in SelectedLayer?.GetFieldDescriptions()) + { + string shapeField = SelectedLayer.GetFeatureClass().GetDefinition().GetShapeField(); + if (fd.Name == shapeField) continue; //filter out the shape field. + var defFieldAction = (Action)(() => + { + var field = new ReportField { IsSelected = false, DisplayName = fd.Alias, Name = fd.Name }; + ReportFields.Add(field); + field.FieldSelectionChanged += this.Field_FieldSelectionChanged; + //field.IsSelected = true; + }); + ActionOnGuiThread(defFieldAction); + } + })); + } + + private void Field_FieldSelectionChanged(object sender, FieldSelectionChangedEventArgs e) + { + var reportField = e.ChangedReportField; + if (reportField.IsSelected) + SelectedFields.Add(new ReportField { DisplayName = reportField.DisplayName, Name = reportField.Name }); + else + SelectedFields.Remove(SelectedFields.Where((fld) => fld.Name == reportField.Name).FirstOrDefault()); + } + + public async Task UpdateCollectionsAsync() + { + _activeMap = MapView.Active.Map; + //Get the layers in active map + GetLayers(); + + //Get the report Templates + await QueuedTask.Run(() => + { + //Creating a collection of grouping and non grouping report templates + foreach (ReportTemplate reportTemplate in ReportTemplateManager.GetTemplates()) + { + if (reportTemplate.Name.Contains("Grouping")) + _groupingTemplates.Add(reportTemplate.Name); + else + _nonGroupingTemplates.Add(reportTemplate.Name); + } + }); + //Initialize the report template collection with non grouping styles - since non grouping field is selected. + ReportTemplates = new ObservableCollection(_nonGroupingTemplates); + SelectedReportTemplate = ReportTemplates[0]; + //Get the report Styles + await QueuedTask.Run(() => + { + foreach (string reportStyle in ReportStylingManager.GetStylings()) + { + var defReportStyleAction = (Action)(() => + { + ReportStyles.Add(reportStyle); + }); + ActionOnGuiThread(defReportStyleAction); + } + }); + SelectedReportStyle = ReportStyles[0]; + + } + private void GetLayers() + { + Layers.Clear(); + if (_activeMap == null) + return; + ReportName = $"Report_{_activeMap.Name}"; + var layers = _activeMap.GetLayersAsFlattenedList().OfType(); + //if (layers.Count == 0) + // return; + lock (_lock) + { + foreach (var layer in layers) + { + lock (_lock) + Layers.Add(layer); + } + } + SelectedLayer = Layers.Count > 0 ? Layers[0] : null; + } + + /// + /// We have to ensure that GUI updates are only done from the GUI thread. + /// + private void ActionOnGuiThread(Action theAction) + { + if (System.Windows.Application.Current.Dispatcher.CheckAccess()) + { + //We are on the GUI thread + theAction(); + } + else + { + //Using the dispatcher to perform this action on the GUI thread. + ProApp.Current.Dispatcher.BeginInvoke(DispatcherPriority.Normal, theAction); + } + } + #endregion + } + + /// + /// Button implementation to show the DockPane. + /// + internal class CreateReport_ShowButton : Button + { + protected override void OnClick() + { + CreateReportViewModel.Show(); + } + } } diff --git a/Map-Exploration/WorkingWithQueryDefinitionFilters/WorkingWithQueryDefinitionFilters.csproj b/Map-Exploration/WorkingWithQueryDefinitionFilters/WorkingWithQueryDefinitionFilters.csproj index de72188f..58210ac0 100644 --- a/Map-Exploration/WorkingWithQueryDefinitionFilters/WorkingWithQueryDefinitionFilters.csproj +++ b/Map-Exploration/WorkingWithQueryDefinitionFilters/WorkingWithQueryDefinitionFilters.csproj @@ -191,6 +191,7 @@ BuildDefault bin\Debug\WorkingWithQueryDefinitionFilters.xml + 1591 BuildDefault diff --git a/Plugin/SimplePointPluginTest/SimplePointPlugin/SimplePointPlugin.csproj b/Plugin/SimplePointPluginTest/SimplePointPlugin/SimplePointPlugin.csproj index 4636d238..149e0c71 100644 --- a/Plugin/SimplePointPluginTest/SimplePointPlugin/SimplePointPlugin.csproj +++ b/Plugin/SimplePointPluginTest/SimplePointPlugin/SimplePointPlugin.csproj @@ -54,9 +54,6 @@ ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll - - ..\packages\System.Collections.Immutable.1.7.1\lib\net461\System.Collections.Immutable.dll - ..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll @@ -65,9 +62,6 @@ ..\..\..\packages\System.Numerics.Vectors.4.6.0-preview5.19224.8\lib\net46\System.Numerics.Vectors.dll - - ..\packages\System.Runtime.CompilerServices.Unsafe.4.7.1\lib\net461\System.Runtime.CompilerServices.Unsafe.dll - diff --git a/README.md b/README.md index 7f3b87a4..52183713 100644 --- a/README.md +++ b/README.md @@ -71,7 +71,7 @@ Read the [ProGuide: Installation and Upgrade](https://github.com/Esri/arcgis-pro ## ArcGIS Pro Add-In Community Sample List -Below is the list of 194 ArcGIS Pro samples that are included in this repository. +Below is the list of 195 ArcGIS Pro samples that are included in this repository. #### Content @@ -153,6 +153,7 @@ Below is the list of 194 ArcGIS Pro samples that are included in this repository * [Notifications (c#)](../../tree/master/Framework/Notifications) * [OpenMapViews (c#)](../../tree/master/Framework/OpenMapViews) * [ProgressDialog (c#)](../../tree/master/Framework/ProgressDialog) +* [ProIcons (c#)](../../tree/master/Framework/ProIcons) * [ProWindowMVVM (c#)](../../tree/master/Framework/ProWindowMVVM) * [QAReviewTool (c#)](../../tree/master/Framework/QAReviewTool) * [RemoveAddins (c#)](../../tree/master/Framework/RemoveAddins) diff --git a/Samples.sln b/Samples.sln index 8423c5a9..08029263 100644 --- a/Samples.sln +++ b/Samples.sln @@ -416,6 +416,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GraphicsLayers", "Map-Autho EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ValidateChanges", "UtilityNetwork\ValidateChanges\ValidateChanges.csproj", "{0A907E31-89CA-439F-855C-81FC9375EEEF}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProIcons", "Framework\ProIcons\ProIcons.csproj", "{6DA0B756-6B7D-451F-8AFF-1ABD718C9665}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -2048,6 +2050,14 @@ Global {0A907E31-89CA-439F-855C-81FC9375EEEF}.Release|Any CPU.Build.0 = Release|Any CPU {0A907E31-89CA-439F-855C-81FC9375EEEF}.Release|x64.ActiveCfg = Release|Any CPU {0A907E31-89CA-439F-855C-81FC9375EEEF}.Release|x64.Build.0 = Release|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Debug|x64.ActiveCfg = Debug|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Debug|x64.Build.0 = Debug|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Release|Any CPU.Build.0 = Release|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Release|x64.ActiveCfg = Release|Any CPU + {6DA0B756-6B7D-451F-8AFF-1ABD718C9665}.Release|x64.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE