# Viniendo de TotalCross / SuperWaba

> El linaje — lo que permanece familiar y lo que la modernización 2026 cambió/eliminó.

Source: https://crossfly.dev/es/docs/migrate/from-totalcross — CrossFly documentation. Full docs as one file: https://crossfly.dev/llms-full.txt

# Viniendo de TotalCross / SuperWaba

CrossFly es la **evolución moderna** del SDK SuperWaba/TotalCross, reescrita sobre **libGDX/OpenGL**. Si
conoces al ancestro, buena parte del modelo es familiar — el foco aquí es **lo que cambió**.

## Lo que permanece familiar
- **MainWindow vía `classname`** (la ventana principal se resuelve por nombre y se instancia por reflexión).
- **Color ARGB `0xAARRGGBB`** (int).
- **UI montada en código** (no hay markup/XML).
- **Modelo single-thread de UI** — toda la UI en un solo thread.

## Lo que CAMBIÓ (renombramientos)
| TotalCross (antiguo) | CrossFly (actual) |
|---|---|
| `Settings` (config/estado) | `Device` / `DeviceConfig` / `LocaleFormats` / `Screen` |
| paquete `phone` | `device` |
| `sql` (JDBC) | `sqlite` (API nativa + cifrado SQLite3MC) |
| `Toast` / `ToolTip` | `Hint` |
| `Rect` | `Rectangle` |
| `Color` (clase) | `int` ARGB + `ColorUtils` / `UIConstants` |

## Lo que SALIÓ de una vez
- **Persistencia ligera** `appSettings` / `storeSettings()` — **eliminada**. Usa SQLite o archivos en
  `Device.homeFolder` ([guía](/docs/data-and-services/files-and-preferences)).
- **Deploy heredado**: `tc.Deploy`, `applicationId` de 4 letras, `pdb`.
- **Widgets/recursos eliminados**: `Grid`, `Tree`, `TopMenu`, `Accordion`, `Spacer`, `Velocimeter`,
  `Toast`/`ToolTip` (→ `Hint`), y todo el **PDF / ESC-POS / barcode / impresora** (el barcode ahora es vía
  cámara — ver [Cámara y código de barras](/docs/data-and-services/device-camera)).

## Notas de porte
- Donde leías/escribías `Settings.appSettings`, crea una **tabla clave/valor en SQLite**.
- `phone.*` → `device.*`; Bluetooth JSR-82/SPP → **BLE/GATT** (`BluetoothManager`, ver
  [Bluetooth BLE](/docs/data-and-services/device-bluetooth-ble)).
- Fechas/horas/moneda: el formateo por locale ahora vive en **`LocaleFormats`** (ver
  [i18n](/docs/best-practices/internacionalizacao)).

## Véase también
- Diccionario de renombramientos: [Glosario (reference)](/docs/reference/glossary)
