Add app icon, product name/version, and document them
- New app.ico (from the Cevolani favicon, background made transparent and cropped tighter to the logo so it stays legible at 16/24px), wired up via ApplicationIcon in the csproj and re-read at runtime for the window icon. - Named the product "Cevolani StepPrep" and set Version=0.1.0 in the csproj; shown in the window title. The CadSearchGui folder/namespace/csproj keep their technical name, only the product-facing name changed. - Updated CLAUDE.md, README.md and docs/architettura.md to reflect the product name/version, UiStile.cs, app.ico, and that this app is a pre-process step ahead of Creo Distributed Batch. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
ba18d682f3
commit
6726dd2216
6 files changed
+62
-12
No files matched your search
@@ -4,10 +4,15 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
|
||||
|
||||
## Cos'è questo progetto
|
||||
|
||||
`CadSearchGui` è un'app Windows Forms (.NET 10, WinForms) che indicizza e permette di
|
||||
`CadSearchGui` è il nome tecnico del progetto (cartella, namespace, csproj); il nome del
|
||||
programma per l'utente finale è **Cevolani StepPrep** (versione in `<Version>` dentro
|
||||
`CadSearchGui/CadSearchGui.csproj`, attualmente `0.1.0` — mostrata anche nel titolo della
|
||||
finestra). È un'app Windows Forms (.NET 10, WinForms) che indicizza e permette di
|
||||
cercare i file CAD Pro-ENGINEER/Creo contenuti in tutte le cartelle di primo livello
|
||||
di un disco/share di rete (radice di default `X:\`), salvando i metadati in un DB
|
||||
SQLite locale (`cad_index.db`).
|
||||
SQLite locale (`cad_index.db`). Il flusso a valle (fasi 2-5, vedi sotto) prepara i file
|
||||
`raw/` da passare a Creo Distributed Batch per l'esportazione STEP: la app è quindi un
|
||||
pre-processo per quel passaggio, non lo sostituisce.
|
||||
|
||||
## Comandi
|
||||
|
||||
@@ -90,6 +95,14 @@ entrambi rimossi: ora l'unico programma è questo, con GUI e indicizzazione inte
|
||||
di progresso, conteggi nuovi/aggiornati/invariati/rimossi, tempo trascorso e stima
|
||||
del tempo rimanente (calcolata dal ritmo file/secondo rispetto al totale atteso,
|
||||
preso dal conteggio della scansione precedente salvato nel DB).
|
||||
- **UiStile.cs** — stile bottoni condiviso da `Form1` e dai dialog secondari
|
||||
(`Primario`/`Secondario`, entrambi `AutoSize` col padding invece di una `Size` fissa
|
||||
in pixel, per evitare che il testo vada a capo e si tagli quando non ci sta) e
|
||||
`Arrotonda` per gli angoli dei bottoni "Avanti"/"Indietro" del wizard.
|
||||
- **app.ico** — icona dell'app (logo Cevolani + pezzo + STEP, sfondo trasparente),
|
||||
referenziata da `<ApplicationIcon>` in `CadSearchGui.csproj` e riletta a runtime in
|
||||
`Form1.BuildUi()` via `Icon.ExtractAssociatedIcon(Application.ExecutablePath)` per
|
||||
la titlebar (stessa icona dell'exe, nessun file duplicato nell'output).
|
||||
|
||||
### Schema del DB (`cad_index.db`)
|
||||
|
||||
|
||||
@@ -7,6 +7,11 @@
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<ApplicationHighDpiMode>PerMonitorV2</ApplicationHighDpiMode>
|
||||
<ApplicationIcon>app.ico</ApplicationIcon>
|
||||
<AssemblyTitle>Cevolani StepPrep</AssemblyTitle>
|
||||
<Product>Cevolani StepPrep</Product>
|
||||
<Company>Cevolani</Company>
|
||||
<Version>0.1.0</Version>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
+13
-1
@@ -75,9 +75,21 @@ public partial class Form1 : Form
|
||||
private void BuildUi()
|
||||
{
|
||||
AllowDrop = true;
|
||||
Text = "Distinta Base -> CSV con percorsi CAD";
|
||||
// Versione letta dall'assembly (<Version> nel csproj) invece che duplicata qui a mano.
|
||||
var versione = typeof(Form1).Assembly.GetName().Version;
|
||||
Text = $"Cevolani StepPrep {versione?.ToString(3)} — Distinta Base -> CSV con percorsi CAD";
|
||||
MinimumSize = new Size(760, 480);
|
||||
Font = new Font("Segoe UI", 9.5f);
|
||||
// Stessa icona di ApplicationIcon nel csproj: la si rilegge dall'exe compilato invece
|
||||
// di duplicare il file .ico come Content, funziona identica in Debug/Release/publish.
|
||||
try
|
||||
{
|
||||
Icon = Icon.ExtractAssociatedIcon(Application.ExecutablePath);
|
||||
}
|
||||
catch (Exception ex) when (ex is IOException or ArgumentException)
|
||||
{
|
||||
// ponytail: nessuna icona nell'exe (es. lanciato da dotnet run) -> resta quella di default
|
||||
}
|
||||
|
||||
var headerPanel = new Panel { Dock = DockStyle.Top, Height = 40, BackColor = SystemColors.ControlLight };
|
||||
_lblFase.Dock = DockStyle.Fill;
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 48 KiB |
@@ -1,9 +1,11 @@
|
||||
# CadSearchGui
|
||||
# Cevolani StepPrep
|
||||
|
||||
App Windows Forms (.NET 10) per indicizzare, cercare e recuperare i file CAD
|
||||
Pro-ENGINEER/Creo di un disco/share di rete, e per trasformare l'estrazione
|
||||
"Distinta Base" del gestionale (file `.xls`/`.xml`) in un CSV con il percorso
|
||||
CAD di ogni componente.
|
||||
App Windows Forms (.NET 10, progetto `CadSearchGui`) per indicizzare, cercare e
|
||||
recuperare i file CAD Pro-ENGINEER/Creo di un disco/share di rete, e per trasformare
|
||||
l'estrazione "Distinta Base" del gestionale (file `.xls`/`.xml`) in un CSV con il
|
||||
percorso CAD di ogni componente, fino a raccogliere in `raw/` tutto il necessario per
|
||||
l'esportazione STEP con **Creo Distributed Batch**: è un pre-processo per quel
|
||||
passaggio, non lo sostituisce.
|
||||
|
||||
## Funzionalità
|
||||
|
||||
|
||||
+22
-4
@@ -1,8 +1,11 @@
|
||||
# Architettura di CadSearchGui
|
||||
# Architettura di CadSearchGui (Cevolani StepPrep)
|
||||
|
||||
Panoramica di tutti i file sorgente e di come collaborano. Per il "come si usa" vedi il
|
||||
`README.md` in root; per il formato binario `.asm` vedi `docs/formato-asm.md`; per la
|
||||
parallelizzazione della copia in `raw/` vedi `docs/copia-raw-parallela.md`.
|
||||
Panoramica di tutti i file sorgente e di come collaborano. `CadSearchGui` è il nome
|
||||
tecnico del progetto; **Cevolani StepPrep** è il nome del programma per l'utente
|
||||
finale (titolo finestra, icona, versione — vedi `<Version>`/`<Product>` in
|
||||
`CadSearchGui.csproj`). Per il "come si usa" vedi il `README.md` in root; per il
|
||||
formato binario `.asm` vedi `docs/formato-asm.md`; per la parallelizzazione della
|
||||
copia in `raw/` vedi `docs/copia-raw-parallela.md`.
|
||||
|
||||
## Vista d'insieme
|
||||
|
||||
@@ -96,6 +99,21 @@ Distinta (.xls/.xml) → CSV (componente;descrizione) → raw/ (CAD copiati
|
||||
salvato nel DB).
|
||||
- **ProgressoComponentiForm.cs** — dialog minimale (etichetta + barra) durante
|
||||
`RisolviAlberoComponenti` in fase 4.
|
||||
|
||||
## Stile UI condiviso
|
||||
|
||||
- **UiStile.cs** — `Primario`/`Secondario`: stile piatto per i bottoni (bordo sottile
|
||||
per i secondari, blu pieno per l'azione principale di ogni fase), entrambi con
|
||||
`AutoSize`+`Padding`+`MinimumSize` invece di una `Size` fissa in pixel indovinata a
|
||||
mano (altrimenti il testo va a capo e si taglia in verticale se non ci sta nella
|
||||
larghezza scelta). `Arrotonda` applica angoli arrotondati via `Region` calcolata su
|
||||
`SizeChanged` (non una volta sola: con `AutoSize` la dimensione finale del bottone si
|
||||
conosce solo a layout avvenuto), usata sui bottoni "Avanti"/"Indietro" del wizard.
|
||||
- **app.ico** — icona dell'app, referenziata da `<ApplicationIcon>` nel csproj (icona
|
||||
dell'exe in Esplora risorse/taskbar) e riletta esplicitamente in `Form1.BuildUi()`
|
||||
con `Icon.ExtractAssociatedIcon(Application.ExecutablePath)` per la titlebar, senza
|
||||
copiare il file `.ico` nell'output. Sfondo trasparente (nessuna card bianca), 7
|
||||
risoluzioni da 16 a 256px.
|
||||
- **PrtMancantiForm.cs** — esito della risoluzione ricorsiva dell'albero componenti: PRT e
|
||||
sotto-assiemi trovati e copiati in `raw/`, più i codici referenziati che non corrispondono a
|
||||
nessun file indicizzato (possono essere disegni, componenti davvero mancanti, o falsi
|
||||
|
||||
Reference in new issue
Block a user