private/Controls/New-UiIconButton.ps1
|
function New-UiIconButton { <# .SYNOPSIS Creates a themed button with an icon from Segoe MDL2 Assets font. #> [CmdletBinding()] param( [Parameter(Mandatory)] [string]$IconChar, [string]$ToolTip, [int]$Size = 32, [System.Windows.Thickness]$Margin, [switch]$ReturnIcon ) $icon = [System.Windows.Controls.TextBlock]@{ Text = $IconChar FontFamily = [System.Windows.Media.FontFamily]::new('Segoe MDL2 Assets') } $button = [System.Windows.Controls.Button]@{ Content = $icon Padding = 0 Width = $Size Height = $Size } if ($ToolTip) { $button.ToolTip = $ToolTip } if ($Margin) { $button.Margin = $Margin } Set-ButtonStyle -Button $button -IconOnly # Return both button and icon if requested (for feedback animations) if ($ReturnIcon) { return @{ Button = $button; Icon = $icon } } return $button } |