Functions/GenXdev.Console/SecondScreen.ps1
|
##################################################################### <# .SYNOPSIS Sets default second-monitor configuration. .DESCRIPTION Sets the default behavior for GenXdev window openings to be on the secondary monitor. This is useful for users with a single monitor or those who prefer side-by-side window layouts. See also cmdlet 'sidebyside' and 'restoredefaultmonitor' .LICENSE Copyright (C) 2026 René Vaessen / GenXdev This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>. .EXAMPLE PS> secondscreen Sets defaults for GenXdev window openings to be on the secondary monitor #> function secondscreen { [CmdletBinding()] [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("PSAvoidGlobalVars", "")] param() begin { Microsoft.PowerShell.Utility\Write-Verbose ` 'Initializing default secondary monitor configuration' } process { # establish monitor 0 as the system-wide secondary display designation $Global:OriginalDefaultSecondaryMonitor = $Global:LastOriginalDefaultSecondaryMonitor -ne "secondscreen" -and $Global:LastOriginalDefaultSecondaryMonitor -ne "sidebyside" ? $Global:DefaultSecondaryMonitor : $Global:OriginalDefaultSecondaryMonitor; $Global:LastOriginalDefaultSecondaryMonitor = "secondscreen" $Global:DefaultSecondaryMonitor = -2 Microsoft.PowerShell.Utility\Write-Verbose ` "Secondary monitor set to display index: ${Global:DefaultSecondaryMonitor}" } end { Microsoft.PowerShell.Utility\Write-Verbose ` 'Secondary monitor configuration completed successfully' } } |