Files
comun/docs/conventie_ux_formulare.md
2026-08-23 11:08:56 +03:00

2.2 KiB

Conventie UX pentru formulare VFP

Comun tuturor proiectelor ROA*.

Layout

  • Fiecare grup functional pe randul lui, nu inghesuit pe acelasi Top cu altul fara legatura (ex: perioada / statistici / configurare, pe randuri separate).
  • Spatiere vizibila intre grupuri, stransa in interiorul unui grup: butoane din aceeasi actiune la 6-10px unele de altele; gap de 20-30px fata de urmatorul grup functional.
  • Butoanele secundare/de configurare aliniate la marginea din dreapta a containerului, nu lipite imediat dupa textbox-ul pe care il controleaza - altfel nu se disting ca actiune separata de campul de input.
  • Actiunea principala + oprirea ei alaturate (ex. Transmite + Renunta), nu imprastiate in alta parte a randului.
  • Un singur rand de actiuni cat se poate - un rand orizontal in loc de randuri noi dedesubt; formele raman compacte pe verticala.
  • Caption-uri scurte, sentence case, nu ALL CAPS - ex. "Transmite" nu "TRANSMITE".
  • Culoare = semnal, nu decor - doar pentru actiuni cu semnificatie clara (verde = pozitiv/transmite, rosu = oprire/pericol, albastru = navigare/link extern); restul butoanelor raman stilul implicit din _baza.vcx.

Clase de controale (confirmat de Marius, 24.07.2026, pe frm_verif_partener_anaf ROACONT)

  • Intotdeauna controale din _baza.vcx, nu controale native VFP - orice grid, label, textbox, checkbox etc. dintr-un formular nou se bazeaza pe clasa corespunzatoare din COMUN\clase\_baza.vcx. Fontul default e Arial 10 - nu se suprascrie FontName pe controale (explicit: fara Arial Narrow).
  • Butoanele de inchidere/confirmare stau in bara de titlu, din cmd_butoane.vcx - modelul Renunt/Termin (clasa frm_termin_renunt din _frm_child.vcx le aduce deja). Nu se dubleaza aceste actiuni cu butoane in corpul formei.
  • Actiunile care au corespondent but_* in cmd_butoane.vcx (Nou/Adauga, Modifica, Salveaza, Sterge, Verifica etc.) folosesc CU PREDILECTIE clasa dedicata but_* respectiva - nu se improvizeaza un buton generic pentru o actiune care are deja clasa ei.
  • Doar actiunile FARA corespondent but_* primesc butoane pe clasele cmd_* din cmd_butoane.vcx (ex. cmd_executa) - nu clase improvizate si nu CommandButton nativ.