TextEdit
Dokumentacja programistyczna OpenTTD
Linki zewnętrzne

OpenTTD GitHub
Wkład w OpenTTD - wytyczne
OpenTTD Doxygen

Informacje Ogólne

Styl kodowania
Kompilowanie OpenTTD
Debugowanie
Dodanie ustawienia
Dodanie funkcji squirrel
Zrozumienie obsługi SaveGame
Wyznaczenie wersji gry zapisanej
Wykonanie wydania OpenTTD

Języki i Ciągi znaków

Podręcznik stylu
Format plików lang
Użycie ciągów OpenTTD
Lista ciągów specjalnych

System Okna

Użycie systemu okna
Kody kolorów istniejących w OpenTTD
Dodawanie pola tekstowego
Zrozumienie widget focus system
Przewodnik stylu GUI

Tryb wieloosobowy

OpenTTD TCP protokół
OpenTTD UDP protokół
Debugowanie desynchronizacji
Rozwój Portu Administratora Serwera

Konsola (w grze)

Okno konsoli
Komendy konsoli
Zmienne konsoli
Używanie skryptu konsoli
Dodanie funkcji/komend do konsoli
Dodanie zmiennych do konsoli
Historia rozwoju Konsoli

Interfejsy API (ramy modowania)

Grafika i podobne (NewGRFy)
Środowisko AI (NoAI)
Framework GS (NoGO)

Inne odniesienia

Tablica map (siatka pozioma)
Pojazdy
Wyszukiwanie trasy
Przyspieszenie pociągu

Na sposób interakcji użytkowników z polami edycyjnymi ma wpływ widget focus system. Ta strona opisuje, jakie modyfikacje są konieczne, aby dodać pole tekstowe do okna, które jeszcze go nie ma.

Lista kontrolna dodawania pola tekstowego do okna

NWidget(WWT_EDITBOX, COLOUR_WHITE, OP_WIDGET_NUM_PIZZAS_EDIT),
  SetDataTip(STR_ORDER_PIZZA_NUM_PIZZAS_OSKTITLE, STR_ORDER_PIZZA_NUM_PIZZAS_TOOLTIP),

(powinien znajdować się w jednej linii, ale został podzielony na dwie linie tutaj na wiki, aby uniknąć przewijania w poziomie)

QueryString filter_editbox; ///<Filtr pola edycji;
/* Inicjacja edycji tekstu widget`u */
this->querystrings[WID_SIL_FILTER_TEXT] = &this->filter_editbox;
this->filter_editbox.ok_button = WID_SIL_FILTER_ENTER_BTN;
this->filter_editbox.cancel_button = QueryString::ACTION_CLEAR;
this->SetFocusedWidget(OP_WIDGET_NUM_PIZZAS_EDIT);
virtual void OnEditboxChanged(int widget)

Powiązane artykuły

Zrozumienie widget focus system