sPlan 8.0 - komponenty typu Rodzic-Potomek - Zmienne komponentu złożonego

Spis treści

Zmienne komponentu typu Rodzic-Potomek

Zmienne komponentów złożonychZagadnienie przypisywania tekstom i treści pól tekstowych wartości zmiennych oraz stałych programu sPlan (ew. użytkownika) został szerzej omówiony w artykulesPlan 8.0 - stałe i zmienne.

Warto wiedzieć, że w sPlan 8.0 tekst stanowi bardzo istotny element warstwy informacyjnej. I program oferuje szereg funkcjonalności wspierające ich tworzenie.

Wspominałem, że dane dotyczące komponentów typu Rodzic-Potomek są automatycznie synchronizowane.

Element Potomek może automatycznie przyjąć identyfikator i wartość swojego Rodzica dzięki zastosowaniu specjalnych zmiennych (nazwy których zadeklarowano w programie).

Są one unikalne i występują wyłącznie dla komponentów typu Rodzic-Potomek:

  • <PARENT_ID> - identyfikator składnika wskazanego jako Rodzic,
  • <PARENT_VALUE> - wartość składnika wskazanego jako Rodzic,
  • <PARENT_PAGENO> - karta, na której występuje składnik wskazanego jako Rodzic,
  • <CHILDNO> - numer (np. 1, 2, 3, itd.) identyfikujący składnik wskazany jako Potomek,
  • <CHILDCHAR> - litera (np. a, b, c, itd.) identyfikująca składnik wskazany jako Potomek,
  • <CHILD_PAGENO> - karta, na której występuje składnik wskazanego jako Potomek.

Automatycznie składnikowi Potomek domyślnie przypisywane są: identyfikator <PARENT_ID> i wartość swojego rodzica <PARENT_VALUE>.

Choć identyfikator Potomka powiązany jest z identyfikatorem Rodzica to może on być rozszerzony o zmienną: <CHILDNO> (numeryczna) lub <CHILDCHAR> (literowa). Element wskazany jako Rodzic zarządza przypisanymi mu Potomkami nadając im kolejny „wyróżnik”.

Warto zdefiniować (i włączyć jego wyświetlanie!) identyfikator Potomka w następujący sposób: <PARENT_ID> - <CHILDNO> lub <PARENT_ID> - <CHILDCHAR>.

Zmienne: <CHILDNO>/<CHILDCHAR> określają kolejność Potomków wskazaną w złożonym komponencie bibliotecznym lub określonymi przez użytkownika.

Jeśli składnikowi typu Rodzic przypisano 4 Potomków, to każdy z nich ma przypisany numery: 1, 2, 3, 4 (<CHILDNO>) lub a, b, c, d (<CHILDCHAR>).

Identyfikatory Potomków na schemacie będą przedstawiane odpowiednio np. jako (<PARENT_ID>=IC1): IC1-1, IC1-2, IC1-3, IC1-4 lub IC1-a, IC1-b, IC1-c, IC1-d.

Kopiowanie (mnożenie) Rodziców

Mnożenie Rodziców"Mnożenie" potomstwa to sprawa znana. Jednak chciałbym opisać kopiowanie (powielanie) składnika komponentu typu Rodzic.

Oczywiście od razu pojawia się pytanie: po co? Nie jest to żadna fanaberia czy incydent. Często z tej opcji korzystam.

Gdy już mam symbol komponentu z ustawionym szeregiem parametrów (<PARENT_ID>, <PARENT_VALUE>, <PARENT_PAGENO>, opisów, itd. i zachodzi potrzeba zmiany np. "tylko układu nóżek" czy "wizerunku symbolu".

W przypadku prostych symboli łatwiej skopiować cały komponent. Bywa jednak, że łatwiej zacząć od Rodzica, a "resztę" dorysować :)

Zaczynam od skopiowania komponentu (złożonego) na kartę, a następnie (numery w nawiasach odnoszą się do oznaczeń na obrazku z lewej):

  • zaznaczam składnik typu Rodzic (1) - bo to ten element decyduje o szeregu parametrach i właściwościach komponentu złożonego typu Rodzic-Potomek. Warto przyjrzeć się wartościom wyświetlony po prawej stronie okna programu.
    W okienku opisu relacji Rodzic-Potomek widzimy, że możemy zmodyfikować listę przypisanych mu potomków lub nawet pozbawić ten składnik statusu Rodzica. Jego Potomek po pozbawieniu tego statusu utraci wiele własności więc trzeba uważać,
  • po upewnieniu się, że zaznaczyłem tylko "Rodzica" kopiuję go do schowka (Ctrl+C, 2) - istotne jest to, że do schowka kopiowany jest nie tylko sam symbol Rodzica, ale również wiele jego parametrów czy ustawień,
  • kopiujemy na kartę zawartość schowka (Ctrl+V, 3) - w oknie właściwości kopiowanego komponentu (tu typu Rodzic) znajdziemy szereg informacji.
    Zwróć uwagę, że już na tym etapie otrzymujemy informację, że Rodzic jest... bezdzietny (brak Potomków). Dostępne są również funkcje edycyjne komponentu, więc możemy zmieniać "do woli".,
  • tu (dla przykładu wykorzystamy Potomka pierwotnego układu, choć nic nie stoi na przeszkodzie by skopiować/utworzyć własny składnik typu Potomek. Zaznaczamy go. - Na dole, po lewej stronie okna programu w opisie relacji Rodzic-Potomek pojawiła się funkcja "Przypisz Rodzica". "Ptaszek" wskazuje na rozwijaną listę. Gdy ją klikniemy, okazuje się, że oprócz pierwotnie dostępnego Rodzica o oznaczeniu A1, pojawił się drugi - oznaczony jako A3,
  • Którego wybrać? - o tym winny decydować pomysły i potrzeby Autora projektu :),
  • Jeśli stworzony komponent nie jest "jednorazowym wyczynem" czy epizodem - po zaznaczeniu całości komponentu (Rodzic i Potomek) skopiuj go do odpowiedniej biblioteki.

Oczywiście zamiast "rzeźbić od zera" można skopiować gotowe składniki Rodzica i Potomka. Powybierać to "co się lubi podoba" i zapisać.Od frontu i od zaplecza

I tu sugeruję uważnie się przyjrzeć wpisom w niektóre pola własności składników czy ustawienia markerów. Wynika to z faktu, że jak już wiadomo Potomkowie dziedziczą, a parametry Rodziców bywają widoczne.

Czasami niekoniecznie w sposób oczekiwany przez użytkownika. Do dziś po takich mariażach niektóre schematy "odzywają się" do mnie w językach, których nie rozumiem. ;)

To efekt szybkiego kreowania relacji Rodzic-Potomek. Weryfikacja niektórych własności komponentów na tym cierpi.

Zakończenie

sPlan 8.0 - Edycja komponentówPierwotnie planowałem kontynuować wątek związany z tworzeniem nowych czy modyfikacją istniejących komponentów jeszcze w tym artykule. Tych typu Rodzic-Potomek również.

Jednakże spowodowałoby to "rozrośnięcie" się go do IMO nadmiernych rozmiarów.

Mnogość narzędzi i funkcji edytorskich udostępnianych przez sPlan 8.0 oraz pytania dotyczące (czasami prostej) edycji komponentów czy schematów spowodowały, że postanowiłem jednak wątek edycji przenieść do artykułu pt. sPlan 8.0 - Edytor.

Jeśli jesteś zainteresowany tym co jeszcze udało mi się zrobić z lutownicą w ręku zapraszam do Warsztatu krótkofalowca.