Compare commits

..

4 Commits

Author SHA1 Message Date
c942287172 Compile Winutil 2024-06-20 18:30:22 +00:00
7c58eb0e78 Add 'JoyToKey' and 'Wise Program Uninstaller' Apps into 'applications.json' File (#2069)
* Add 'Wise Program Uninstaller' App into 'applications.json' File

* Add 'JoyToKey' App into 'applications.json' File
2024-06-20 13:29:50 -05:00
9be030a4e2 Compile Winutil 2024-06-18 03:17:06 +00:00
4348f052c3 Update Invoke-WinUtilNumLock.ps1 (#2104) 2024-06-17 22:16:40 -05:00
5 changed files with 54 additions and 63 deletions

View File

@ -1831,6 +1831,14 @@
"link": "https://www.revouninstaller.com/",
"winget": "RevoUninstaller.RevoUninstaller"
},
"WPFInstallWiseProgramUninstaller": {
"category": "Utilities",
"choco": "na",
"content": "Wise Program Uninstaller (WiseCleaner)",
"description": "Wise Program Uninstaller is the perfect solution for uninstalling Windows programs, allowing you to uninstall applications quickly and completely using its simple and user-friendly interface.",
"link": "https://www.wisecleaner.com/wise-program-uninstaller.html",
"winget": "WiseCleaner.WiseProgramUninstaller"
},
"WPFInstallrevolt": {
"category": "Communications",
"choco": "na",
@ -2791,6 +2799,14 @@
"link": "https://github.com/7gxycn08/ForceAutoHDR",
"winget": "ForceAutoHDR.7gxycn08"
},
"WPFInstallJoyToKey": {
"category": "Utilities",
"choco": "joytokey",
"content": "JoyToKey",
"description": "enables PC game controllers to emulate the keyboard and mouse input",
"link": "https://joytokey.net/en/",
"winget": "JTKsoftware.JoyToKey"
},
"WPFInstallnditools": {
"category": "Multimedia Tools",
"choco": "na",

View File

@ -15,6 +15,7 @@ function Invoke-WinUtilNumLock {
Write-Host "Disabling Numlock on startup"
$value = 0
}
New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS
$Path = "HKU:\.Default\Control Panel\Keyboard"
Set-ItemProperty -Path $Path -Name InitialKeyboardIndicators -Value $value
}

View File

@ -178,67 +178,17 @@ $cttLogoPath = @"
$winutilTextBlock.Foreground = $foregroundColor
$winutilTextBlock.Margin = New-Object Windows.Thickness(10, 5, 10, 5) # Add margins around the text block
$stackPanel.Children.Add($winutilTextBlock)
# Add TextBlock for information with text wrapping and margins
$messageTextBlock = New-Object Windows.Controls.TextBlock
$messageTextBlock.Text = $Message
$messageTextBlock.TextWrapping = [Windows.TextWrapping]::Wrap # Enable text wrapping
$messageTextBlock.HorizontalAlignment = [Windows.HorizontalAlignment]::Left
$messageTextBlock.VerticalAlignment = [Windows.VerticalAlignment]::Top
$messageTextBlock.Margin = New-Object Windows.Thickness(10) # Add margins around the text block
# Define the Regex to find hyperlinks formatted as HTML <a> tags
$regex = [regex]::new('<a href="([^"]+)">([^<]+)</a>')
$lastPos = 0
# Iterate through each match and add regular text and hyperlinks
foreach ($match in $regex.Matches($Message)) {
# Add the text before the hyperlink, if any
$textBefore = $Message.Substring($lastPos, $match.Index - $lastPos)
if ($textBefore.Length -gt 0) {
$messageTextBlock.Inlines.Add((New-Object Windows.Documents.Run($textBefore)))
}
# Create and add the hyperlink
$hyperlink = New-Object Windows.Documents.Hyperlink
$hyperlink.NavigateUri = New-Object System.Uri($match.Groups[1].Value)
$hyperlink.Inlines.Add($match.Groups[2].Value)
$hyperlink.TextDecorations = [Windows.TextDecorations]::None # Remove underline
$hyperlink.Foreground = $foregroundColor
$hyperlink.Add_Click({
param($sender, $args)
[System.Diagnostics.Process]::Start($sender.NavigateUri.AbsoluteUri)
})
$hyperlink.Add_MouseEnter({
param($sender, $args)
$sender.Foreground = [Windows.Media.Brushes]::LightGray
})
$hyperlink.Add_MouseLeave({
param($sender, $args)
$sender.Foreground = $foregroundColor
})
$messageTextBlock.Inlines.Add($hyperlink)
# Update the last position
$lastPos = $match.Index + $match.Length
}
# Add any remaining text after the last hyperlink
if ($lastPos -lt $Message.Length) {
$textAfter = $Message.Substring($lastPos)
$messageTextBlock.Inlines.Add((New-Object Windows.Documents.Run($textAfter)))
}
# If no matches, add the entire message as a run
if ($regex.Matches($Message).Count -eq 0) {
$messageTextBlock.Inlines.Add((New-Object Windows.Documents.Run($Message)))
}
# Add the TextBlock to the Grid
$grid.Children.Add($messageTextBlock)
[Windows.Controls.Grid]::SetRow($messageTextBlock, 1) # Set the row to the second row (0-based index)
# Add OK button
$okButton = New-Object Windows.Controls.Button
$okButton.Content = "OK"

View File

@ -467,13 +467,14 @@ $sync["AboutMenuItem"].Add_Click({
# Handle Export menu item click
Write-Debug "About clicked"
$sync["SettingsPopup"].IsOpen = $false
# Example usage
$authorInfo = @"
Author : <a href="https://github.com/ChrisTitusTech">@christitustech</a>
Runspace : <a href="https://github.com/DeveloperDurp">@DeveloperDurp</a>
GUI : <a href="https://github.com/KonTy">@KonTy</a>
MicroWin : <a href="https://github.com/KonTy">@KonTy</a>
GitHub : <a href="https://github.com/ChrisTitusTech/winutil">ChrisTitusTech/winutil</a>
Version : <a href="https://github.com/ChrisTitusTech/winutil/releases/tag/$($sync.version)">$($sync.version)</a>
Author : @christitustech
Runspace : @DeveloperDurp
GUI : @KonTy
MicroWin : @KonTy
GitHub : https://github.com/ChrisTitusTech/winutil
Version : $($sync.version)
"@
Show-CustomDialog -Message $authorInfo -Width 400
})

View File

@ -8,7 +8,7 @@
Author : Chris Titus @christitustech
Runspace Author: @DeveloperDurp
GitHub : https://github.com/ChrisTitusTech
Version : 24.06.11
Version : 24.06.20
#>
param (
[switch]$Debug,
@ -45,7 +45,7 @@ Add-Type -AssemblyName System.Windows.Forms
# Variable to sync between runspaces
$sync = [Hashtable]::Synchronized(@{})
$sync.PSScriptRoot = $PSScriptRoot
$sync.version = "24.06.11"
$sync.version = "24.06.20"
$sync.configs = @{}
$sync.ProcessRunning = $false
@ -1985,6 +1985,7 @@ function Invoke-WinUtilNumLock {
Write-Host "Disabling Numlock on startup"
$value = 0
}
New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS
$Path = "HKU:\.Default\Control Panel\Keyboard"
Set-ItemProperty -Path $Path -Name InitialKeyboardIndicators -Value $value
}
@ -7170,6 +7171,14 @@ $sync.configs.applications = '{
"link": "https://www.revouninstaller.com/",
"winget": "RevoUninstaller.RevoUninstaller"
},
"WPFInstallWiseProgramUninstaller": {
"category": "Utilities",
"choco": "na",
"content": "Wise Program Uninstaller (WiseCleaner)",
"description": "Wise Program Uninstaller is the perfect solution for uninstalling Windows programs, allowing you to uninstall applications quickly and completely using its simple and user-friendly interface.",
"link": "https://www.wisecleaner.com/wise-program-uninstaller.html",
"winget": "WiseCleaner.WiseProgramUninstaller"
},
"WPFInstallrevolt": {
"category": "Communications",
"choco": "na",
@ -8130,6 +8139,14 @@ $sync.configs.applications = '{
"link": "https://github.com/7gxycn08/ForceAutoHDR",
"winget": "ForceAutoHDR.7gxycn08"
},
"WPFInstallJoyToKey": {
"category": "Utilities",
"choco": "joytokey",
"content": "JoyToKey",
"description": "enables PC game controllers to emulate the keyboard and mouse input",
"link": "https://joytokey.net/en/",
"winget": "JTKsoftware.JoyToKey"
},
"WPFInstallnditools": {
"category": "Multimedia Tools",
"choco": "na",
@ -14183,20 +14200,23 @@ $inputXML = '<Window x:Class="WinUtility.MainWindow"
<CheckBox Name="WPFInstalljdownloader" Content="JDownloader" ToolTip="JDownloader is a feature-rich download manager with support for various file hosting services." Margin="0,0,2,0"/><TextBlock Name="WPFInstalljdownloaderLink" Style="{StaticResource HoverTextBlockStyle}" Text="(?)" ToolTip="http://jdownloader.org/" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<CheckBox Name="WPFInstallJoyToKey" Content="JoyToKey" ToolTip="enables PC game controllers to emulate the keyboard and mouse input" Margin="0,0,2,0"/><TextBlock Name="WPFInstallJoyToKeyLink" Style="{StaticResource HoverTextBlockStyle}" Text="(?)" ToolTip="https://joytokey.net/en/" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<CheckBox Name="WPFInstalljpegview" Content="JPEG View" ToolTip="JPEGView is a lean, fast and highly configurable viewer/editor for JPEG, BMP, PNG, WEBP, TGA, GIF, JXL, HEIC, HEIF, AVIF and TIFF images with a minimal GUI" Margin="0,0,2,0"/><TextBlock Name="WPFInstalljpegviewLink" Style="{StaticResource HoverTextBlockStyle}" Text="(?)" ToolTip="https://github.com/sylikc/jpegview" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<CheckBox Name="WPFInstallkdeconnect" Content="KDE Connect" ToolTip="KDE Connect allows seamless integration between your KDE desktop and mobile devices." Margin="0,0,2,0"/><TextBlock Name="WPFInstallkdeconnectLink" Style="{StaticResource HoverTextBlockStyle}" Text="(?)" ToolTip="https://community.kde.org/KDEConnect" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<CheckBox Name="WPFInstallkeepass" Content="KeePassXC" ToolTip="KeePassXC is a cross-platform, open-source password manager with strong encryption features." Margin="0,0,2,0"/><TextBlock Name="WPFInstallkeepassLink" Style="{StaticResource HoverTextBlockStyle}" Text="(?)" ToolTip="https://keepassxc.org/" />
</StackPanel>
</StackPanel>
</Border>
<Border Grid.Row="1" Grid.Column="4">
<StackPanel Background="{MainBackgroundColor}" SnapsToDevicePixels="True">
<StackPanel Orientation="Horizontal">
<CheckBox Name="WPFInstallkeepass" Content="KeePassXC" ToolTip="KeePassXC is a cross-platform, open-source password manager with strong encryption features." Margin="0,0,2,0"/><TextBlock Name="WPFInstallkeepassLink" Style="{StaticResource HoverTextBlockStyle}" Text="(?)" ToolTip="https://keepassxc.org/" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<CheckBox Name="WPFInstalllinkshellextension" Content="Link Shell extension" ToolTip="Link Shell Extension (LSE) provides for the creation of Hardlinks, Junctions, Volume Mountpoints, Symbolic Links, a folder cloning process that utilises Hardlinks or Symbolic Links and a copy process taking care of Junctions, Symbolic Links, and Hardlinks. LSE, as its name implies is implemented as a Shell extension and is accessed from Windows Explorer, or similar file/folder managers." Margin="0,0,2,0"/><TextBlock Name="WPFInstalllinkshellextensionLink" Style="{StaticResource HoverTextBlockStyle}" Text="(?)" ToolTip="https://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html" />
</StackPanel>
<StackPanel Orientation="Horizontal">
@ -14386,6 +14406,9 @@ $inputXML = '<Window x:Class="WinUtility.MainWindow"
<CheckBox Name="WPFInstallwinrar" Content="WinRAR" ToolTip="WinRAR is a powerful archive manager that allows you to create, manage, and extract compressed files." Margin="0,0,2,0"/><TextBlock Name="WPFInstallwinrarLink" Style="{StaticResource HoverTextBlockStyle}" Text="(?)" ToolTip="https://www.win-rar.com/" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<CheckBox Name="WPFInstallWiseProgramUninstaller" Content="Wise Program Uninstaller (WiseCleaner)" ToolTip="Wise Program Uninstaller is the perfect solution for uninstalling Windows programs, allowing you to uninstall applications quickly and completely using its simple and user-friendly interface." Margin="0,0,2,0"/><TextBlock Name="WPFInstallWiseProgramUninstallerLink" Style="{StaticResource HoverTextBlockStyle}" Text="(?)" ToolTip="https://www.wisecleaner.com/wise-program-uninstaller.html" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<CheckBox Name="WPFInstallwisetoys" Content="WiseToys" ToolTip="WiseToys is a set of utilities and tools designed to enhance and optimize your Windows experience." Margin="0,0,2,0"/><TextBlock Name="WPFInstallwisetoysLink" Style="{StaticResource HoverTextBlockStyle}" Text="(?)" ToolTip="https://toys.wisecleaner.com/" />
</StackPanel>
<StackPanel Orientation="Horizontal">