@echo off
REM ============================================
REM PointCab Renamer - Windows Build Script v4.2
REM ============================================
REM Verwendet den Python Launcher (py) für bessere Kompatibilität
REM 
REM Voraussetzungen:
REM   - Python 3.8+ mit py Launcher installiert
REM   - PyInstaller (wird bei Bedarf installiert)
REM
REM Verwendung:
REM   1. Öffnen Sie die Eingabeaufforderung (cmd)
REM   2. Navigieren Sie zum Projektordner
REM   3. Führen Sie: build_windows.bat aus
REM ============================================

setlocal enabledelayedexpansion

echo.
echo ============================================
echo  PointCab Renamer - Windows Build v4.2
echo ============================================
echo.

REM Prüfe Python Installation
echo [1/5] Prüfe Python Installation...
py --version >nul 2>&1
if errorlevel 1 (
    echo.
    echo FEHLER: Python wurde nicht gefunden!
    echo.
    echo Bitte installieren Sie Python von:
    echo   https://www.python.org/downloads/
    echo.
    echo Stellen Sie sicher, dass bei der Installation
    echo "Add Python to PATH" aktiviert ist.
    echo.
    pause
    exit /b 1
)

for /f "tokens=2" %%v in ('py --version 2^>^&1') do set PYTHON_VERSION=%%v
echo   Python %PYTHON_VERSION% gefunden.

REM Prüfe/Installiere PyInstaller
echo.
echo [2/5] Prüfe PyInstaller...
py -m PyInstaller --version >nul 2>&1
if errorlevel 1 (
    echo   PyInstaller nicht gefunden. Installiere...
    py -m pip install pyinstaller
    if errorlevel 1 (
        echo.
        echo FEHLER: PyInstaller konnte nicht installiert werden!
        echo Bitte führen Sie manuell aus:
        echo   py -m pip install pyinstaller
        echo.
        pause
        exit /b 1
    )
)
for /f "tokens=*" %%v in ('py -m PyInstaller --version 2^>^&1') do set PYINSTALLER_VERSION=%%v
echo   PyInstaller %PYINSTALLER_VERSION% gefunden.

REM Bereinige alte Builds
echo.
echo [3/5] Bereinige alte Build-Dateien...
if exist build rmdir /s /q build
if exist dist rmdir /s /q dist
if exist *.spec del /f /q *.spec
echo   Alte Dateien entfernt.

REM Erstelle Executable
echo.
echo [4/5] Erstelle Windows Executable...
echo   Dies kann einige Minuten dauern...
echo.

py -m PyInstaller --onefile --windowed --name "PointCab_Renamer" ^
    --add-data "cluster_cleanup.txt;." ^
    --add-data "BENUTZERHANDBUCH.md;." ^
    pointcab_renamer.py

if errorlevel 1 (
    echo.
    echo FEHLER: Build fehlgeschlagen!
    echo Bitte prüfen Sie die Fehlermeldungen oben.
    echo.
    pause
    exit /b 1
)

REM Kopiere zusätzliche Dateien
echo.
echo [5/5] Kopiere zusätzliche Dateien...
copy cluster_cleanup.txt dist\ >nul 2>&1
copy BENUTZERHANDBUCH.md dist\ >nul 2>&1
copy README.md dist\ >nul 2>&1
echo   Dateien kopiert.

REM Erfolgsmeldung
echo.
echo ============================================
echo  BUILD ERFOLGREICH!
echo ============================================
echo.
echo Die Executable befindet sich in:
echo   dist\PointCab_Renamer.exe
echo.
echo Zusätzliche Dateien in dist\:
echo   - cluster_cleanup.txt
echo   - BENUTZERHANDBUCH.md
echo   - README.md
echo.
echo Hinweis: Die cluster_cleanup.txt muss neben
echo der .exe Datei liegen!
echo.
echo ============================================
pause
