Poradie elementov vo formulári
- arron
- Člen | 464
Ak to David neimplementuje, vyrieši to priohnutý ConventionalRenderer alebo vlastný renderer
Ono je to malinko slozitejsi…ConventionalRenderer renderuje nejdrive
vsechny skupiny (Grup), pak vsechny ostatni controly a nakonec hidden fieldy.
Vzhledem k tomu, ze skupinu nelze zjistit jinak nez
->getGroups()
, tak se velmi spatne manipuluje s poradim fieldu
v konecnem vystupu (clovek je proste limitovany tim, ze skupiny se musi
vykreslit pomoci ->getGroups()
). Troufam si rict, ze bez nejake
upravy chovani grup se toto bude implementovat velmi osklive. Jedine si s tim
hrat nejak v ramci skupin, ale tam uz se zase prvky vykresluji v tom poradi
v jakem byly pridany, takze se s tim manipuluje pomerne jednoduse (lec neni to
samospasitelne).
- kravčo
- Člen | 721
Keď som písal o priohnutí, myslel som tým podedenie ConventionalRendereru, prípadne vlastnú implementáciu IFormRendereru.
Samozrejme riešiť grupy a zároveň ľubovoľné poradie prvkov je asi nezmysel. Má zmysel riešiť poradie grúp a poradie prvkov v rámci jednej grupy, alebo grupy ignorovať a riešiť celkové poradie prvkov vo formulári.
obe riešenia mi pripadajú rozumne implementovateľné zdedením triedy CR a prepísaním metód CR::renderBody() a CR::renderControls() tak, aby sa pred prechádzaním cyklu s grupami/prvkami pole s nimi utriedilo (nejakým vlastným algoritmom triediacim podľa nastavenéj vlastnosti „position“).
- arron
- Člen | 464
Má zmysel riešiť poradie grúp a poradie prvkov v rámci jednej grupy,…
A kdyby se vyresilo tohle, tak je t o vyresene cele, protoze kdyz nebudes grupy definovat, tak si vyresis poradi vsech prvku. A kdyz si je nadefinujes, tak budes resit poradi v ramci grup:-) Toz to by asi bylo fajn:-) Vzhledem k tomu, ze jsem si ted psal vlastni renderer, tak mam jenom malinko obavu jak to bude s vykonem, kdyz se do toho vseho prochazeni formularovych prvku (a ze se prochazeji az neprijemne mnohokrat v prubehu renderovani) prida jeste nejake razeni:-/