Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- extends OptionButton
- #-------------------# Variables #-------------------#
- var availableLangauges=[]
- #-------------------# Onready #-------------------#
- onready var parent=get_parent().get_parent().get_parent()
- onready var textED=parent.get_node("WindowContainer/PaneContainer/TextEdit")
- #-------------------# Ready function #-------------------#
- func _ready():
- availableLangauges.clear()
- #-------------------# Add items #-------------------#
- dirContents("res://SyntaxHighlightOptions/")
- for option in availableLangauges:
- add_item(option)
- #-------------------# Connect #-------------------#
- var _ignore=get_popup().connect("id_pressed",self,"childControl")
- #-------------------# Directory search function #-------------------#
- func dirContents(path):
- var dir=Directory.new()
- dir.open(path)
- dir.list_dir_begin()
- #-------------------#
- while true:
- var file=dir.get_next()
- if file=="":
- break
- elif not file.begins_with("."):
- #-------------------# remove '.gd' #-------------------#
- file.erase(file.length()-3,3)
- #-------------------# add to array #-------------------#
- availableLangauges.append(file)
- dir.list_dir_end()
- #-------------------# Script control #-------------------#
- func childControl(ID):
- var idx=get_item_index(ID)
- var item=str(get_item_text(idx)+".gd")
- #-------------------# Overwrite script #-------------------#
- var content=cpy(item)
- pst(content)
- #-------------------#
- func cpy(item):
- var file=File.new()
- file.open(str("res://SyntaxHiglightOptions/"+item),File.READ)
- var content=file.get_as_text()
- file.close()
- return content
- func pst(content):
- var file=File.new()
- file.open("res://GD-Scripts/Syntax.gd",File.WRITE)
- file.store_string(content)
- file.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement