87 lines
3.0 KiB
Python
87 lines
3.0 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
Demostración del diseño minimalista de 3 paneles
|
|
Calculadora MAV - PySide6
|
|
"""
|
|
import sys
|
|
import time
|
|
|
|
def show_demo_instructions():
|
|
"""Muestra las instrucciones de la demostración"""
|
|
print("🎯 DEMOSTRACIÓN: Calculadora MAV - Diseño Minimalista")
|
|
print("=" * 60)
|
|
print()
|
|
print("📋 DISEÑO DE 3 PANELES:")
|
|
print(" ┌─────────────┬─────────────┬─────────────┐")
|
|
print(" │ PANEL 1 │ PANEL 2 │ PANEL 3 │")
|
|
print(" │ ENTRADA │ RESULTADOS │ LATEX │")
|
|
print(" │ │ (1:1) │ (colapsable)│")
|
|
print(" └─────────────┴─────────────┴─────────────┘")
|
|
print()
|
|
print("✨ CARACTERÍSTICAS PRINCIPALES:")
|
|
print(" • Correspondencia 1:1 entre líneas de entrada y salida")
|
|
print(" • Tema oscuro minimalista")
|
|
print(" • Resaltado de sintaxis en tiempo real")
|
|
print(" • Panel LaTeX con MathJax para ecuaciones")
|
|
print(" • Motor algebraico SymPy sin cambios")
|
|
print()
|
|
print("🎮 EJEMPLOS PARA PROBAR:")
|
|
print(" # Comentario - aparece en panel LaTeX")
|
|
print(" x**2 + y**2 = r**2")
|
|
print(" solve(x**2 - 4, x)")
|
|
print(" a = 5*x + 3")
|
|
print(" diff(x**3, x)")
|
|
print(" Matrix([[1, 2], [3, 4]])")
|
|
print()
|
|
print("⌨️ ATAJOS DE TECLADO:")
|
|
print(" • Ctrl+Enter / Shift+Enter: Evaluar")
|
|
print(" • F12: Mostrar/ocultar panel LaTeX")
|
|
print(" • Ctrl+N: Nueva sesión")
|
|
print()
|
|
|
|
def run_demo():
|
|
"""Ejecuta la demostración"""
|
|
show_demo_instructions()
|
|
|
|
try:
|
|
response = input("¿Ejecutar la aplicación? (s/N): ").strip().lower()
|
|
if response in ['s', 'sí', 'si', 'y', 'yes']:
|
|
print("\n🚀 Iniciando Calculadora MAV...")
|
|
|
|
# Verificar dependencias primero
|
|
try:
|
|
from PySide6.QtWidgets import QApplication
|
|
print("✅ PySide6 disponible")
|
|
except ImportError:
|
|
print("❌ PySide6 no está instalado")
|
|
print(" Ejecuta: pip install -r requirements.txt")
|
|
return 1
|
|
|
|
# Iniciar aplicación
|
|
from main_calc_app_pyside6 import main as run_app
|
|
|
|
# Precarga con contenido de demostración
|
|
print("📝 Precargando contenido de demostración...")
|
|
demo_content = """# Demostración Calculadora MAV
|
|
x**2 + y**2 = r**2
|
|
solve(x**2 - 4, x)
|
|
a = 5*x + 3
|
|
diff(a, x)"""
|
|
|
|
# Ejecutar aplicación
|
|
run_app()
|
|
|
|
else:
|
|
print("👋 ¡Hasta luego!")
|
|
|
|
except KeyboardInterrupt:
|
|
print("\n\n🚪 Demostración cancelada")
|
|
return 0
|
|
except Exception as e:
|
|
print(f"\n❌ Error: {e}")
|
|
return 1
|
|
|
|
return 0
|
|
|
|
if __name__ == "__main__":
|
|
sys.exit(run_demo()) |