mirror of
https://github.com/Relintai/pandemonium_engine_easy_charts.git
synced 2024-12-19 13:37:03 +01:00
This commit is contained in:
parent
7126db1d79
commit
f20d470fe9
@ -1,197 +0,0 @@
|
|||||||
# ----------------------------------------------
|
|
||||||
# ~{ GitHub Integration }~
|
|
||||||
# [Author] Nicolò "fenix" Santilio
|
|
||||||
# [github] fenix-hub/godot-engine.github-integration
|
|
||||||
# [version] 0.2.9
|
|
||||||
# [date] 09.13.2019
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# -----------------------------------------------
|
|
||||||
|
|
||||||
tool
|
|
||||||
extends Control
|
|
||||||
|
|
||||||
onready var VersionCheck : HTTPRequest = $VersionCheck
|
|
||||||
|
|
||||||
onready var SignIn = $SingIn
|
|
||||||
onready var UserPanel = $UserPanel
|
|
||||||
onready var CommitRepo = $Commit
|
|
||||||
onready var Repo = $Repo
|
|
||||||
onready var Gist = $Gist
|
|
||||||
onready var Commit = $Commit
|
|
||||||
onready var LoadNode = $loading
|
|
||||||
onready var Version = $Header/datas/version
|
|
||||||
onready var ConnectionIcon : TextureRect = $Header/datas/connection
|
|
||||||
onready var Header = $Header
|
|
||||||
onready var RestartConnection = Header.get_node("datas/restart_connection")
|
|
||||||
|
|
||||||
|
|
||||||
onready var Menu = $Header/datas/Menu.get_popup()
|
|
||||||
|
|
||||||
var user_avatar : ImageTexture = ImageTexture.new()
|
|
||||||
var user_img = Image.new()
|
|
||||||
|
|
||||||
var connection_status : Array = [
|
|
||||||
IconLoaderGithub.load_icon_from_name("searchconnection"),
|
|
||||||
IconLoaderGithub.load_icon_from_name("noconnection"),
|
|
||||||
IconLoaderGithub.load_icon_from_name("connection")
|
|
||||||
]
|
|
||||||
|
|
||||||
var plugin_version
|
|
||||||
var plugin_name
|
|
||||||
|
|
||||||
func load_config():
|
|
||||||
var config = ConfigFile.new()
|
|
||||||
var err = config.load("res://addons/github-integration/plugin.cfg")
|
|
||||||
if err == OK:
|
|
||||||
plugin_version = config.get_value("plugin","version")
|
|
||||||
plugin_name = "[%s] >> " % config.get_value("plugin","name")
|
|
||||||
|
|
||||||
func _ready():
|
|
||||||
load_config()
|
|
||||||
|
|
||||||
set_darkmode(PluginSettings.darkmode)
|
|
||||||
|
|
||||||
LoadNode.hide()
|
|
||||||
Menu.connect("id_pressed", self, "menu_item_pressed")
|
|
||||||
RestartConnection.connect("pressed",self,"check_connection")
|
|
||||||
VersionCheck.connect("request_completed",self,"_on_version_check")
|
|
||||||
# Debug.connect("toggled",self,"_on_debug_toggled")
|
|
||||||
|
|
||||||
Repo.hide()
|
|
||||||
SignIn.show()
|
|
||||||
SignIn.connect("signed",self,"signed")
|
|
||||||
UserPanel.hide()
|
|
||||||
Commit.hide()
|
|
||||||
|
|
||||||
Version.text = "v "+plugin_version
|
|
||||||
# Debug.set_pressed(PluginSettings.debug)
|
|
||||||
ConnectionIcon.set_texture(connection_status[0])
|
|
||||||
|
|
||||||
# check_connection()
|
|
||||||
ConnectionIcon.use_parent_material = false
|
|
||||||
ConnectionIcon.material.set("shader_param/speed", 3)
|
|
||||||
RestHandler.check_connection()
|
|
||||||
var connection = yield(RestHandler, "_check_connection")
|
|
||||||
match connection:
|
|
||||||
true:
|
|
||||||
SignIn.btnSignIn.set_disabled(false)
|
|
||||||
ConnectionIcon.set_texture(connection_status[2])
|
|
||||||
ConnectionIcon.set_tooltip("Connected to GitHub API")
|
|
||||||
RestartConnection.hide()
|
|
||||||
false:
|
|
||||||
SignIn.btnSignIn.set_disabled(true)
|
|
||||||
ConnectionIcon.set_texture(connection_status[1])
|
|
||||||
ConnectionIcon.set_tooltip("Can't connect to GitHub API, check your internet connection or API status")
|
|
||||||
RestartConnection.show()
|
|
||||||
ConnectionIcon.use_parent_material = true
|
|
||||||
ConnectionIcon.material.set("shader_param/speed", 0)
|
|
||||||
|
|
||||||
Menu.set_item_checked(0, PluginSettings.debug)
|
|
||||||
Menu.set_item_checked(1, PluginSettings.auto_log)
|
|
||||||
VersionCheck.request("https://api.github.com/repos/fenix-hub/godot-engine.github-integration/tags",[],false,HTTPClient.METHOD_GET,"")
|
|
||||||
|
|
||||||
if PluginSettings.auto_log:
|
|
||||||
SignIn.sign_in()
|
|
||||||
|
|
||||||
func check_connection():
|
|
||||||
pass
|
|
||||||
|
|
||||||
func loading(value : bool) -> void:
|
|
||||||
LoadNode.visible = value
|
|
||||||
|
|
||||||
func show_loading_progress(value : float, max_value : float) -> void:
|
|
||||||
LoadNode.show_progress(value,max_value)
|
|
||||||
|
|
||||||
func hide_loading_progress():
|
|
||||||
LoadNode.hide_progress()
|
|
||||||
|
|
||||||
func show_number(value : float, type : String) -> void:
|
|
||||||
LoadNode.show_number(value,type)
|
|
||||||
|
|
||||||
func hide_number():
|
|
||||||
LoadNode.hide_number()
|
|
||||||
|
|
||||||
func signed() -> void:
|
|
||||||
UserPanel.load_panel()
|
|
||||||
set_avatar(UserData.AVATAR)
|
|
||||||
set_username(UserData.USER.login)
|
|
||||||
|
|
||||||
func print_debug_message(message : String = "",type : int = 0):
|
|
||||||
if PluginSettings.debug == true:
|
|
||||||
match type:
|
|
||||||
0:
|
|
||||||
print(plugin_name,message)
|
|
||||||
1:
|
|
||||||
printerr(plugin_name,message)
|
|
||||||
2:
|
|
||||||
push_warning(plugin_name+message)
|
|
||||||
|
|
||||||
func _on_debug_toggled(button_pressed):
|
|
||||||
PluginSettings.set_debug(button_pressed)
|
|
||||||
Menu.set_item_checked(0, PluginSettings.debug)
|
|
||||||
if button_pressed:
|
|
||||||
print(plugin_name, "Debug Enabled")
|
|
||||||
else:
|
|
||||||
print(plugin_name, "Debug Disabled")
|
|
||||||
|
|
||||||
func _on_autologin_toggled(button_pressed):
|
|
||||||
PluginSettings.set_auto_log(button_pressed)
|
|
||||||
Menu.set_item_checked(1, PluginSettings.auto_log)
|
|
||||||
if button_pressed:
|
|
||||||
print(plugin_name, "Auto Login Enabled")
|
|
||||||
else:
|
|
||||||
print(plugin_name, "Auto Login Disabled")
|
|
||||||
|
|
||||||
|
|
||||||
func menu_item_pressed(id : int):
|
|
||||||
match id:
|
|
||||||
0:
|
|
||||||
_on_debug_toggled(!Menu.is_item_checked(id))
|
|
||||||
1:
|
|
||||||
_on_autologin_toggled(!Menu.is_item_checked(id))
|
|
||||||
3:
|
|
||||||
OS.shell_open("https://github.com/fenix-hub/godot-engine.github-integration/wiki")
|
|
||||||
5:
|
|
||||||
logout()
|
|
||||||
7:
|
|
||||||
set_darkmode(!Menu.is_item_checked(id))
|
|
||||||
|
|
||||||
func logout():
|
|
||||||
set_avatar(IconLoaderGithub.load_icon_from_name("circle"))
|
|
||||||
set_username("user")
|
|
||||||
SignIn.show()
|
|
||||||
UserPanel.hide()
|
|
||||||
Repo.hide()
|
|
||||||
Commit.hide()
|
|
||||||
Gist.hide()
|
|
||||||
SignIn.Mail.text = ""
|
|
||||||
SignIn.Token.text = ""
|
|
||||||
|
|
||||||
func set_darkmode(darkmode : bool):
|
|
||||||
PluginSettings.set_darkmode(darkmode)
|
|
||||||
Menu.set_item_checked(7, PluginSettings.darkmode)
|
|
||||||
SignIn.set_darkmode(darkmode)
|
|
||||||
UserPanel.set_darkmode(darkmode)
|
|
||||||
Repo.set_darkmode(darkmode)
|
|
||||||
Commit.set_darkmode(darkmode)
|
|
||||||
Gist.set_darkmode(darkmode)
|
|
||||||
Header.set_darkmode(darkmode)
|
|
||||||
|
|
||||||
|
|
||||||
func set_avatar(avatar : ImageTexture):
|
|
||||||
$Header/datas/avatar.texture = avatar
|
|
||||||
|
|
||||||
func set_username(username : String):
|
|
||||||
$Header/datas/user.text = username
|
|
||||||
|
|
||||||
func _on_version_check(result, response_code, headers, body ):
|
|
||||||
if result == 0:
|
|
||||||
if response_code == 200:
|
|
||||||
var tags : Array = JSON.parse(body.get_string_from_utf8()).result
|
|
||||||
var first_tag : Dictionary = tags[0] as Dictionary
|
|
||||||
if first_tag.name != ("v"+plugin_version):
|
|
||||||
print_debug_message("a new plugin version has been found, current version is %s and new version is %s" % [("v"+plugin_version), first_tag.name],1)
|
|
Loading…
Reference in New Issue
Block a user