Aggiunti limiti configurabili per i log
- Introdotta una nuova sezione "Limiti Log" nell'interfaccia utente per configurare: - Numero massimo di righe di log per asta (default: 500). - Numero massimo di righe di log globale (default: 1000). - Aggiunte proprietà in `SettingsManager` per salvare/caricare i limiti. - Applicati i limiti al log globale e ai log delle aste: - Log globale: rimozione automatica dei paragrafi più vecchi. - Log per asta: ottimizzato `AddLog` con `RemoveRange` per migliorare le performance. - Documentazione dettagliata in `FEATURE_CONFIGURABLE_LOG_LIMITS.md` e `FEATURE_LOG_MAX_LINES.md`. - Migliorata la gestione della memoria, riducendo il rischio di rallentamenti o crash. - Test e checklist definiti per verificare il corretto funzionamento.
This commit is contained in:
@@ -211,7 +211,8 @@
|
||||
BorderBrush="#3E3E42"
|
||||
BorderThickness="1"
|
||||
CornerRadius="4"
|
||||
Padding="20">
|
||||
Padding="20"
|
||||
Margin="0,0,0,20">
|
||||
<StackPanel>
|
||||
<TextBlock Text="Impostazioni Predefinite Aste"
|
||||
Style="{StaticResource SectionHeader}"/>
|
||||
@@ -236,22 +237,92 @@
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<TextBlock Grid.Row="0" Grid.Column="0" Text="Anticipo Puntata (millisecondi)" Foreground="#CCCCCC" Margin="0,10" VerticalAlignment="Center" ToolTip="Millisecondi prima della scadenza per puntare"/>
|
||||
<TextBox Grid.Row="0" Grid.Column="1" x:Name="DefaultBidBeforeDeadlineMs" Text="200" Margin="10,10"/>
|
||||
<TextBox Grid.Row="0" Grid.Column="1" x:Name="DefaultBidBeforeDeadlineMsTextBox" Text="200" Margin="10,10"/>
|
||||
|
||||
<TextBlock Grid.Row="1" Grid.Column="0" Text="Verifica Stato Prima di Puntare" Foreground="#CCCCCC" Margin="0,10" VerticalAlignment="Center" ToolTip="Controlla che l'asta sia ancora aperta prima di puntare"/>
|
||||
<CheckBox Grid.Row="1" Grid.Column="1" x:Name="DefaultCheckAuctionOpen" Margin="10,10" VerticalAlignment="Center"/>
|
||||
<CheckBox Grid.Row="1" Grid.Column="1" x:Name="DefaultCheckAuctionOpenCheckBox" Margin="10,10" VerticalAlignment="Center"/>
|
||||
|
||||
<TextBlock Grid.Row="2" Grid.Column="0" Text="Prezzo Minimo (€)" Foreground="#CCCCCC" Margin="0,10" VerticalAlignment="Center"/>
|
||||
<TextBox Grid.Row="2" Grid.Column="1" x:Name="DefaultMinPrice" Text="0" Margin="10,10"/>
|
||||
<TextBox Grid.Row="2" Grid.Column="1" x:Name="DefaultMinPriceTextBox" Text="0" Margin="10,10"/>
|
||||
|
||||
<TextBlock Grid.Row="3" Grid.Column="0" Text="Prezzo Massimo (€)" Foreground="#CCCCCC" Margin="0,10" VerticalAlignment="Center"/>
|
||||
<TextBox Grid.Row="3" Grid.Column="1" x:Name="DefaultMaxPrice" Text="0" Margin="10,10"/>
|
||||
<TextBox Grid.Row="3" Grid.Column="1" x:Name="DefaultMaxPriceTextBox" Text="0" Margin="10,10"/>
|
||||
|
||||
<TextBlock Grid.Row="4" Grid.Column="0" Text="Max Click" Foreground="#CCCCCC" Margin="0,10" VerticalAlignment="Center"/>
|
||||
<TextBox Grid.Row="4" Grid.Column="1" x:Name="DefaultMaxClicks" Text="0" Margin="10,10"/>
|
||||
<TextBox Grid.Row="4" Grid.Column="1" x:Name="DefaultMaxClicksTextBox" Text="0" Margin="10,10"/>
|
||||
</Grid>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- SEZIONE 4: Limiti Log -->
|
||||
<Border Background="#252526"
|
||||
BorderBrush="#3E3E42"
|
||||
BorderThickness="1"
|
||||
CornerRadius="4"
|
||||
Padding="20">
|
||||
<StackPanel>
|
||||
<TextBlock Text="Limiti Log"
|
||||
Style="{StaticResource SectionHeader}"/>
|
||||
|
||||
<TextBlock Text="Configura il numero massimo di righe di log da mantenere in memoria per ottimizzare le performance."
|
||||
Foreground="#999999"
|
||||
FontSize="12"
|
||||
TextWrapping="Wrap"
|
||||
Margin="0,0,0,20"/>
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="250"/>
|
||||
<ColumnDefinition Width="150"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<TextBlock Grid.Row="0" Grid.Column="0"
|
||||
Text="Max Righe Log per Asta"
|
||||
Foreground="#CCCCCC"
|
||||
Margin="0,10"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip="Numero massimo di righe di log da mantenere per ogni singola asta (raccomandato: 500-1000)"/>
|
||||
<TextBox Grid.Row="0" Grid.Column="1"
|
||||
x:Name="MaxLogLinesPerAuctionTextBox"
|
||||
Text="500"
|
||||
Margin="10,10"/>
|
||||
|
||||
<TextBlock Grid.Row="1" Grid.Column="0"
|
||||
Text="Max Righe Log Globale"
|
||||
Foreground="#CCCCCC"
|
||||
Margin="0,10"
|
||||
VerticalAlignment="Center"
|
||||
ToolTip="Numero massimo di righe di log da mantenere nel log globale dell'applicazione (raccomandato: 1000-2000)"/>
|
||||
<TextBox Grid.Row="1" Grid.Column="1"
|
||||
x:Name="MaxGlobalLogLinesTextBox"
|
||||
Text="1000"
|
||||
Margin="10,10"/>
|
||||
</Grid>
|
||||
|
||||
<!-- Info Box -->
|
||||
<Border Style="{StaticResource InfoBox}" Margin="0,15,0,0">
|
||||
<StackPanel>
|
||||
<TextBlock Text="ℹ️ Informazioni"
|
||||
FontWeight="Bold"
|
||||
Foreground="#007ACC"
|
||||
Margin="0,0,0,10"/>
|
||||
<TextBlock TextWrapping="Wrap"
|
||||
Foreground="#CCCCCC"
|
||||
FontSize="12"
|
||||
LineHeight="18">
|
||||
• I log più vecchi verranno automaticamente rimossi quando si raggiunge il limite.<LineBreak/>
|
||||
• Valori più bassi = meno memoria utilizzata, ma meno storico disponibile.<LineBreak/>
|
||||
• Valori più alti = più storico disponibile, ma maggiore uso di memoria.<LineBreak/>
|
||||
• Valori consigliati: 500-1000 per asta, 1000-2000 per log globale.
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</StackPanel>
|
||||
</ScrollViewer>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user