/// <summary> /// Constructor for HostInfo. /// </summary> internal HostInfo(PSHost host) { // Set these flags based on investigating the host. CheckHostChain(host, ref _isHostNull, ref _isHostUINull, ref _isHostRawUINull); // If raw UI is non-null then get the host-info object. if (!_isHostUINull && !_isHostRawUINull) { _hostDefaultData = HostDefaultData.Create(host.UI.RawUI); } }
/// <summary> /// Returns null if host is null or if reading RawUI fields fails; otherwise returns a valid object. /// </summary> internal static HostDefaultData Create(PSHostRawUserInterface hostRawUI) { if (hostRawUI == null) { return(null); } HostDefaultData hostDefaultData = new HostDefaultData(); // Try to get values from the host. Catch-all okay because of 3rd party call-out. // Set ForegroundColor. try { hostDefaultData.SetValue(HostDefaultDataId.ForegroundColor, hostRawUI.ForegroundColor); } catch (Exception) { } // Set BackgroundColor. try { hostDefaultData.SetValue(HostDefaultDataId.BackgroundColor, hostRawUI.BackgroundColor); } catch (Exception) { } // Set CursorPosition. try { hostDefaultData.SetValue(HostDefaultDataId.CursorPosition, hostRawUI.CursorPosition); } catch (Exception) { } // Set WindowPosition. try { hostDefaultData.SetValue(HostDefaultDataId.WindowPosition, hostRawUI.WindowPosition); } catch (Exception) { } // Set CursorSize. try { hostDefaultData.SetValue(HostDefaultDataId.CursorSize, hostRawUI.CursorSize); } catch (Exception) { } // Set BufferSize. try { hostDefaultData.SetValue(HostDefaultDataId.BufferSize, hostRawUI.BufferSize); } catch (Exception) { } // Set WindowSize. try { hostDefaultData.SetValue(HostDefaultDataId.WindowSize, hostRawUI.WindowSize); } catch (Exception) { } // Set MaxWindowSize. try { hostDefaultData.SetValue(HostDefaultDataId.MaxWindowSize, hostRawUI.MaxWindowSize); } catch (Exception) { } // Set MaxPhysicalWindowSize. try { hostDefaultData.SetValue(HostDefaultDataId.MaxPhysicalWindowSize, hostRawUI.MaxPhysicalWindowSize); } catch (Exception) { } // Set WindowTitle. try { hostDefaultData.SetValue(HostDefaultDataId.WindowTitle, hostRawUI.WindowTitle); } catch (Exception) { } return(hostDefaultData); }
internal static HostDefaultData Create(PSHostRawUserInterface hostRawUI) { if (hostRawUI == null) { return(null); } HostDefaultData data = new HostDefaultData(); try { data.SetValue(HostDefaultDataId.ForegroundColor, hostRawUI.ForegroundColor); } catch (Exception exception) { CommandProcessorBase.CheckForSevereException(exception); } try { data.SetValue(HostDefaultDataId.BackgroundColor, hostRawUI.BackgroundColor); } catch (Exception exception2) { CommandProcessorBase.CheckForSevereException(exception2); } try { data.SetValue(HostDefaultDataId.CursorPosition, hostRawUI.CursorPosition); } catch (Exception exception3) { CommandProcessorBase.CheckForSevereException(exception3); } try { data.SetValue(HostDefaultDataId.WindowPosition, hostRawUI.WindowPosition); } catch (Exception exception4) { CommandProcessorBase.CheckForSevereException(exception4); } try { data.SetValue(HostDefaultDataId.CursorSize, hostRawUI.CursorSize); } catch (Exception exception5) { CommandProcessorBase.CheckForSevereException(exception5); } try { data.SetValue(HostDefaultDataId.BufferSize, hostRawUI.BufferSize); } catch (Exception exception6) { CommandProcessorBase.CheckForSevereException(exception6); } try { data.SetValue(HostDefaultDataId.WindowSize, hostRawUI.WindowSize); } catch (Exception exception7) { CommandProcessorBase.CheckForSevereException(exception7); } try { data.SetValue(HostDefaultDataId.MaxWindowSize, hostRawUI.MaxWindowSize); } catch (Exception exception8) { CommandProcessorBase.CheckForSevereException(exception8); } try { data.SetValue(HostDefaultDataId.MaxPhysicalWindowSize, hostRawUI.MaxPhysicalWindowSize); } catch (Exception exception9) { CommandProcessorBase.CheckForSevereException(exception9); } try { data.SetValue(HostDefaultDataId.WindowTitle, hostRawUI.WindowTitle); } catch (Exception exception10) { CommandProcessorBase.CheckForSevereException(exception10); } return(data); }
/// <summary> /// Returns null if host is null or if reading RawUI fields fails; otherwise returns a valid object. /// </summary> internal static HostDefaultData Create(PSHostRawUserInterface hostRawUI) { if (hostRawUI == null) { return null; } HostDefaultData hostDefaultData = new HostDefaultData(); // Try to get values from the host. Catch-all okay because of 3rd party call-out. // Set ForegroundColor. try { hostDefaultData.SetValue(HostDefaultDataId.ForegroundColor, hostRawUI.ForegroundColor); } catch (Exception e) { CommandProcessorBase.CheckForSevereException(e); } // Set BackgroundColor. try { hostDefaultData.SetValue(HostDefaultDataId.BackgroundColor, hostRawUI.BackgroundColor); } catch (Exception e) { CommandProcessorBase.CheckForSevereException(e); } // Set CursorPosition. try { hostDefaultData.SetValue(HostDefaultDataId.CursorPosition, hostRawUI.CursorPosition); } catch (Exception e) { CommandProcessorBase.CheckForSevereException(e); } // Set WindowPosition. try { hostDefaultData.SetValue(HostDefaultDataId.WindowPosition, hostRawUI.WindowPosition); } catch (Exception e) { CommandProcessorBase.CheckForSevereException(e); } // Set CursorSize. try { hostDefaultData.SetValue(HostDefaultDataId.CursorSize, hostRawUI.CursorSize); } catch (Exception e) { CommandProcessorBase.CheckForSevereException(e); } // Set BufferSize. try { hostDefaultData.SetValue(HostDefaultDataId.BufferSize, hostRawUI.BufferSize); } catch (Exception e) { CommandProcessorBase.CheckForSevereException(e); } // Set WindowSize. try { hostDefaultData.SetValue(HostDefaultDataId.WindowSize, hostRawUI.WindowSize); } catch (Exception e) { CommandProcessorBase.CheckForSevereException(e); } // Set MaxWindowSize. try { hostDefaultData.SetValue(HostDefaultDataId.MaxWindowSize, hostRawUI.MaxWindowSize); } catch (Exception e) { CommandProcessorBase.CheckForSevereException(e); } // Set MaxPhysicalWindowSize. try { hostDefaultData.SetValue(HostDefaultDataId.MaxPhysicalWindowSize, hostRawUI.MaxPhysicalWindowSize); } catch (Exception e) { CommandProcessorBase.CheckForSevereException(e); } // Set WindowTitle. try { hostDefaultData.SetValue(HostDefaultDataId.WindowTitle, hostRawUI.WindowTitle); } catch (Exception e) { CommandProcessorBase.CheckForSevereException(e); } return hostDefaultData; }
internal static HostDefaultData Create(PSHostRawUserInterface hostRawUI) { if (hostRawUI == null) { return null; } HostDefaultData data = new HostDefaultData(); try { data.SetValue(HostDefaultDataId.ForegroundColor, hostRawUI.ForegroundColor); } catch (Exception exception) { CommandProcessorBase.CheckForSevereException(exception); } try { data.SetValue(HostDefaultDataId.BackgroundColor, hostRawUI.BackgroundColor); } catch (Exception exception2) { CommandProcessorBase.CheckForSevereException(exception2); } try { data.SetValue(HostDefaultDataId.CursorPosition, hostRawUI.CursorPosition); } catch (Exception exception3) { CommandProcessorBase.CheckForSevereException(exception3); } try { data.SetValue(HostDefaultDataId.WindowPosition, hostRawUI.WindowPosition); } catch (Exception exception4) { CommandProcessorBase.CheckForSevereException(exception4); } try { data.SetValue(HostDefaultDataId.CursorSize, hostRawUI.CursorSize); } catch (Exception exception5) { CommandProcessorBase.CheckForSevereException(exception5); } try { data.SetValue(HostDefaultDataId.BufferSize, hostRawUI.BufferSize); } catch (Exception exception6) { CommandProcessorBase.CheckForSevereException(exception6); } try { data.SetValue(HostDefaultDataId.WindowSize, hostRawUI.WindowSize); } catch (Exception exception7) { CommandProcessorBase.CheckForSevereException(exception7); } try { data.SetValue(HostDefaultDataId.MaxWindowSize, hostRawUI.MaxWindowSize); } catch (Exception exception8) { CommandProcessorBase.CheckForSevereException(exception8); } try { data.SetValue(HostDefaultDataId.MaxPhysicalWindowSize, hostRawUI.MaxPhysicalWindowSize); } catch (Exception exception9) { CommandProcessorBase.CheckForSevereException(exception9); } try { data.SetValue(HostDefaultDataId.WindowTitle, hostRawUI.WindowTitle); } catch (Exception exception10) { CommandProcessorBase.CheckForSevereException(exception10); } return data; }