CtrEditor/add_categoria_method.ps1

65 lines
4.2 KiB
PowerShell

# Script para agregar método NombreCategoria a archivos de osBase
$files = @(
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Decorativos\ucCustomImage.xaml.cs"; Category="Decorativos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Decorativos\ucFramePlate.xaml.cs"; Category="Decorativos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Decorativos\ucTextPlate.xaml.cs"; Category="Decorativos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Estaticos\ucDescarte.xaml.cs"; Category="Estaticos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Estaticos\ucGuia.xaml.cs"; Category="Estaticos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Estaticos\ucTransporteCurvaGuias.xaml.cs"; Category="Estaticos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Estaticos\ucTransporteGuias.xaml.cs"; Category="Estaticos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Estaticos\ucTransporteGuiasUnion.xaml.cs"; Category="Estaticos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Estaticos\ucTransporteTTop.xaml.cs"; Category="Estaticos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Estaticos\ucTransporteTTopDualInverter.xaml.cs"; Category="Estaticos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Estaticos\ucVMmotorSim.xaml.cs"; Category="Estaticos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Extraccion Datos\ucBuscarCoincidencias.xaml.cs"; Category="Extraccion Datos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Extraccion Datos\ucExtraccionTag.xaml.cs"; Category="Extraccion Datos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\SensoresComandos\ucBoton.xaml.cs"; Category="SensoresComandos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\SensoresComandos\ucEncoderMotor.xaml.cs"; Category="SensoresComandos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\SensoresComandos\ucEncoderMotorLineal.xaml.cs"; Category="SensoresComandos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\SensoresComandos\ucGearEncoder.xaml.cs"; Category="SensoresComandos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\SensoresComandos\ucPhotocell.xaml.cs"; Category="SensoresComandos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\SensoresComandos\ucSensTemperatura.xaml.cs"; Category="SensoresComandos"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\TagsSignals\ucAnalogTag.xaml.cs"; Category="TagsSignals"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\TagsSignals\ucBoolTag.xaml.cs"; Category="TagsSignals"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\TagsSignals\ucConsensGeneric.xaml.cs"; Category="TagsSignals"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Traces\ucTrace3.xaml.cs"; Category="Traces"},
@{Path="d:\Proyectos\VisualStudio\CtrEditor\ObjetosSim\Traces\ucTraceSimple.xaml.cs"; Category="Traces"}
)
foreach ($file in $files) {
if (Test-Path $file.Path) {
Write-Host "Processing: $($file.Path)"
Write-Host "Category: $($file.Category)"
# Buscar la línea que contiene "public static string NombreClase()"
$content = Get-Content $file.Path
$lineIndex = -1
for ($i = 0; $i -lt $content.Length; $i++) {
if ($content[$i].Trim() -eq "public static string NombreClase()") {
$lineIndex = $i
break
}
}
if ($lineIndex -ne -1) {
# Encontrar el final del método NombreClase (la línea que contiene "}")
$endIndex = -1
for ($i = $lineIndex + 1; $i -lt $content.Length; $i++) {
if ($content[$i].Trim() -eq "}") {
$endIndex = $i
break
}
}
if ($endIndex -ne -1) {
Write-Host "Found NombreClase method at lines $($lineIndex + 1) to $($endIndex + 1)"
Write-Host "Method body:"
for ($i = $lineIndex; $i -le $endIndex; $i++) {
Write-Host " $($content[$i])"
}
Write-Host ""
}
}
}
}