private void SaveAsFileClick(object sender, RoutedEventArgs e) { TreeViewHelpers.TreeViewContextMenu = SearchTreeView.Resources["SearchTreeViewContext"] as ContextMenu; Microsoft.Win32.SaveFileDialog dialog = new Microsoft.Win32.SaveFileDialog() { Filter = "AD to Aventri Settings (*.ad2ac)|*.ad2ac", InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), CheckPathExists = true }; if (dialog.ShowDialog().GetValueOrDefault(false)) { TreeViewHelpers.SaveTreeAsFile( new Dictionary <string, string> { { "LdapBaseDn", ldapBaseDn.Text }, { "AventriProxy", AventriProxy.Text }, { "AventriToken", AventriToken.Text }, { "AventriListID", AventriListID.Text }, }, SearchTreeView, dialog.FileName ); _currentOpenFile = dialog.FileName; } }
private void SynchronizeButtonClick(object sender, RoutedEventArgs e) { foreach (Window window in System.Windows.Application.Current.Windows) { if (window is SynchronizeWindow) { if (((SynchronizeWindow)window).IsExporting) { window.Show(); window.Focus(); return; } else { window.Close(); } } } string search = TreeViewHelpers.GetLdapSearchQuery(SearchTreeView); if (search == "") { MessageBox.Show("Your search is empty!"); return; } SynchronizeWindow w = new SynchronizeWindow(); w.Show(); w.ExportAdToAventri(search, ldapBaseDn.Text, "api-emea.eventscloud.com", AventriAccountID.Text, AventriToken.Text, AventriProxy.Text, AventriListID.Text); }
private void CollapseSearchItemButtonClick(object sender, RoutedEventArgs e) { foreach (object i in SearchTreeView.Items) { TreeViewHelpers.RunTreeviewRecursive(i, delegate(TreeViewItem item) { item.IsExpanded = false; }); } }
private void CollapseSelectedSearchItemClick(object sender, RoutedEventArgs e) { if (SearchTreeView.SelectedItem != null) { TreeViewHelpers.RunTreeviewRecursive(SearchTreeView.SelectedItem, delegate(TreeViewItem item) { item.IsExpanded = false; }); } }
private void CloneSelectedSearchItemClick(object sender, RoutedEventArgs e) { TreeViewHelpers.TreeViewContextMenu = SearchTreeView.Resources["SearchTreeViewContext"] as ContextMenu; if (SearchTreeView.SelectedItem != null) { if (!SearchTreeView.Items.Contains(SearchTreeView.SelectedItem)) { TreeViewHelpers.CloneTreeview(SearchTreeView); } } }
private void PreviewSearchItemButtonClick(object sender, RoutedEventArgs e) { string search = TreeViewHelpers.GetLdapSearchQuery(SearchTreeView); if (search == "") { MessageBox.Show("Your search is empty!"); return; } AdQueryBrowser b = new AdQueryBrowser(search, ldapBaseDn.Text); b.Show(); }
private void DropTree_Drop(object sender, DragEventArgs e) { if (getDragEventArgsDataPresent(e)) { TreeViewItem sourceItem = getDragEventArgsData(e); TreeViewItem destinationItem = FindAnchestor <TreeViewItem>((DependencyObject)e.OriginalSource); if (destinationItem == null || sourceItem == null || destinationItem == sourceItem) { return; } TreeViewItem pItem = sourceItem.Parent as TreeViewItem; if (pItem == null) { return; } if (destinationItem is LdapSearchTreeViewItem) { if (((LdapSearchTreeViewItem)destinationItem).SearchOperatorType == LdapSearchExprEnum.Comparison) { return; } } bool destinationIsAChild = false; TreeViewHelpers.RunTreeviewRecursive(sourceItem, delegate(TreeViewItem item) { if (item == destinationItem) { destinationIsAChild = true; } }); if (destinationIsAChild) { return; } pItem.Items.Remove(sourceItem); destinationItem.Items.Add(sourceItem); destinationItem.IsExpanded = true; sourceItem.IsSelected = true; } }
private void LoadFromFileClick(object sender, RoutedEventArgs e) { TreeViewHelpers.TreeViewContextMenu = SearchTreeView.Resources["SearchTreeViewContext"] as ContextMenu; _currentOpenFile = null; Microsoft.Win32.OpenFileDialog dialog = new Microsoft.Win32.OpenFileDialog() { Filter = "AD to Aventri Settings (*.ad2ac)|*.ad2ac", InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), CheckPathExists = true }; if (dialog.ShowDialog().GetValueOrDefault(false)) { Dictionary <string, string> settings = new Dictionary <string, string> { }; TreeViewHelpers.LoadTreeFromFile( settings, SearchTreeView, dialog.FileName ); // set all settings foreach (KeyValuePair <string, TextBox> k in new Dictionary <string, TextBox> { { "LdapBaseDn", ldapBaseDn }, { "AventriProxy", AventriProxy }, { "AventriAccountID", AventriAccountID }, { "AventriToken", AventriToken }, { "AventriListID", AventriListID }, }) { if (settings.ContainsKey(k.Key)) { k.Value.Text = settings[k.Key]; } } _currentOpenFile = dialog.FileName; } }
private void SanitizeSelectedSearchItemClick(object sender, RoutedEventArgs e) { if (SearchTreeView.SelectedItem != null) { List <LdapSearchTreeViewItem> itemsToDelete = new List <LdapSearchTreeViewItem>(); TreeViewHelpers.RunTreeviewRecursive(SearchTreeView.SelectedItem, delegate(TreeViewItem item) { LdapSearchTreeViewItem litem = item as LdapSearchTreeViewItem; if (litem == null) { return; } if (litem.SearchOperatorType != LdapSearchExprEnum.Comparison && litem.Items.Count == 0) { itemsToDelete.Add(litem); } }); while (itemsToDelete.Count > 0) { LdapSearchTreeViewItem item = itemsToDelete.First(); itemsToDelete.Remove(item); TreeViewItem pitem = item.Parent as TreeViewItem; if (pitem == null) { continue; } pitem.Items.Remove(item); LdapSearchTreeViewItem lpitem = pitem as LdapSearchTreeViewItem; if (lpitem == null) { continue; } if (lpitem.SearchOperatorType != LdapSearchExprEnum.Comparison && lpitem.Items.Count == 0) { itemsToDelete.Add(lpitem); } } } }
private void SaveFileClick(object sender, RoutedEventArgs e) { TreeViewHelpers.TreeViewContextMenu = SearchTreeView.Resources["SearchTreeViewContext"] as ContextMenu; if (_currentOpenFile == null) { SaveAsFileClick(sender, e); return; } TreeViewHelpers.SaveTreeAsFile( new Dictionary <string, string> { { "LdapBaseDn", ldapBaseDn.Text }, { "AventriProxy", AventriProxy.Text }, { "AventriAccountID", AventriAccountID.Text }, { "AventriToken", AventriToken.Text }, { "AventriListID", AventriListID.Text }, }, SearchTreeView, _currentOpenFile ); }
private void SanitizeSearchItemButtonClick(object sender, RoutedEventArgs e) { TreeViewHelpers.SanitizeTreeview(SearchTreeView); }