public HTTPHeadersHostViewModel() { InterTabClient = new DragablzInterTabClient(ApplicationViewManager.Name.HTTPHeaders); TabItems = new ObservableCollection <DragablzTabItem>() { new DragablzTabItem(LocalizationManager.GetStringByKey("String_Header_NewTab"), new HTTPHeadersView(_tabId), _tabId) }; }
public RemoteDesktopHostViewModel(IDialogCoordinator instance) { dialogCoordinator = instance; // Check if RDP 8.1 is available IsRDP8dot1Available = Models.RemoteDesktop.RemoteDesktop.IsRDP8dot1Available(); if (IsRDP8dot1Available) { InterTabClient = new DragablzInterTabClient(ApplicationViewManager.Name.RemoteDesktop); TabItems = new ObservableCollection <DragablzTabItem>(); // Load sessions if (RemoteDesktopSessionManager.Sessions == null) { RemoteDesktopSessionManager.Load(); } _remoteDesktopSessions = CollectionViewSource.GetDefaultView(RemoteDesktopSessionManager.Sessions); _remoteDesktopSessions.GroupDescriptions.Add(new PropertyGroupDescription("Group")); _remoteDesktopSessions.SortDescriptions.Add(new SortDescription("Group", ListSortDirection.Ascending)); _remoteDesktopSessions.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending)); _remoteDesktopSessions.Filter = o => { if (string.IsNullOrEmpty(Search)) { return(true); } RemoteDesktopSessionInfo info = o as RemoteDesktopSessionInfo; string search = Search.Trim(); // Search by: Tag if (search.StartsWith(tagIdentifier, StringComparison.OrdinalIgnoreCase)) { if (string.IsNullOrEmpty(info.Tags)) { return(false); } else { return(info.Tags.Replace(" ", "").Split(';').Any(str => search.Substring(tagIdentifier.Length, search.Length - tagIdentifier.Length).IndexOf(str, StringComparison.OrdinalIgnoreCase) > -1)); } } else // Search by: Name, Hostname { return(info.Name.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1 || info.Host.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1); } }; LoadSettings(); } _isLoading = false; }
public RemoteDesktopHostViewModel(IDialogCoordinator instance) { dialogCoordinator = instance; // Check if RDP 8.1 is available IsRDP8dot1Available = Models.RemoteDesktop.RemoteDesktop.IsRDP8dot1Available(); if (IsRDP8dot1Available) { InterTabClient = new DragablzInterTabClient(ApplicationViewManager.Name.RemoteDesktop); TabItems = new ObservableCollection <DragablzTabItem>(); _profiles = new CollectionViewSource { Source = ProfileManager.Profiles }.View; _profiles.GroupDescriptions.Add(new PropertyGroupDescription(nameof(ProfileInfo.Group))); _profiles.SortDescriptions.Add(new SortDescription(nameof(ProfileInfo.Group), ListSortDirection.Ascending)); _profiles.SortDescriptions.Add(new SortDescription(nameof(ProfileInfo.Name), ListSortDirection.Ascending)); _profiles.Filter = o => { ProfileInfo info = o as ProfileInfo; if (string.IsNullOrEmpty(Search)) { return(info.RemoteDesktop_Enabled); } string search = Search.Trim(); // Search by: Tag=xxx (exact match, ignore case) if (search.StartsWith(tagIdentifier, StringComparison.OrdinalIgnoreCase)) { if (string.IsNullOrEmpty(info.Tags)) { return(false); } else { return(info.RemoteDesktop_Enabled && info.Tags.Replace(" ", "").Split(';').Any(str => search.Substring(tagIdentifier.Length, search.Length - tagIdentifier.Length).Equals(str, StringComparison.OrdinalIgnoreCase))); } } else // Search by: Name, RemoteDesktop_Host { return(info.RemoteDesktop_Enabled && (info.Name.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1 || info.RemoteDesktop_Host.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1)); } }; // This will select the first entry as selected item... SelectedProfile = Profiles.SourceCollection.Cast <ProfileInfo>().Where(x => x.RemoteDesktop_Enabled).OrderBy(x => x.Group).ThenBy(x => x.Name).FirstOrDefault(); LoadSettings(); } _isLoading = false; }
public PuTTYHostViewModel(IDialogCoordinator instance) { dialogCoordinator = instance; // Check if putty is available... CheckIfPuTTYConfigured(); InterTabClient = new DragablzInterTabClient(ApplicationViewManager.Name.PuTTY); TabItems = new ObservableCollection <DragablzTabItem>(); // Load sessions if (PuTTYSessionManager.Sessions == null) { PuTTYSessionManager.Load(); } _puTTYSessions = CollectionViewSource.GetDefaultView(PuTTYSessionManager.Sessions); _puTTYSessions.GroupDescriptions.Add(new PropertyGroupDescription("Group")); _puTTYSessions.SortDescriptions.Add(new SortDescription("Group", ListSortDirection.Ascending)); _puTTYSessions.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending)); _puTTYSessions.Filter = o => { if (string.IsNullOrEmpty(Search)) { return(true); } Models.Settings.PuTTYSessionInfo info = o as Models.Settings.PuTTYSessionInfo; string search = Search.Trim(); // Search by: Tag if (search.StartsWith(tagIdentifier, StringComparison.OrdinalIgnoreCase)) { if (string.IsNullOrEmpty(info.Tags)) { return(false); } else { return(info.Tags.Replace(" ", "").Split(';').Any(str => search.Substring(tagIdentifier.Length, search.Length - tagIdentifier.Length).IndexOf(str, StringComparison.OrdinalIgnoreCase) > -1)); } } else // Search by: Name, (Hostname || SerialLine) { return(info.Name.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1 || info.HostOrSerialLine.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1); } }; LoadSettings(); SettingsManager.Current.PropertyChanged += Current_PropertyChanged; }
public PingHostViewModel(IDialogCoordinator instance) { dialogCoordinator = instance; InterTabClient = new DragablzInterTabClient(ApplicationViewManager.Name.Ping); TabItems = new ObservableCollection <DragablzTabItem>() { new DragablzTabItem(LocalizationManager.GetStringByKey("String_Header_NewTab"), new PingView(_tabId), _tabId) }; // Load profiles if (PingProfileManager.Profiles == null) { PingProfileManager.Load(); } _pingProfiles = CollectionViewSource.GetDefaultView(PingProfileManager.Profiles); _pingProfiles.GroupDescriptions.Add(new PropertyGroupDescription("Group")); _pingProfiles.SortDescriptions.Add(new SortDescription("Group", ListSortDirection.Ascending)); _pingProfiles.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending)); _pingProfiles.Filter = o => { if (string.IsNullOrEmpty(Search)) { return(true); } PingProfileInfo info = o as PingProfileInfo; string search = Search.Trim(); // Search by: Tag if (search.StartsWith(tagIdentifier, StringComparison.OrdinalIgnoreCase)) { if (string.IsNullOrEmpty(info.Tags)) { return(false); } else { return(info.Tags.Replace(" ", "").Split(';').Any(str => search.Substring(tagIdentifier.Length, search.Length - tagIdentifier.Length).IndexOf(str, StringComparison.OrdinalIgnoreCase) > -1)); } } else // Search by: Name, Hostname { return(info.Name.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1 || info.Host.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1); } }; LoadSettings(); _isLoading = false; }
public PortScannerHostViewModel(IDialogCoordinator instance) { dialogCoordinator = instance; InterTabClient = new DragablzInterTabClient(ApplicationViewManager.Name.PortScanner); TabItems = new ObservableCollection <DragablzTabItem>() { new DragablzTabItem(LocalizationManager.GetStringByKey("String_Header_NewTab"), new PortScannerView(_tabId), _tabId) }; _profiles = new CollectionViewSource { Source = ProfileManager.Profiles }.View; _profiles.GroupDescriptions.Add(new PropertyGroupDescription(nameof(ProfileInfo.Group))); _profiles.SortDescriptions.Add(new SortDescription(nameof(ProfileInfo.Group), ListSortDirection.Ascending)); _profiles.SortDescriptions.Add(new SortDescription(nameof(ProfileInfo.Name), ListSortDirection.Ascending)); _profiles.Filter = o => { ProfileInfo info = o as ProfileInfo; if (string.IsNullOrEmpty(Search)) { return(info.PortScanner_Enabled); } string search = Search.Trim(); // Search by: Tag=xxx (exact match, ignore case) if (search.StartsWith(tagIdentifier, StringComparison.OrdinalIgnoreCase)) { if (string.IsNullOrEmpty(info.Tags)) { return(false); } else { return(info.PortScanner_Enabled && info.Tags.Replace(" ", "").Split(';').Any(str => search.Substring(tagIdentifier.Length, search.Length - tagIdentifier.Length).Equals(str, StringComparison.OrdinalIgnoreCase))); } } else // Search by: Name, PortScanner_Host, PortScanner_Ports { return(info.PortScanner_Enabled && (info.Name.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1 || info.PortScanner_Host.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1 || info.PortScanner_Ports.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1)); } }; // This will select the first entry as selected item... SelectedProfile = Profiles.SourceCollection.Cast <ProfileInfo>().Where(x => x.PortScanner_Enabled).OrderBy(x => x.Group).ThenBy(x => x.Name).FirstOrDefault(); LoadSettings(); _isLoading = false; }
public PortScannerHostViewModel(IDialogCoordinator instance) { dialogCoordinator = instance; InterTabClient = new DragablzInterTabClient(ApplicationViewManager.Name.PortScanner); TabItems = new ObservableCollection <DragablzTabItem>() { new DragablzTabItem(LocalizationManager.GetStringByKey("String_Header_NewTab"), new PortScannerView(_tabId), _tabId) }; // Load profiles if (PortScannerProfileManager.Profiles == null) { PortScannerProfileManager.Load(); } _portScannerProfiles = CollectionViewSource.GetDefaultView(PortScannerProfileManager.Profiles); _portScannerProfiles.GroupDescriptions.Add(new PropertyGroupDescription(nameof(PortScannerProfileInfo.Group))); _portScannerProfiles.SortDescriptions.Add(new SortDescription(nameof(PortScannerProfileInfo.Group), ListSortDirection.Ascending)); _portScannerProfiles.SortDescriptions.Add(new SortDescription(nameof(PortScannerProfileInfo.Name), ListSortDirection.Ascending)); _portScannerProfiles.Filter = o => { if (string.IsNullOrEmpty(Search)) { return(true); } PortScannerProfileInfo info = o as PortScannerProfileInfo; string search = Search.Trim(); // Search by: Name return(info.Name.IndexOf(search, StringComparison.OrdinalIgnoreCase) > -1); }; LoadSettings(); _isLoading = false; }