Advertisement
JELLYYY

WHY

Oct 29th, 2022
914
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. extends OptionButton
  2. #-------------------# Variables                 #-------------------#
  3. var availableLangauges=[]
  4. #-------------------# Onready                   #-------------------#
  5. onready var parent=get_parent().get_parent().get_parent()
  6. onready var textED=parent.get_node("WindowContainer/PaneContainer/TextEdit")
  7. #-------------------# Ready function            #-------------------#
  8. func _ready():
  9.     availableLangauges.clear()
  10.     #-------------------# Add items             #-------------------#
  11.     dirContents("res://SyntaxHighlightOptions/")
  12.     for option in availableLangauges:
  13.         add_item(option)
  14.     #-------------------# Connect               #-------------------#
  15.     var _ignore=get_popup().connect("id_pressed",self,"childControl")
  16. #-------------------# Directory search function #-------------------#
  17. func dirContents(path):
  18.     var dir=Directory.new()
  19.     dir.open(path)
  20.     dir.list_dir_begin()
  21.     #-------------------#
  22.     while true:
  23.         var file=dir.get_next()
  24.         if file=="":
  25.             break
  26.         elif not file.begins_with("."):
  27.             #-------------------# remove '.gd'  #-------------------#
  28.             file.erase(file.length()-3,3)
  29.             #-------------------# add to array  #-------------------#
  30.             availableLangauges.append(file)
  31.     dir.list_dir_end()
  32. #-------------------# Script control            #-------------------#
  33. func childControl(ID):
  34.     var idx=get_item_index(ID)
  35.     var item=str(get_item_text(idx)+".gd")
  36.     #-------------------# Overwrite script      #-------------------#
  37.     var content=cpy(item)
  38.     pst(content)
  39.     #-------------------#
  40. func cpy(item):
  41.     var file=File.new()
  42.     file.open(str("res://SyntaxHiglightOptions/"+item),File.READ)
  43.     var content=file.get_as_text()
  44.     file.close()
  45.     return content
  46. func pst(content):
  47.     var file=File.new()
  48.     file.open("res://GD-Scripts/Syntax.gd",File.WRITE)
  49.     file.store_string(content)
  50.     file.close()
  51.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement