You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Oct 21, 2024. It is now read-only.
Aktualnie do obiektów selection oraz button przekazywane są zmienne lub funkcje które zmieniają zachowanie programu.
// klasa button
std::function<void()> action;
// klasa selection
ship_type sel_type;
Nie jest to dobre ponieważ mieszamy części gry z interfejsem, który powinnien móc zmieniać różne rzeczy a nie tylko typ statków.
Prostszym podejściem byłoby w metodzie rysowania okna stworzyć przycisk lub inny element interfejsu, przypisując mu dane właściwości a następnie sprawdzić czy przycisk został wciśnięty. Mogło by to wyglądać w następujacy sposób:
// metoda rysującaui::set_font(22);
ui::set_font_color(ui::color::green);
ui::set_border_color(ui::color::green);
ui::set_fill_color(ui::color::black);
if (ui::button(200,200,100,50, "Click me!")) {
// ... np. zmiana liczby statków danego rodzaju
}
Na zapleczu, czyli w przestrzeni nazw ui istniała by lokalna struktura przechowująca właściwości przypisywane elementom interfejsu, szablony rozłożenia tych elementów.
Załóżmy że chcielibyśmy wiecęj przycisków o takich samych właściwościach, wystarczy:
if (ui::button(200,250,100,50, "Click me 1!")) {
// ...
}
if (ui::button(200,300,100,50, "Click me2!")) {
// ...
}
The text was updated successfully, but these errors were encountered:
Aktualnie do obiektów
selection
orazbutton
przekazywane są zmienne lub funkcje które zmieniają zachowanie programu.Nie jest to dobre ponieważ mieszamy części gry z interfejsem, który powinnien móc zmieniać różne rzeczy a nie tylko typ statków.
Prostszym podejściem byłoby w metodzie rysowania okna stworzyć przycisk lub inny element interfejsu, przypisując mu dane właściwości a następnie sprawdzić czy przycisk został wciśnięty. Mogło by to wyglądać w następujacy sposób:
Na zapleczu, czyli w przestrzeni nazw
ui
istniała by lokalna struktura przechowująca właściwości przypisywane elementom interfejsu, szablony rozłożenia tych elementów.Załóżmy że chcielibyśmy wiecęj przycisków o takich samych właściwościach, wystarczy:
The text was updated successfully, but these errors were encountered: