-
Notifications
You must be signed in to change notification settings - Fork 27
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
97 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
extends GUINode | ||
|
||
enum Page { | ||
NATION_RANKING, | ||
NATIONAL_COMPARISON, | ||
POLITICAL_SYSTEMS, | ||
POLITICAL_REFORMS, | ||
SOCIAL_REFORMS, | ||
COUNTRY_POPULATION, | ||
PROVINCES, | ||
PROVINCE_POPULATION, | ||
PROVINCE_PRODUCTION, | ||
FACTORY_PRODUCTION, | ||
PRICE_HISTORY, | ||
NUMBER_OF_PAGES | ||
} | ||
const _page_titles : PackedStringArray = [ | ||
"LEDGER_HEADER_RANK", | ||
"LEDGER_HEADER_COUNTRYCOMPARE", | ||
"LEDGER_HEADER_COUNTRYPARTY", | ||
"LEDGER_HEADER_COUNTRYPOLITICALREFORMS", | ||
"LEDGER_HEADER_COUNTRYSOCIALREFORMS", | ||
"LEDGER_HEADER_COUNTRY_POPS", | ||
"LEDGER_HEADER_PROVINCES", | ||
"LEDGER_HEADER_PROVINCE_POPS", | ||
"LEDGER_HEADER_PROVINCEPRODUCTION", | ||
"LEDGER_HEADER_FACTORYPRODUCTION", | ||
"LEDGER_HEADER_GOODS_PRICEHISTORY" | ||
] | ||
|
||
var _current_page : Page = Page.NATION_RANKING: | ||
get: return _current_page | ||
set(new_page): | ||
_current_page = new_page | ||
while _current_page < 0: | ||
_current_page += Page.NUMBER_OF_PAGES | ||
_current_page %= Page.NUMBER_OF_PAGES | ||
_update_info() | ||
|
||
var _page_title_label : GUILabel | ||
var _page_number_label : GUILabel | ||
# TODO - add variables to store any nodes you'll need to refer in more than one function call | ||
|
||
func _ready(): | ||
MenuSingleton.search_cache_changed.connect(_update_info) | ||
|
||
add_gui_element("v2ledger", "ledger") | ||
|
||
var close_button : GUIIconButton = get_gui_icon_button_from_nodepath(^"./ledger/close") | ||
if close_button: | ||
close_button.pressed.connect(hide) | ||
|
||
var previous_page_button : GUIIconButton = get_gui_icon_button_from_nodepath(^"./ledger/prev") | ||
if previous_page_button: | ||
previous_page_button.pressed.connect(func() -> void: _current_page -= 1) | ||
|
||
var next_page_button : GUIIconButton = get_gui_icon_button_from_nodepath(^"./ledger/next") | ||
if next_page_button: | ||
next_page_button.pressed.connect(func() -> void: _current_page += 1) | ||
|
||
_page_title_label = get_gui_label_from_nodepath(^"./ledger/ledger_header") | ||
_page_number_label = get_gui_label_from_nodepath(^"./ledger/page_number") | ||
|
||
# TODO - get any nodes that need setting up or caching in the variables above | ||
|
||
hide() | ||
|
||
func toggle_visibility() -> void: | ||
if is_visible(): | ||
hide() | ||
else: | ||
show() | ||
_update_info() | ||
|
||
func _update_info() -> void: | ||
if is_visible(): | ||
if _page_title_label: | ||
_page_title_label.set_text(_page_titles[_current_page]) | ||
|
||
if _page_number_label: | ||
# Pages are indexed from 0 in the code, but from 1 in the UI | ||
_page_number_label.set_text(str(_current_page + 1)) | ||
|
||
# TODO - set contents of current ledger page |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters