Cześć! Zastanawia mnie od dłuższego czasu jak zrobione są mechanizmy drag & drop obiektów na dwuwymiarowych płaszczyznach w programach typu Stencyl / Game Maker / Construct / GDevelop itd. Czyli możemy dodawać obiekty na płaszczyznę na zasadzie WYSIWYG, edytować parametry obiektu, obserwować zmiany itd. Znacie rozwiązanie? Jak coś takiego zrobić (jakiś poradnik / tutorial / nakierowanie / nazwa / cokolwiek) ? :)
Chyba o to ci chodzi.
Jak miałem przedmiot KCK(komunikacja człowiek komputer) mieliśmy za zadanie stworzenie GUI. Każdy miał tam za zadanie stworzenie jakiś tam elementów GUI(Element==pkt).
Więc większość robiła menadżera który obsługiwał bardziej złożone obiekty(FASADA?).
Jeżeli chcesz postawić "Objekt" dajmy na to button to wstawiasz go do listy<Łojciec Abstrakcyjny>.add(Button(...).
Z draw czy tam UpDate(nie wiem czy robisz OnClick itd),sprawdzasz czy obiekt nie jest kliknięty jak jest to zaznaczasz go jako zaznaczony i wtedy możesz zmieniać jego położenie i parametry.
Jeżeli sie mylę POPRAW KTOŚ, za biadolenie sorka jest późno i trochę już zmęczony.
Bardziej od strony reprezentacyjnej :P Ogólnie to informacje o obiektach przechowuje w tablicach 2D gdzie obiekt x atrybuty. Zastanawia mnie renderowanie WYSIWYG komponentów w czasie rzeczywistym np. w Gamesalad: http://s3.gamesalad.com.s3.amazonaws.com/misc/gamesalad_screenshot5.jpg
jest takie okienko, które odwzorowuje to co zobaczymy w grze z zaznaczonym obszarem ekranu startowego. :)