Refonte majeure mode schema + lignes electriques :
- EmptySchemaLogoOverlay : nouveau PNG ElectroCAD Schema (rouge/blanc). Fenetre WPF transparente restauree (apres tentative MS abandonnee). CleanupLegacyMsArtifacts purge les RasterImages MS heritees.
- State guards mode schema : restauration garantie a la sortie. ApplyTabState else-branch + AcApp.BeginQuit hook ajoutes (cmdline + snap + bg + cursor + overlay). NativeCommandLineGate utilise maintenant COMMANDLINEHIDE/COMMANDLINE natifs au lieu de simuler Ctrl+9.
- SchemaSnapGuard : defensive double-subscribe + auto-unhook dans OnSysVarChanged → SNAPMODE revient bien a l etat utilisateur a la sortie du schema.
- JunctionTools reacteur : detection T-jonction etendue a MOVE/COPY/PASTECLIP/STRETCH/ROTATE/MIRROR/SCALE/ALIGN/OFFSET/GRIP_* (avant : LINE only). Hook OnObjectModified pour capturer lignes modifiees (pas seulement appended).
- Anti-overlap : LineOverlapResolver natif (same-layer) + nouveau EraseOverlappedCrossLayer (cross-layer) appeles en debut de ProcessNewLines. Spec user : "une ligne ne doit jamais etre superposee, c est interdit". La nouvelle ligne s etend pour couvrir l union des 2 ranges, l ancienne est erased.
- AreCollinear skip : pas de T-jonction creee sur paire colineaire (overlap → resolve, pas T).
- Cartouche logo : raster maintenant correctement embarque dans BTR
EC_CART_* avec block defaults (Layer=0, Color=ByBlock) — meme technique qu ECPRESGEN. Plus de raster pose en MS. ApplyLogoToAllPages iterates tous les BTR cartouche. ResolveLogoPath corrige (Assembly.Location au lieu de paths hardcodes Autodesk).