Added quit action
This commit is contained in:
parent
c4ad490276
commit
d7c2523687
31
main.py
31
main.py
|
@ -1,8 +1,7 @@
|
||||||
import time
|
import time
|
||||||
|
|
||||||
import settings_manager
|
import settings_manager
|
||||||
from alcasar import Alcasar, ConnectionResults, DisconnectResult
|
from alcasar import Alcasar
|
||||||
from settings_manager import SettingsWindow
|
|
||||||
from tray_manager import TrayManager
|
from tray_manager import TrayManager
|
||||||
from threading import Thread
|
from threading import Thread
|
||||||
|
|
||||||
|
@ -21,13 +20,22 @@ class AlcasarMonitor:
|
||||||
self.settings_button = self.tray_manager.Menu.create_item("Settings",
|
self.settings_button = self.tray_manager.Menu.create_item("Settings",
|
||||||
item_type=self.tray_manager.Menu.ItemType.BUTTON,
|
item_type=self.tray_manager.Menu.ItemType.BUTTON,
|
||||||
callback=self.ask_credentials)
|
callback=self.ask_credentials)
|
||||||
self.auto_connect_check = self.tray_manager.Menu.create_item("Auto Connect",
|
|
||||||
item_type=self.tray_manager.Menu.ItemType.CHECK,
|
|
||||||
callback=self.toggle_auto_connect)
|
|
||||||
self.settings_window = settings_manager.SettingsWindow()
|
|
||||||
self.settings_manager = settings_manager.SettingsManager()
|
self.settings_manager = settings_manager.SettingsManager()
|
||||||
|
|
||||||
|
self.auto_connect_check = self.tray_manager.Menu.create_item("Auto Connect",
|
||||||
|
item_type=self.tray_manager.Menu.ItemType.CHECK,
|
||||||
|
callback=self.toggle_auto_connect,
|
||||||
|
checkdefault=self.settings_manager.get("auto_connect"))
|
||||||
|
|
||||||
|
self.quit_button = self.tray_manager.Menu.create_item("Quit",
|
||||||
|
item_type=self.tray_manager.Menu.ItemType.BUTTON,
|
||||||
|
callback=self.quit)
|
||||||
|
|
||||||
|
self.settings_window = settings_manager.SettingsWindow()
|
||||||
|
|
||||||
self.state = False
|
self.state = False
|
||||||
|
self.running = True
|
||||||
|
|
||||||
self.request_settings_open = False
|
self.request_settings_open = False
|
||||||
self.just_disconnected = False
|
self.just_disconnected = False
|
||||||
|
@ -38,6 +46,12 @@ class AlcasarMonitor:
|
||||||
def ask_credentials(self):
|
def ask_credentials(self):
|
||||||
self.request_settings_open = True
|
self.request_settings_open = True
|
||||||
|
|
||||||
|
def quit(self):
|
||||||
|
self.running = False
|
||||||
|
self.tray_manager.kill()
|
||||||
|
self.alcasar.disconnect()
|
||||||
|
print("Exit")
|
||||||
|
|
||||||
def toggle_auto_connect(self):
|
def toggle_auto_connect(self):
|
||||||
new_value = self.tray_manager.Menu.get_status(self.auto_connect_check)
|
new_value = self.tray_manager.Menu.get_status(self.auto_connect_check)
|
||||||
self.settings_manager.set("auto_connect", new_value)
|
self.settings_manager.set("auto_connect", new_value)
|
||||||
|
@ -53,7 +67,7 @@ class AlcasarMonitor:
|
||||||
|
|
||||||
def loop(self):
|
def loop(self):
|
||||||
last_state = None
|
last_state = None
|
||||||
while True:
|
while self.running:
|
||||||
state = self.state
|
state = self.state
|
||||||
if state != last_state:
|
if state != last_state:
|
||||||
if state:
|
if state:
|
||||||
|
@ -80,11 +94,10 @@ class AlcasarMonitor:
|
||||||
self.settings_manager.set("password", credentials[1])
|
self.settings_manager.set("password", credentials[1])
|
||||||
|
|
||||||
def connection_state_loop(self):
|
def connection_state_loop(self):
|
||||||
while True:
|
while self.running:
|
||||||
self.state = self.alcasar.update_statut()[0]
|
self.state = self.alcasar.update_statut()[0]
|
||||||
time.sleep(2)
|
time.sleep(2)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
alcasar_monitor = AlcasarMonitor()
|
alcasar_monitor = AlcasarMonitor()
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue