traduzioni 4 lingue e catalogo razze portati dai sorgenti Flutter; asset foto, icone dall'artwork originale, test node
This commit is contained in:
@@ -20,6 +20,8 @@ Android (AdMob/File picker/Share). Nessun account, nessun cloud, come l'original
|
||||
| Packaging (spec RPM, desktop SailJail, icone, i18n) | pronto |
|
||||
| Guscio app (finestra, cover, Settings con lingua) | pronto |
|
||||
| Motore di calcolo (`qml/js/henflow.js`) | portato e verificato con node |
|
||||
| Traduzioni 4 lingue (`qml/js/i18n.js`, 126 chiavi) | portate e verificate con node |
|
||||
| Catalogo razze con foto (`qml/js/catalog.js`) | portato e verificato con node |
|
||||
| Schermate QML | da implementare |
|
||||
|
||||
## Struttura
|
||||
@@ -33,9 +35,13 @@ src/settings.h/.cpp # QSettings su path esplicito AppConfigLocation + s
|
||||
qml/harbour-henflow.qml # ApplicationWindow: initialPage + cover
|
||||
qml/pages/MainPage.qml # indice dei moduli (segnaposto)
|
||||
qml/js/henflow.js # motore di calcolo (ES5, testabile con node)
|
||||
tests/engine.test.js # 30 controlli: node tests/engine.test.js
|
||||
icons/make_icons.py # icone 86/108/128/172 (PIL)
|
||||
translations/*.ts # stringhe sorgente INGLESI + catalogo italiano
|
||||
qml/js/i18n.js # 126 chiavi x 4 lingue + t(chiave, arg, lingua)
|
||||
qml/js/catalog.js # 7 razze: nome/descrizione/colore uova/foto
|
||||
assets/breeds/*.jpg # foto delle razze (installate nel datadir)
|
||||
tools/gen_from_flutter.py # rigenera i18n.js e catalog.js dai sorgenti Flutter
|
||||
tests/run.sh # tests/engine.test.js + tests/i18n.test.js
|
||||
icons/make_icons.py # icone 86/108/128/172 dall'artwork originale
|
||||
translations/*.ts # stringhe statiche delle pagine QML (EN + IT)
|
||||
```
|
||||
|
||||
## Motore di calcolo (portato fedelmente da `lib/main.dart`)
|
||||
@@ -100,8 +106,20 @@ git archive --format=tar.gz --prefix=harbour-henflow-0.1.0/ -o harbour-henflow-0
|
||||
|
||||
## Aperti
|
||||
|
||||
1. **Asset**: nel materiale di Nextcloud mancano `assets/breeds/*.jpg` (7 foto)
|
||||
e `pubspec.yaml`.
|
||||
2. **Repo Gitea `HenFlow`**: cancellata (era un upload parziale); per ricrearla
|
||||
serve un permesso che il token attuale non ha (`write:user`).
|
||||
3. **Ambito**: modalita' cliente e 4 lingue (EN/IT/FR/DE) da confermare.
|
||||
1. **Repo Gitea `HenFlow`**: cancellata (era un upload parziale); da ricreare
|
||||
dalla UI, poi `workspace/henflow-flutter` va pushata li'.
|
||||
2. **Schermate QML**: da implementare (solo modalita' allevatore, 4 lingue).
|
||||
|
||||
## Correzioni rispetto all'originale (bug trovati nei sorgenti Flutter)
|
||||
|
||||
- `app_language.dart` e' una copia **vecchia** della tabella traduzioni (111 chiavi
|
||||
contro 126), usata solo da `lib/dialogs/confirm_dialogs.dart`, e ha gli a capo
|
||||
scritti `\\n`: quei dialoghi mostrano un backslash visibile. Il porting estrae
|
||||
dalla tabella viva in `main.dart`.
|
||||
- Il francese ha 2 chiavi in meno (`name_generic`, `desc_generic`) e `t()` non ha
|
||||
fallback: in francese la razza "generic" usciva come testo `name_generic`.
|
||||
Nel porting i buchi sono colmati dall'inglese e un test lo verifica.
|
||||
- `assets/breeds/olive.jpg` era un **WEBP** con estensione .jpg: Qt 5.6 su Sailfish
|
||||
non ha il plugin webp. Riconvertito in JPEG.
|
||||
- Niente annunci (AdMob non esiste su Sailfish) e niente `share_plus`/`file_picker`:
|
||||
export/import JSON in Download.
|
||||
|
||||
Reference in New Issue
Block a user