58 lines
2.2 KiB
Python
58 lines
2.2 KiB
Python
import kivy
|
|
from kivy.app import App
|
|
from kivy.uix.screenmanager import ScreenManager, Screen
|
|
import os
|
|
import json
|
|
from kivy.clock import Clock
|
|
from kivy.properties import StringProperty, ListProperty
|
|
from py_scripts.utils import (
|
|
generate_key, load_key, encrypt_data, decrypt_data,
|
|
check_server_settings, save_server_settings,
|
|
test_connection, get_devices_from_server, save_route_to_file, fetch_positions_for_selected_day
|
|
)
|
|
from datetime import date
|
|
from kivy.uix.popup import Popup
|
|
from kivy.uix.gridlayout import GridLayout
|
|
from kivy.uix.button import Button
|
|
from kivy.uix.label import Label
|
|
from kivy.uix.boxlayout import BoxLayout
|
|
from threading import Thread
|
|
from kivy.clock import mainthread
|
|
from kivy.uix.image import Image
|
|
from kivy.uix.behaviors import ButtonBehavior
|
|
from kivy.uix.progressbar import ProgressBar
|
|
import webbrowser
|
|
from selenium import webdriver
|
|
from selenium.webdriver.chrome.options import Options
|
|
from PIL import Image
|
|
import time
|
|
from screens.home_screen import HomeScreen
|
|
from screens.login_screen import LoginScreen
|
|
from screens.get_trip_from_server import GetTripFromServer
|
|
from screens.create_animation_screen import CreateAnimationScreen
|
|
from screens.settings_screen import SettingsScreen
|
|
from screens.settings_screen import RegisterScreen
|
|
from screens.pause_edit_screen_improved import PauseEditScreen
|
|
from config import RESOURCES_FOLDER
|
|
kivy.require("2.0.0")
|
|
from kivy.core.window import Window
|
|
Window.size = (360, 780)
|
|
|
|
class TraccarApp(App):
|
|
def build(self):
|
|
if not os.path.exists(RESOURCES_FOLDER):
|
|
os.makedirs(RESOURCES_FOLDER)
|
|
generate_key()
|
|
sm = ScreenManager()
|
|
sm.add_widget(LoginScreen(name="login"))
|
|
sm.add_widget(HomeScreen(name="home"))
|
|
sm.add_widget(GetTripFromServer(name="get_trip_from_server"))
|
|
sm.add_widget(SettingsScreen(name="settings"))
|
|
sm.add_widget(RegisterScreen(name="register"))
|
|
sm.add_widget(CreateAnimationScreen(name="create_animation"))
|
|
sm.add_widget(PauseEditScreen(name="pause_edit"))
|
|
print("Screens added to ScreenManager:", [screen.name for screen in sm.screens])
|
|
return sm
|
|
|
|
if __name__ == "__main__":
|
|
TraccarApp().run() |