krivka napsal:...Váš požadavek je na jedné straně velmi rozumný (tak nějak to člověk udělá ručně, aniž by nad tím moc přemýšlel),...
Mno, kdyz jsem si napriklad u definice pro soucastku s vyvody jinam nez nahoru nastavil, ze veskere napisy chci mit vyskladane smerem nahoru, pak vznika takovy pitomy stav, kdy mam od nejvyse polozeneho radku: Reference, Part Name, Package, Value, Note. A ted, pokud nemam nic v Package, Value, nebo Note (prip.ani v jednom), pak mi tam vznika zbytecna mezera, ktera by byla u kazde takove soucastky.
krivka napsal:...na druhé straně mi není jasné, jak by mělo vypadat ovládání takového chování a jaké by mohlo umožňovat smyslupné modifikace.
Predstavuji si to napr.tak, ze kdyz rozkliknu nekterou ze 16ti definic v "Default Image", uvidim dole vedle "Copy from >" jeste prepinac "Auto Align" (On/Off) nebo "dY numbering" (Absolute/Relative). Fungovalo by to tak, ze pokud bude prepinac na On (resp.Relative), a zaroven obsah polozky bude nulovy, nebo viditelnost jakekoliv z polozek Hidden, (ma se to vztahovat pro uplnost i na nulovou velikost pisma?) pak vsechny ostatni polozky, ktere lezi na radcich s vyssi absolutni hodnotou dY, se posunou o radek blize stredu soucastky.
Programatorsky to vidim nejak takto:
- pokud je Reference Corner roven Top Left nebo Top Right, tak
- vezmi jeste neotestovanou polozku s nejnizsim cislem radku vetsim nebo rovnem nule
- tuto polozku otestuj na neviditelnost, nulovy obsah, nulove pismo - pokud neco z toho splnuje, pak vsem polozkam s vyssim cislem radku dekrementuj jejich cislo o 1
- opakuj do otestovani vsech polozek s cislem radku vetsim nebo rovnem nule
- pokud je Reference Corner roven Bottom Left nebo Bottom Right, tak
- vezmi jeste neotestovanou polozku s nejvyssim cislem radku mensim nebo rovnem nule
- tuto polozku otestuj na neviditelnost, nulovy obsah, nulove pismo - pokud neco z toho splnuje, pak vsem polozkam s nizsim cislem radku inkrementuj jejich cislo o 1
- opakuj do otestovani vsech polozek s cislem radku vetsim nebo rovnem nule