Compare commits

..

No commits in common. "a22d6b0d107993904b23040670eddfcf949eb3ff" and "cdf36857c5c4343775f7c1d898ad541636e4b304" have entirely different histories.

4 changed files with 67 additions and 76 deletions

View File

@ -86,7 +86,7 @@
"HeaderFontFamily": "Consolas, Monaco",
"CheckBoxBulletDecoratorFontSize": "14",
"CheckBoxMargin": "5,0,0,1",
"CheckBoxMargin": "5,0,0,2",
"TabButtonFontSize": "14",
"TabButtonWidth": "100",
@ -158,7 +158,7 @@
"HeaderFontFamily": "Consolas, Monaco",
"CheckBoxBulletDecoratorFontSize": "14",
"CheckBoxMargin": "5,0,0,0.8",
"CheckBoxMargin": "5,0,0,2",
"TabButtonFontSize": "14",
"TabButtonWidth": "100",

View File

@ -48,7 +48,7 @@ function Invoke-WPFUIElements {
Content = $entryInfo.Content
Choco = $entryInfo.choco
Winget = $entryInfo.winget
Panel = if ($entryInfo.Panel) { $entryInfo.Panel } else { "0" }
Panel = if ($entryInfo.Panel -ne $null) { $entryInfo.Panel } else { "0" }
Link = $entryInfo.link
Description = $entryInfo.description
Type = $entryInfo.type
@ -87,6 +87,7 @@ function Invoke-WPFUIElements {
# Only apply the logic for distributing entries across columns if the targetGridName is "appspanel"
if ($targetGridName -eq "appspanel") {
$panelcount = 0
$paneltotal = $columncount # Use columncount for even distribution
$entrycount = $configHashtable.Keys.Count + $organizedData["0"].Keys.Count
$maxcount = [Math]::Round($entrycount / $columncount + 0.5)
}
@ -137,8 +138,6 @@ function Invoke-WPFUIElements {
$label.FontFamily = $theme.HeaderFontFamily
$stackPanel.Children.Add($label) | Out-Null
$sync[$category] = $label
# Sort entries by Order and then by Name, but only display Name
$entries = $organizedData[$panelKey][$category] | Sort-Object Order, Name
foreach ($entryInfo in $entries) {
@ -177,6 +176,7 @@ function Invoke-WPFUIElements {
$label.ToolTip = $entryInfo.Description
$label.HorizontalAlignment = "Left"
$label.FontSize = $theme.FontSize
# Implement for consistent theming later on $label.Style = $window.FindResource("labelfortweaks")
$dockPanel.Children.Add($label) | Out-Null
$stackPanel.Children.Add($dockPanel) | Out-Null
@ -222,6 +222,17 @@ function Invoke-WPFUIElements {
$sync[$entryInfo.Name] = $toggleButton
}
"Image" {
$image = New-Object Windows.Controls.Image
$image.Name = $entryInfo.Name
$image.Source = $entryInfo.Content
$image.Height = $theme.ImageHeight
$image.Width = $theme.ImageWidth
$image.HorizontalAlignment = "Center"
$image.Margin = $theme.ImageMargin
$stackPanel.Children.Add($image) | Out-Null
}
"Combobox" {
$horizontalStackPanel = New-Object Windows.Controls.StackPanel
$horizontalStackPanel.Orientation = "Horizontal"
@ -265,32 +276,35 @@ function Invoke-WPFUIElements {
$button.Margin = "5"
$button.Padding = "20,5"
$button.FontSize = $theme.ButtonFontSize
if ($entryInfo.ButtonWidth) {
if ($entryInfo.ButtonWidth -ne $null) {
$button.Width = $entryInfo.ButtonWidth
}
$stackPanel.Children.Add($button) | Out-Null
$sync[$entryInfo.Name] = $button
$sync[$entryInfo.Name].Add_Click({
[System.Object]$Sender = $args[0]
Invoke-WPFButton $Sender.name
})
}
default {
$horizontalStackPanel = New-Object Windows.Controls.StackPanel
$horizontalStackPanel.Orientation = "Horizontal"
$checkBox = New-Object Windows.Controls.CheckBox
$checkBox.Name = $entryInfo.Name
$checkBox.Content = $entryInfo.Content
$checkBox.FontSize = $theme.FontSize
$checkBox.ToolTip = $entryInfo.Description
$checkBox.Margin = $theme.CheckBoxMargin
if ($entryInfo.Checked) {
if ($entryInfo.Checked -ne $null) {
$checkBox.IsChecked = $entryInfo.Checked
}
$horizontalStackPanel.Children.Add($checkBox) | Out-Null
if ($entryInfo.Link -ne $null) {
$horizontalStackPanel = New-Object Windows.Controls.StackPanel
$horizontalStackPanel.Orientation = "Horizontal"
$horizontalStackPanel.Children.Add($checkBox) | Out-Null
if ($entryInfo.Link) {
$textBlock = New-Object Windows.Controls.TextBlock
$textBlock.Name = $checkBox.Name + "Link"
$textBlock.Text = "(?)"
$textBlock.ToolTip = $entryInfo.Link
$textBlock.Style = $window.FindResource("HoverTextBlockStyle")
@ -304,10 +318,11 @@ function Invoke-WPFUIElements {
$horizontalStackPanel.Children.Add($textBlock) | Out-Null
$sync[$textBlock.Name] = $textBlock
$stackPanel.Children.Add($horizontalStackPanel) | Out-Null
} else {
$stackPanel.Children.Add($checkBox) | Out-Null
}
$stackPanel.Children.Add($horizontalStackPanel) | Out-Null
$sync[$entryInfo.Name] = $checkBox
}
}

View File

@ -372,6 +372,7 @@ $labels = @{}
$allCategories = $checkBoxes.Name | ForEach-Object {$sync.configs.applications.$_} | Select-Object -Unique -ExpandProperty category
$sync["SearchBar"].Add_TextChanged({
if ($sync.SearchBar.Text -ne "") {
$sync.SearchBarClearButton.Visibility = "Visible"
}
@ -397,32 +398,34 @@ $sync["SearchBar"].Add_TextChanged({
if ($CheckBox.Value.Content.ToLower().Contains($textToSearch)) {
$CheckBox.Value.Visibility = "Visible"
$activeApplications += $sync.configs.applications.$checkboxName
# Set the corresponding text block visibility
if ($textBlock -ne $null -and $textBlock -is [System.Windows.Controls.TextBlock]) {
# Set the corresponding text block visibility
if ($textBlock -ne $null) {
$textBlock.Visibility = "Visible"
}
}
else {
$CheckBox.Value.Visibility = "Collapsed"
$CheckBox.Value.Visibility = "Collapsed"
# Set the corresponding text block visibility
if ($textBlock -ne $null -and $textBlock -is [System.Windows.Controls.TextBlock]) {
if ($textBlock -ne $null) {
$textBlock.Visibility = "Collapsed"
}
}
}
$activeCategories = $activeApplications | Select-Object -ExpandProperty category -Unique
foreach ($category in $activeCategories) {
$sync[$category].Visibility = "Visible"
foreach ($category in $activeCategories){
$label = $labels[$(Get-WPFObjectName -type "Label" -name $category)]
$label.Visibility = "Visible"
}
if ($activeCategories) {
if ($activeCategories){
$inactiveCategories = Compare-Object -ReferenceObject $allCategories -DifferenceObject $activeCategories -PassThru
} else {
}
else{
$inactiveCategories = $allCategories
}
foreach ($category in $inactiveCategories) {
$sync[$category].Visibility = "Collapsed"}
foreach ($category in $inactiveCategories){
$label = $labels[$(Get-WPFObjectName -type "Label" -name $category)]
$label.Visibility = "Collapsed"}
})
# Initialize the hashtable

View File

@ -773,59 +773,32 @@
</Grid>
</TabItem>
<TabItem Header="Tweaks" Visibility="Collapsed" Name="WPFTab2">
<Grid>
<!-- Main content area with a ScrollViewer -->
<ScrollViewer VerticalScrollBarVisibility="Auto">
<Grid Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
<RowDefinition Height="45px"/>
<RowDefinition Height=".70*"/>
<RowDefinition Height=".10*"/>
</Grid.RowDefinitions>
<ScrollViewer VerticalScrollBarVisibility="Auto" Grid.Row="0">
<Grid Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="45px"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<StackPanel Background="{MainBackgroundColor}" Orientation="Horizontal" HorizontalAlignment="Left" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Margin="5">
<Label Content="Recommended Selections:" FontSize="{FontSize}" VerticalAlignment="Center" Margin="2"/>
<Button Name="WPFstandard" Content=" Standard " Margin="2"/>
<Button Name="WPFminimal" Content=" Minimal " Margin="2"/>
<Button Name="WPFclear" Content=" Clear " Margin="2"/>
<Button Name="WPFGetInstalledTweaks" Content=" Get Installed " Margin="2"/>
</StackPanel>
<Grid Name="tweakspanel" Grid.Row="1">
<!-- Your tweakspanel content goes here -->
</Grid>
<!-- TextBlock with note on the right half -->
<StackPanel Grid.Row="2" Orientation="Horizontal" Margin="5">
<TextBlock Padding="5">
Note: Hover over items to get a better description. Please be careful as many of these tweaks will heavily modify your system.
<LineBreak/>Recommended selections are for normal users and if you are unsure do NOT check anything else!
</TextBlock>
</StackPanel>
</Grid>
</ScrollViewer>
<!-- Centered border with buttons and text -->
<Border Grid.Row="1" Background="{MainBackgroundColor}" BorderBrush="Gray" BorderThickness="1" CornerRadius="5" HorizontalAlignment="Stretch" Padding="10">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*" />
<ColumnDefinition Width="1*" />
</Grid.ColumnDefinitions>
<!-- Buttons on the left half -->
<StackPanel Orientation="Horizontal" HorizontalAlignment="Left" VerticalAlignment="Center" Grid.Column="0">
<Button Name="WPFApplyButton" Content="Apply" Margin="5"/>
<Button Name="WPFCancelButton" Content="Cancel" Margin="5"/>
</StackPanel>
</Grid>
<StackPanel Background="{MainBackgroundColor}" Orientation="Horizontal" HorizontalAlignment="Left" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Margin="5">
<Label Content="Recommended Selections:" FontSize="{FontSize}" VerticalAlignment="Center" Margin="2"/>
<Button Name="WPFstandard" Content=" Standard " Margin="2"/>
<Button Name="WPFminimal" Content=" Minimal " Margin="2"/>
<Button Name="WPFclear" Content=" Clear " Margin="2"/>
<Button Name="WPFGetInstalledTweaks" Content=" Get Installed " Margin="2"/>
</StackPanel>
<Grid Name="tweakspanel" Grid.Row="1">
</Grid>
<Border Grid.ColumnSpan="2" Grid.Row="2" Grid.Column="0">
<StackPanel Background="{MainBackgroundColor}" Orientation="Horizontal" HorizontalAlignment="Left">
<TextBlock Padding="10">
Note: Hover over items to get a better description. Please be careful as many of these tweaks will heavily modify your system.
<LineBreak/>Recommended selections are for normal users and if you are unsure do NOT check anything else!
</TextBlock>
</StackPanel>
</Border>
</Grid>
</Grid>
</ScrollViewer>
</TabItem>
<TabItem Header="Config" Visibility="Collapsed" Name="WPFTab3">
<ScrollViewer VerticalScrollBarVisibility="Auto">