extends MarginContainer var rd_web_button := Button.new() var rd_changelog_button := Button.new() var rd_wiki_button := Button.new() var rd_credits_button := Button.new() var rd_donate_button := Button.new() var rd_contactus_button := Button.new() var rd_licenses_button := Button.new() var app_data := AppData.new() var bArray :Array = [rd_web_button,rd_changelog_button,rd_wiki_button, rd_credits_button,rd_donate_button,rd_contactus_button,rd_licenses_button] func _ready(): #tk_about = class_functions.import_csv_data("res://tk_about.txt") app_data = data_handler.app_data #_get_nodes() _connect_signals() for but in bArray: %GridContainer.add_child(but) for id in app_data.about_links: var web_data: Link = app_data.about_links[id] match id: "rd_web": rd_web_button.text = web_data.name rd_web_button.tooltip_text = web_data.description rd_web_button.icon = ResourceLoader.load(web_data.icon) rd_web_button.editor_description = web_data.url rd_web_button.icon_alignment = HORIZONTAL_ALIGNMENT_CENTER rd_web_button.vertical_icon_alignment = VERTICAL_ALIGNMENT_TOP "rd_changelog": rd_changelog_button.text = web_data.name rd_changelog_button.tooltip_text = web_data.description rd_changelog_button.icon = ResourceLoader.load(web_data.icon) rd_changelog_button.editor_description = web_data.url rd_changelog_button.icon_alignment = HORIZONTAL_ALIGNMENT_CENTER rd_changelog_button.vertical_icon_alignment = VERTICAL_ALIGNMENT_TOP "rd_wiki": rd_wiki_button.text = web_data.name rd_wiki_button.tooltip_text = web_data.description rd_wiki_button.icon = ResourceLoader.load(web_data.icon) rd_wiki_button.editor_description = web_data.url rd_wiki_button.icon_alignment = HORIZONTAL_ALIGNMENT_CENTER rd_wiki_button.vertical_icon_alignment = VERTICAL_ALIGNMENT_TOP "rd_credits": rd_credits_button.text = web_data.name rd_credits_button.tooltip_text = web_data.description rd_credits_button.icon = ResourceLoader.load(web_data.icon) rd_credits_button.editor_description = web_data.url rd_credits_button.icon_alignment = HORIZONTAL_ALIGNMENT_CENTER rd_credits_button.vertical_icon_alignment = VERTICAL_ALIGNMENT_TOP "rd_donate": rd_donate_button.text = web_data.name rd_donate_button.tooltip_text = web_data.description rd_donate_button.icon = ResourceLoader.load(web_data.icon) rd_donate_button.editor_description = web_data.url rd_donate_button.icon_alignment = HORIZONTAL_ALIGNMENT_CENTER rd_donate_button.vertical_icon_alignment = VERTICAL_ALIGNMENT_TOP "rd_contactus": rd_contactus_button.text = web_data.name rd_contactus_button.tooltip_text = web_data.description rd_contactus_button.icon = ResourceLoader.load(web_data.icon) rd_contactus_button.editor_description = web_data.url rd_contactus_button.icon_alignment = HORIZONTAL_ALIGNMENT_CENTER rd_contactus_button.vertical_icon_alignment = VERTICAL_ALIGNMENT_TOP "rd_licenses": rd_licenses_button.text = web_data.name rd_licenses_button.tooltip_text = web_data.description rd_licenses_button.icon = ResourceLoader.load(web_data.icon) rd_licenses_button.editor_description = web_data.url rd_licenses_button.icon_alignment = HORIZONTAL_ALIGNMENT_CENTER rd_licenses_button.vertical_icon_alignment = VERTICAL_ALIGNMENT_TOP func _connect_signals() -> void: rd_web_button.pressed.connect(_about_button_pressed.bind("rd_web")) rd_changelog_button.pressed.connect(_about_button_pressed.bind("rd_changelog")) rd_wiki_button.pressed.connect(_about_button_pressed.bind("rd_wiki")) rd_credits_button.pressed.connect(_about_button_pressed.bind("rd_credits")) rd_donate_button.pressed.connect(_about_button_pressed.bind("rd_donate")) rd_contactus_button.pressed.connect(_about_button_pressed.bind("rd_contactus")) rd_licenses_button.pressed.connect(_about_button_pressed.bind("rd_licenses")) func _about_button_pressed(id: String) -> void: match id: "rd_web": OS.shell_open(rd_web_button.editor_description) "rd_changelog": OS.shell_open(rd_changelog_button.editor_description) "rd_wiki": OS.shell_open(rd_wiki_button.editor_description) "rd_credits": OS.shell_open(rd_credits_button.editor_description) "rd_donate": OS.shell_open(rd_donate_button.editor_description) "rd_contactus": OS.shell_open(rd_contactus_button.editor_description) "rd_licenses": OS.shell_open(rd_licenses_button.editor_description) _: print ("Website ID/Link not found")